Publish commit(s) from site source repo:
  6158de4 site_tool: don't use check_call for git show
  e04d3b7 Move some old download links to archive
  ce7ab97 Add 1.4.0 release docs and links

Site-Repo-Commit: 6158de4b7ac2be6d20cec932d1c0fae587a0a51c
diff --git a/apidocs/allclasses-frame.html b/apidocs/allclasses-frame.html
index 193df11..dcf5212 100644
--- a/apidocs/allclasses-frame.html
+++ b/apidocs/allclasses-frame.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>All Classes (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>All Classes (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
 <script type="text/javascript" src="script.js"></script>
 </head>
@@ -22,6 +22,7 @@
 <li><a href="org/apache/kudu/client/AsyncKuduScanner.ReadMode.html" title="enum in org.apache.kudu.client" target="classFrame">AsyncKuduScanner.ReadMode</a></li>
 <li><a href="org/apache/kudu/client/AsyncKuduSession.html" title="class in org.apache.kudu.client" target="classFrame">AsyncKuduSession</a></li>
 <li><a href="org/apache/kudu/flume/sink/AvroKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink" target="classFrame">AvroKuduOperationsProducer</a></li>
+<li><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools" target="classFrame">BigLinkedListCommon</a></li>
 <li><a href="org/apache/kudu/client/ColumnRangePredicate.html" title="class in org.apache.kudu.client" target="classFrame">ColumnRangePredicate</a></li>
 <li><a href="org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu" target="classFrame">ColumnSchema</a></li>
 <li><a href="org/apache/kudu/mapreduce/CommandLineParser.html" title="class in org.apache.kudu.mapreduce" target="classFrame">CommandLineParser</a></li>
diff --git a/apidocs/allclasses-noframe.html b/apidocs/allclasses-noframe.html
index 377eed0..cb20732 100644
--- a/apidocs/allclasses-noframe.html
+++ b/apidocs/allclasses-noframe.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>All Classes (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>All Classes (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
 <script type="text/javascript" src="script.js"></script>
 </head>
@@ -22,6 +22,7 @@
 <li><a href="org/apache/kudu/client/AsyncKuduScanner.ReadMode.html" title="enum in org.apache.kudu.client">AsyncKuduScanner.ReadMode</a></li>
 <li><a href="org/apache/kudu/client/AsyncKuduSession.html" title="class in org.apache.kudu.client">AsyncKuduSession</a></li>
 <li><a href="org/apache/kudu/flume/sink/AvroKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">AvroKuduOperationsProducer</a></li>
+<li><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools">BigLinkedListCommon</a></li>
 <li><a href="org/apache/kudu/client/ColumnRangePredicate.html" title="class in org.apache.kudu.client">ColumnRangePredicate</a></li>
 <li><a href="org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a></li>
 <li><a href="org/apache/kudu/mapreduce/CommandLineParser.html" title="class in org.apache.kudu.mapreduce">CommandLineParser</a></li>
diff --git a/apidocs/constant-values.html b/apidocs/constant-values.html
index 0da1b29..6fe2e37 100644
--- a/apidocs/constant-values.html
+++ b/apidocs/constant-values.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Constant Field Values (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Constant Field Values (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
 <script type="text/javascript" src="script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Constant Field Values (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Constant Field Values (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
@@ -121,6 +121,25 @@
 </tbody>
 </table>
 </li>
+<li class="blockList">
+<table class="constantsSummary" border="0" cellpadding="3" cellspacing="0" summary="Constant Field Values table, listing constant fields, and values">
+<caption><span>org.apache.kudu.client.<a href="org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th scope="col">Constant Field</th>
+<th class="colLast" scope="col">Value</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a name="org.apache.kudu.client.KuduClient.NO_TIMESTAMP">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;long</code></td>
+<td><code><a href="org/apache/kudu/client/KuduClient.html#NO_TIMESTAMP">NO_TIMESTAMP</a></code></td>
+<td class="colLast"><code>-1L</code></td>
+</tr>
+</tbody>
+</table>
+</li>
 </ul>
 <ul class="blockList">
 <li class="blockList">
@@ -478,6 +497,146 @@
 </table>
 </li>
 </ul>
+<ul class="blockList">
+<li class="blockList">
+<table class="constantsSummary" border="0" cellpadding="3" cellspacing="0" summary="Constant Field Values table, listing constant fields, and values">
+<caption><span>org.apache.kudu.mapreduce.tools.<a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools">BigLinkedListCommon</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th scope="col">Constant Field</th>
+<th class="colLast" scope="col">Value</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a name="org.apache.kudu.mapreduce.tools.BigLinkedListCommon.COLUMN_CLIENT">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td><code><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_CLIENT">COLUMN_CLIENT</a></code></td>
+<td class="colLast"><code>"client"</code></td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a name="org.apache.kudu.mapreduce.tools.BigLinkedListCommon.COLUMN_CLIENT_IDX">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;int</code></td>
+<td><code><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_CLIENT_IDX">COLUMN_CLIENT_IDX</a></code></td>
+<td class="colLast"><code>5</code></td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a name="org.apache.kudu.mapreduce.tools.BigLinkedListCommon.COLUMN_KEY_ONE">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td><code><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_KEY_ONE">COLUMN_KEY_ONE</a></code></td>
+<td class="colLast"><code>"key1"</code></td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a name="org.apache.kudu.mapreduce.tools.BigLinkedListCommon.COLUMN_KEY_ONE_IDX">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;int</code></td>
+<td><code><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_KEY_ONE_IDX">COLUMN_KEY_ONE_IDX</a></code></td>
+<td class="colLast"><code>0</code></td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a name="org.apache.kudu.mapreduce.tools.BigLinkedListCommon.COLUMN_KEY_TWO">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td><code><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_KEY_TWO">COLUMN_KEY_TWO</a></code></td>
+<td class="colLast"><code>"key2"</code></td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a name="org.apache.kudu.mapreduce.tools.BigLinkedListCommon.COLUMN_KEY_TWO_IDX">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;int</code></td>
+<td><code><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_KEY_TWO_IDX">COLUMN_KEY_TWO_IDX</a></code></td>
+<td class="colLast"><code>1</code></td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a name="org.apache.kudu.mapreduce.tools.BigLinkedListCommon.COLUMN_PREV_ONE">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td><code><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_PREV_ONE">COLUMN_PREV_ONE</a></code></td>
+<td class="colLast"><code>"prev1"</code></td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a name="org.apache.kudu.mapreduce.tools.BigLinkedListCommon.COLUMN_PREV_ONE_IDX">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;int</code></td>
+<td><code><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_PREV_ONE_IDX">COLUMN_PREV_ONE_IDX</a></code></td>
+<td class="colLast"><code>2</code></td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a name="org.apache.kudu.mapreduce.tools.BigLinkedListCommon.COLUMN_PREV_TWO">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td><code><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_PREV_TWO">COLUMN_PREV_TWO</a></code></td>
+<td class="colLast"><code>"prev2"</code></td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a name="org.apache.kudu.mapreduce.tools.BigLinkedListCommon.COLUMN_PREV_TWO_IDX">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;int</code></td>
+<td><code><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_PREV_TWO_IDX">COLUMN_PREV_TWO_IDX</a></code></td>
+<td class="colLast"><code>3</code></td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a name="org.apache.kudu.mapreduce.tools.BigLinkedListCommon.COLUMN_ROW_ID">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td><code><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_ROW_ID">COLUMN_ROW_ID</a></code></td>
+<td class="colLast"><code>"row_id"</code></td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a name="org.apache.kudu.mapreduce.tools.BigLinkedListCommon.COLUMN_ROW_ID_IDX">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;int</code></td>
+<td><code><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_ROW_ID_IDX">COLUMN_ROW_ID_IDX</a></code></td>
+<td class="colLast"><code>4</code></td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a name="org.apache.kudu.mapreduce.tools.BigLinkedListCommon.COLUMN_UPDATE_COUNT">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td><code><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_UPDATE_COUNT">COLUMN_UPDATE_COUNT</a></code></td>
+<td class="colLast"><code>"update_count"</code></td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a name="org.apache.kudu.mapreduce.tools.BigLinkedListCommon.COLUMN_UPDATE_COUNT_IDX">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;int</code></td>
+<td><code><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_UPDATE_COUNT_IDX">COLUMN_UPDATE_COUNT_IDX</a></code></td>
+<td class="colLast"><code>6</code></td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a name="org.apache.kudu.mapreduce.tools.BigLinkedListCommon.DEFAULT_HEADS_TABLE_NAME">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td><code><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#DEFAULT_HEADS_TABLE_NAME">DEFAULT_HEADS_TABLE_NAME</a></code></td>
+<td class="colLast"><code>"IntegrationTestBigLinkedListHeads"</code></td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a name="org.apache.kudu.mapreduce.tools.BigLinkedListCommon.DEFAULT_TABLE_NAME">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td><code><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#DEFAULT_TABLE_NAME">DEFAULT_TABLE_NAME</a></code></td>
+<td class="colLast"><code>"IntegrationTestBigLinkedList"</code></td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a name="org.apache.kudu.mapreduce.tools.BigLinkedListCommon.HEADS_TABLE_NAME_KEY">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td><code><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#HEADS_TABLE_NAME_KEY">HEADS_TABLE_NAME_KEY</a></code></td>
+<td class="colLast"><code>"IntegrationTestBigLinkedList.heads_table"</code></td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a name="org.apache.kudu.mapreduce.tools.BigLinkedListCommon.TABLE_NAME_KEY">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td><code><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#TABLE_NAME_KEY">TABLE_NAME_KEY</a></code></td>
+<td class="colLast"><code>"IntegrationTestBigLinkedList.table"</code></td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
 </div>
 <!-- ======= START OF BOTTOM NAVBAR ====== -->
 <div class="bottomNav"><a name="navbar.bottom">
diff --git a/apidocs/deprecated-list.html b/apidocs/deprecated-list.html
index 5df23cf..5957ae3 100644
--- a/apidocs/deprecated-list.html
+++ b/apidocs/deprecated-list.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Deprecated List (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Deprecated List (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
 <script type="text/javascript" src="script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Deprecated List (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Deprecated List (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/help-doc.html b/apidocs/help-doc.html
index c281549..8329fa7 100644
--- a/apidocs/help-doc.html
+++ b/apidocs/help-doc.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>API Help (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>API Help (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
 <script type="text/javascript" src="script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="API Help (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="API Help (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/index-all.html b/apidocs/index-all.html
index 3ba4b90..b1ac151 100644
--- a/apidocs/index-all.html
+++ b/apidocs/index-all.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Index (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Index (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
 <script type="text/javascript" src="script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Index (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Index (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
@@ -353,6 +353,11 @@
 <dd>
 <div class="block">Sets the maximum number of bytes returned by the scanner, on each batch.</div>
 </dd>
+<dt><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools"><span class="typeNameLink">BigLinkedListCommon</span></a> - Class in <a href="org/apache/kudu/mapreduce/tools/package-summary.html">org.apache.kudu.mapreduce.tools</a></dt>
+<dd>
+<div class="block">Static constants, helper methods, and utility classes for BigLinkedList
+ implementations.</div>
+</dd>
 <dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html#bossCount-int-">bossCount(int)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html" title="class in org.apache.kudu.client">AsyncKuduClient.AsyncKuduClientBuilder</a></dt>
 <dd>
 <div class="block">Set the maximum number of boss threads.</div>
@@ -391,6 +396,22 @@
 <dd>
 <div class="block">Sets the block caching policy for the scanner.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AlterTableOptions.html#changeCompressionAlgorithm-java.lang.String-org.apache.kudu.ColumnSchema.CompressionAlgorithm-">changeCompressionAlgorithm(String, ColumnSchema.CompressionAlgorithm)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></dt>
+<dd>
+<div class="block">Change the compression used for a column.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AlterTableOptions.html#changeDefault-java.lang.String-java.lang.Object-">changeDefault(String, Object)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></dt>
+<dd>
+<div class="block">Change the default value for a column.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AlterTableOptions.html#changeDesiredBlockSize-java.lang.String-int-">changeDesiredBlockSize(String, int)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></dt>
+<dd>
+<div class="block">Change the block size of a column's storage.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AlterTableOptions.html#changeEncoding-java.lang.String-org.apache.kudu.ColumnSchema.Encoding-">changeEncoding(String, ColumnSchema.Encoding)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></dt>
+<dd>
+<div class="block">Change the encoding used for a column.</div>
+</dd>
 <dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/KuduTableOutputFormat.html#checkOutputSpecs-org.apache.hadoop.mapreduce.JobContext-">checkOutputSpecs(JobContext)</a></span> - Method in class org.apache.kudu.mapreduce.<a href="org/apache/kudu/mapreduce/KuduTableOutputFormat.html" title="class in org.apache.kudu.mapreduce">KuduTableOutputFormat</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduClient.html#close--">close()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client">AsyncKuduClient</a></dt>
@@ -433,6 +454,44 @@
 <dd>
 <div class="block">Utility method that collects all the row errors from the given list of responses.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_CLIENT">COLUMN_CLIENT</a></span> - Static variable in class org.apache.kudu.mapreduce.tools.<a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools">BigLinkedListCommon</a></dt>
+<dd>
+<div class="block">identifier of the mapred task that generated this row.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_CLIENT_IDX">COLUMN_CLIENT_IDX</a></span> - Static variable in class org.apache.kudu.mapreduce.tools.<a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools">BigLinkedListCommon</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_KEY_ONE">COLUMN_KEY_ONE</a></span> - Static variable in class org.apache.kudu.mapreduce.tools.<a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools">BigLinkedListCommon</a></dt>
+<dd>
+<div class="block">Row key, two times 8 bytes.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_KEY_ONE_IDX">COLUMN_KEY_ONE_IDX</a></span> - Static variable in class org.apache.kudu.mapreduce.tools.<a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools">BigLinkedListCommon</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_KEY_TWO">COLUMN_KEY_TWO</a></span> - Static variable in class org.apache.kudu.mapreduce.tools.<a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools">BigLinkedListCommon</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_KEY_TWO_IDX">COLUMN_KEY_TWO_IDX</a></span> - Static variable in class org.apache.kudu.mapreduce.tools.<a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools">BigLinkedListCommon</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_PREV_ONE">COLUMN_PREV_ONE</a></span> - Static variable in class org.apache.kudu.mapreduce.tools.<a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools">BigLinkedListCommon</a></dt>
+<dd>
+<div class="block">Link to the id of the prev node in the linked list, two times 8 bytes.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_PREV_ONE_IDX">COLUMN_PREV_ONE_IDX</a></span> - Static variable in class org.apache.kudu.mapreduce.tools.<a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools">BigLinkedListCommon</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_PREV_TWO">COLUMN_PREV_TWO</a></span> - Static variable in class org.apache.kudu.mapreduce.tools.<a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools">BigLinkedListCommon</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_PREV_TWO_IDX">COLUMN_PREV_TWO_IDX</a></span> - Static variable in class org.apache.kudu.mapreduce.tools.<a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools">BigLinkedListCommon</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_ROW_ID">COLUMN_ROW_ID</a></span> - Static variable in class org.apache.kudu.mapreduce.tools.<a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools">BigLinkedListCommon</a></dt>
+<dd>
+<div class="block">the id of the row within the same client.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_ROW_ID_IDX">COLUMN_ROW_ID_IDX</a></span> - Static variable in class org.apache.kudu.mapreduce.tools.<a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools">BigLinkedListCommon</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_UPDATE_COUNT">COLUMN_UPDATE_COUNT</a></span> - Static variable in class org.apache.kudu.mapreduce.tools.<a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools">BigLinkedListCommon</a></dt>
+<dd>
+<div class="block">The number of times this row was updated.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_UPDATE_COUNT_IDX">COLUMN_UPDATE_COUNT_IDX</a></span> - Static variable in class org.apache.kudu.mapreduce.tools.<a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools">BigLinkedListCommon</a></dt>
+<dd>&nbsp;</dd>
 <dt><a href="org/apache/kudu/client/ColumnRangePredicate.html" title="class in org.apache.kudu.client"><span class="typeNameLink">ColumnRangePredicate</span></a> - Class in <a href="org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></dt>
 <dd>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>
@@ -522,6 +581,8 @@
 <dl>
 <dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html#DEFAULT_ENCODING">DEFAULT_ENCODING</a></span> - Static variable in class org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">RegexpKuduOperationsProducer</a></dt>
 <dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#DEFAULT_HEADS_TABLE_NAME">DEFAULT_HEADS_TABLE_NAME</a></span> - Static variable in class org.apache.kudu.mapreduce.tools.<a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools">BigLinkedListCommon</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/AvroKuduOperationsProducer.html#DEFAULT_OPERATION">DEFAULT_OPERATION</a></span> - Static variable in class org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/AvroKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">AvroKuduOperationsProducer</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html#DEFAULT_OPERATION">DEFAULT_OPERATION</a></span> - Static variable in class org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">RegexpKuduOperationsProducer</a></dt>
@@ -534,6 +595,8 @@
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduClient.html#DEFAULT_SOCKET_READ_TIMEOUT_MS">DEFAULT_SOCKET_READ_TIMEOUT_MS</a></span> - Static variable in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client">AsyncKuduClient</a></dt>
 <dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#DEFAULT_TABLE_NAME">DEFAULT_TABLE_NAME</a></span> - Static variable in class org.apache.kudu.mapreduce.tools.<a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools">BigLinkedListCommon</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html#DEFAULT_WARN_UNMATCHED_ROWS">DEFAULT_WARN_UNMATCHED_ROWS</a></span> - Static variable in class org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">RegexpKuduOperationsProducer</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html#defaultAdminOperationTimeoutMs-long-">defaultAdminOperationTimeoutMs(long)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html" title="class in org.apache.kudu.client">AsyncKuduClient.AsyncKuduClientBuilder</a></dt>
@@ -691,6 +754,14 @@
 <dd>
 <div class="block">Returns the maximum number of bytes returned by the scanner, on each batch.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#getBinary-java.lang.String-">getBinary(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Get the specified column's binary data.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#getBinary-int-">getBinary(int)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Get the specified column's binary data.</div>
+</dd>
 <dt><span class="memberNameLink"><a href="org/apache/kudu/client/RowResult.html#getBinary-java.lang.String-">getBinary(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a></dt>
 <dd>
 <div class="block">Get the specified column's binary data.</div>
@@ -699,6 +770,14 @@
 <dd>
 <div class="block">Get the specified column's binary data.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#getBinaryCopy-java.lang.String-">getBinaryCopy(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Get a copy of the specified column's binary data.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#getBinaryCopy-int-">getBinaryCopy(int)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Get a copy of the specified column's binary data.</div>
+</dd>
 <dt><span class="memberNameLink"><a href="org/apache/kudu/client/RowResult.html#getBinaryCopy-java.lang.String-">getBinaryCopy(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a></dt>
 <dd>
 <div class="block">Get a copy of the specified column's binary data.</div>
@@ -707,6 +786,14 @@
 <dd>
 <div class="block">Get a copy of the specified column's binary data.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#getBoolean-java.lang.String-">getBoolean(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Get the specified column's boolean</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#getBoolean-int-">getBoolean(int)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Get the specified column's boolean</div>
+</dd>
 <dt><span class="memberNameLink"><a href="org/apache/kudu/client/RowResult.html#getBoolean-java.lang.String-">getBoolean(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a></dt>
 <dd>
 <div class="block">Get the specified column's boolean</div>
@@ -715,6 +802,14 @@
 <dd>
 <div class="block">Get the specified column's boolean</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#getByte-java.lang.String-">getByte(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Get the specified column's byte</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#getByte-int-">getByte(int)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Get the specified column's byte</div>
+</dd>
 <dt><span class="memberNameLink"><a href="org/apache/kudu/client/RowResult.html#getByte-java.lang.String-">getByte(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a></dt>
 <dd>
 <div class="block">Get the specified column's byte</div>
@@ -794,6 +889,8 @@
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/KuduTableOutputFormat.html#getConf--">getConf()</a></span> - Method in class org.apache.kudu.mapreduce.<a href="org/apache/kudu/mapreduce/KuduTableOutputFormat.html" title="class in org.apache.kudu.mapreduce">KuduTableOutputFormat</a></dt>
 <dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#getCreateTableOptions-org.apache.kudu.Schema-int-int-int-">getCreateTableOptions(Schema, int, int, int)</a></span> - Static method in class org.apache.kudu.mapreduce.tools.<a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools">BigLinkedListCommon</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/kudu/Type.html#getDataType--">getDataType()</a></span> - Method in enum org.apache.kudu.<a href="org/apache/kudu/Type.html" title="enum in org.apache.kudu">Type</a></dt>
 <dd>
 <div class="block">Get the data type from the common's pb</div>
@@ -830,6 +927,14 @@
 <dd>
 <div class="block">Gets the desired block size for this column.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#getDouble-java.lang.String-">getDouble(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Get the specified column's double</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#getDouble-int-">getDouble(int)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Get the specified column's double</div>
+</dd>
 <dt><span class="memberNameLink"><a href="org/apache/kudu/client/RowResult.html#getDouble-java.lang.String-">getDouble(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a></dt>
 <dd>
 <div class="block">Get the specified column's double</div>
@@ -858,6 +963,14 @@
 <dd>
 <div class="block">The RPC that was made to fail with this exception.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#getFloat-java.lang.String-">getFloat(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Get the specified column's float</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#getFloat-int-">getFloat(int)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Get the specified column's float</div>
+</dd>
 <dt><span class="memberNameLink"><a href="org/apache/kudu/client/RowResult.html#getFloat-java.lang.String-">getFloat(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a></dt>
 <dd>
 <div class="block">Get the specified column's float</div>
@@ -878,11 +991,21 @@
 <dd>
 <div class="block">Retrieves a formatted representation of this table's range partitions.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#getHeadsTableSchema--">getHeadsTableSchema()</a></span> - Static method in class org.apache.kudu.mapreduce.tools.<a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools">BigLinkedListCommon</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/CommandLineParser.html#getHelpSnippet--">getHelpSnippet()</a></span> - Static method in class org.apache.kudu.mapreduce.<a href="org/apache/kudu/mapreduce/CommandLineParser.html" title="class in org.apache.kudu.mapreduce">CommandLineParser</a></dt>
 <dd>
 <div class="block">This method returns a single multi-line string that contains the help snippet to append to
  the tail of a usage() or help() type of method.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#getInt-java.lang.String-">getInt(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Get the specified column's integer</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#getInt-int-">getInt(int)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Get the specified column's integer</div>
+</dd>
 <dt><span class="memberNameLink"><a href="org/apache/kudu/client/RowResult.html#getInt-java.lang.String-">getInt(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a></dt>
 <dd>
 <div class="block">Get the specified column's integer</div>
@@ -894,7 +1017,13 @@
 <dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/KuduTableOutputFormat.html#getKuduTable-java.lang.String-">getKuduTable(String)</a></span> - Static method in class org.apache.kudu.mapreduce.<a href="org/apache/kudu/mapreduce/KuduTableOutputFormat.html" title="class in org.apache.kudu.mapreduce">KuduTableOutputFormat</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduClient.html#getLastPropagatedTimestamp--">getLastPropagatedTimestamp()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client">AsyncKuduClient</a></dt>
-<dd>&nbsp;</dd>
+<dd>
+<div class="block">Returns the last timestamp received from a server.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduClient.html#getLastPropagatedTimestamp--">getLastPropagatedTimestamp()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a></dt>
+<dd>
+<div class="block">Returns the last timestamp received from a server.</div>
+</dd>
 <dt><span class="memberNameLink"><a href="org/apache/kudu/client/LocatedTablet.html#getLeaderReplica--">getLeaderReplica()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/LocatedTablet.html" title="class in org.apache.kudu.client">LocatedTablet</a></dt>
 <dd>
 <div class="block">Return the current leader, or null if there is none.</div>
@@ -907,6 +1036,20 @@
 <dd>
 <div class="block">Returns the maximum number of rows that this scanner was configured to return.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#getLong-java.lang.String-">getLong(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Get the specified column's long
+
+ If this is a UNIXTIME_MICROS column, the long value corresponds to a number of microseconds
+ since midnight, January 1, 1970 UTC.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#getLong-int-">getLong(int)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Get the specified column's long
+
+ If this is a UNIXTIME_MICROS column, the long value corresponds to a number of microseconds
+ since midnight, January 1, 1970 UTC.</div>
+</dd>
 <dt><span class="memberNameLink"><a href="org/apache/kudu/client/RowResult.html#getLong-java.lang.String-">getLong(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a></dt>
 <dd>
 <div class="block">Get the specified column's long
@@ -1062,6 +1205,14 @@
 <dd>
 <div class="block">Get the schema associated with this result.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#getShort-java.lang.String-">getShort(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Get the specified column's short</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#getShort-int-">getShort(int)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Get the specified column's short</div>
+</dd>
 <dt><span class="memberNameLink"><a href="org/apache/kudu/client/RowResult.html#getShort-java.lang.String-">getShort(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a></dt>
 <dd>
 <div class="block">Get the specified column's short</div>
@@ -1102,6 +1253,14 @@
 <div class="block"><span class="deprecationComment">Please use getErrorStatus() instead. Will be removed in a future version.</span></div>
 </div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#getString-java.lang.String-">getString(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Get the specified column's string.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#getString-int-">getString(int)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Get the specified column's string.</div>
+</dd>
 <dt><span class="memberNameLink"><a href="org/apache/kudu/client/RowResult.html#getString-java.lang.String-">getString(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a></dt>
 <dd>
 <div class="block">Get the specified column's string.</div>
@@ -1125,6 +1284,8 @@
 <dd>
 <div class="block">Get table name of the given tablet id.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#getTableSchema--">getTableSchema()</a></span> - Static method in class org.apache.kudu.mapreduce.tools.<a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools">BigLinkedListCommon</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/kudu/client/Statistics.html#getTableSet--">getTableSet()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Statistics.html" title="class in org.apache.kudu.client">Statistics</a></dt>
 <dd>
 <div class="block">Get the set of tables which have been written into by this client,
@@ -1268,6 +1429,8 @@
 <dd>
 <div class="block">Tells if this operation response contains a row error.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#HEADS_TABLE_NAME_KEY">HEADS_TABLE_NAME_KEY</a></span> - Static variable in class org.apache.kudu.mapreduce.tools.<a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools">BigLinkedListCommon</a></dt>
+<dd>&nbsp;</dd>
 </dl>
 <a name="I:I">
 <!--   -->
@@ -1408,6 +1571,14 @@
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/kudu/client/Status.html#isNotSupported--">isNotSupported()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></dt>
 <dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#isNull-java.lang.String-">isNull(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Get if the specified column is NULL</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#isNull-int-">isNull(int)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Get if the specified column is NULL</div>
+</dd>
 <dt><span class="memberNameLink"><a href="org/apache/kudu/client/RowResult.html#isNull-java.lang.String-">isNull(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a></dt>
 <dd>
 <div class="block">Get if the specified column is NULL</div>
@@ -1430,6 +1601,14 @@
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/kudu/client/Status.html#isServiceUnavailable--">isServiceUnavailable()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></dt>
 <dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#isSet-java.lang.String-">isSet(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Get if the specified column has been set</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#isSet-int-">isSet(int)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Get if the specified column has been set</div>
+</dd>
 <dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduClient.html#isStatisticsEnabled--">isStatisticsEnabled()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client">AsyncKuduClient</a></dt>
 <dd>
 <div class="block">Check if statistics collection is enabled for this client.</div>
@@ -1723,6 +1902,8 @@
 </dd>
 <dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduClient.html#NO_TIMESTAMP">NO_TIMESTAMP</a></span> - Static variable in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client">AsyncKuduClient</a></dt>
 <dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduClient.html#NO_TIMESTAMP">NO_TIMESTAMP</a></span> - Static variable in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/kudu/client/Status.html#NotAuthorized-java.lang.String-">NotAuthorized(String)</a></span> - Static method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/kudu/client/Status.html#NotAuthorized-java.lang.String-int-">NotAuthorized(String, int)</a></span> - Static method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></dt>
@@ -1874,6 +2055,10 @@
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/kudu/client/RowResultIterator.html#remove--">remove()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/RowResultIterator.html" title="class in org.apache.kudu.client">RowResultIterator</a></dt>
 <dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AlterTableOptions.html#removeDefault-java.lang.String-">removeDefault(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></dt>
+<dd>
+<div class="block">Remove the default value for a column.</div>
+</dd>
 <dt><span class="memberNameLink"><a href="org/apache/kudu/client/AlterTableOptions.html#renameColumn-java.lang.String-java.lang.String-">renameColumn(String, String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></dt>
 <dd>
 <div class="block">Change the name of a column.</div>
@@ -1972,6 +2157,11 @@
 <dd>
 <div class="block">Set the new external consistency mode for this session.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AbstractKuduScannerBuilder.html#setFaultTolerant-boolean-">setFaultTolerant(boolean)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="class in org.apache.kudu.client">AbstractKuduScannerBuilder</a></dt>
+<dd>
+<div class="block">Make scans resumable at another tablet server if current server fails if
+ isFaultTolerant is true.</div>
+</dd>
 <dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduSession.html#setFlushInterval-int-">setFlushInterval(int)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduSession.html" title="class in org.apache.kudu.client">AsyncKuduSession</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduSession.html#setFlushInterval-int-">setFlushInterval(int)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduSession.html" title="class in org.apache.kudu.client">KuduSession</a></dt>
@@ -2229,6 +2419,8 @@
 <dd>
 <div class="block">The name of the table in Kudu to write to.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#TABLE_NAME_KEY">TABLE_NAME_KEY</a></span> - Static variable in class org.apache.kudu.mapreduce.tools.<a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools">BigLinkedListCommon</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduClient.html#tableExists-java.lang.String-">tableExists(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client">AsyncKuduClient</a></dt>
 <dd>
 <div class="block">Test if a table exists.</div>
@@ -2312,6 +2504,10 @@
 <dd>
 <div class="block">Updates the last timestamp received from a server.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduClient.html#updateLastPropagatedTimestamp-long-">updateLastPropagatedTimestamp(long)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a></dt>
+<dd>
+<div class="block">Updates the last timestamp received from a server.</div>
+</dd>
 <dt><a href="org/apache/kudu/client/Upsert.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Upsert</span></a> - Class in <a href="org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></dt>
 <dd>
 <div class="block">Represents a single row upsert.</div>
diff --git a/apidocs/index.html b/apidocs/index.html
index ea6bf70..e5a7b5e 100644
--- a/apidocs/index.html
+++ b/apidocs/index.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Kudu 1.3.2-SNAPSHOT API</title>
+<title>Kudu 1.4.0 API</title>
 <script type="text/javascript">
     tmpTargetPage = "" + window.location.search;
     if (tmpTargetPage != "" && tmpTargetPage != "undefined")
diff --git a/apidocs/org/apache/kudu/ColumnSchema.html b/apidocs/org/apache/kudu/ColumnSchema.html
index 4b1bfba..3c87740 100644
--- a/apidocs/org/apache/kudu/ColumnSchema.html
+++ b/apidocs/org/apache/kudu/ColumnSchema.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>ColumnSchema (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>ColumnSchema (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="ColumnSchema (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="ColumnSchema (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/Schema.html b/apidocs/org/apache/kudu/Schema.html
index b64ee86..83f3cce 100644
--- a/apidocs/org/apache/kudu/Schema.html
+++ b/apidocs/org/apache/kudu/Schema.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Schema (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Schema (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Schema (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Schema (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/Type.html b/apidocs/org/apache/kudu/Type.html
index 5dc1c41..0227ccc 100644
--- a/apidocs/org/apache/kudu/Type.html
+++ b/apidocs/org/apache/kudu/Type.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Type (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Type (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Type (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Type (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/annotations/InterfaceAudience.html b/apidocs/org/apache/kudu/annotations/InterfaceAudience.html
index 53fe95a..c900f8e 100644
--- a/apidocs/org/apache/kudu/annotations/InterfaceAudience.html
+++ b/apidocs/org/apache/kudu/annotations/InterfaceAudience.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>InterfaceAudience (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>InterfaceAudience (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="InterfaceAudience (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="InterfaceAudience (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/annotations/InterfaceStability.html b/apidocs/org/apache/kudu/annotations/InterfaceStability.html
index 4e8f3a9..1b38e37 100644
--- a/apidocs/org/apache/kudu/annotations/InterfaceStability.html
+++ b/apidocs/org/apache/kudu/annotations/InterfaceStability.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>InterfaceStability (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>InterfaceStability (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="InterfaceStability (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="InterfaceStability (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/annotations/class-use/InterfaceAudience.html b/apidocs/org/apache/kudu/annotations/class-use/InterfaceAudience.html
index 555ef79..5156edc 100644
--- a/apidocs/org/apache/kudu/annotations/class-use/InterfaceAudience.html
+++ b/apidocs/org/apache/kudu/annotations/class-use/InterfaceAudience.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.annotations.InterfaceAudience (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.annotations.InterfaceAudience (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.annotations.InterfaceAudience (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.annotations.InterfaceAudience (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/annotations/class-use/InterfaceStability.html b/apidocs/org/apache/kudu/annotations/class-use/InterfaceStability.html
index a2eabc2..fd67169 100644
--- a/apidocs/org/apache/kudu/annotations/class-use/InterfaceStability.html
+++ b/apidocs/org/apache/kudu/annotations/class-use/InterfaceStability.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.annotations.InterfaceStability (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.annotations.InterfaceStability (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.annotations.InterfaceStability (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.annotations.InterfaceStability (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/annotations/package-frame.html b/apidocs/org/apache/kudu/annotations/package-frame.html
index c4846d2..1e2f0e6 100644
--- a/apidocs/org/apache/kudu/annotations/package-frame.html
+++ b/apidocs/org/apache/kudu/annotations/package-frame.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>org.apache.kudu.annotations (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>org.apache.kudu.annotations (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
diff --git a/apidocs/org/apache/kudu/annotations/package-summary.html b/apidocs/org/apache/kudu/annotations/package-summary.html
index 847a137..9be5c5d 100644
--- a/apidocs/org/apache/kudu/annotations/package-summary.html
+++ b/apidocs/org/apache/kudu/annotations/package-summary.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>org.apache.kudu.annotations (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>org.apache.kudu.annotations (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="org.apache.kudu.annotations (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="org.apache.kudu.annotations (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/annotations/package-tree.html b/apidocs/org/apache/kudu/annotations/package-tree.html
index 510a2f3..464d8b1 100644
--- a/apidocs/org/apache/kudu/annotations/package-tree.html
+++ b/apidocs/org/apache/kudu/annotations/package-tree.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>org.apache.kudu.annotations Class Hierarchy (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>org.apache.kudu.annotations Class Hierarchy (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="org.apache.kudu.annotations Class Hierarchy (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="org.apache.kudu.annotations Class Hierarchy (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/annotations/package-use.html b/apidocs/org/apache/kudu/annotations/package-use.html
index 8b3cece..ac696ca 100644
--- a/apidocs/org/apache/kudu/annotations/package-use.html
+++ b/apidocs/org/apache/kudu/annotations/package-use.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Package org.apache.kudu.annotations (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Package org.apache.kudu.annotations (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Package org.apache.kudu.annotations (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Package org.apache.kudu.annotations (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/class-use/ColumnSchema.html b/apidocs/org/apache/kudu/class-use/ColumnSchema.html
index 9795372..cd646d4 100644
--- a/apidocs/org/apache/kudu/class-use/ColumnSchema.html
+++ b/apidocs/org/apache/kudu/class-use/ColumnSchema.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.ColumnSchema (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.ColumnSchema (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.ColumnSchema (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.ColumnSchema (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/class-use/Schema.html b/apidocs/org/apache/kudu/class-use/Schema.html
index 7b792e9..e28befc 100644
--- a/apidocs/org/apache/kudu/class-use/Schema.html
+++ b/apidocs/org/apache/kudu/class-use/Schema.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.Schema (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.Schema (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.Schema (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.Schema (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
@@ -90,6 +90,10 @@
 <td class="colFirst"><a href="#org.apache.kudu.client">org.apache.kudu.client</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><a href="#org.apache.kudu.mapreduce.tools">org.apache.kudu.mapreduce.tools</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
@@ -205,6 +209,44 @@
 </tbody>
 </table>
 </li>
+<li class="blockList"><a name="org.apache.kudu.mapreduce.tools">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a> in <a href="../../../../org/apache/kudu/mapreduce/tools/package-summary.html">org.apache.kudu.mapreduce.tools</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../org/apache/kudu/mapreduce/tools/package-summary.html">org.apache.kudu.mapreduce.tools</a> that return <a href="../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a></code></td>
+<td class="colLast"><span class="typeNameLabel">BigLinkedListCommon.</span><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#getHeadsTableSchema--">getHeadsTableSchema</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a></code></td>
+<td class="colLast"><span class="typeNameLabel">BigLinkedListCommon.</span><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#getTableSchema--">getTableSchema</a></span>()</code>&nbsp;</td>
+</tr>
+</tbody>
+</table>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../org/apache/kudu/mapreduce/tools/package-summary.html">org.apache.kudu.mapreduce.tools</a> with parameters of type <a href="../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client">CreateTableOptions</a></code></td>
+<td class="colLast"><span class="typeNameLabel">BigLinkedListCommon.</span><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#getCreateTableOptions-org.apache.kudu.Schema-int-int-int-">getCreateTableOptions</a></span>(<a href="../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a>&nbsp;schema,
+                     int&nbsp;numReplicas,
+                     int&nbsp;rangePartitions,
+                     int&nbsp;hashPartitions)</code>&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
 </ul>
 </li>
 </ul>
diff --git a/apidocs/org/apache/kudu/class-use/Type.html b/apidocs/org/apache/kudu/class-use/Type.html
index 5cdad40..5b54ead 100644
--- a/apidocs/org/apache/kudu/class-use/Type.html
+++ b/apidocs/org/apache/kudu/class-use/Type.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.Type (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.Type (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.Type (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.Type (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/AbstractKuduScannerBuilder.html b/apidocs/org/apache/kudu/client/AbstractKuduScannerBuilder.html
index 9c49b77..f24245c 100644
--- a/apidocs/org/apache/kudu/client/AbstractKuduScannerBuilder.html
+++ b/apidocs/org/apache/kudu/client/AbstractKuduScannerBuilder.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>AbstractKuduScannerBuilder (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>AbstractKuduScannerBuilder (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,13 +12,13 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="AbstractKuduScannerBuilder (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="AbstractKuduScannerBuilder (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
     }
 //-->
-var methods = {"i0":42,"i1":42,"i2":10,"i3":10,"i4":6,"i5":10,"i6":10,"i7":42,"i8":10,"i9":10,"i10":42,"i11":10,"i12":10,"i13":10,"i14":10,"i15":10,"i16":10,"i17":10};
+var methods = {"i0":42,"i1":42,"i2":10,"i3":10,"i4":6,"i5":10,"i6":10,"i7":42,"i8":10,"i9":10,"i10":42,"i11":10,"i12":10,"i13":10,"i14":10,"i15":10,"i16":10,"i17":10,"i18":10};
 var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"],8:["t4","Concrete Methods"],32:["t6","Deprecated Methods"]};
 var altColor = "altColor";
 var rowColor = "rowColor";
@@ -234,17 +234,24 @@
 </tr>
 <tr id="i15" class="rowColor">
 <td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="type parameter in AbstractKuduScannerBuilder">S</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#setFaultTolerant-boolean-">setFaultTolerant</a></span>(boolean&nbsp;isFaultTolerant)</code>
+<div class="block">Make scans resumable at another tablet server if current server fails if
+ isFaultTolerant is true.</div>
+</td>
+</tr>
+<tr id="i16" class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="type parameter in AbstractKuduScannerBuilder">S</a></code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#setProjectedColumnIndexes-java.util.List-">setProjectedColumnIndexes</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a>&gt;&nbsp;columnIndexes)</code>
 <div class="block">Set which columns will be read by the Scanner.</div>
 </td>
 </tr>
-<tr id="i16" class="altColor">
+<tr id="i17" class="rowColor">
 <td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="type parameter in AbstractKuduScannerBuilder">S</a></code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#setProjectedColumnNames-java.util.List-">setProjectedColumnNames</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;columnNames)</code>
 <div class="block">Set which columns will be read by the Scanner.</div>
 </td>
 </tr>
-<tr id="i17" class="rowColor">
+<tr id="i18" class="altColor">
 <td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="type parameter in AbstractKuduScannerBuilder">S</a></code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#snapshotTimestampMicros-long-">snapshotTimestampMicros</a></span>(long&nbsp;timestamp)</code>
 <div class="block">Sets the timestamp the scan must be executed at, in microseconds since the Unix epoch.</div>
@@ -288,6 +295,32 @@
 </dl>
 </li>
 </ul>
+<a name="setFaultTolerant-boolean-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setFaultTolerant</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="type parameter in AbstractKuduScannerBuilder">S</a>&nbsp;setFaultTolerant(boolean&nbsp;isFaultTolerant)</pre>
+<div class="block">Make scans resumable at another tablet server if current server fails if
+ isFaultTolerant is true.
+ <p>
+ Scans are by default non fault-tolerant, and scans will fail
+ if scanning an individual tablet fails (for example, if a tablet server
+ crashes in the middle of a tablet scan). If isFaultTolerant is set to true,
+ scans will be resumed at another tablet server in the case of failure.
+
+ Fault-tolerant scans typically have lower throughput than non
+ fault-tolerant scans. Fault tolerant scans use READ_AT_SNAPSHOT read mode.
+ If no snapshot timestamp is provided, the server will pick one.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>isFaultTolerant</code> - a boolean that indicates if scan is fault-tolerant</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>this instance</dd>
+</dl>
+</li>
+</ul>
 <a name="addColumnRangePredicate-org.apache.kudu.client.ColumnRangePredicate-">
 <!--   -->
 </a>
diff --git a/apidocs/org/apache/kudu/client/AlterTableOptions.html b/apidocs/org/apache/kudu/client/AlterTableOptions.html
index b4f3760..98f59ee 100644
--- a/apidocs/org/apache/kudu/client/AlterTableOptions.html
+++ b/apidocs/org/apache/kudu/client/AlterTableOptions.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>AlterTableOptions (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>AlterTableOptions (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,13 +12,13 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="AlterTableOptions (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="AlterTableOptions (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
     }
 //-->
-var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10};
+var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10,"i15":10};
 var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
 var altColor = "altColor";
 var rowColor = "rowColor";
@@ -196,11 +196,39 @@
 </tr>
 <tr id="i6" class="altColor">
 <td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AlterTableOptions.html#changeCompressionAlgorithm-java.lang.String-org.apache.kudu.ColumnSchema.CompressionAlgorithm-">changeCompressionAlgorithm</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
+                          org.apache.kudu.ColumnSchema.CompressionAlgorithm&nbsp;ca)</code>
+<div class="block">Change the compression used for a column.</div>
+</td>
+</tr>
+<tr id="i7" class="rowColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AlterTableOptions.html#changeDefault-java.lang.String-java.lang.Object-">changeDefault</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
+             <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;newDefault)</code>
+<div class="block">Change the default value for a column.</div>
+</td>
+</tr>
+<tr id="i8" class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AlterTableOptions.html#changeDesiredBlockSize-java.lang.String-int-">changeDesiredBlockSize</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
+                      int&nbsp;blockSize)</code>
+<div class="block">Change the block size of a column's storage.</div>
+</td>
+</tr>
+<tr id="i9" class="rowColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AlterTableOptions.html#changeEncoding-java.lang.String-org.apache.kudu.ColumnSchema.Encoding-">changeEncoding</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
+              org.apache.kudu.ColumnSchema.Encoding&nbsp;encoding)</code>
+<div class="block">Change the encoding used for a column.</div>
+</td>
+</tr>
+<tr id="i10" class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AlterTableOptions.html#dropColumn-java.lang.String-">dropColumn</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
 <div class="block">Drop a column.</div>
 </td>
 </tr>
-<tr id="i7" class="rowColor">
+<tr id="i11" class="rowColor">
 <td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AlterTableOptions.html#dropRangePartition-org.apache.kudu.client.PartialRow-org.apache.kudu.client.PartialRow-">dropRangePartition</a></span>(<a href="../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;lowerBound,
                   <a href="../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;upperBound)</code>
@@ -208,7 +236,7 @@
  upper bound.</div>
 </td>
 </tr>
-<tr id="i8" class="altColor">
+<tr id="i12" class="altColor">
 <td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AlterTableOptions.html#dropRangePartition-org.apache.kudu.client.PartialRow-org.apache.kudu.client.PartialRow-org.apache.kudu.client.RangePartitionBound-org.apache.kudu.client.RangePartitionBound-">dropRangePartition</a></span>(<a href="../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;lowerBound,
                   <a href="../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;upperBound,
@@ -217,14 +245,20 @@
 <div class="block">Drop the range partition from the table with the specified lower bound and upper bound.</div>
 </td>
 </tr>
-<tr id="i9" class="rowColor">
+<tr id="i13" class="rowColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AlterTableOptions.html#removeDefault-java.lang.String-">removeDefault</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
+<div class="block">Remove the default value for a column.</div>
+</td>
+</tr>
+<tr id="i14" class="altColor">
 <td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AlterTableOptions.html#renameColumn-java.lang.String-java.lang.String-">renameColumn</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;oldName,
             <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;newName)</code>
 <div class="block">Change the name of a column.</div>
 </td>
 </tr>
-<tr id="i10" class="altColor">
+<tr id="i15" class="rowColor">
 <td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AlterTableOptions.html#renameTable-java.lang.String-">renameTable</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;newName)</code>
 <div class="block">Change a table's name.</div>
@@ -393,6 +427,96 @@
 </dl>
 </li>
 </ul>
+<a name="removeDefault-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>removeDefault</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a>&nbsp;removeDefault(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
+<div class="block">Remove the default value for a column.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>name</code> - name of the column</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>this instance</dd>
+</dl>
+</li>
+</ul>
+<a name="changeDefault-java.lang.String-java.lang.Object-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>changeDefault</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a>&nbsp;changeDefault(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
+                                       <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;newDefault)</pre>
+<div class="block">Change the default value for a column. `newDefault` must not be null or
+ else throws <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang"><code>IllegalArgumentException</code></a>.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>name</code> - name of the column</dd>
+<dd><code>newDefault</code> - the new default value</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>this instance</dd>
+</dl>
+</li>
+</ul>
+<a name="changeDesiredBlockSize-java.lang.String-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>changeDesiredBlockSize</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a>&nbsp;changeDesiredBlockSize(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
+                                                int&nbsp;blockSize)</pre>
+<div class="block">Change the block size of a column's storage. A nonpositive value indicates
+ a server-side default.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>name</code> - name of the column</dd>
+<dd><code>blockSize</code> - the new block size</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>this instance</dd>
+</dl>
+</li>
+</ul>
+<a name="changeEncoding-java.lang.String-org.apache.kudu.ColumnSchema.Encoding-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>changeEncoding</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a>&nbsp;changeEncoding(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
+                                        org.apache.kudu.ColumnSchema.Encoding&nbsp;encoding)</pre>
+<div class="block">Change the encoding used for a column.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>name</code> - name of the column</dd>
+<dd><code>encoding</code> - the new encoding</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>this instance</dd>
+</dl>
+</li>
+</ul>
+<a name="changeCompressionAlgorithm-java.lang.String-org.apache.kudu.ColumnSchema.CompressionAlgorithm-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>changeCompressionAlgorithm</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a>&nbsp;changeCompressionAlgorithm(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
+                                                    org.apache.kudu.ColumnSchema.CompressionAlgorithm&nbsp;ca)</pre>
+<div class="block">Change the compression used for a column.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>name</code> - the name of the column</dd>
+<dd><code>ca</code> - the new compression algorithm</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>this instance</dd>
+</dl>
+</li>
+</ul>
 <a name="addRangePartition-org.apache.kudu.client.PartialRow-org.apache.kudu.client.PartialRow-">
 <!--   -->
 </a>
diff --git a/apidocs/org/apache/kudu/client/AlterTableResponse.html b/apidocs/org/apache/kudu/client/AlterTableResponse.html
index 53effdb..b0a2a71 100644
--- a/apidocs/org/apache/kudu/client/AlterTableResponse.html
+++ b/apidocs/org/apache/kudu/client/AlterTableResponse.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>AlterTableResponse (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>AlterTableResponse (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="AlterTableResponse (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="AlterTableResponse (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html b/apidocs/org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html
index c9802e8..ce07f54 100644
--- a/apidocs/org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html
+++ b/apidocs/org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>AsyncKuduClient.AsyncKuduClientBuilder (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>AsyncKuduClient.AsyncKuduClientBuilder (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="AsyncKuduClient.AsyncKuduClientBuilder (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="AsyncKuduClient.AsyncKuduClientBuilder (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/AsyncKuduClient.html b/apidocs/org/apache/kudu/client/AsyncKuduClient.html
index f4b06c1..8d4d334 100644
--- a/apidocs/org/apache/kudu/client/AsyncKuduClient.html
+++ b/apidocs/org/apache/kudu/client/AsyncKuduClient.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>AsyncKuduClient (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>AsyncKuduClient (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="AsyncKuduClient (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="AsyncKuduClient (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
@@ -283,7 +283,9 @@
 </tr>
 <tr id="i8" class="altColor">
 <td class="colFirst"><code>long</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduClient.html#getLastPropagatedTimestamp--">getLastPropagatedTimestamp</a></span>()</code>&nbsp;</td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduClient.html#getLastPropagatedTimestamp--">getLastPropagatedTimestamp</a></span>()</code>
+<div class="block">Returns the last timestamp received from a server.</div>
+</td>
 </tr>
 <tr id="i9" class="rowColor">
 <td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
@@ -495,6 +497,13 @@
 <li class="blockList">
 <h4>getLastPropagatedTimestamp</h4>
 <pre>public&nbsp;long&nbsp;getLastPropagatedTimestamp()</pre>
+<div class="block">Returns the last timestamp received from a server. Used for CLIENT_PROPAGATED
+ external consistency. Note that the returned timestamp is encoded and cannot be
+ interpreted as a raw timestamp.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a long indicating the specially-encoded last timestamp received from a server</dd>
+</dl>
 </li>
 </ul>
 <a name="syncClient--">
@@ -659,8 +668,12 @@
 <li class="blockList">
 <h4>openTable</h4>
 <pre>public&nbsp;com.stumbleupon.async.Deferred&lt;<a href="../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a>&gt;&nbsp;openTable(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
-<div class="block">Open the table with the given name. If the table was just created, the Deferred will only get
- called back when all the tablets have been successfully created.</div>
+<div class="block">Open the table with the given name. If the table was just created, the
+ Deferred will only get called back when all the tablets have been
+ successfully created.
+
+ New range partitions created by other clients will immediately be available
+ after opening the table.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>name</code> - table to open</dd>
diff --git a/apidocs/org/apache/kudu/client/AsyncKuduScanner.AsyncKuduScannerBuilder.html b/apidocs/org/apache/kudu/client/AsyncKuduScanner.AsyncKuduScannerBuilder.html
index 42cd8fc..98b9488 100644
--- a/apidocs/org/apache/kudu/client/AsyncKuduScanner.AsyncKuduScannerBuilder.html
+++ b/apidocs/org/apache/kudu/client/AsyncKuduScanner.AsyncKuduScannerBuilder.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>AsyncKuduScanner.AsyncKuduScannerBuilder (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>AsyncKuduScanner.AsyncKuduScannerBuilder (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="AsyncKuduScanner.AsyncKuduScannerBuilder (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="AsyncKuduScanner.AsyncKuduScannerBuilder (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
@@ -154,7 +154,7 @@
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.kudu.client.<a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="class in org.apache.kudu.client">AbstractKuduScannerBuilder</a></h3>
-<code><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#addColumnRangePredicate-org.apache.kudu.client.ColumnRangePredicate-">addColumnRangePredicate</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#addColumnRangePredicatesRaw-byte:A-">addColumnRangePredicatesRaw</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#addPredicate-org.apache.kudu.client.KuduPredicate-">addPredicate</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#batchSizeBytes-int-">batchSizeBytes</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#cacheBlocks-boolean-">cacheBlocks</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#exclusiveUpperBound-org.apache.kudu.client.PartialRow-">exclusiveUpperBound</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#exclusiveUpperBoundRaw-byte:A-">exclusiveUpperBoundRaw</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#limit-long-">limit</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#lowerBound-org.apache.kudu.client.PartialRow-">lowerBound</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#lowerBoundRaw-byte:A-">lowerBoundRaw</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#prefetching-boolean-">prefetching</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#readMode-org.apache.kudu.client.AsyncKuduScanner.ReadMode-">readMode</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#replicaSelection-org.apache.kudu.client.ReplicaSelection-">replicaSelection</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#scanRequestTimeout-long-">scanRequestTimeout</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#setProjectedColumnIndexes-java.util.List-">setProjectedColumnIndexes</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#setProjectedColumnNames-java.util.List-">setProjectedColumnNames</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#snapshotTimestampMicros-long-">snapshotTimestampMicros</a></code></li>
+<code><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#addColumnRangePredicate-org.apache.kudu.client.ColumnRangePredicate-">addColumnRangePredicate</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#addColumnRangePredicatesRaw-byte:A-">addColumnRangePredicatesRaw</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#addPredicate-org.apache.kudu.client.KuduPredicate-">addPredicate</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#batchSizeBytes-int-">batchSizeBytes</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#cacheBlocks-boolean-">cacheBlocks</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#exclusiveUpperBound-org.apache.kudu.client.PartialRow-">exclusiveUpperBound</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#exclusiveUpperBoundRaw-byte:A-">exclusiveUpperBoundRaw</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#limit-long-">limit</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#lowerBound-org.apache.kudu.client.PartialRow-">lowerBound</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#lowerBoundRaw-byte:A-">lowerBoundRaw</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#prefetching-boolean-">prefetching</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#readMode-org.apache.kudu.client.AsyncKuduScanner.ReadMode-">readMode</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#replicaSelection-org.apache.kudu.client.ReplicaSelection-">replicaSelection</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#scanRequestTimeout-long-">scanRequestTimeout</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#setFaultTolerant-boolean-">setFaultTolerant</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#setProjectedColumnIndexes-java.util.List-">setProjectedColumnIndexes</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#setProjectedColumnNames-java.util.List-">setProjectedColumnNames</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#snapshotTimestampMicros-long-">snapshotTimestampMicros</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
diff --git a/apidocs/org/apache/kudu/client/AsyncKuduScanner.ReadMode.html b/apidocs/org/apache/kudu/client/AsyncKuduScanner.ReadMode.html
index 0bc2181..16b8c1d 100644
--- a/apidocs/org/apache/kudu/client/AsyncKuduScanner.ReadMode.html
+++ b/apidocs/org/apache/kudu/client/AsyncKuduScanner.ReadMode.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>AsyncKuduScanner.ReadMode (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>AsyncKuduScanner.ReadMode (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="AsyncKuduScanner.ReadMode (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="AsyncKuduScanner.ReadMode (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/AsyncKuduScanner.html b/apidocs/org/apache/kudu/client/AsyncKuduScanner.html
index b5d30f6..3e6abc6 100644
--- a/apidocs/org/apache/kudu/client/AsyncKuduScanner.html
+++ b/apidocs/org/apache/kudu/client/AsyncKuduScanner.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>AsyncKuduScanner (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>AsyncKuduScanner (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="AsyncKuduScanner (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="AsyncKuduScanner (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/AsyncKuduSession.html b/apidocs/org/apache/kudu/client/AsyncKuduSession.html
index 16bd028..f758d43 100644
--- a/apidocs/org/apache/kudu/client/AsyncKuduSession.html
+++ b/apidocs/org/apache/kudu/client/AsyncKuduSession.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>AsyncKuduSession (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>AsyncKuduSession (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="AsyncKuduSession (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="AsyncKuduSession (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/ColumnRangePredicate.html b/apidocs/org/apache/kudu/client/ColumnRangePredicate.html
index 95d5934..3a989d8 100644
--- a/apidocs/org/apache/kudu/client/ColumnRangePredicate.html
+++ b/apidocs/org/apache/kudu/client/ColumnRangePredicate.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>ColumnRangePredicate (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>ColumnRangePredicate (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="ColumnRangePredicate (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="ColumnRangePredicate (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/CreateTableOptions.html b/apidocs/org/apache/kudu/client/CreateTableOptions.html
index 345a607..19ecddb 100644
--- a/apidocs/org/apache/kudu/client/CreateTableOptions.html
+++ b/apidocs/org/apache/kudu/client/CreateTableOptions.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>CreateTableOptions (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>CreateTableOptions (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="CreateTableOptions (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="CreateTableOptions (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/Delete.html b/apidocs/org/apache/kudu/client/Delete.html
index 197c068..9a7bc9b 100644
--- a/apidocs/org/apache/kudu/client/Delete.html
+++ b/apidocs/org/apache/kudu/client/Delete.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Delete (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Delete (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Delete (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Delete (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/DeleteTableResponse.html b/apidocs/org/apache/kudu/client/DeleteTableResponse.html
index d765a63..8f74a84 100644
--- a/apidocs/org/apache/kudu/client/DeleteTableResponse.html
+++ b/apidocs/org/apache/kudu/client/DeleteTableResponse.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>DeleteTableResponse (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>DeleteTableResponse (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="DeleteTableResponse (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="DeleteTableResponse (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/ExternalConsistencyMode.html b/apidocs/org/apache/kudu/client/ExternalConsistencyMode.html
index 0fdbda3..cfec26d 100644
--- a/apidocs/org/apache/kudu/client/ExternalConsistencyMode.html
+++ b/apidocs/org/apache/kudu/client/ExternalConsistencyMode.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>ExternalConsistencyMode (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>ExternalConsistencyMode (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="ExternalConsistencyMode (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="ExternalConsistencyMode (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/HasFailedRpcException.html b/apidocs/org/apache/kudu/client/HasFailedRpcException.html
index b213617..7913e27 100644
--- a/apidocs/org/apache/kudu/client/HasFailedRpcException.html
+++ b/apidocs/org/apache/kudu/client/HasFailedRpcException.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>HasFailedRpcException (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>HasFailedRpcException (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="HasFailedRpcException (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="HasFailedRpcException (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/Insert.html b/apidocs/org/apache/kudu/client/Insert.html
index 5aa2195..12d2ba8 100644
--- a/apidocs/org/apache/kudu/client/Insert.html
+++ b/apidocs/org/apache/kudu/client/Insert.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Insert (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Insert (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Insert (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Insert (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/IsAlterTableDoneResponse.html b/apidocs/org/apache/kudu/client/IsAlterTableDoneResponse.html
index f634a97..3b67a54 100644
--- a/apidocs/org/apache/kudu/client/IsAlterTableDoneResponse.html
+++ b/apidocs/org/apache/kudu/client/IsAlterTableDoneResponse.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>IsAlterTableDoneResponse (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>IsAlterTableDoneResponse (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="IsAlterTableDoneResponse (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="IsAlterTableDoneResponse (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/KuduClient.KuduClientBuilder.html b/apidocs/org/apache/kudu/client/KuduClient.KuduClientBuilder.html
index 5a60940..ae5ebe7 100644
--- a/apidocs/org/apache/kudu/client/KuduClient.KuduClientBuilder.html
+++ b/apidocs/org/apache/kudu/client/KuduClient.KuduClientBuilder.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>KuduClient.KuduClientBuilder (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>KuduClient.KuduClientBuilder (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="KuduClient.KuduClientBuilder (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="KuduClient.KuduClientBuilder (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/KuduClient.html b/apidocs/org/apache/kudu/client/KuduClient.html
index 5374c0a..712eeb1 100644
--- a/apidocs/org/apache/kudu/client/KuduClient.html
+++ b/apidocs/org/apache/kudu/client/KuduClient.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>KuduClient (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>KuduClient (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,13 +12,13 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="KuduClient (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="KuduClient (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
     }
 //-->
-var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10,"i15":10,"i16":10,"i17":10,"i18":10,"i19":10,"i20":10};
+var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10,"i15":10,"i16":10,"i17":10,"i18":10,"i19":10,"i20":10,"i21":10,"i22":10};
 var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
 var altColor = "altColor";
 var rowColor = "rowColor";
@@ -165,6 +165,10 @@
 <td class="colFirst"><code>static org.slf4j.Logger</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduClient.html#LOG">LOG</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static long</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduClient.html#NO_TIMESTAMP">NO_TIMESTAMP</a></span></code>&nbsp;</td>
+</tr>
 </table>
 </li>
 </ul>
@@ -228,87 +232,99 @@
 </td>
 </tr>
 <tr id="i7" class="rowColor">
+<td class="colFirst"><code>long</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduClient.html#getLastPropagatedTimestamp--">getLastPropagatedTimestamp</a></span>()</code>
+<div class="block">Returns the last timestamp received from a server.</div>
+</td>
+</tr>
+<tr id="i8" class="altColor">
 <td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduClient.html#getMasterAddressesAsString--">getMasterAddressesAsString</a></span>()</code>&nbsp;</td>
 </tr>
-<tr id="i8" class="altColor">
+<tr id="i9" class="rowColor">
 <td class="colFirst"><code><a href="../../../../org/apache/kudu/client/Statistics.html" title="class in org.apache.kudu.client">Statistics</a></code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduClient.html#getStatistics--">getStatistics</a></span>()</code>
 <div class="block">Get the statistics object of this client.</div>
 </td>
 </tr>
-<tr id="i9" class="rowColor">
+<tr id="i10" class="altColor">
 <td class="colFirst"><code><a href="../../../../org/apache/kudu/client/ListTablesResponse.html" title="class in org.apache.kudu.client">ListTablesResponse</a></code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduClient.html#getTablesList--">getTablesList</a></span>()</code>
 <div class="block">Get the list of all the tables.</div>
 </td>
 </tr>
-<tr id="i10" class="altColor">
+<tr id="i11" class="rowColor">
 <td class="colFirst"><code><a href="../../../../org/apache/kudu/client/ListTablesResponse.html" title="class in org.apache.kudu.client">ListTablesResponse</a></code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduClient.html#getTablesList-java.lang.String-">getTablesList</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;nameFilter)</code>
 <div class="block">Get a list of table names.</div>
 </td>
 </tr>
-<tr id="i11" class="rowColor">
+<tr id="i12" class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduClient.html#importAuthenticationCredentials-byte:A-">importAuthenticationCredentials</a></span>(byte[]&nbsp;authnData)</code>
 <div class="block">Import data allowing this client to authenticate to the cluster.</div>
 </td>
 </tr>
-<tr id="i12" class="altColor">
+<tr id="i13" class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduClient.html#isAlterTableDone-java.lang.String-">isAlterTableDone</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
 <div class="block">Helper method that checks and waits until the completion of an alter command.</div>
 </td>
 </tr>
-<tr id="i13" class="rowColor">
+<tr id="i14" class="altColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduClient.html#isStatisticsEnabled--">isStatisticsEnabled</a></span>()</code>
 <div class="block">Check if statistics collection is enabled for this client.</div>
 </td>
 </tr>
-<tr id="i14" class="altColor">
+<tr id="i15" class="rowColor">
 <td class="colFirst"><code><a href="../../../../org/apache/kudu/client/ListTabletServersResponse.html" title="class in org.apache.kudu.client">ListTabletServersResponse</a></code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduClient.html#listTabletServers--">listTabletServers</a></span>()</code>
 <div class="block">Get the list of running tablet servers.</div>
 </td>
 </tr>
-<tr id="i15" class="rowColor">
+<tr id="i16" class="altColor">
 <td class="colFirst"><code><a href="../../../../org/apache/kudu/client/KuduScanner.KuduScannerBuilder.html" title="class in org.apache.kudu.client">KuduScanner.KuduScannerBuilder</a></code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduClient.html#newScannerBuilder-org.apache.kudu.client.KuduTable-">newScannerBuilder</a></span>(<a href="../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a>&nbsp;table)</code>
 <div class="block">Creates a new <a href="../../../../org/apache/kudu/client/KuduScanner.KuduScannerBuilder.html" title="class in org.apache.kudu.client"><code>KuduScanner.KuduScannerBuilder</code></a> for a particular table.</div>
 </td>
 </tr>
-<tr id="i16" class="altColor">
+<tr id="i17" class="rowColor">
 <td class="colFirst"><code><a href="../../../../org/apache/kudu/client/KuduScanToken.KuduScanTokenBuilder.html" title="class in org.apache.kudu.client">KuduScanToken.KuduScanTokenBuilder</a></code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduClient.html#newScanTokenBuilder-org.apache.kudu.client.KuduTable-">newScanTokenBuilder</a></span>(<a href="../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a>&nbsp;table)</code>
 <div class="block">Creates a new <a href="../../../../org/apache/kudu/client/KuduScanToken.KuduScanTokenBuilder.html" title="class in org.apache.kudu.client"><code>KuduScanToken.KuduScanTokenBuilder</code></a> for a particular table.</div>
 </td>
 </tr>
-<tr id="i17" class="rowColor">
+<tr id="i18" class="altColor">
 <td class="colFirst"><code><a href="../../../../org/apache/kudu/client/KuduSession.html" title="class in org.apache.kudu.client">KuduSession</a></code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduClient.html#newSession--">newSession</a></span>()</code>
 <div class="block">Create a new session for interacting with the cluster.</div>
 </td>
 </tr>
-<tr id="i18" class="altColor">
+<tr id="i19" class="rowColor">
 <td class="colFirst"><code><a href="../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a></code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduClient.html#openTable-java.lang.String-">openTable</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
 <div class="block">Open the table with the given name.</div>
 </td>
 </tr>
-<tr id="i19" class="rowColor">
+<tr id="i20" class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduClient.html#shutdown--">shutdown</a></span>()</code>
 <div class="block">Performs a graceful shutdown of this instance.</div>
 </td>
 </tr>
-<tr id="i20" class="altColor">
+<tr id="i21" class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduClient.html#tableExists-java.lang.String-">tableExists</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
 <div class="block">Test if a table exists.</div>
 </td>
 </tr>
+<tr id="i22" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduClient.html#updateLastPropagatedTimestamp-long-">updateLastPropagatedTimestamp</a></span>(long&nbsp;lastPropagatedTimestamp)</code>
+<div class="block">Updates the last timestamp received from a server.</div>
+</td>
+</tr>
 </table>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
@@ -334,12 +350,25 @@
 <a name="LOG">
 <!--   -->
 </a>
-<ul class="blockListLast">
+<ul class="blockList">
 <li class="blockList">
 <h4>LOG</h4>
 <pre>public static final&nbsp;org.slf4j.Logger LOG</pre>
 </li>
 </ul>
+<a name="NO_TIMESTAMP">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>NO_TIMESTAMP</h4>
+<pre>public static final&nbsp;long NO_TIMESTAMP</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../constant-values.html#org.apache.kudu.client.KuduClient.NO_TIMESTAMP">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
 </li>
 </ul>
 <!-- ============ METHOD DETAIL ========== -->
@@ -348,6 +377,37 @@
 <!--   -->
 </a>
 <h3>Method Detail</h3>
+<a name="updateLastPropagatedTimestamp-long-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>updateLastPropagatedTimestamp</h4>
+<pre>public&nbsp;void&nbsp;updateLastPropagatedTimestamp(long&nbsp;lastPropagatedTimestamp)</pre>
+<div class="block">Updates the last timestamp received from a server. Used for CLIENT_PROPAGATED
+ external consistency.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>lastPropagatedTimestamp</code> - the last timestamp received from a server.</dd>
+</dl>
+</li>
+</ul>
+<a name="getLastPropagatedTimestamp--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getLastPropagatedTimestamp</h4>
+<pre>public&nbsp;long&nbsp;getLastPropagatedTimestamp()</pre>
+<div class="block">Returns the last timestamp received from a server. Used for CLIENT_PROPAGATED
+ external consistency. Note that the returned timestamp is encoded and cannot be
+ interpreted as a raw timestamp.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a long indicating the specially-encoded last timestamp received from a server</dd>
+</dl>
+</li>
+</ul>
 <a name="createTable-java.lang.String-org.apache.kudu.Schema-org.apache.kudu.client.CreateTableOptions-">
 <!--   -->
 </a>
@@ -515,8 +575,11 @@
 <h4>openTable</h4>
 <pre>public&nbsp;<a href="../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a>&nbsp;openTable(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)
                     throws <a href="../../../../org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client">KuduException</a></pre>
-<div class="block">Open the table with the given name. If the table was just created, this method will block until
- all its tablets have also been created.</div>
+<div class="block">Open the table with the given name. If the table was just created, this
+ method will block until all its tablets have also been created.
+
+ New range partitions created by other clients will immediately be available
+ after opening the table.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>name</code> - table to open</dd>
diff --git a/apidocs/org/apache/kudu/client/KuduException.html b/apidocs/org/apache/kudu/client/KuduException.html
index 8a11700..a1aaf75 100644
--- a/apidocs/org/apache/kudu/client/KuduException.html
+++ b/apidocs/org/apache/kudu/client/KuduException.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>KuduException (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>KuduException (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="KuduException (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="KuduException (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/KuduPredicate.ComparisonOp.html b/apidocs/org/apache/kudu/client/KuduPredicate.ComparisonOp.html
index 72c7b6f..9a33ae8 100644
--- a/apidocs/org/apache/kudu/client/KuduPredicate.ComparisonOp.html
+++ b/apidocs/org/apache/kudu/client/KuduPredicate.ComparisonOp.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>KuduPredicate.ComparisonOp (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>KuduPredicate.ComparisonOp (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="KuduPredicate.ComparisonOp (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="KuduPredicate.ComparisonOp (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/KuduPredicate.html b/apidocs/org/apache/kudu/client/KuduPredicate.html
index f28e0ae..35db0b1 100644
--- a/apidocs/org/apache/kudu/client/KuduPredicate.html
+++ b/apidocs/org/apache/kudu/client/KuduPredicate.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>KuduPredicate (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>KuduPredicate (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="KuduPredicate (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="KuduPredicate (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/KuduScanToken.KuduScanTokenBuilder.html b/apidocs/org/apache/kudu/client/KuduScanToken.KuduScanTokenBuilder.html
index 96c7065..e646b55 100644
--- a/apidocs/org/apache/kudu/client/KuduScanToken.KuduScanTokenBuilder.html
+++ b/apidocs/org/apache/kudu/client/KuduScanToken.KuduScanTokenBuilder.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>KuduScanToken.KuduScanTokenBuilder (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>KuduScanToken.KuduScanTokenBuilder (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="KuduScanToken.KuduScanTokenBuilder (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="KuduScanToken.KuduScanTokenBuilder (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
@@ -157,7 +157,7 @@
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.kudu.client.<a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="class in org.apache.kudu.client">AbstractKuduScannerBuilder</a></h3>
-<code><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#addColumnRangePredicate-org.apache.kudu.client.ColumnRangePredicate-">addColumnRangePredicate</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#addColumnRangePredicatesRaw-byte:A-">addColumnRangePredicatesRaw</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#addPredicate-org.apache.kudu.client.KuduPredicate-">addPredicate</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#batchSizeBytes-int-">batchSizeBytes</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#cacheBlocks-boolean-">cacheBlocks</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#exclusiveUpperBound-org.apache.kudu.client.PartialRow-">exclusiveUpperBound</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#exclusiveUpperBoundRaw-byte:A-">exclusiveUpperBoundRaw</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#limit-long-">limit</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#lowerBound-org.apache.kudu.client.PartialRow-">lowerBound</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#lowerBoundRaw-byte:A-">lowerBoundRaw</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#prefetching-boolean-">prefetching</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#readMode-org.apache.kudu.client.AsyncKuduScanner.ReadMode-">readMode</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#replicaSelection-org.apache.kudu.client.ReplicaSelection-">replicaSelection</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#scanRequestTimeout-long-">scanRequestTimeout</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#setProjectedColumnIndexes-java.util.List-">setProjectedColumnIndexes</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#setProjectedColumnNames-java.util.List-">setProjectedColumnNames</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#snapshotTimestampMicros-long-">snapshotTimestampMicros</a></code></li>
+<code><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#addColumnRangePredicate-org.apache.kudu.client.ColumnRangePredicate-">addColumnRangePredicate</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#addColumnRangePredicatesRaw-byte:A-">addColumnRangePredicatesRaw</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#addPredicate-org.apache.kudu.client.KuduPredicate-">addPredicate</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#batchSizeBytes-int-">batchSizeBytes</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#cacheBlocks-boolean-">cacheBlocks</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#exclusiveUpperBound-org.apache.kudu.client.PartialRow-">exclusiveUpperBound</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#exclusiveUpperBoundRaw-byte:A-">exclusiveUpperBoundRaw</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#limit-long-">limit</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#lowerBound-org.apache.kudu.client.PartialRow-">lowerBound</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#lowerBoundRaw-byte:A-">lowerBoundRaw</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#prefetching-boolean-">prefetching</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#readMode-org.apache.kudu.client.AsyncKuduScanner.ReadMode-">readMode</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#replicaSelection-org.apache.kudu.client.ReplicaSelection-">replicaSelection</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#scanRequestTimeout-long-">scanRequestTimeout</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#setFaultTolerant-boolean-">setFaultTolerant</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#setProjectedColumnIndexes-java.util.List-">setProjectedColumnIndexes</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#setProjectedColumnNames-java.util.List-">setProjectedColumnNames</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#snapshotTimestampMicros-long-">snapshotTimestampMicros</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
diff --git a/apidocs/org/apache/kudu/client/KuduScanToken.html b/apidocs/org/apache/kudu/client/KuduScanToken.html
index 9d6cf69..e1e1b51 100644
--- a/apidocs/org/apache/kudu/client/KuduScanToken.html
+++ b/apidocs/org/apache/kudu/client/KuduScanToken.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>KuduScanToken (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>KuduScanToken (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="KuduScanToken (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="KuduScanToken (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/KuduScanner.KuduScannerBuilder.html b/apidocs/org/apache/kudu/client/KuduScanner.KuduScannerBuilder.html
index 3a1b708..c67c214 100644
--- a/apidocs/org/apache/kudu/client/KuduScanner.KuduScannerBuilder.html
+++ b/apidocs/org/apache/kudu/client/KuduScanner.KuduScannerBuilder.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>KuduScanner.KuduScannerBuilder (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>KuduScanner.KuduScannerBuilder (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="KuduScanner.KuduScannerBuilder (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="KuduScanner.KuduScannerBuilder (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
@@ -154,7 +154,7 @@
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.kudu.client.<a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="class in org.apache.kudu.client">AbstractKuduScannerBuilder</a></h3>
-<code><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#addColumnRangePredicate-org.apache.kudu.client.ColumnRangePredicate-">addColumnRangePredicate</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#addColumnRangePredicatesRaw-byte:A-">addColumnRangePredicatesRaw</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#addPredicate-org.apache.kudu.client.KuduPredicate-">addPredicate</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#batchSizeBytes-int-">batchSizeBytes</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#cacheBlocks-boolean-">cacheBlocks</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#exclusiveUpperBound-org.apache.kudu.client.PartialRow-">exclusiveUpperBound</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#exclusiveUpperBoundRaw-byte:A-">exclusiveUpperBoundRaw</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#limit-long-">limit</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#lowerBound-org.apache.kudu.client.PartialRow-">lowerBound</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#lowerBoundRaw-byte:A-">lowerBoundRaw</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#prefetching-boolean-">prefetching</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#readMode-org.apache.kudu.client.AsyncKuduScanner.ReadMode-">readMode</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#replicaSelection-org.apache.kudu.client.ReplicaSelection-">replicaSelection</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#scanRequestTimeout-long-">scanRequestTimeout</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#setProjectedColumnIndexes-java.util.List-">setProjectedColumnIndexes</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#setProjectedColumnNames-java.util.List-">setProjectedColumnNames</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#snapshotTimestampMicros-long-">snapshotTimestampMicros</a></code></li>
+<code><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#addColumnRangePredicate-org.apache.kudu.client.ColumnRangePredicate-">addColumnRangePredicate</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#addColumnRangePredicatesRaw-byte:A-">addColumnRangePredicatesRaw</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#addPredicate-org.apache.kudu.client.KuduPredicate-">addPredicate</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#batchSizeBytes-int-">batchSizeBytes</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#cacheBlocks-boolean-">cacheBlocks</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#exclusiveUpperBound-org.apache.kudu.client.PartialRow-">exclusiveUpperBound</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#exclusiveUpperBoundRaw-byte:A-">exclusiveUpperBoundRaw</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#limit-long-">limit</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#lowerBound-org.apache.kudu.client.PartialRow-">lowerBound</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#lowerBoundRaw-byte:A-">lowerBoundRaw</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#prefetching-boolean-">prefetching</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#readMode-org.apache.kudu.client.AsyncKuduScanner.ReadMode-">readMode</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#replicaSelection-org.apache.kudu.client.ReplicaSelection-">replicaSelection</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#scanRequestTimeout-long-">scanRequestTimeout</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#setFaultTolerant-boolean-">setFaultTolerant</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#setProjectedColumnIndexes-java.util.List-">setProjectedColumnIndexes</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#setProjectedColumnNames-java.util.List-">setProjectedColumnNames</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#snapshotTimestampMicros-long-">snapshotTimestampMicros</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
diff --git a/apidocs/org/apache/kudu/client/KuduScanner.html b/apidocs/org/apache/kudu/client/KuduScanner.html
index 12f180b..2b06b8f 100644
--- a/apidocs/org/apache/kudu/client/KuduScanner.html
+++ b/apidocs/org/apache/kudu/client/KuduScanner.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>KuduScanner (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>KuduScanner (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="KuduScanner (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="KuduScanner (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/KuduSession.html b/apidocs/org/apache/kudu/client/KuduSession.html
index 6a77e1c..8f4d582 100644
--- a/apidocs/org/apache/kudu/client/KuduSession.html
+++ b/apidocs/org/apache/kudu/client/KuduSession.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>KuduSession (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>KuduSession (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="KuduSession (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="KuduSession (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/KuduTable.html b/apidocs/org/apache/kudu/client/KuduTable.html
index 2f51756..ffafe79 100644
--- a/apidocs/org/apache/kudu/client/KuduTable.html
+++ b/apidocs/org/apache/kudu/client/KuduTable.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>KuduTable (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>KuduTable (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="KuduTable (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="KuduTable (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/ListTablesResponse.html b/apidocs/org/apache/kudu/client/ListTablesResponse.html
index fdd687e..9c5fef6 100644
--- a/apidocs/org/apache/kudu/client/ListTablesResponse.html
+++ b/apidocs/org/apache/kudu/client/ListTablesResponse.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>ListTablesResponse (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>ListTablesResponse (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="ListTablesResponse (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="ListTablesResponse (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/ListTabletServersResponse.html b/apidocs/org/apache/kudu/client/ListTabletServersResponse.html
index a1c7b96..e5bdcf5 100644
--- a/apidocs/org/apache/kudu/client/ListTabletServersResponse.html
+++ b/apidocs/org/apache/kudu/client/ListTabletServersResponse.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>ListTabletServersResponse (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>ListTabletServersResponse (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="ListTabletServersResponse (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="ListTabletServersResponse (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/LocatedTablet.Replica.html b/apidocs/org/apache/kudu/client/LocatedTablet.Replica.html
index cfee37d..ee39984 100644
--- a/apidocs/org/apache/kudu/client/LocatedTablet.Replica.html
+++ b/apidocs/org/apache/kudu/client/LocatedTablet.Replica.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>LocatedTablet.Replica (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>LocatedTablet.Replica (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="LocatedTablet.Replica (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="LocatedTablet.Replica (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/LocatedTablet.html b/apidocs/org/apache/kudu/client/LocatedTablet.html
index 9254fd5..e5f3121 100644
--- a/apidocs/org/apache/kudu/client/LocatedTablet.html
+++ b/apidocs/org/apache/kudu/client/LocatedTablet.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>LocatedTablet (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>LocatedTablet (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="LocatedTablet (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="LocatedTablet (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/Operation.html b/apidocs/org/apache/kudu/client/Operation.html
index 5b41c53..e6f4ed5 100644
--- a/apidocs/org/apache/kudu/client/Operation.html
+++ b/apidocs/org/apache/kudu/client/Operation.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Operation (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Operation (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Operation (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Operation (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/OperationResponse.html b/apidocs/org/apache/kudu/client/OperationResponse.html
index 2b47ec1..3315588 100644
--- a/apidocs/org/apache/kudu/client/OperationResponse.html
+++ b/apidocs/org/apache/kudu/client/OperationResponse.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>OperationResponse (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>OperationResponse (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="OperationResponse (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="OperationResponse (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/PartialRow.html b/apidocs/org/apache/kudu/client/PartialRow.html
index f433027..4fe2463 100644
--- a/apidocs/org/apache/kudu/client/PartialRow.html
+++ b/apidocs/org/apache/kudu/client/PartialRow.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>PartialRow (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>PartialRow (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,13 +12,13 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="PartialRow (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="PartialRow (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
     }
 //-->
-var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10,"i15":10,"i16":10,"i17":10,"i18":10,"i19":10,"i20":10,"i21":10,"i22":10,"i23":10,"i24":10,"i25":10,"i26":10};
+var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10,"i15":10,"i16":10,"i17":10,"i18":10,"i19":10,"i20":10,"i21":10,"i22":10,"i23":10,"i24":10,"i25":10,"i26":10,"i27":10,"i28":10,"i29":10,"i30":10,"i31":10,"i32":10,"i33":10,"i34":10,"i35":10,"i36":10,"i37":10,"i38":10,"i39":10,"i40":10,"i41":10,"i42":10,"i43":10,"i44":10,"i45":10,"i46":10,"i47":10,"i48":10,"i49":10,"i50":10};
 var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
 var altColor = "altColor";
 var rowColor = "rowColor";
@@ -321,25 +321,175 @@
 </td>
 </tr>
 <tr id="i23" class="rowColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#getBinary-int-">getBinary</a></span>(int&nbsp;columnIndex)</code>
+<div class="block">Get the specified column's binary data.</div>
+</td>
+</tr>
+<tr id="i24" class="altColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#getBinary-java.lang.String-">getBinary</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</code>
+<div class="block">Get the specified column's binary data.</div>
+</td>
+</tr>
+<tr id="i25" class="rowColor">
+<td class="colFirst"><code>byte[]</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#getBinaryCopy-int-">getBinaryCopy</a></span>(int&nbsp;columnIndex)</code>
+<div class="block">Get a copy of the specified column's binary data.</div>
+</td>
+</tr>
+<tr id="i26" class="altColor">
+<td class="colFirst"><code>byte[]</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#getBinaryCopy-java.lang.String-">getBinaryCopy</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</code>
+<div class="block">Get a copy of the specified column's binary data.</div>
+</td>
+</tr>
+<tr id="i27" class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#getBoolean-int-">getBoolean</a></span>(int&nbsp;columnIndex)</code>
+<div class="block">Get the specified column's boolean</div>
+</td>
+</tr>
+<tr id="i28" class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#getBoolean-java.lang.String-">getBoolean</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</code>
+<div class="block">Get the specified column's boolean</div>
+</td>
+</tr>
+<tr id="i29" class="rowColor">
+<td class="colFirst"><code>byte</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#getByte-int-">getByte</a></span>(int&nbsp;columnIndex)</code>
+<div class="block">Get the specified column's byte</div>
+</td>
+</tr>
+<tr id="i30" class="altColor">
+<td class="colFirst"><code>byte</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#getByte-java.lang.String-">getByte</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</code>
+<div class="block">Get the specified column's byte</div>
+</td>
+</tr>
+<tr id="i31" class="rowColor">
+<td class="colFirst"><code>double</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#getDouble-int-">getDouble</a></span>(int&nbsp;columnIndex)</code>
+<div class="block">Get the specified column's double</div>
+</td>
+</tr>
+<tr id="i32" class="altColor">
+<td class="colFirst"><code>double</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#getDouble-java.lang.String-">getDouble</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</code>
+<div class="block">Get the specified column's double</div>
+</td>
+</tr>
+<tr id="i33" class="rowColor">
+<td class="colFirst"><code>float</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#getFloat-int-">getFloat</a></span>(int&nbsp;columnIndex)</code>
+<div class="block">Get the specified column's float</div>
+</td>
+</tr>
+<tr id="i34" class="altColor">
+<td class="colFirst"><code>float</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#getFloat-java.lang.String-">getFloat</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</code>
+<div class="block">Get the specified column's float</div>
+</td>
+</tr>
+<tr id="i35" class="rowColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#getInt-int-">getInt</a></span>(int&nbsp;columnIndex)</code>
+<div class="block">Get the specified column's integer</div>
+</td>
+</tr>
+<tr id="i36" class="altColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#getInt-java.lang.String-">getInt</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</code>
+<div class="block">Get the specified column's integer</div>
+</td>
+</tr>
+<tr id="i37" class="rowColor">
+<td class="colFirst"><code>long</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#getLong-int-">getLong</a></span>(int&nbsp;columnIndex)</code>
+<div class="block">Get the specified column's long
+
+ If this is a UNIXTIME_MICROS column, the long value corresponds to a number of microseconds
+ since midnight, January 1, 1970 UTC.</div>
+</td>
+</tr>
+<tr id="i38" class="altColor">
+<td class="colFirst"><code>long</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#getLong-java.lang.String-">getLong</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</code>
+<div class="block">Get the specified column's long
+
+ If this is a UNIXTIME_MICROS column, the long value corresponds to a number of microseconds
+ since midnight, January 1, 1970 UTC.</div>
+</td>
+</tr>
+<tr id="i39" class="rowColor">
+<td class="colFirst"><code>short</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#getShort-int-">getShort</a></span>(int&nbsp;columnIndex)</code>
+<div class="block">Get the specified column's short</div>
+</td>
+</tr>
+<tr id="i40" class="altColor">
+<td class="colFirst"><code>short</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#getShort-java.lang.String-">getShort</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</code>
+<div class="block">Get the specified column's short</div>
+</td>
+</tr>
+<tr id="i41" class="rowColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#getString-int-">getString</a></span>(int&nbsp;columnIndex)</code>
+<div class="block">Get the specified column's string.</div>
+</td>
+</tr>
+<tr id="i42" class="altColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#getString-java.lang.String-">getString</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</code>
+<div class="block">Get the specified column's string.</div>
+</td>
+</tr>
+<tr id="i43" class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#isNull-int-">isNull</a></span>(int&nbsp;columnIndex)</code>
+<div class="block">Get if the specified column is NULL</div>
+</td>
+</tr>
+<tr id="i44" class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#isNull-java.lang.String-">isNull</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</code>
+<div class="block">Get if the specified column is NULL</div>
+</td>
+</tr>
+<tr id="i45" class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#isSet-int-">isSet</a></span>(int&nbsp;columnIndex)</code>
+<div class="block">Get if the specified column has been set</div>
+</td>
+</tr>
+<tr id="i46" class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#isSet-java.lang.String-">isSet</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</code>
+<div class="block">Get if the specified column has been set</div>
+</td>
+</tr>
+<tr id="i47" class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#setNull-int-">setNull</a></span>(int&nbsp;columnIndex)</code>
 <div class="block">Set the specified column to null</div>
 </td>
 </tr>
-<tr id="i24" class="altColor">
+<tr id="i48" class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#setNull-java.lang.String-">setNull</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</code>
 <div class="block">Set the specified column to null</div>
 </td>
 </tr>
-<tr id="i25" class="rowColor">
+<tr id="i49" class="rowColor">
 <td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#stringifyRowKey--">stringifyRowKey</a></span>()</code>
 <div class="block">Transforms the row key into a string representation where each column is in the format:
  "type col_name=value".</div>
 </td>
 </tr>
-<tr id="i26" class="altColor">
+<tr id="i50" class="altColor">
 <td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#toString--">toString</a></span>()</code></td>
 </tr>
@@ -402,9 +552,9 @@
 <dd><code>columnIndex</code> - the column's index in the schema</dd>
 <dd><code>val</code> - value to add</dd>
 <dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist or if the value doesn't match
- the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the value doesn't match the column's type</dd>
 <dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the row was already applied</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
 </dl>
 </li>
 </ul>
@@ -422,12 +572,51 @@
 <dd><code>columnName</code> - Name of the column</dd>
 <dd><code>val</code> - value to add</dd>
 <dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist or if the value doesn't match
- the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist
+ or if the value doesn't match the column's type</dd>
 <dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the row was already applied</dd>
 </dl>
 </li>
 </ul>
+<a name="getBoolean-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getBoolean</h4>
+<pre>public&nbsp;boolean&nbsp;getBoolean(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</pre>
+<div class="block">Get the specified column's boolean</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnName</code> - name of the column to get data for</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a boolean</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist,
+ is null, is unset, or the type doesn't match the column's type</dd>
+</dl>
+</li>
+</ul>
+<a name="getBoolean-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getBoolean</h4>
+<pre>public&nbsp;boolean&nbsp;getBoolean(int&nbsp;columnIndex)</pre>
+<div class="block">Get the specified column's boolean</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnIndex</code> - Column index in the schema</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a boolean</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column is null, is unset,
+ or if the type doesn't match the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
+</dl>
+</li>
+</ul>
 <a name="addByte-int-byte-">
 <!--   -->
 </a>
@@ -442,9 +631,9 @@
 <dd><code>columnIndex</code> - the column's index in the schema</dd>
 <dd><code>val</code> - value to add</dd>
 <dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist or if the value doesn't match
- the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the value doesn't match the column's type</dd>
 <dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the row was already applied</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
 </dl>
 </li>
 </ul>
@@ -462,12 +651,51 @@
 <dd><code>columnName</code> - Name of the column</dd>
 <dd><code>val</code> - value to add</dd>
 <dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist or if the value doesn't match
- the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist
+ or if the value doesn't match the column's type</dd>
 <dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the row was already applied</dd>
 </dl>
 </li>
 </ul>
+<a name="getByte-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getByte</h4>
+<pre>public&nbsp;byte&nbsp;getByte(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</pre>
+<div class="block">Get the specified column's byte</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnName</code> - name of the column to get data for</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a byte</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist,
+ is null, is unset, or the type doesn't match the column's type</dd>
+</dl>
+</li>
+</ul>
+<a name="getByte-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getByte</h4>
+<pre>public&nbsp;byte&nbsp;getByte(int&nbsp;columnIndex)</pre>
+<div class="block">Get the specified column's byte</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnIndex</code> - Column index in the schema</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a byte</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column is null, is unset,
+ or if the type doesn't match the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
+</dl>
+</li>
+</ul>
 <a name="addShort-int-short-">
 <!--   -->
 </a>
@@ -482,9 +710,9 @@
 <dd><code>columnIndex</code> - the column's index in the schema</dd>
 <dd><code>val</code> - value to add</dd>
 <dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist or if the value doesn't match
- the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the value doesn't match the column's type</dd>
 <dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the row was already applied</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
 </dl>
 </li>
 </ul>
@@ -502,12 +730,51 @@
 <dd><code>columnName</code> - Name of the column</dd>
 <dd><code>val</code> - value to add</dd>
 <dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist or if the value doesn't match
- the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist
+ or if the value doesn't match the column's type</dd>
 <dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the row was already applied</dd>
 </dl>
 </li>
 </ul>
+<a name="getShort-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getShort</h4>
+<pre>public&nbsp;short&nbsp;getShort(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</pre>
+<div class="block">Get the specified column's short</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnName</code> - name of the column to get data for</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a short</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist,
+ is null, is unset, or the type doesn't match the column's type</dd>
+</dl>
+</li>
+</ul>
+<a name="getShort-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getShort</h4>
+<pre>public&nbsp;short&nbsp;getShort(int&nbsp;columnIndex)</pre>
+<div class="block">Get the specified column's short</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnIndex</code> - Column index in the schema</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a short</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column is null, is unset,
+ or if the type doesn't match the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
+</dl>
+</li>
+</ul>
 <a name="addInt-int-int-">
 <!--   -->
 </a>
@@ -522,9 +789,9 @@
 <dd><code>columnIndex</code> - the column's index in the schema</dd>
 <dd><code>val</code> - value to add</dd>
 <dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist or if the value doesn't match
- the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the value doesn't match the column's type</dd>
 <dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the row was already applied</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
 </dl>
 </li>
 </ul>
@@ -542,12 +809,51 @@
 <dd><code>columnName</code> - Name of the column</dd>
 <dd><code>val</code> - value to add</dd>
 <dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist or if the value doesn't match
- the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist
+ or if the value doesn't match the column's type</dd>
 <dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the row was already applied</dd>
 </dl>
 </li>
 </ul>
+<a name="getInt-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getInt</h4>
+<pre>public&nbsp;int&nbsp;getInt(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</pre>
+<div class="block">Get the specified column's integer</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnName</code> - name of the column to get data for</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>an integer</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist,
+ is null, is unset, or the type doesn't match the column's type</dd>
+</dl>
+</li>
+</ul>
+<a name="getInt-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getInt</h4>
+<pre>public&nbsp;int&nbsp;getInt(int&nbsp;columnIndex)</pre>
+<div class="block">Get the specified column's integer</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnIndex</code> - Column index in the schema</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>an integer</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column is null, is unset,
+ or if the type doesn't match the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
+</dl>
+</li>
+</ul>
 <a name="addLong-int-long-">
 <!--   -->
 </a>
@@ -562,9 +868,9 @@
 <dd><code>columnIndex</code> - the column's index in the schema</dd>
 <dd><code>val</code> - value to add</dd>
 <dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist or if the value doesn't match
- the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the value doesn't match the column's type</dd>
 <dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the row was already applied</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
 </dl>
 </li>
 </ul>
@@ -586,12 +892,57 @@
 <dd><code>columnName</code> - Name of the column</dd>
 <dd><code>val</code> - value to add</dd>
 <dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist or if the value doesn't match
- the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist
+ or if the value doesn't match the column's type</dd>
 <dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the row was already applied</dd>
 </dl>
 </li>
 </ul>
+<a name="getLong-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getLong</h4>
+<pre>public&nbsp;long&nbsp;getLong(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</pre>
+<div class="block">Get the specified column's long
+
+ If this is a UNIXTIME_MICROS column, the long value corresponds to a number of microseconds
+ since midnight, January 1, 1970 UTC.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnName</code> - name of the column to get data for</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a long</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist,
+ is null, is unset, or the type doesn't match the column's type</dd>
+</dl>
+</li>
+</ul>
+<a name="getLong-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getLong</h4>
+<pre>public&nbsp;long&nbsp;getLong(int&nbsp;columnIndex)</pre>
+<div class="block">Get the specified column's long
+
+ If this is a UNIXTIME_MICROS column, the long value corresponds to a number of microseconds
+ since midnight, January 1, 1970 UTC.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnIndex</code> - Column index in the schema</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a long</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column is null, is unset,
+ or if the type doesn't match the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
+</dl>
+</li>
+</ul>
 <a name="addFloat-int-float-">
 <!--   -->
 </a>
@@ -606,9 +957,9 @@
 <dd><code>columnIndex</code> - the column's index in the schema</dd>
 <dd><code>val</code> - value to add</dd>
 <dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist or if the value doesn't match
- the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the value doesn't match the column's type</dd>
 <dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the row was already applied</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
 </dl>
 </li>
 </ul>
@@ -626,12 +977,51 @@
 <dd><code>columnName</code> - Name of the column</dd>
 <dd><code>val</code> - value to add</dd>
 <dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist or if the value doesn't match
- the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist
+ or if the value doesn't match the column's type</dd>
 <dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the row was already applied</dd>
 </dl>
 </li>
 </ul>
+<a name="getFloat-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getFloat</h4>
+<pre>public&nbsp;float&nbsp;getFloat(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</pre>
+<div class="block">Get the specified column's float</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnName</code> - name of the column to get data for</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a float</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist,
+ is null, is unset, or the type doesn't match the column's type</dd>
+</dl>
+</li>
+</ul>
+<a name="getFloat-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getFloat</h4>
+<pre>public&nbsp;float&nbsp;getFloat(int&nbsp;columnIndex)</pre>
+<div class="block">Get the specified column's float</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnIndex</code> - Column index in the schema</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a float</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column is null, is unset,
+ or if the type doesn't match the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
+</dl>
+</li>
+</ul>
 <a name="addDouble-int-double-">
 <!--   -->
 </a>
@@ -646,9 +1036,9 @@
 <dd><code>columnIndex</code> - the column's index in the schema</dd>
 <dd><code>val</code> - value to add</dd>
 <dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist or if the value doesn't match
- the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the value doesn't match the column's type</dd>
 <dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the row was already applied</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
 </dl>
 </li>
 </ul>
@@ -666,12 +1056,51 @@
 <dd><code>columnName</code> - Name of the column</dd>
 <dd><code>val</code> - value to add</dd>
 <dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist or if the value doesn't match
- the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist
+ or if the value doesn't match the column's type</dd>
 <dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the row was already applied</dd>
 </dl>
 </li>
 </ul>
+<a name="getDouble-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getDouble</h4>
+<pre>public&nbsp;double&nbsp;getDouble(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</pre>
+<div class="block">Get the specified column's double</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnName</code> - name of the column to get data for</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a double</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist,
+ is null, is unset, or the type doesn't match the column's type</dd>
+</dl>
+</li>
+</ul>
+<a name="getDouble-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getDouble</h4>
+<pre>public&nbsp;double&nbsp;getDouble(int&nbsp;columnIndex)</pre>
+<div class="block">Get the specified column's double</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnIndex</code> - Column index in the schema</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a double</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column is null, is unset,
+ or if the type doesn't match the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
+</dl>
+</li>
+</ul>
 <a name="addString-int-java.lang.String-">
 <!--   -->
 </a>
@@ -686,9 +1115,9 @@
 <dd><code>columnIndex</code> - the column's index in the schema</dd>
 <dd><code>val</code> - value to add</dd>
 <dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist or if the value doesn't match
- the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the value doesn't match the column's type</dd>
 <dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the row was already applied</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
 </dl>
 </li>
 </ul>
@@ -706,12 +1135,51 @@
 <dd><code>columnName</code> - Name of the column</dd>
 <dd><code>val</code> - value to add</dd>
 <dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist or if the value doesn't match
- the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist
+ or if the value doesn't match the column's type</dd>
 <dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the row was already applied</dd>
 </dl>
 </li>
 </ul>
+<a name="getString-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getString</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getString(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</pre>
+<div class="block">Get the specified column's string.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnName</code> - name of the column to get data for</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a string</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist,
+ is null, is unset, or the type doesn't match the column's type</dd>
+</dl>
+</li>
+</ul>
+<a name="getString-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getString</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getString(int&nbsp;columnIndex)</pre>
+<div class="block">Get the specified column's string.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnIndex</code> - Column index in the schema</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a string</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column is null, is unset,
+ or if the type doesn't match the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
+</dl>
+</li>
+</ul>
 <a name="addStringUtf8-int-byte:A-">
 <!--   -->
 </a>
@@ -727,9 +1195,9 @@
 <dd><code>columnIndex</code> - the column's index in the schema</dd>
 <dd><code>val</code> - value to add</dd>
 <dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist or if the value doesn't match
- the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the value doesn't match the column's type</dd>
 <dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the row was already applied</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
 </dl>
 </li>
 </ul>
@@ -748,8 +1216,8 @@
 <dd><code>columnName</code> - Name of the column</dd>
 <dd><code>val</code> - value to add</dd>
 <dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist or if the value doesn't match
- the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist
+ or if the value doesn't match the column's type</dd>
 <dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the row was already applied</dd>
 </dl>
 </li>
@@ -769,9 +1237,9 @@
 <dd><code>columnIndex</code> - the column's index in the schema</dd>
 <dd><code>val</code> - value to add</dd>
 <dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist or if the value doesn't match
- the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the value doesn't match the column's type</dd>
 <dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the row was already applied</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
 </dl>
 </li>
 </ul>
@@ -791,9 +1259,9 @@
 <dd><code>columnIndex</code> - the column's index in the schema</dd>
 <dd><code>value</code> - byte buffer to get the value from</dd>
 <dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist or if the value doesn't match
- the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the value doesn't match the column's type</dd>
 <dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the row was already applied</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
 </dl>
 </li>
 </ul>
@@ -812,8 +1280,8 @@
 <dd><code>columnName</code> - Name of the column</dd>
 <dd><code>val</code> - value to add</dd>
 <dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist or if the value doesn't match
- the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist
+ or if the value doesn't match the column's type</dd>
 <dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the row was already applied</dd>
 </dl>
 </li>
@@ -834,12 +1302,94 @@
 <dd><code>columnName</code> - Name of the column</dd>
 <dd><code>value</code> - byte buffer to get the value from</dd>
 <dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist or if the value doesn't match
- the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist
+ or if the value doesn't match the column's type</dd>
 <dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the row was already applied</dd>
 </dl>
 </li>
 </ul>
+<a name="getBinaryCopy-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getBinaryCopy</h4>
+<pre>public&nbsp;byte[]&nbsp;getBinaryCopy(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</pre>
+<div class="block">Get a copy of the specified column's binary data.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnName</code> - name of the column to get data for</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a byte[] with the binary data.</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist,
+ is null, is unset, or the type doesn't match the column's type</dd>
+</dl>
+</li>
+</ul>
+<a name="getBinaryCopy-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getBinaryCopy</h4>
+<pre>public&nbsp;byte[]&nbsp;getBinaryCopy(int&nbsp;columnIndex)</pre>
+<div class="block">Get a copy of the specified column's binary data.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnIndex</code> - Column index in the schema</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a byte[] with the binary data.</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column is null, is unset,
+ or if the type doesn't match the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
+</dl>
+</li>
+</ul>
+<a name="getBinary-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getBinary</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a>&nbsp;getBinary(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</pre>
+<div class="block">Get the specified column's binary data.
+
+ This doesn't copy the data and instead returns a ByteBuffer that wraps it.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnName</code> - name of the column to get data for</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a ByteBuffer with the binary data.</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist,
+ is null, is unset, or the type doesn't match the column's type</dd>
+</dl>
+</li>
+</ul>
+<a name="getBinary-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getBinary</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a>&nbsp;getBinary(int&nbsp;columnIndex)</pre>
+<div class="block">Get the specified column's binary data.
+
+ This doesn't copy the data and instead returns a ByteBuffer that wraps it.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnIndex</code> - Column index in the schema</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a ByteBuffer with the binary data.</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column is null, is unset,
+ or if the type doesn't match the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
+</dl>
+</li>
+</ul>
 <a name="setNull-int-">
 <!--   -->
 </a>
@@ -874,6 +1424,80 @@
 </dl>
 </li>
 </ul>
+<a name="isNull-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>isNull</h4>
+<pre>public&nbsp;boolean&nbsp;isNull(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</pre>
+<div class="block">Get if the specified column is NULL</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnName</code> - name of the column in the schema</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>true if the column cell is null and the column is nullable,
+ false otherwise</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist</dd>
+</dl>
+</li>
+</ul>
+<a name="isNull-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>isNull</h4>
+<pre>public&nbsp;boolean&nbsp;isNull(int&nbsp;columnIndex)</pre>
+<div class="block">Get if the specified column is NULL</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnIndex</code> - Column index in the schema</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>true if the column cell is null and the column is nullable,
+ false otherwise</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
+</dl>
+</li>
+</ul>
+<a name="isSet-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>isSet</h4>
+<pre>public&nbsp;boolean&nbsp;isSet(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</pre>
+<div class="block">Get if the specified column has been set</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnName</code> - name of the column in the schema</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>true if the column has been set</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist</dd>
+</dl>
+</li>
+</ul>
+<a name="isSet-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>isSet</h4>
+<pre>public&nbsp;boolean&nbsp;isSet(int&nbsp;columnIndex)</pre>
+<div class="block">Get if the specified column has been set</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnIndex</code> - Column index in the schema</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>true if the column has been set</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
+</dl>
+</li>
+</ul>
 <a name="encodePrimaryKey--">
 <!--   -->
 </a>
diff --git a/apidocs/org/apache/kudu/client/PleaseThrottleException.html b/apidocs/org/apache/kudu/client/PleaseThrottleException.html
index b21f4b4..5eaeacc 100644
--- a/apidocs/org/apache/kudu/client/PleaseThrottleException.html
+++ b/apidocs/org/apache/kudu/client/PleaseThrottleException.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>PleaseThrottleException (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>PleaseThrottleException (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="PleaseThrottleException (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="PleaseThrottleException (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/RangePartitionBound.html b/apidocs/org/apache/kudu/client/RangePartitionBound.html
index 809b351..c8c1ecb 100644
--- a/apidocs/org/apache/kudu/client/RangePartitionBound.html
+++ b/apidocs/org/apache/kudu/client/RangePartitionBound.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>RangePartitionBound (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>RangePartitionBound (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="RangePartitionBound (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="RangePartitionBound (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/ReplicaSelection.html b/apidocs/org/apache/kudu/client/ReplicaSelection.html
index 4e98ed1..ce6cf98 100644
--- a/apidocs/org/apache/kudu/client/ReplicaSelection.html
+++ b/apidocs/org/apache/kudu/client/ReplicaSelection.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>ReplicaSelection (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>ReplicaSelection (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="ReplicaSelection (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="ReplicaSelection (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/RowError.html b/apidocs/org/apache/kudu/client/RowError.html
index d9152ec..e13de09 100644
--- a/apidocs/org/apache/kudu/client/RowError.html
+++ b/apidocs/org/apache/kudu/client/RowError.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>RowError (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>RowError (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="RowError (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="RowError (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/RowErrorsAndOverflowStatus.html b/apidocs/org/apache/kudu/client/RowErrorsAndOverflowStatus.html
index 67dfdf8..7353997 100644
--- a/apidocs/org/apache/kudu/client/RowErrorsAndOverflowStatus.html
+++ b/apidocs/org/apache/kudu/client/RowErrorsAndOverflowStatus.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>RowErrorsAndOverflowStatus (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>RowErrorsAndOverflowStatus (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="RowErrorsAndOverflowStatus (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="RowErrorsAndOverflowStatus (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/RowResult.html b/apidocs/org/apache/kudu/client/RowResult.html
index fcf54c3..ecca0fb 100644
--- a/apidocs/org/apache/kudu/client/RowResult.html
+++ b/apidocs/org/apache/kudu/client/RowResult.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>RowResult (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>RowResult (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="RowResult (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="RowResult (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
@@ -343,9 +343,10 @@
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>columnName</code> - name of the column to get data for</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
-<dd>An integer</dd>
+<dd>an integer</dd>
 <dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column is null</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist, is null,
+ or if the type doesn't match the column's type</dd>
 </dl>
 </li>
 </ul>
@@ -361,9 +362,10 @@
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>columnIndex</code> - Column index in the schema</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
-<dd>An integer</dd>
+<dd>an integer</dd>
 <dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column is null</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column is null
+ or if the type doesn't match the column's type</dd>
 <dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
 </dl>
 </li>
@@ -380,9 +382,10 @@
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>columnName</code> - name of the column to get data for</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
-<dd>A short</dd>
+<dd>a short</dd>
 <dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column is null</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist, is null,
+ or if the type doesn't match the column's type</dd>
 </dl>
 </li>
 </ul>
@@ -398,9 +401,10 @@
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>columnIndex</code> - Column index in the schema</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
-<dd>A short</dd>
+<dd>a short</dd>
 <dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column is null</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column is null
+ or if the type doesn't match the column's type</dd>
 <dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
 </dl>
 </li>
@@ -417,9 +421,10 @@
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>columnName</code> - name of the column to get data for</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
-<dd>A boolean</dd>
+<dd>a boolean</dd>
 <dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column is null</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist, is null,
+ or if the type doesn't match the column's type</dd>
 </dl>
 </li>
 </ul>
@@ -435,9 +440,10 @@
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>columnIndex</code> - Column index in the schema</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
-<dd>A boolean</dd>
+<dd>a boolean</dd>
 <dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column is null</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column is null
+ or if the type doesn't match the column's type</dd>
 <dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
 </dl>
 </li>
@@ -454,9 +460,10 @@
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>columnName</code> - name of the column to get data for</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
-<dd>A byte</dd>
+<dd>a byte</dd>
 <dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column is null</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist, is null,
+ or if the type doesn't match the column's type</dd>
 </dl>
 </li>
 </ul>
@@ -472,9 +479,10 @@
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>columnIndex</code> - Column index in the schema</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
-<dd>A byte</dd>
+<dd>a byte</dd>
 <dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column is null</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column is null
+ or if the type doesn't match the column's type</dd>
 <dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
 </dl>
 </li>
@@ -494,9 +502,9 @@
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>columnName</code> - name of the column to get data for</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
-<dd>A positive long</dd>
+<dd>a positive long</dd>
 <dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column is null\</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist or is null</dd>
 </dl>
 </li>
 </ul>
@@ -515,7 +523,7 @@
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>columnIndex</code> - Column index in the schema</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
-<dd>A positive long</dd>
+<dd>a positive long</dd>
 <dt><span class="throwsLabel">Throws:</span></dt>
 <dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column is null</dd>
 <dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
@@ -534,7 +542,10 @@
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>columnName</code> - name of the column to get data for</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
-<dd>A float</dd>
+<dd>a float</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist, is null,
+ or if the type doesn't match the column's type</dd>
 </dl>
 </li>
 </ul>
@@ -550,7 +561,11 @@
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>columnIndex</code> - Column index in the schema</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
-<dd>A float</dd>
+<dd>a float</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column is null
+ or if the type doesn't match the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
 </dl>
 </li>
 </ul>
@@ -566,7 +581,10 @@
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>columnName</code> - name of the column to get data for</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
-<dd>A double</dd>
+<dd>a double</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist, is null,
+ or if the type doesn't match the column's type</dd>
 </dl>
 </li>
 </ul>
@@ -582,7 +600,11 @@
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>columnIndex</code> - Column index in the schema</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
-<dd>A double</dd>
+<dd>a double</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column is null
+ or if the type doesn't match the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
 </dl>
 </li>
 </ul>
@@ -596,7 +618,7 @@
 <div class="block">Get the schema used for this scanner's column projection.</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
-<dd>A column projection as a schema.</dd>
+<dd>a column projection as a schema.</dd>
 </dl>
 </li>
 </ul>
@@ -612,9 +634,10 @@
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>columnName</code> - name of the column to get data for</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
-<dd>A string</dd>
+<dd>a string</dd>
 <dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column is null</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist, is null,
+ or if the type doesn't match the column's type</dd>
 </dl>
 </li>
 </ul>
@@ -630,9 +653,10 @@
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>columnIndex</code> - Column index in the schema</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
-<dd>A string</dd>
+<dd>a string</dd>
 <dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column is null</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column is null
+ or if the type doesn't match the column's type</dd>
 <dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
 </dl>
 </li>
@@ -651,7 +675,8 @@
 <dt><span class="returnLabel">Returns:</span></dt>
 <dd>a byte[] with the binary data.</dd>
 <dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column is null</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist, is null,
+ or if the type doesn't match the column's type</dd>
 <dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
 </dl>
 </li>
@@ -670,7 +695,8 @@
 <dt><span class="returnLabel">Returns:</span></dt>
 <dd>a byte[] with the binary data.</dd>
 <dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column is null</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column is null
+ or if the type doesn't match the column's type</dd>
 <dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
 </dl>
 </li>
@@ -689,9 +715,10 @@
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>columnName</code> - name of the column to get data for</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
-<dd>a byte[] with the binary data.</dd>
+<dd>a ByteBuffer with the binary data.</dd>
 <dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column is null</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist, is null,
+ or if the type doesn't match the column's type</dd>
 <dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
 </dl>
 </li>
@@ -710,9 +737,10 @@
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>columnIndex</code> - Column index in the schema</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
-<dd>a byte[] with the binary data.</dd>
+<dd>a ByteBuffer with the binary data.</dd>
 <dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column is null</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column is null
+ or if the type doesn't match the column's type</dd>
 <dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
 </dl>
 </li>
@@ -727,7 +755,7 @@
 <div class="block">Get if the specified column is NULL</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>columnName</code> - name of the column to get data for</dd>
+<dd><code>columnName</code> - name of the column in the schema</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
 <dd>true if the column cell is null and the column is nullable,
  false otherwise</dd>
diff --git a/apidocs/org/apache/kudu/client/RowResultIterator.html b/apidocs/org/apache/kudu/client/RowResultIterator.html
index 83e54e0..caf10e7 100644
--- a/apidocs/org/apache/kudu/client/RowResultIterator.html
+++ b/apidocs/org/apache/kudu/client/RowResultIterator.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>RowResultIterator (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>RowResultIterator (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="RowResultIterator (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="RowResultIterator (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/SessionConfiguration.FlushMode.html b/apidocs/org/apache/kudu/client/SessionConfiguration.FlushMode.html
index b11227a..cc15856 100644
--- a/apidocs/org/apache/kudu/client/SessionConfiguration.FlushMode.html
+++ b/apidocs/org/apache/kudu/client/SessionConfiguration.FlushMode.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>SessionConfiguration.FlushMode (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>SessionConfiguration.FlushMode (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="SessionConfiguration.FlushMode (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="SessionConfiguration.FlushMode (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/SessionConfiguration.html b/apidocs/org/apache/kudu/client/SessionConfiguration.html
index a026ae0..e436b49 100644
--- a/apidocs/org/apache/kudu/client/SessionConfiguration.html
+++ b/apidocs/org/apache/kudu/client/SessionConfiguration.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>SessionConfiguration (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>SessionConfiguration (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="SessionConfiguration (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="SessionConfiguration (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/Statistics.Statistic.html b/apidocs/org/apache/kudu/client/Statistics.Statistic.html
index d5ea8d9..3d48691 100644
--- a/apidocs/org/apache/kudu/client/Statistics.Statistic.html
+++ b/apidocs/org/apache/kudu/client/Statistics.Statistic.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Statistics.Statistic (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Statistics.Statistic (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Statistics.Statistic (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Statistics.Statistic (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/Statistics.html b/apidocs/org/apache/kudu/client/Statistics.html
index 478e56d..622e2d7 100644
--- a/apidocs/org/apache/kudu/client/Statistics.html
+++ b/apidocs/org/apache/kudu/client/Statistics.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Statistics (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Statistics (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Statistics (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Statistics (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/Status.html b/apidocs/org/apache/kudu/client/Status.html
index 34f5a36..1a5b759 100644
--- a/apidocs/org/apache/kudu/client/Status.html
+++ b/apidocs/org/apache/kudu/client/Status.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Status (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Status (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Status (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Status (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/Update.html b/apidocs/org/apache/kudu/client/Update.html
index dd0016f..fe63583 100644
--- a/apidocs/org/apache/kudu/client/Update.html
+++ b/apidocs/org/apache/kudu/client/Update.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Update (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Update (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Update (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Update (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/Upsert.html b/apidocs/org/apache/kudu/client/Upsert.html
index 55118ba..4605707 100644
--- a/apidocs/org/apache/kudu/client/Upsert.html
+++ b/apidocs/org/apache/kudu/client/Upsert.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Upsert (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Upsert (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Upsert (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Upsert (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/class-use/AbstractKuduScannerBuilder.html b/apidocs/org/apache/kudu/client/class-use/AbstractKuduScannerBuilder.html
index 54acb21..9e2e10d 100644
--- a/apidocs/org/apache/kudu/client/class-use/AbstractKuduScannerBuilder.html
+++ b/apidocs/org/apache/kudu/client/class-use/AbstractKuduScannerBuilder.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.client.AbstractKuduScannerBuilder (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.client.AbstractKuduScannerBuilder (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.client.AbstractKuduScannerBuilder (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.client.AbstractKuduScannerBuilder (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/class-use/AlterTableOptions.html b/apidocs/org/apache/kudu/client/class-use/AlterTableOptions.html
index 95d647d..8016d81 100644
--- a/apidocs/org/apache/kudu/client/class-use/AlterTableOptions.html
+++ b/apidocs/org/apache/kudu/client/class-use/AlterTableOptions.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.client.AlterTableOptions (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.client.AlterTableOptions (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.client.AlterTableOptions (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.client.AlterTableOptions (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
@@ -149,6 +149,34 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AlterTableOptions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AlterTableOptions.html#changeCompressionAlgorithm-java.lang.String-org.apache.kudu.ColumnSchema.CompressionAlgorithm-">changeCompressionAlgorithm</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
+                          org.apache.kudu.ColumnSchema.CompressionAlgorithm&nbsp;ca)</code>
+<div class="block">Change the compression used for a column.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AlterTableOptions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AlterTableOptions.html#changeDefault-java.lang.String-java.lang.Object-">changeDefault</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
+             <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;newDefault)</code>
+<div class="block">Change the default value for a column.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AlterTableOptions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AlterTableOptions.html#changeDesiredBlockSize-java.lang.String-int-">changeDesiredBlockSize</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
+                      int&nbsp;blockSize)</code>
+<div class="block">Change the block size of a column's storage.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AlterTableOptions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AlterTableOptions.html#changeEncoding-java.lang.String-org.apache.kudu.ColumnSchema.Encoding-">changeEncoding</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
+              org.apache.kudu.ColumnSchema.Encoding&nbsp;encoding)</code>
+<div class="block">Change the encoding used for a column.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></code></td>
 <td class="colLast"><span class="typeNameLabel">AlterTableOptions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AlterTableOptions.html#dropColumn-java.lang.String-">dropColumn</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
 <div class="block">Drop a column.</div>
 </td>
@@ -172,12 +200,18 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AlterTableOptions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AlterTableOptions.html#removeDefault-java.lang.String-">removeDefault</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
+<div class="block">Remove the default value for a column.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></code></td>
 <td class="colLast"><span class="typeNameLabel">AlterTableOptions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AlterTableOptions.html#renameColumn-java.lang.String-java.lang.String-">renameColumn</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;oldName,
             <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;newName)</code>
 <div class="block">Change the name of a column.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></code></td>
 <td class="colLast"><span class="typeNameLabel">AlterTableOptions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AlterTableOptions.html#renameTable-java.lang.String-">renameTable</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;newName)</code>
 <div class="block">Change a table's name.</div>
diff --git a/apidocs/org/apache/kudu/client/class-use/AlterTableResponse.html b/apidocs/org/apache/kudu/client/class-use/AlterTableResponse.html
index 5f7ce9f..2fc465d 100644
--- a/apidocs/org/apache/kudu/client/class-use/AlterTableResponse.html
+++ b/apidocs/org/apache/kudu/client/class-use/AlterTableResponse.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.client.AlterTableResponse (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.client.AlterTableResponse (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.client.AlterTableResponse (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.client.AlterTableResponse (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/class-use/AsyncKuduClient.AsyncKuduClientBuilder.html b/apidocs/org/apache/kudu/client/class-use/AsyncKuduClient.AsyncKuduClientBuilder.html
index 0912c04..72bedd8 100644
--- a/apidocs/org/apache/kudu/client/class-use/AsyncKuduClient.AsyncKuduClientBuilder.html
+++ b/apidocs/org/apache/kudu/client/class-use/AsyncKuduClient.AsyncKuduClientBuilder.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.client.AsyncKuduClient.AsyncKuduClientBuilder (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.client.AsyncKuduClient.AsyncKuduClientBuilder (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.client.AsyncKuduClient.AsyncKuduClientBuilder (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.client.AsyncKuduClient.AsyncKuduClientBuilder (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/class-use/AsyncKuduClient.html b/apidocs/org/apache/kudu/client/class-use/AsyncKuduClient.html
index b8b68f8..4afb40b 100644
--- a/apidocs/org/apache/kudu/client/class-use/AsyncKuduClient.html
+++ b/apidocs/org/apache/kudu/client/class-use/AsyncKuduClient.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.client.AsyncKuduClient (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.client.AsyncKuduClient (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.client.AsyncKuduClient (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.client.AsyncKuduClient (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/class-use/AsyncKuduScanner.AsyncKuduScannerBuilder.html b/apidocs/org/apache/kudu/client/class-use/AsyncKuduScanner.AsyncKuduScannerBuilder.html
index 1e79a7f..b031ee0 100644
--- a/apidocs/org/apache/kudu/client/class-use/AsyncKuduScanner.AsyncKuduScannerBuilder.html
+++ b/apidocs/org/apache/kudu/client/class-use/AsyncKuduScanner.AsyncKuduScannerBuilder.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.client.AsyncKuduScanner.AsyncKuduScannerBuilder (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.client.AsyncKuduScanner.AsyncKuduScannerBuilder (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.client.AsyncKuduScanner.AsyncKuduScannerBuilder (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.client.AsyncKuduScanner.AsyncKuduScannerBuilder (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/class-use/AsyncKuduScanner.ReadMode.html b/apidocs/org/apache/kudu/client/class-use/AsyncKuduScanner.ReadMode.html
index fc43eb9..8e8e8d9 100644
--- a/apidocs/org/apache/kudu/client/class-use/AsyncKuduScanner.ReadMode.html
+++ b/apidocs/org/apache/kudu/client/class-use/AsyncKuduScanner.ReadMode.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.client.AsyncKuduScanner.ReadMode (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.client.AsyncKuduScanner.ReadMode (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.client.AsyncKuduScanner.ReadMode (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.client.AsyncKuduScanner.ReadMode (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/class-use/AsyncKuduScanner.html b/apidocs/org/apache/kudu/client/class-use/AsyncKuduScanner.html
index 18d474c..97c125f 100644
--- a/apidocs/org/apache/kudu/client/class-use/AsyncKuduScanner.html
+++ b/apidocs/org/apache/kudu/client/class-use/AsyncKuduScanner.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.client.AsyncKuduScanner (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.client.AsyncKuduScanner (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.client.AsyncKuduScanner (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.client.AsyncKuduScanner (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/class-use/AsyncKuduSession.html b/apidocs/org/apache/kudu/client/class-use/AsyncKuduSession.html
index 36b97f2..0a84208 100644
--- a/apidocs/org/apache/kudu/client/class-use/AsyncKuduSession.html
+++ b/apidocs/org/apache/kudu/client/class-use/AsyncKuduSession.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.client.AsyncKuduSession (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.client.AsyncKuduSession (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.client.AsyncKuduSession (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.client.AsyncKuduSession (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/class-use/ColumnRangePredicate.html b/apidocs/org/apache/kudu/client/class-use/ColumnRangePredicate.html
index f5d491f..e60115d 100644
--- a/apidocs/org/apache/kudu/client/class-use/ColumnRangePredicate.html
+++ b/apidocs/org/apache/kudu/client/class-use/ColumnRangePredicate.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.client.ColumnRangePredicate (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.client.ColumnRangePredicate (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.client.ColumnRangePredicate (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.client.ColumnRangePredicate (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/class-use/CreateTableOptions.html b/apidocs/org/apache/kudu/client/class-use/CreateTableOptions.html
index daeace7..f920c02 100644
--- a/apidocs/org/apache/kudu/client/class-use/CreateTableOptions.html
+++ b/apidocs/org/apache/kudu/client/class-use/CreateTableOptions.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.client.CreateTableOptions (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.client.CreateTableOptions (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.client.CreateTableOptions (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.client.CreateTableOptions (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
@@ -86,6 +86,10 @@
 <td class="colFirst"><a href="#org.apache.kudu.client">org.apache.kudu.client</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><a href="#org.apache.kudu.mapreduce.tools">org.apache.kudu.mapreduce.tools</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
@@ -181,6 +185,27 @@
 </tbody>
 </table>
 </li>
+<li class="blockList"><a name="org.apache.kudu.mapreduce.tools">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../../org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client">CreateTableOptions</a> in <a href="../../../../../org/apache/kudu/mapreduce/tools/package-summary.html">org.apache.kudu.mapreduce.tools</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/mapreduce/tools/package-summary.html">org.apache.kudu.mapreduce.tools</a> that return <a href="../../../../../org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client">CreateTableOptions</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client">CreateTableOptions</a></code></td>
+<td class="colLast"><span class="typeNameLabel">BigLinkedListCommon.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#getCreateTableOptions-org.apache.kudu.Schema-int-int-int-">getCreateTableOptions</a></span>(<a href="../../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a>&nbsp;schema,
+                     int&nbsp;numReplicas,
+                     int&nbsp;rangePartitions,
+                     int&nbsp;hashPartitions)</code>&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
 </ul>
 </li>
 </ul>
diff --git a/apidocs/org/apache/kudu/client/class-use/Delete.html b/apidocs/org/apache/kudu/client/class-use/Delete.html
index 2df65a3..950c084 100644
--- a/apidocs/org/apache/kudu/client/class-use/Delete.html
+++ b/apidocs/org/apache/kudu/client/class-use/Delete.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.client.Delete (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.client.Delete (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.client.Delete (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.client.Delete (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/class-use/DeleteTableResponse.html b/apidocs/org/apache/kudu/client/class-use/DeleteTableResponse.html
index 2161345..59c0780 100644
--- a/apidocs/org/apache/kudu/client/class-use/DeleteTableResponse.html
+++ b/apidocs/org/apache/kudu/client/class-use/DeleteTableResponse.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.client.DeleteTableResponse (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.client.DeleteTableResponse (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.client.DeleteTableResponse (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.client.DeleteTableResponse (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/class-use/ExternalConsistencyMode.html b/apidocs/org/apache/kudu/client/class-use/ExternalConsistencyMode.html
index d1f525f..bf68689 100644
--- a/apidocs/org/apache/kudu/client/class-use/ExternalConsistencyMode.html
+++ b/apidocs/org/apache/kudu/client/class-use/ExternalConsistencyMode.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.client.ExternalConsistencyMode (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.client.ExternalConsistencyMode (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.client.ExternalConsistencyMode (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.client.ExternalConsistencyMode (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/class-use/HasFailedRpcException.html b/apidocs/org/apache/kudu/client/class-use/HasFailedRpcException.html
index 5644f53..98c0293 100644
--- a/apidocs/org/apache/kudu/client/class-use/HasFailedRpcException.html
+++ b/apidocs/org/apache/kudu/client/class-use/HasFailedRpcException.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Interface org.apache.kudu.client.HasFailedRpcException (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Interface org.apache.kudu.client.HasFailedRpcException (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Interface org.apache.kudu.client.HasFailedRpcException (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Interface org.apache.kudu.client.HasFailedRpcException (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/class-use/Insert.html b/apidocs/org/apache/kudu/client/class-use/Insert.html
index a118f48..3e0b0f2 100644
--- a/apidocs/org/apache/kudu/client/class-use/Insert.html
+++ b/apidocs/org/apache/kudu/client/class-use/Insert.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.client.Insert (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.client.Insert (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.client.Insert (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.client.Insert (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/class-use/IsAlterTableDoneResponse.html b/apidocs/org/apache/kudu/client/class-use/IsAlterTableDoneResponse.html
index c28c045..af5f598 100644
--- a/apidocs/org/apache/kudu/client/class-use/IsAlterTableDoneResponse.html
+++ b/apidocs/org/apache/kudu/client/class-use/IsAlterTableDoneResponse.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.client.IsAlterTableDoneResponse (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.client.IsAlterTableDoneResponse (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.client.IsAlterTableDoneResponse (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.client.IsAlterTableDoneResponse (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/class-use/KuduClient.KuduClientBuilder.html b/apidocs/org/apache/kudu/client/class-use/KuduClient.KuduClientBuilder.html
index 65971fe..e56859d 100644
--- a/apidocs/org/apache/kudu/client/class-use/KuduClient.KuduClientBuilder.html
+++ b/apidocs/org/apache/kudu/client/class-use/KuduClient.KuduClientBuilder.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.client.KuduClient.KuduClientBuilder (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.client.KuduClient.KuduClientBuilder (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.client.KuduClient.KuduClientBuilder (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.client.KuduClient.KuduClientBuilder (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/class-use/KuduClient.html b/apidocs/org/apache/kudu/client/class-use/KuduClient.html
index d90a85a..dec67e6 100644
--- a/apidocs/org/apache/kudu/client/class-use/KuduClient.html
+++ b/apidocs/org/apache/kudu/client/class-use/KuduClient.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.client.KuduClient (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.client.KuduClient (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.client.KuduClient (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.client.KuduClient (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/class-use/KuduException.html b/apidocs/org/apache/kudu/client/class-use/KuduException.html
index 8dd9a3c..65d3470 100644
--- a/apidocs/org/apache/kudu/client/class-use/KuduException.html
+++ b/apidocs/org/apache/kudu/client/class-use/KuduException.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.client.KuduException (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.client.KuduException (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.client.KuduException (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.client.KuduException (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/class-use/KuduPredicate.ComparisonOp.html b/apidocs/org/apache/kudu/client/class-use/KuduPredicate.ComparisonOp.html
index 703cc39..d988739 100644
--- a/apidocs/org/apache/kudu/client/class-use/KuduPredicate.ComparisonOp.html
+++ b/apidocs/org/apache/kudu/client/class-use/KuduPredicate.ComparisonOp.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.client.KuduPredicate.ComparisonOp (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.client.KuduPredicate.ComparisonOp (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.client.KuduPredicate.ComparisonOp (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.client.KuduPredicate.ComparisonOp (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/class-use/KuduPredicate.html b/apidocs/org/apache/kudu/client/class-use/KuduPredicate.html
index 95192e6..7e1c58d 100644
--- a/apidocs/org/apache/kudu/client/class-use/KuduPredicate.html
+++ b/apidocs/org/apache/kudu/client/class-use/KuduPredicate.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.client.KuduPredicate (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.client.KuduPredicate (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.client.KuduPredicate (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.client.KuduPredicate (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/class-use/KuduScanToken.KuduScanTokenBuilder.html b/apidocs/org/apache/kudu/client/class-use/KuduScanToken.KuduScanTokenBuilder.html
index d988f16..96ee83e 100644
--- a/apidocs/org/apache/kudu/client/class-use/KuduScanToken.KuduScanTokenBuilder.html
+++ b/apidocs/org/apache/kudu/client/class-use/KuduScanToken.KuduScanTokenBuilder.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.client.KuduScanToken.KuduScanTokenBuilder (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.client.KuduScanToken.KuduScanTokenBuilder (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.client.KuduScanToken.KuduScanTokenBuilder (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.client.KuduScanToken.KuduScanTokenBuilder (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/class-use/KuduScanToken.html b/apidocs/org/apache/kudu/client/class-use/KuduScanToken.html
index f48b0d3..f98166a 100644
--- a/apidocs/org/apache/kudu/client/class-use/KuduScanToken.html
+++ b/apidocs/org/apache/kudu/client/class-use/KuduScanToken.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.client.KuduScanToken (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.client.KuduScanToken (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.client.KuduScanToken (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.client.KuduScanToken (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/class-use/KuduScanner.KuduScannerBuilder.html b/apidocs/org/apache/kudu/client/class-use/KuduScanner.KuduScannerBuilder.html
index dd22f3c..b457d7a 100644
--- a/apidocs/org/apache/kudu/client/class-use/KuduScanner.KuduScannerBuilder.html
+++ b/apidocs/org/apache/kudu/client/class-use/KuduScanner.KuduScannerBuilder.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.client.KuduScanner.KuduScannerBuilder (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.client.KuduScanner.KuduScannerBuilder (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.client.KuduScanner.KuduScannerBuilder (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.client.KuduScanner.KuduScannerBuilder (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/class-use/KuduScanner.html b/apidocs/org/apache/kudu/client/class-use/KuduScanner.html
index 30609ae..7628194 100644
--- a/apidocs/org/apache/kudu/client/class-use/KuduScanner.html
+++ b/apidocs/org/apache/kudu/client/class-use/KuduScanner.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.client.KuduScanner (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.client.KuduScanner (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.client.KuduScanner (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.client.KuduScanner (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/class-use/KuduSession.html b/apidocs/org/apache/kudu/client/class-use/KuduSession.html
index 43a2bc7..6265070 100644
--- a/apidocs/org/apache/kudu/client/class-use/KuduSession.html
+++ b/apidocs/org/apache/kudu/client/class-use/KuduSession.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.client.KuduSession (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.client.KuduSession (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.client.KuduSession (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.client.KuduSession (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/class-use/KuduTable.html b/apidocs/org/apache/kudu/client/class-use/KuduTable.html
index 555f94f..efd9e0d 100644
--- a/apidocs/org/apache/kudu/client/class-use/KuduTable.html
+++ b/apidocs/org/apache/kudu/client/class-use/KuduTable.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.client.KuduTable (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.client.KuduTable (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.client.KuduTable (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.client.KuduTable (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/class-use/ListTablesResponse.html b/apidocs/org/apache/kudu/client/class-use/ListTablesResponse.html
index 4e6ee43..0e1cac3 100644
--- a/apidocs/org/apache/kudu/client/class-use/ListTablesResponse.html
+++ b/apidocs/org/apache/kudu/client/class-use/ListTablesResponse.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.client.ListTablesResponse (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.client.ListTablesResponse (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.client.ListTablesResponse (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.client.ListTablesResponse (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/class-use/ListTabletServersResponse.html b/apidocs/org/apache/kudu/client/class-use/ListTabletServersResponse.html
index 037d240..eaf930f 100644
--- a/apidocs/org/apache/kudu/client/class-use/ListTabletServersResponse.html
+++ b/apidocs/org/apache/kudu/client/class-use/ListTabletServersResponse.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.client.ListTabletServersResponse (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.client.ListTabletServersResponse (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.client.ListTabletServersResponse (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.client.ListTabletServersResponse (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/class-use/LocatedTablet.Replica.html b/apidocs/org/apache/kudu/client/class-use/LocatedTablet.Replica.html
index 37d0b1d..9ffe577 100644
--- a/apidocs/org/apache/kudu/client/class-use/LocatedTablet.Replica.html
+++ b/apidocs/org/apache/kudu/client/class-use/LocatedTablet.Replica.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.client.LocatedTablet.Replica (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.client.LocatedTablet.Replica (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.client.LocatedTablet.Replica (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.client.LocatedTablet.Replica (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/class-use/LocatedTablet.html b/apidocs/org/apache/kudu/client/class-use/LocatedTablet.html
index 64332e3..315f027 100644
--- a/apidocs/org/apache/kudu/client/class-use/LocatedTablet.html
+++ b/apidocs/org/apache/kudu/client/class-use/LocatedTablet.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.client.LocatedTablet (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.client.LocatedTablet (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.client.LocatedTablet (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.client.LocatedTablet (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/class-use/Operation.html b/apidocs/org/apache/kudu/client/class-use/Operation.html
index bc025dd..c43457a 100644
--- a/apidocs/org/apache/kudu/client/class-use/Operation.html
+++ b/apidocs/org/apache/kudu/client/class-use/Operation.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.client.Operation (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.client.Operation (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.client.Operation (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.client.Operation (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/class-use/OperationResponse.html b/apidocs/org/apache/kudu/client/class-use/OperationResponse.html
index 16bad77..c69aa5b 100644
--- a/apidocs/org/apache/kudu/client/class-use/OperationResponse.html
+++ b/apidocs/org/apache/kudu/client/class-use/OperationResponse.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.client.OperationResponse (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.client.OperationResponse (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.client.OperationResponse (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.client.OperationResponse (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/class-use/PartialRow.html b/apidocs/org/apache/kudu/client/class-use/PartialRow.html
index e543383..7dd8abc 100644
--- a/apidocs/org/apache/kudu/client/class-use/PartialRow.html
+++ b/apidocs/org/apache/kudu/client/class-use/PartialRow.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.client.PartialRow (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.client.PartialRow (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.client.PartialRow (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.client.PartialRow (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/class-use/PleaseThrottleException.html b/apidocs/org/apache/kudu/client/class-use/PleaseThrottleException.html
index 7e20394..8414f95 100644
--- a/apidocs/org/apache/kudu/client/class-use/PleaseThrottleException.html
+++ b/apidocs/org/apache/kudu/client/class-use/PleaseThrottleException.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.client.PleaseThrottleException (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.client.PleaseThrottleException (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.client.PleaseThrottleException (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.client.PleaseThrottleException (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/class-use/RangePartitionBound.html b/apidocs/org/apache/kudu/client/class-use/RangePartitionBound.html
index 680c3c0..078a814 100644
--- a/apidocs/org/apache/kudu/client/class-use/RangePartitionBound.html
+++ b/apidocs/org/apache/kudu/client/class-use/RangePartitionBound.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.client.RangePartitionBound (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.client.RangePartitionBound (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.client.RangePartitionBound (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.client.RangePartitionBound (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/class-use/ReplicaSelection.html b/apidocs/org/apache/kudu/client/class-use/ReplicaSelection.html
index f6086b3..bc3e901 100644
--- a/apidocs/org/apache/kudu/client/class-use/ReplicaSelection.html
+++ b/apidocs/org/apache/kudu/client/class-use/ReplicaSelection.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.client.ReplicaSelection (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.client.ReplicaSelection (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.client.ReplicaSelection (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.client.ReplicaSelection (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/class-use/RowError.html b/apidocs/org/apache/kudu/client/class-use/RowError.html
index 9e0b90b..b49ff61 100644
--- a/apidocs/org/apache/kudu/client/class-use/RowError.html
+++ b/apidocs/org/apache/kudu/client/class-use/RowError.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.client.RowError (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.client.RowError (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.client.RowError (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.client.RowError (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/class-use/RowErrorsAndOverflowStatus.html b/apidocs/org/apache/kudu/client/class-use/RowErrorsAndOverflowStatus.html
index b932b6c..7fbed10 100644
--- a/apidocs/org/apache/kudu/client/class-use/RowErrorsAndOverflowStatus.html
+++ b/apidocs/org/apache/kudu/client/class-use/RowErrorsAndOverflowStatus.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.client.RowErrorsAndOverflowStatus (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.client.RowErrorsAndOverflowStatus (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.client.RowErrorsAndOverflowStatus (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.client.RowErrorsAndOverflowStatus (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/class-use/RowResult.html b/apidocs/org/apache/kudu/client/class-use/RowResult.html
index 30ffe2b..5b95aee 100644
--- a/apidocs/org/apache/kudu/client/class-use/RowResult.html
+++ b/apidocs/org/apache/kudu/client/class-use/RowResult.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.client.RowResult (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.client.RowResult (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.client.RowResult (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.client.RowResult (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/class-use/RowResultIterator.html b/apidocs/org/apache/kudu/client/class-use/RowResultIterator.html
index 7e0e800..eab9d51 100644
--- a/apidocs/org/apache/kudu/client/class-use/RowResultIterator.html
+++ b/apidocs/org/apache/kudu/client/class-use/RowResultIterator.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.client.RowResultIterator (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.client.RowResultIterator (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.client.RowResultIterator (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.client.RowResultIterator (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/class-use/SessionConfiguration.FlushMode.html b/apidocs/org/apache/kudu/client/class-use/SessionConfiguration.FlushMode.html
index 49c6698..fff3084 100644
--- a/apidocs/org/apache/kudu/client/class-use/SessionConfiguration.FlushMode.html
+++ b/apidocs/org/apache/kudu/client/class-use/SessionConfiguration.FlushMode.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.client.SessionConfiguration.FlushMode (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.client.SessionConfiguration.FlushMode (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.client.SessionConfiguration.FlushMode (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.client.SessionConfiguration.FlushMode (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/class-use/SessionConfiguration.html b/apidocs/org/apache/kudu/client/class-use/SessionConfiguration.html
index 204c587..f1b9064 100644
--- a/apidocs/org/apache/kudu/client/class-use/SessionConfiguration.html
+++ b/apidocs/org/apache/kudu/client/class-use/SessionConfiguration.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Interface org.apache.kudu.client.SessionConfiguration (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Interface org.apache.kudu.client.SessionConfiguration (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Interface org.apache.kudu.client.SessionConfiguration (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Interface org.apache.kudu.client.SessionConfiguration (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/class-use/Statistics.Statistic.html b/apidocs/org/apache/kudu/client/class-use/Statistics.Statistic.html
index ce82f10..b81fa80 100644
--- a/apidocs/org/apache/kudu/client/class-use/Statistics.Statistic.html
+++ b/apidocs/org/apache/kudu/client/class-use/Statistics.Statistic.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.client.Statistics.Statistic (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.client.Statistics.Statistic (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.client.Statistics.Statistic (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.client.Statistics.Statistic (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/class-use/Statistics.html b/apidocs/org/apache/kudu/client/class-use/Statistics.html
index 5aea172..26d73eb 100644
--- a/apidocs/org/apache/kudu/client/class-use/Statistics.html
+++ b/apidocs/org/apache/kudu/client/class-use/Statistics.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.client.Statistics (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.client.Statistics (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.client.Statistics (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.client.Statistics (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/class-use/Status.html b/apidocs/org/apache/kudu/client/class-use/Status.html
index 217d98c..d678d61 100644
--- a/apidocs/org/apache/kudu/client/class-use/Status.html
+++ b/apidocs/org/apache/kudu/client/class-use/Status.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.client.Status (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.client.Status (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.client.Status (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.client.Status (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/class-use/Update.html b/apidocs/org/apache/kudu/client/class-use/Update.html
index ed3d9eb..de23cc8 100644
--- a/apidocs/org/apache/kudu/client/class-use/Update.html
+++ b/apidocs/org/apache/kudu/client/class-use/Update.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.client.Update (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.client.Update (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.client.Update (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.client.Update (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/class-use/Upsert.html b/apidocs/org/apache/kudu/client/class-use/Upsert.html
index 64a5c0b..f934cd8 100644
--- a/apidocs/org/apache/kudu/client/class-use/Upsert.html
+++ b/apidocs/org/apache/kudu/client/class-use/Upsert.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.client.Upsert (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.client.Upsert (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.client.Upsert (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.client.Upsert (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/package-frame.html b/apidocs/org/apache/kudu/client/package-frame.html
index 526868e..4c94bb5 100644
--- a/apidocs/org/apache/kudu/client/package-frame.html
+++ b/apidocs/org/apache/kudu/client/package-frame.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>org.apache.kudu.client (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>org.apache.kudu.client (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
diff --git a/apidocs/org/apache/kudu/client/package-summary.html b/apidocs/org/apache/kudu/client/package-summary.html
index aee7628..46cb50f 100644
--- a/apidocs/org/apache/kudu/client/package-summary.html
+++ b/apidocs/org/apache/kudu/client/package-summary.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>org.apache.kudu.client (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>org.apache.kudu.client (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="org.apache.kudu.client (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="org.apache.kudu.client (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/package-tree.html b/apidocs/org/apache/kudu/client/package-tree.html
index fdc63cd..5e7f624 100644
--- a/apidocs/org/apache/kudu/client/package-tree.html
+++ b/apidocs/org/apache/kudu/client/package-tree.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>org.apache.kudu.client Class Hierarchy (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>org.apache.kudu.client Class Hierarchy (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="org.apache.kudu.client Class Hierarchy (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="org.apache.kudu.client Class Hierarchy (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/client/package-use.html b/apidocs/org/apache/kudu/client/package-use.html
index d4084ce..5d2fb61 100644
--- a/apidocs/org/apache/kudu/client/package-use.html
+++ b/apidocs/org/apache/kudu/client/package-use.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Package org.apache.kudu.client (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Package org.apache.kudu.client (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Package org.apache.kudu.client (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Package org.apache.kudu.client (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
@@ -98,6 +98,10 @@
 <td class="colFirst"><a href="#org.apache.kudu.mapreduce">org.apache.kudu.mapreduce</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><a href="#org.apache.kudu.mapreduce.tools">org.apache.kudu.mapreduce.tools</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
@@ -434,6 +438,23 @@
 </tbody>
 </table>
 </li>
+<li class="blockList"><a name="org.apache.kudu.mapreduce.tools">
+<!--   -->
+</a>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing classes, and an explanation">
+<caption><span>Classes in <a href="../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> used by <a href="../../../../org/apache/kudu/mapreduce/tools/package-summary.html">org.apache.kudu.mapreduce.tools</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colOne" scope="col">Class and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colOne"><a href="../../../../org/apache/kudu/client/class-use/CreateTableOptions.html#org.apache.kudu.mapreduce.tools">CreateTableOptions</a>
+<div class="block">This is a builder class for all the options that can be provided while creating a table.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
 </ul>
 </div>
 <!-- ======= START OF BOTTOM NAVBAR ====== -->
diff --git a/apidocs/org/apache/kudu/flume/sink/AvroKuduOperationsProducer.html b/apidocs/org/apache/kudu/flume/sink/AvroKuduOperationsProducer.html
index 79b2df6..e6527a4 100644
--- a/apidocs/org/apache/kudu/flume/sink/AvroKuduOperationsProducer.html
+++ b/apidocs/org/apache/kudu/flume/sink/AvroKuduOperationsProducer.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>AvroKuduOperationsProducer (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>AvroKuduOperationsProducer (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="AvroKuduOperationsProducer (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="AvroKuduOperationsProducer (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/flume/sink/KuduOperationsProducer.html b/apidocs/org/apache/kudu/flume/sink/KuduOperationsProducer.html
index 1f85beb..c63b8ab 100644
--- a/apidocs/org/apache/kudu/flume/sink/KuduOperationsProducer.html
+++ b/apidocs/org/apache/kudu/flume/sink/KuduOperationsProducer.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>KuduOperationsProducer (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>KuduOperationsProducer (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="KuduOperationsProducer (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="KuduOperationsProducer (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/flume/sink/KuduSink.html b/apidocs/org/apache/kudu/flume/sink/KuduSink.html
index 81e9f60..f520fdf 100644
--- a/apidocs/org/apache/kudu/flume/sink/KuduSink.html
+++ b/apidocs/org/apache/kudu/flume/sink/KuduSink.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>KuduSink (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>KuduSink (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="KuduSink (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="KuduSink (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/flume/sink/KuduSinkConfigurationConstants.html b/apidocs/org/apache/kudu/flume/sink/KuduSinkConfigurationConstants.html
index f9c12ba..11a2090 100644
--- a/apidocs/org/apache/kudu/flume/sink/KuduSinkConfigurationConstants.html
+++ b/apidocs/org/apache/kudu/flume/sink/KuduSinkConfigurationConstants.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>KuduSinkConfigurationConstants (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>KuduSinkConfigurationConstants (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="KuduSinkConfigurationConstants (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="KuduSinkConfigurationConstants (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html b/apidocs/org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html
index 0e09e30..f9ce911 100644
--- a/apidocs/org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html
+++ b/apidocs/org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>RegexpKuduOperationsProducer (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>RegexpKuduOperationsProducer (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="RegexpKuduOperationsProducer (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="RegexpKuduOperationsProducer (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/flume/sink/SimpleKeyedKuduOperationsProducer.html b/apidocs/org/apache/kudu/flume/sink/SimpleKeyedKuduOperationsProducer.html
index 1eb7c1d..0921fb7 100644
--- a/apidocs/org/apache/kudu/flume/sink/SimpleKeyedKuduOperationsProducer.html
+++ b/apidocs/org/apache/kudu/flume/sink/SimpleKeyedKuduOperationsProducer.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>SimpleKeyedKuduOperationsProducer (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>SimpleKeyedKuduOperationsProducer (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="SimpleKeyedKuduOperationsProducer (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="SimpleKeyedKuduOperationsProducer (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/flume/sink/SimpleKuduOperationsProducer.html b/apidocs/org/apache/kudu/flume/sink/SimpleKuduOperationsProducer.html
index 13f35ef..31eaa67 100644
--- a/apidocs/org/apache/kudu/flume/sink/SimpleKuduOperationsProducer.html
+++ b/apidocs/org/apache/kudu/flume/sink/SimpleKuduOperationsProducer.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>SimpleKuduOperationsProducer (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>SimpleKuduOperationsProducer (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="SimpleKuduOperationsProducer (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="SimpleKuduOperationsProducer (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/flume/sink/class-use/AvroKuduOperationsProducer.html b/apidocs/org/apache/kudu/flume/sink/class-use/AvroKuduOperationsProducer.html
index a2d0718..b1f304d 100644
--- a/apidocs/org/apache/kudu/flume/sink/class-use/AvroKuduOperationsProducer.html
+++ b/apidocs/org/apache/kudu/flume/sink/class-use/AvroKuduOperationsProducer.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.flume.sink.AvroKuduOperationsProducer (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.flume.sink.AvroKuduOperationsProducer (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.flume.sink.AvroKuduOperationsProducer (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.flume.sink.AvroKuduOperationsProducer (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/flume/sink/class-use/KuduOperationsProducer.html b/apidocs/org/apache/kudu/flume/sink/class-use/KuduOperationsProducer.html
index 6842533..13833ab 100644
--- a/apidocs/org/apache/kudu/flume/sink/class-use/KuduOperationsProducer.html
+++ b/apidocs/org/apache/kudu/flume/sink/class-use/KuduOperationsProducer.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Interface org.apache.kudu.flume.sink.KuduOperationsProducer (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Interface org.apache.kudu.flume.sink.KuduOperationsProducer (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Interface org.apache.kudu.flume.sink.KuduOperationsProducer (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Interface org.apache.kudu.flume.sink.KuduOperationsProducer (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/flume/sink/class-use/KuduSink.html b/apidocs/org/apache/kudu/flume/sink/class-use/KuduSink.html
index 36b5d61..6e2e12f 100644
--- a/apidocs/org/apache/kudu/flume/sink/class-use/KuduSink.html
+++ b/apidocs/org/apache/kudu/flume/sink/class-use/KuduSink.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.flume.sink.KuduSink (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.flume.sink.KuduSink (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.flume.sink.KuduSink (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.flume.sink.KuduSink (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/flume/sink/class-use/KuduSinkConfigurationConstants.html b/apidocs/org/apache/kudu/flume/sink/class-use/KuduSinkConfigurationConstants.html
index 8390715..227536a 100644
--- a/apidocs/org/apache/kudu/flume/sink/class-use/KuduSinkConfigurationConstants.html
+++ b/apidocs/org/apache/kudu/flume/sink/class-use/KuduSinkConfigurationConstants.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.flume.sink.KuduSinkConfigurationConstants (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.flume.sink.KuduSinkConfigurationConstants (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.flume.sink.KuduSinkConfigurationConstants (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.flume.sink.KuduSinkConfigurationConstants (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/flume/sink/class-use/RegexpKuduOperationsProducer.html b/apidocs/org/apache/kudu/flume/sink/class-use/RegexpKuduOperationsProducer.html
index 457bc1e..2a51177 100644
--- a/apidocs/org/apache/kudu/flume/sink/class-use/RegexpKuduOperationsProducer.html
+++ b/apidocs/org/apache/kudu/flume/sink/class-use/RegexpKuduOperationsProducer.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.flume.sink.RegexpKuduOperationsProducer (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.flume.sink.RegexpKuduOperationsProducer (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.flume.sink.RegexpKuduOperationsProducer (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.flume.sink.RegexpKuduOperationsProducer (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/flume/sink/class-use/SimpleKeyedKuduOperationsProducer.html b/apidocs/org/apache/kudu/flume/sink/class-use/SimpleKeyedKuduOperationsProducer.html
index 7632a40..e4c20d2 100644
--- a/apidocs/org/apache/kudu/flume/sink/class-use/SimpleKeyedKuduOperationsProducer.html
+++ b/apidocs/org/apache/kudu/flume/sink/class-use/SimpleKeyedKuduOperationsProducer.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.flume.sink.SimpleKeyedKuduOperationsProducer (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.flume.sink.SimpleKeyedKuduOperationsProducer (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.flume.sink.SimpleKeyedKuduOperationsProducer (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.flume.sink.SimpleKeyedKuduOperationsProducer (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/flume/sink/class-use/SimpleKuduOperationsProducer.html b/apidocs/org/apache/kudu/flume/sink/class-use/SimpleKuduOperationsProducer.html
index 7aecd3f..1cb36d4 100644
--- a/apidocs/org/apache/kudu/flume/sink/class-use/SimpleKuduOperationsProducer.html
+++ b/apidocs/org/apache/kudu/flume/sink/class-use/SimpleKuduOperationsProducer.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.flume.sink.SimpleKuduOperationsProducer (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.flume.sink.SimpleKuduOperationsProducer (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.flume.sink.SimpleKuduOperationsProducer (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.flume.sink.SimpleKuduOperationsProducer (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/flume/sink/package-frame.html b/apidocs/org/apache/kudu/flume/sink/package-frame.html
index 441c201..14a690f 100644
--- a/apidocs/org/apache/kudu/flume/sink/package-frame.html
+++ b/apidocs/org/apache/kudu/flume/sink/package-frame.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>org.apache.kudu.flume.sink (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>org.apache.kudu.flume.sink (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
diff --git a/apidocs/org/apache/kudu/flume/sink/package-summary.html b/apidocs/org/apache/kudu/flume/sink/package-summary.html
index b8495ca..7a6e469 100644
--- a/apidocs/org/apache/kudu/flume/sink/package-summary.html
+++ b/apidocs/org/apache/kudu/flume/sink/package-summary.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>org.apache.kudu.flume.sink (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>org.apache.kudu.flume.sink (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="org.apache.kudu.flume.sink (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="org.apache.kudu.flume.sink (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/flume/sink/package-tree.html b/apidocs/org/apache/kudu/flume/sink/package-tree.html
index cab32af..e55f3ff 100644
--- a/apidocs/org/apache/kudu/flume/sink/package-tree.html
+++ b/apidocs/org/apache/kudu/flume/sink/package-tree.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>org.apache.kudu.flume.sink Class Hierarchy (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>org.apache.kudu.flume.sink Class Hierarchy (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="org.apache.kudu.flume.sink Class Hierarchy (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="org.apache.kudu.flume.sink Class Hierarchy (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/flume/sink/package-use.html b/apidocs/org/apache/kudu/flume/sink/package-use.html
index ddad168..4980f1b 100644
--- a/apidocs/org/apache/kudu/flume/sink/package-use.html
+++ b/apidocs/org/apache/kudu/flume/sink/package-use.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Package org.apache.kudu.flume.sink (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Package org.apache.kudu.flume.sink (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Package org.apache.kudu.flume.sink (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Package org.apache.kudu.flume.sink (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/mapreduce/CommandLineParser.html b/apidocs/org/apache/kudu/mapreduce/CommandLineParser.html
index f6e484d..b9c13d2 100644
--- a/apidocs/org/apache/kudu/mapreduce/CommandLineParser.html
+++ b/apidocs/org/apache/kudu/mapreduce/CommandLineParser.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>CommandLineParser (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>CommandLineParser (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="CommandLineParser (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="CommandLineParser (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/mapreduce/KuduTableInputFormat.html b/apidocs/org/apache/kudu/mapreduce/KuduTableInputFormat.html
index 1b22dc9..8a6f4df 100644
--- a/apidocs/org/apache/kudu/mapreduce/KuduTableInputFormat.html
+++ b/apidocs/org/apache/kudu/mapreduce/KuduTableInputFormat.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>KuduTableInputFormat (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>KuduTableInputFormat (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="KuduTableInputFormat (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="KuduTableInputFormat (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/mapreduce/KuduTableMapReduceUtil.html b/apidocs/org/apache/kudu/mapreduce/KuduTableMapReduceUtil.html
index 4e0e97b..3c61801 100644
--- a/apidocs/org/apache/kudu/mapreduce/KuduTableMapReduceUtil.html
+++ b/apidocs/org/apache/kudu/mapreduce/KuduTableMapReduceUtil.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>KuduTableMapReduceUtil (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>KuduTableMapReduceUtil (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="KuduTableMapReduceUtil (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="KuduTableMapReduceUtil (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/mapreduce/KuduTableOutputCommitter.html b/apidocs/org/apache/kudu/mapreduce/KuduTableOutputCommitter.html
index 860b58c..fe7fc93 100644
--- a/apidocs/org/apache/kudu/mapreduce/KuduTableOutputCommitter.html
+++ b/apidocs/org/apache/kudu/mapreduce/KuduTableOutputCommitter.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>KuduTableOutputCommitter (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>KuduTableOutputCommitter (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="KuduTableOutputCommitter (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="KuduTableOutputCommitter (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/mapreduce/KuduTableOutputFormat.html b/apidocs/org/apache/kudu/mapreduce/KuduTableOutputFormat.html
index 9e8de9a..4c7b06a 100644
--- a/apidocs/org/apache/kudu/mapreduce/KuduTableOutputFormat.html
+++ b/apidocs/org/apache/kudu/mapreduce/KuduTableOutputFormat.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>KuduTableOutputFormat (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>KuduTableOutputFormat (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="KuduTableOutputFormat (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="KuduTableOutputFormat (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/mapreduce/TableReducer.html b/apidocs/org/apache/kudu/mapreduce/TableReducer.html
index 0fe8773..4b8dce7 100644
--- a/apidocs/org/apache/kudu/mapreduce/TableReducer.html
+++ b/apidocs/org/apache/kudu/mapreduce/TableReducer.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>TableReducer (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>TableReducer (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="TableReducer (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="TableReducer (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/mapreduce/class-use/CommandLineParser.html b/apidocs/org/apache/kudu/mapreduce/class-use/CommandLineParser.html
index d6685e7..bf07d47 100644
--- a/apidocs/org/apache/kudu/mapreduce/class-use/CommandLineParser.html
+++ b/apidocs/org/apache/kudu/mapreduce/class-use/CommandLineParser.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.mapreduce.CommandLineParser (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.mapreduce.CommandLineParser (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.mapreduce.CommandLineParser (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.mapreduce.CommandLineParser (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/mapreduce/class-use/KuduTableInputFormat.html b/apidocs/org/apache/kudu/mapreduce/class-use/KuduTableInputFormat.html
index c24577b..d8a565d 100644
--- a/apidocs/org/apache/kudu/mapreduce/class-use/KuduTableInputFormat.html
+++ b/apidocs/org/apache/kudu/mapreduce/class-use/KuduTableInputFormat.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.mapreduce.KuduTableInputFormat (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.mapreduce.KuduTableInputFormat (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.mapreduce.KuduTableInputFormat (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.mapreduce.KuduTableInputFormat (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/mapreduce/class-use/KuduTableMapReduceUtil.html b/apidocs/org/apache/kudu/mapreduce/class-use/KuduTableMapReduceUtil.html
index f510e7f..97511eb 100644
--- a/apidocs/org/apache/kudu/mapreduce/class-use/KuduTableMapReduceUtil.html
+++ b/apidocs/org/apache/kudu/mapreduce/class-use/KuduTableMapReduceUtil.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.mapreduce.KuduTableMapReduceUtil (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.mapreduce.KuduTableMapReduceUtil (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.mapreduce.KuduTableMapReduceUtil (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.mapreduce.KuduTableMapReduceUtil (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/mapreduce/class-use/KuduTableOutputCommitter.html b/apidocs/org/apache/kudu/mapreduce/class-use/KuduTableOutputCommitter.html
index ff3aeb3..852f84b 100644
--- a/apidocs/org/apache/kudu/mapreduce/class-use/KuduTableOutputCommitter.html
+++ b/apidocs/org/apache/kudu/mapreduce/class-use/KuduTableOutputCommitter.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.mapreduce.KuduTableOutputCommitter (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.mapreduce.KuduTableOutputCommitter (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.mapreduce.KuduTableOutputCommitter (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.mapreduce.KuduTableOutputCommitter (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/mapreduce/class-use/KuduTableOutputFormat.html b/apidocs/org/apache/kudu/mapreduce/class-use/KuduTableOutputFormat.html
index e15b507..2f4073f 100644
--- a/apidocs/org/apache/kudu/mapreduce/class-use/KuduTableOutputFormat.html
+++ b/apidocs/org/apache/kudu/mapreduce/class-use/KuduTableOutputFormat.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.mapreduce.KuduTableOutputFormat (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.mapreduce.KuduTableOutputFormat (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.mapreduce.KuduTableOutputFormat (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.mapreduce.KuduTableOutputFormat (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/mapreduce/class-use/TableReducer.html b/apidocs/org/apache/kudu/mapreduce/class-use/TableReducer.html
index 60ec1e4..50be4ac 100644
--- a/apidocs/org/apache/kudu/mapreduce/class-use/TableReducer.html
+++ b/apidocs/org/apache/kudu/mapreduce/class-use/TableReducer.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.mapreduce.TableReducer (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.mapreduce.TableReducer (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.mapreduce.TableReducer (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.mapreduce.TableReducer (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/mapreduce/package-frame.html b/apidocs/org/apache/kudu/mapreduce/package-frame.html
index 2c889c0..3da5573 100644
--- a/apidocs/org/apache/kudu/mapreduce/package-frame.html
+++ b/apidocs/org/apache/kudu/mapreduce/package-frame.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>org.apache.kudu.mapreduce (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>org.apache.kudu.mapreduce (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
diff --git a/apidocs/org/apache/kudu/mapreduce/package-summary.html b/apidocs/org/apache/kudu/mapreduce/package-summary.html
index d467569..300b0bf 100644
--- a/apidocs/org/apache/kudu/mapreduce/package-summary.html
+++ b/apidocs/org/apache/kudu/mapreduce/package-summary.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>org.apache.kudu.mapreduce (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>org.apache.kudu.mapreduce (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="org.apache.kudu.mapreduce (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="org.apache.kudu.mapreduce (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/mapreduce/package-tree.html b/apidocs/org/apache/kudu/mapreduce/package-tree.html
index 4fa4861..61eaa83 100644
--- a/apidocs/org/apache/kudu/mapreduce/package-tree.html
+++ b/apidocs/org/apache/kudu/mapreduce/package-tree.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>org.apache.kudu.mapreduce Class Hierarchy (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>org.apache.kudu.mapreduce Class Hierarchy (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="org.apache.kudu.mapreduce Class Hierarchy (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="org.apache.kudu.mapreduce Class Hierarchy (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/mapreduce/package-use.html b/apidocs/org/apache/kudu/mapreduce/package-use.html
index 1ff4c68..4828b9f 100644
--- a/apidocs/org/apache/kudu/mapreduce/package-use.html
+++ b/apidocs/org/apache/kudu/mapreduce/package-use.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Package org.apache.kudu.mapreduce (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Package org.apache.kudu.mapreduce (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Package org.apache.kudu.mapreduce (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Package org.apache.kudu.mapreduce (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html b/apidocs/org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html
new file mode 100644
index 0000000..e98511f
--- /dev/null
+++ b/apidocs/org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html
@@ -0,0 +1,621 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>BigLinkedListCommon (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="BigLinkedListCommon (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":9,"i1":9,"i2":9};
+var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/BigLinkedListCommon.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev&nbsp;Class</li>
+<li><a href="../../../../../org/apache/kudu/mapreduce/tools/CsvParser.html" title="class in org.apache.kudu.mapreduce.tools"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" target="_top">Frames</a></li>
+<li><a href="BigLinkedListCommon.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.mapreduce.tools</div>
+<h2 title="Class BigLinkedListCommon" class="title">Class BigLinkedListCommon</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.mapreduce.tools.BigLinkedListCommon</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Evolving
+public class <span class="typeNameLabel">BigLinkedListCommon</span>
+extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></pre>
+<div class="block">Static constants, helper methods, and utility classes for BigLinkedList
+ implementations.
+
+ Any definitions which must be kept in-sync between ITBLL implementations
+ should be kept here.</div>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- =========== FIELD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="field.summary">
+<!--   -->
+</a>
+<h3>Field Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
+<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Field and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_CLIENT">COLUMN_CLIENT</a></span></code>
+<div class="block">identifier of the mapred task that generated this row.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static int</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_CLIENT_IDX">COLUMN_CLIENT_IDX</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_KEY_ONE">COLUMN_KEY_ONE</a></span></code>
+<div class="block">Row key, two times 8 bytes.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static int</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_KEY_ONE_IDX">COLUMN_KEY_ONE_IDX</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_KEY_TWO">COLUMN_KEY_TWO</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static int</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_KEY_TWO_IDX">COLUMN_KEY_TWO_IDX</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_PREV_ONE">COLUMN_PREV_ONE</a></span></code>
+<div class="block">Link to the id of the prev node in the linked list, two times 8 bytes.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static int</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_PREV_ONE_IDX">COLUMN_PREV_ONE_IDX</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_PREV_TWO">COLUMN_PREV_TWO</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static int</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_PREV_TWO_IDX">COLUMN_PREV_TWO_IDX</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_ROW_ID">COLUMN_ROW_ID</a></span></code>
+<div class="block">the id of the row within the same client.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static int</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_ROW_ID_IDX">COLUMN_ROW_ID_IDX</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_UPDATE_COUNT">COLUMN_UPDATE_COUNT</a></span></code>
+<div class="block">The number of times this row was updated.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static int</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_UPDATE_COUNT_IDX">COLUMN_UPDATE_COUNT_IDX</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#DEFAULT_HEADS_TABLE_NAME">DEFAULT_HEADS_TABLE_NAME</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#DEFAULT_TABLE_NAME">DEFAULT_TABLE_NAME</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#HEADS_TABLE_NAME_KEY">HEADS_TABLE_NAME_KEY</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#TABLE_NAME_KEY">TABLE_NAME_KEY</a></span></code>&nbsp;</td>
+</tr>
+</table>
+</li>
+</ul>
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client">CreateTableOptions</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#getCreateTableOptions-org.apache.kudu.Schema-int-int-int-">getCreateTableOptions</a></span>(<a href="../../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a>&nbsp;schema,
+                     int&nbsp;numReplicas,
+                     int&nbsp;rangePartitions,
+                     int&nbsp;hashPartitions)</code>&nbsp;</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#getHeadsTableSchema--">getHeadsTableSchema</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#getTableSchema--">getTableSchema</a></span>()</code>&nbsp;</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ============ FIELD DETAIL =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="field.detail">
+<!--   -->
+</a>
+<h3>Field Detail</h3>
+<a name="TABLE_NAME_KEY">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>TABLE_NAME_KEY</h4>
+<pre>public static final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> TABLE_NAME_KEY</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.mapreduce.tools.BigLinkedListCommon.TABLE_NAME_KEY">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="DEFAULT_TABLE_NAME">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>DEFAULT_TABLE_NAME</h4>
+<pre>public static final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> DEFAULT_TABLE_NAME</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.mapreduce.tools.BigLinkedListCommon.DEFAULT_TABLE_NAME">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="HEADS_TABLE_NAME_KEY">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>HEADS_TABLE_NAME_KEY</h4>
+<pre>public static final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> HEADS_TABLE_NAME_KEY</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.mapreduce.tools.BigLinkedListCommon.HEADS_TABLE_NAME_KEY">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="DEFAULT_HEADS_TABLE_NAME">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>DEFAULT_HEADS_TABLE_NAME</h4>
+<pre>public static final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> DEFAULT_HEADS_TABLE_NAME</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.mapreduce.tools.BigLinkedListCommon.DEFAULT_HEADS_TABLE_NAME">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="COLUMN_KEY_ONE">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>COLUMN_KEY_ONE</h4>
+<pre>public static final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> COLUMN_KEY_ONE</pre>
+<div class="block">Row key, two times 8 bytes.</div>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.mapreduce.tools.BigLinkedListCommon.COLUMN_KEY_ONE">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="COLUMN_KEY_ONE_IDX">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>COLUMN_KEY_ONE_IDX</h4>
+<pre>public static final&nbsp;int COLUMN_KEY_ONE_IDX</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.mapreduce.tools.BigLinkedListCommon.COLUMN_KEY_ONE_IDX">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="COLUMN_KEY_TWO">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>COLUMN_KEY_TWO</h4>
+<pre>public static final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> COLUMN_KEY_TWO</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.mapreduce.tools.BigLinkedListCommon.COLUMN_KEY_TWO">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="COLUMN_KEY_TWO_IDX">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>COLUMN_KEY_TWO_IDX</h4>
+<pre>public static final&nbsp;int COLUMN_KEY_TWO_IDX</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.mapreduce.tools.BigLinkedListCommon.COLUMN_KEY_TWO_IDX">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="COLUMN_PREV_ONE">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>COLUMN_PREV_ONE</h4>
+<pre>public static final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> COLUMN_PREV_ONE</pre>
+<div class="block">Link to the id of the prev node in the linked list, two times 8 bytes.</div>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.mapreduce.tools.BigLinkedListCommon.COLUMN_PREV_ONE">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="COLUMN_PREV_ONE_IDX">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>COLUMN_PREV_ONE_IDX</h4>
+<pre>public static final&nbsp;int COLUMN_PREV_ONE_IDX</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.mapreduce.tools.BigLinkedListCommon.COLUMN_PREV_ONE_IDX">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="COLUMN_PREV_TWO">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>COLUMN_PREV_TWO</h4>
+<pre>public static final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> COLUMN_PREV_TWO</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.mapreduce.tools.BigLinkedListCommon.COLUMN_PREV_TWO">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="COLUMN_PREV_TWO_IDX">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>COLUMN_PREV_TWO_IDX</h4>
+<pre>public static final&nbsp;int COLUMN_PREV_TWO_IDX</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.mapreduce.tools.BigLinkedListCommon.COLUMN_PREV_TWO_IDX">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="COLUMN_ROW_ID">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>COLUMN_ROW_ID</h4>
+<pre>public static final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> COLUMN_ROW_ID</pre>
+<div class="block">the id of the row within the same client.</div>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.mapreduce.tools.BigLinkedListCommon.COLUMN_ROW_ID">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="COLUMN_ROW_ID_IDX">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>COLUMN_ROW_ID_IDX</h4>
+<pre>public static final&nbsp;int COLUMN_ROW_ID_IDX</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.mapreduce.tools.BigLinkedListCommon.COLUMN_ROW_ID_IDX">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="COLUMN_CLIENT">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>COLUMN_CLIENT</h4>
+<pre>public static final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> COLUMN_CLIENT</pre>
+<div class="block">identifier of the mapred task that generated this row.</div>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.mapreduce.tools.BigLinkedListCommon.COLUMN_CLIENT">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="COLUMN_CLIENT_IDX">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>COLUMN_CLIENT_IDX</h4>
+<pre>public static final&nbsp;int COLUMN_CLIENT_IDX</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.mapreduce.tools.BigLinkedListCommon.COLUMN_CLIENT_IDX">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="COLUMN_UPDATE_COUNT">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>COLUMN_UPDATE_COUNT</h4>
+<pre>public static final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> COLUMN_UPDATE_COUNT</pre>
+<div class="block">The number of times this row was updated.</div>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.mapreduce.tools.BigLinkedListCommon.COLUMN_UPDATE_COUNT">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="COLUMN_UPDATE_COUNT_IDX">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>COLUMN_UPDATE_COUNT_IDX</h4>
+<pre>public static final&nbsp;int COLUMN_UPDATE_COUNT_IDX</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.mapreduce.tools.BigLinkedListCommon.COLUMN_UPDATE_COUNT_IDX">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="getTableSchema--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getTableSchema</h4>
+<pre>public static&nbsp;<a href="../../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a>&nbsp;getTableSchema()</pre>
+</li>
+</ul>
+<a name="getHeadsTableSchema--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getHeadsTableSchema</h4>
+<pre>public static&nbsp;<a href="../../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a>&nbsp;getHeadsTableSchema()</pre>
+</li>
+</ul>
+<a name="getCreateTableOptions-org.apache.kudu.Schema-int-int-int-">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>getCreateTableOptions</h4>
+<pre>public static&nbsp;<a href="../../../../../org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client">CreateTableOptions</a>&nbsp;getCreateTableOptions(<a href="../../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a>&nbsp;schema,
+                                                       int&nbsp;numReplicas,
+                                                       int&nbsp;rangePartitions,
+                                                       int&nbsp;hashPartitions)</pre>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/BigLinkedListCommon.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev&nbsp;Class</li>
+<li><a href="../../../../../org/apache/kudu/mapreduce/tools/CsvParser.html" title="class in org.apache.kudu.mapreduce.tools"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" target="_top">Frames</a></li>
+<li><a href="BigLinkedListCommon.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/apidocs/org/apache/kudu/mapreduce/tools/CsvParser.html b/apidocs/org/apache/kudu/mapreduce/tools/CsvParser.html
index 390907d..d91cbca 100644
--- a/apidocs/org/apache/kudu/mapreduce/tools/CsvParser.html
+++ b/apidocs/org/apache/kudu/mapreduce/tools/CsvParser.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>CsvParser (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>CsvParser (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="CsvParser (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="CsvParser (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
@@ -49,7 +49,7 @@
 </div>
 <div class="subNav">
 <ul class="navList">
-<li>Prev&nbsp;Class</li>
+<li><a href="../../../../../org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
 <li><a href="../../../../../org/apache/kudu/mapreduce/tools/ImportCsv.html" title="class in org.apache.kudu.mapreduce.tools"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
@@ -252,7 +252,7 @@
 </div>
 <div class="subNav">
 <ul class="navList">
-<li>Prev&nbsp;Class</li>
+<li><a href="../../../../../org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
 <li><a href="../../../../../org/apache/kudu/mapreduce/tools/ImportCsv.html" title="class in org.apache.kudu.mapreduce.tools"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
diff --git a/apidocs/org/apache/kudu/mapreduce/tools/ImportCsv.html b/apidocs/org/apache/kudu/mapreduce/tools/ImportCsv.html
index ac7b4a7..42a5c83 100644
--- a/apidocs/org/apache/kudu/mapreduce/tools/ImportCsv.html
+++ b/apidocs/org/apache/kudu/mapreduce/tools/ImportCsv.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>ImportCsv (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>ImportCsv (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="ImportCsv (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="ImportCsv (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/mapreduce/tools/class-use/BigLinkedListCommon.html b/apidocs/org/apache/kudu/mapreduce/tools/class-use/BigLinkedListCommon.html
new file mode 100644
index 0000000..efda907
--- /dev/null
+++ b/apidocs/org/apache/kudu/mapreduce/tools/class-use/BigLinkedListCommon.html
@@ -0,0 +1,125 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.mapreduce.tools.BigLinkedListCommon (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.mapreduce.tools.BigLinkedListCommon (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../../org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../../index.html?org/apache/kudu/mapreduce/tools/class-use/BigLinkedListCommon.html" target="_top">Frames</a></li>
+<li><a href="BigLinkedListCommon.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.mapreduce.tools.BigLinkedListCommon" class="title">Uses of Class<br>org.apache.kudu.mapreduce.tools.BigLinkedListCommon</h2>
+</div>
+<div class="classUseContainer">No usage of org.apache.kudu.mapreduce.tools.BigLinkedListCommon</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../../org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../../index.html?org/apache/kudu/mapreduce/tools/class-use/BigLinkedListCommon.html" target="_top">Frames</a></li>
+<li><a href="BigLinkedListCommon.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/apidocs/org/apache/kudu/mapreduce/tools/class-use/CsvParser.html b/apidocs/org/apache/kudu/mapreduce/tools/class-use/CsvParser.html
index 651949d..0c1a426 100644
--- a/apidocs/org/apache/kudu/mapreduce/tools/class-use/CsvParser.html
+++ b/apidocs/org/apache/kudu/mapreduce/tools/class-use/CsvParser.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.mapreduce.tools.CsvParser (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.mapreduce.tools.CsvParser (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.mapreduce.tools.CsvParser (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.mapreduce.tools.CsvParser (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/mapreduce/tools/class-use/ImportCsv.html b/apidocs/org/apache/kudu/mapreduce/tools/class-use/ImportCsv.html
index b2b04cc..daa1a0e 100644
--- a/apidocs/org/apache/kudu/mapreduce/tools/class-use/ImportCsv.html
+++ b/apidocs/org/apache/kudu/mapreduce/tools/class-use/ImportCsv.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class org.apache.kudu.mapreduce.tools.ImportCsv (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.kudu.mapreduce.tools.ImportCsv (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.kudu.mapreduce.tools.ImportCsv (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.kudu.mapreduce.tools.ImportCsv (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/mapreduce/tools/package-frame.html b/apidocs/org/apache/kudu/mapreduce/tools/package-frame.html
index bf52efd..a9caf73 100644
--- a/apidocs/org/apache/kudu/mapreduce/tools/package-frame.html
+++ b/apidocs/org/apache/kudu/mapreduce/tools/package-frame.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>org.apache.kudu.mapreduce.tools (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>org.apache.kudu.mapreduce.tools (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -13,6 +13,7 @@
 <div class="indexContainer">
 <h2 title="Classes">Classes</h2>
 <ul title="Classes">
+<li><a href="BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools" target="classFrame">BigLinkedListCommon</a></li>
 <li><a href="CsvParser.html" title="class in org.apache.kudu.mapreduce.tools" target="classFrame">CsvParser</a></li>
 <li><a href="ImportCsv.html" title="class in org.apache.kudu.mapreduce.tools" target="classFrame">ImportCsv</a></li>
 </ul>
diff --git a/apidocs/org/apache/kudu/mapreduce/tools/package-summary.html b/apidocs/org/apache/kudu/mapreduce/tools/package-summary.html
index 032ddde..340a8e9 100644
--- a/apidocs/org/apache/kudu/mapreduce/tools/package-summary.html
+++ b/apidocs/org/apache/kudu/mapreduce/tools/package-summary.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>org.apache.kudu.mapreduce.tools (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>org.apache.kudu.mapreduce.tools (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="org.apache.kudu.mapreduce.tools (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="org.apache.kudu.mapreduce.tools (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
@@ -83,13 +83,20 @@
 </tr>
 <tbody>
 <tr class="altColor">
+<td class="colFirst"><a href="../../../../../org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools">BigLinkedListCommon</a></td>
+<td class="colLast">
+<div class="block">Static constants, helper methods, and utility classes for BigLinkedList
+ implementations.</div>
+</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/kudu/mapreduce/tools/CsvParser.html" title="class in org.apache.kudu.mapreduce.tools">CsvParser</a></td>
 <td class="colLast">
 <div class="block">Column-separated values parser that gives access to the different columns inside each line of
  data.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/kudu/mapreduce/tools/ImportCsv.html" title="class in org.apache.kudu.mapreduce.tools">ImportCsv</a></td>
 <td class="colLast">
 <div class="block">Map-only job that reads CSV files and inserts them into a single Kudu table.</div>
diff --git a/apidocs/org/apache/kudu/mapreduce/tools/package-tree.html b/apidocs/org/apache/kudu/mapreduce/tools/package-tree.html
index 5597012..daef836 100644
--- a/apidocs/org/apache/kudu/mapreduce/tools/package-tree.html
+++ b/apidocs/org/apache/kudu/mapreduce/tools/package-tree.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>org.apache.kudu.mapreduce.tools Class Hierarchy (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>org.apache.kudu.mapreduce.tools Class Hierarchy (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="org.apache.kudu.mapreduce.tools Class Hierarchy (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="org.apache.kudu.mapreduce.tools Class Hierarchy (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
@@ -81,6 +81,7 @@
 <ul>
 <li type="circle">java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Object</span></a>
 <ul>
+<li type="circle">org.apache.kudu.mapreduce.tools.<a href="../../../../../org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools"><span class="typeNameLink">BigLinkedListCommon</span></a></li>
 <li type="circle">org.apache.hadoop.conf.Configured (implements org.apache.hadoop.conf.Configurable)
 <ul>
 <li type="circle">org.apache.kudu.mapreduce.tools.<a href="../../../../../org/apache/kudu/mapreduce/tools/ImportCsv.html" title="class in org.apache.kudu.mapreduce.tools"><span class="typeNameLink">ImportCsv</span></a> (implements org.apache.hadoop.util.Tool)</li>
diff --git a/apidocs/org/apache/kudu/mapreduce/tools/package-use.html b/apidocs/org/apache/kudu/mapreduce/tools/package-use.html
index 212ffda..8c31c80 100644
--- a/apidocs/org/apache/kudu/mapreduce/tools/package-use.html
+++ b/apidocs/org/apache/kudu/mapreduce/tools/package-use.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Package org.apache.kudu.mapreduce.tools (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Package org.apache.kudu.mapreduce.tools (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Package org.apache.kudu.mapreduce.tools (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Package org.apache.kudu.mapreduce.tools (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/package-frame.html b/apidocs/org/apache/kudu/package-frame.html
index 7d1f3f5..f330e5b 100644
--- a/apidocs/org/apache/kudu/package-frame.html
+++ b/apidocs/org/apache/kudu/package-frame.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>org.apache.kudu (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>org.apache.kudu (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../script.js"></script>
 </head>
diff --git a/apidocs/org/apache/kudu/package-summary.html b/apidocs/org/apache/kudu/package-summary.html
index cecc847..3edad0b 100644
--- a/apidocs/org/apache/kudu/package-summary.html
+++ b/apidocs/org/apache/kudu/package-summary.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>org.apache.kudu (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>org.apache.kudu (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="org.apache.kudu (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="org.apache.kudu (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/package-tree.html b/apidocs/org/apache/kudu/package-tree.html
index 0f6590f..861af8f 100644
--- a/apidocs/org/apache/kudu/package-tree.html
+++ b/apidocs/org/apache/kudu/package-tree.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>org.apache.kudu Class Hierarchy (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>org.apache.kudu Class Hierarchy (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="org.apache.kudu Class Hierarchy (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="org.apache.kudu Class Hierarchy (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/package-use.html b/apidocs/org/apache/kudu/package-use.html
index 5929ff9..742b4aa 100644
--- a/apidocs/org/apache/kudu/package-use.html
+++ b/apidocs/org/apache/kudu/package-use.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Package org.apache.kudu (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Package org.apache.kudu (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Package org.apache.kudu (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Package org.apache.kudu (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
@@ -90,6 +90,10 @@
 <td class="colFirst"><a href="#org.apache.kudu.client">org.apache.kudu.client</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><a href="#org.apache.kudu.mapreduce.tools">org.apache.kudu.mapreduce.tools</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
@@ -147,6 +151,23 @@
 </tbody>
 </table>
 </li>
+<li class="blockList"><a name="org.apache.kudu.mapreduce.tools">
+<!--   -->
+</a>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing classes, and an explanation">
+<caption><span>Classes in <a href="../../../org/apache/kudu/package-summary.html">org.apache.kudu</a> used by <a href="../../../org/apache/kudu/mapreduce/tools/package-summary.html">org.apache.kudu.mapreduce.tools</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colOne" scope="col">Class and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colOne"><a href="../../../org/apache/kudu/class-use/Schema.html#org.apache.kudu.mapreduce.tools">Schema</a>
+<div class="block">Represents table's schema which is essentially a list of columns.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
 </ul>
 </div>
 <!-- ======= START OF BOTTOM NAVBAR ====== -->
diff --git a/apidocs/org/apache/kudu/security/package-frame.html b/apidocs/org/apache/kudu/security/package-frame.html
index 314f78b..b11aa22 100644
--- a/apidocs/org/apache/kudu/security/package-frame.html
+++ b/apidocs/org/apache/kudu/security/package-frame.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>org.apache.kudu.security (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>org.apache.kudu.security (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
diff --git a/apidocs/org/apache/kudu/security/package-summary.html b/apidocs/org/apache/kudu/security/package-summary.html
index 3149a29..69db791 100644
--- a/apidocs/org/apache/kudu/security/package-summary.html
+++ b/apidocs/org/apache/kudu/security/package-summary.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>org.apache.kudu.security (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>org.apache.kudu.security (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="org.apache.kudu.security (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="org.apache.kudu.security (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/security/package-tree.html b/apidocs/org/apache/kudu/security/package-tree.html
index 81eba93..84e27fa 100644
--- a/apidocs/org/apache/kudu/security/package-tree.html
+++ b/apidocs/org/apache/kudu/security/package-tree.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>org.apache.kudu.security Class Hierarchy (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>org.apache.kudu.security Class Hierarchy (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="org.apache.kudu.security Class Hierarchy (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="org.apache.kudu.security Class Hierarchy (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/security/package-use.html b/apidocs/org/apache/kudu/security/package-use.html
index 554f7fe..1fe452e 100644
--- a/apidocs/org/apache/kudu/security/package-use.html
+++ b/apidocs/org/apache/kudu/security/package-use.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Package org.apache.kudu.security (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Package org.apache.kudu.security (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Package org.apache.kudu.security (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Package org.apache.kudu.security (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/util/package-frame.html b/apidocs/org/apache/kudu/util/package-frame.html
index 886cd99..2e0e6ad 100644
--- a/apidocs/org/apache/kudu/util/package-frame.html
+++ b/apidocs/org/apache/kudu/util/package-frame.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>org.apache.kudu.util (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>org.apache.kudu.util (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
diff --git a/apidocs/org/apache/kudu/util/package-summary.html b/apidocs/org/apache/kudu/util/package-summary.html
index 85d1665..31fba74 100644
--- a/apidocs/org/apache/kudu/util/package-summary.html
+++ b/apidocs/org/apache/kudu/util/package-summary.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>org.apache.kudu.util (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>org.apache.kudu.util (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="org.apache.kudu.util (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="org.apache.kudu.util (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/util/package-tree.html b/apidocs/org/apache/kudu/util/package-tree.html
index 16b30b0..021d0c5 100644
--- a/apidocs/org/apache/kudu/util/package-tree.html
+++ b/apidocs/org/apache/kudu/util/package-tree.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>org.apache.kudu.util Class Hierarchy (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>org.apache.kudu.util Class Hierarchy (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="org.apache.kudu.util Class Hierarchy (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="org.apache.kudu.util Class Hierarchy (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/org/apache/kudu/util/package-use.html b/apidocs/org/apache/kudu/util/package-use.html
index d6c25f0..29a7bec 100644
--- a/apidocs/org/apache/kudu/util/package-use.html
+++ b/apidocs/org/apache/kudu/util/package-use.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Package org.apache.kudu.util (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Uses of Package org.apache.kudu.util (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Package org.apache.kudu.util (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Uses of Package org.apache.kudu.util (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/apidocs/overview-frame.html b/apidocs/overview-frame.html
index 6717625..06bb34f 100644
--- a/apidocs/overview-frame.html
+++ b/apidocs/overview-frame.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Overview List (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Overview List (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
 <script type="text/javascript" src="script.js"></script>
 </head>
diff --git a/apidocs/overview-summary.html b/apidocs/overview-summary.html
index ea47c42..09b67ee 100644
--- a/apidocs/overview-summary.html
+++ b/apidocs/overview-summary.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Overview (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Overview (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
 <script type="text/javascript" src="script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Overview (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Overview (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
@@ -70,7 +70,7 @@
 </a></div>
 <!-- ========= END OF TOP NAVBAR ========= -->
 <div class="header">
-<h1 class="title">Kudu 1.3.2-SNAPSHOT API</h1>
+<h1 class="title">Kudu 1.4.0 API</h1>
 </div>
 <div class="contentContainer">
 <table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Packages table, listing packages, and an explanation">
diff --git a/apidocs/overview-tree.html b/apidocs/overview-tree.html
index 43f3778..31562fc 100644
--- a/apidocs/overview-tree.html
+++ b/apidocs/overview-tree.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Class Hierarchy (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Class Hierarchy (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
 <script type="text/javascript" src="script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Class Hierarchy (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Class Hierarchy (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
@@ -107,6 +107,7 @@
 <li type="circle">org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduScanner.html" title="class in org.apache.kudu.client"><span class="typeNameLink">AsyncKuduScanner</span></a></li>
 <li type="circle">org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduSession.html" title="class in org.apache.kudu.client"><span class="typeNameLink">AsyncKuduSession</span></a> (implements org.apache.kudu.client.<a href="org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client">SessionConfiguration</a>)</li>
 <li type="circle">org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/AvroKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink"><span class="typeNameLink">AvroKuduOperationsProducer</span></a> (implements org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/KuduOperationsProducer.html" title="interface in org.apache.kudu.flume.sink">KuduOperationsProducer</a>)</li>
+<li type="circle">org.apache.kudu.mapreduce.tools.<a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools"><span class="typeNameLink">BigLinkedListCommon</span></a></li>
 <li type="circle">org.apache.kudu.client.<a href="org/apache/kudu/client/ColumnRangePredicate.html" title="class in org.apache.kudu.client"><span class="typeNameLink">ColumnRangePredicate</span></a></li>
 <li type="circle">org.apache.kudu.<a href="org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu"><span class="typeNameLink">ColumnSchema</span></a></li>
 <li type="circle">org.apache.kudu.mapreduce.<a href="org/apache/kudu/mapreduce/CommandLineParser.html" title="class in org.apache.kudu.mapreduce"><span class="typeNameLink">CommandLineParser</span></a></li>
diff --git a/apidocs/serialized-form.html b/apidocs/serialized-form.html
index aa91540..89da725 100644
--- a/apidocs/serialized-form.html
+++ b/apidocs/serialized-form.html
@@ -4,7 +4,7 @@
 <head>
 <!-- Generated by javadoc -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Serialized Form (Kudu 1.3.2-SNAPSHOT API)</title>
+<title>Serialized Form (Kudu 1.4.0 API)</title>
 <link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
 <script type="text/javascript" src="script.js"></script>
 </head>
@@ -12,7 +12,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Serialized Form (Kudu 1.3.2-SNAPSHOT API)";
+            parent.document.title="Serialized Form (Kudu 1.4.0 API)";
         }
     }
     catch(err) {
diff --git a/cpp-client-api/annotated.html b/cpp-client-api/annotated.html
index f1bc5dc..d16b246 100644
--- a/cpp-client-api/annotated.html
+++ b/cpp-client-api/annotated.html
@@ -102,28 +102,30 @@
 <tr id="row_0_0_8_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduLoggingCallback.html" target="_self">KuduLoggingCallback</a></td><td class="desc">The interface for all logging callbacks </td></tr>
 <tr id="row_0_0_9_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduLoggingFunctionCallback.html" target="_self">KuduLoggingFunctionCallback</a></td><td class="desc">The logging callback that invokes a function by pointer with a single argument </td></tr>
 <tr id="row_0_0_10_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduLoggingMemberCallback.html" target="_self">KuduLoggingMemberCallback</a></td><td class="desc">The logging callback that invokes a member function of an object </td></tr>
-<tr id="row_0_0_11_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html" target="_self">KuduPredicate</a></td><td class="desc">A representation of comparison predicate for Kudu queries </td></tr>
-<tr id="row_0_0_12_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduReplica.html" target="_self">KuduReplica</a></td><td class="desc">In-memory representation of a remote tablet's replica </td></tr>
-<tr id="row_0_0_13_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html" target="_self">KuduScanBatch</a></td><td class="desc">A batch of zero or more rows returned by a scan operation </td></tr>
-<tr id="row_0_0_14_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduScanner.html" target="_self">KuduScanner</a></td><td class="desc">This class is a representation of a single scan </td></tr>
-<tr id="row_0_0_15_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduScanToken.html" target="_self">KuduScanToken</a></td><td class="desc">A scan descriptor limited to a single physical contiguous location </td></tr>
-<tr id="row_0_0_16_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html" target="_self">KuduScanTokenBuilder</a></td><td class="desc">Builds scan tokens for a table </td></tr>
-<tr id="row_0_0_17_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduSchema.html" target="_self">KuduSchema</a></td><td class="desc">A representation of a table's schema </td></tr>
-<tr id="row_0_0_18_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduSchemaBuilder.html" target="_self">KuduSchemaBuilder</a></td><td class="desc">Builder API for constructing a <a class="el" href="classkudu_1_1client_1_1KuduSchema.html" title="A representation of a table&#39;s schema. ">KuduSchema</a> object </td></tr>
-<tr id="row_0_0_19_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduSession.html" target="_self">KuduSession</a></td><td class="desc">Representation of a Kudu client session </td></tr>
-<tr id="row_0_0_20_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduStatusCallback.html" target="_self">KuduStatusCallback</a></td><td class="desc">The interface for all status callbacks </td></tr>
-<tr id="row_0_0_21_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduStatusFunctionCallback.html" target="_self">KuduStatusFunctionCallback</a></td><td class="desc">The status callback that invokes a function by pointer with a single argument </td></tr>
-<tr id="row_0_0_22_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduStatusMemberCallback.html" target="_self">KuduStatusMemberCallback</a></td><td class="desc">The status callback that invokes a member function of an object </td></tr>
-<tr id="row_0_0_23_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduTable.html" target="_self">KuduTable</a></td><td class="desc">A representation of a table on a particular cluster </td></tr>
-<tr id="row_0_0_24_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html" target="_self">KuduTableAlterer</a></td><td class="desc">Alters an existing table based on the provided steps </td></tr>
-<tr id="row_0_0_25_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html" target="_self">KuduTableCreator</a></td><td class="desc">A helper class to create a new table with the desired options </td></tr>
-<tr id="row_0_0_26_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduTablet.html" target="_self">KuduTablet</a></td><td class="desc">In-memory representation of a remote tablet </td></tr>
-<tr id="row_0_0_27_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduTabletServer.html" target="_self">KuduTabletServer</a></td><td class="desc">In-memory representation of a remote tablet server </td></tr>
-<tr id="row_0_0_28_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduUpdate.html" target="_self">KuduUpdate</a></td><td class="desc">A single row update to be sent to the cluster </td></tr>
-<tr id="row_0_0_29_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduUpsert.html" target="_self">KuduUpsert</a></td><td class="desc">A single row upsert to be sent to the cluster </td></tr>
-<tr id="row_0_0_30_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduValue.html" target="_self">KuduValue</a></td><td class="desc">A constant cell value with a specific type </td></tr>
-<tr id="row_0_0_31_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html" target="_self">KuduWriteOperation</a></td><td class="desc">A single-row write operation to be sent to a Kudu table </td></tr>
-<tr id="row_0_0_32_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1ResourceMetrics.html" target="_self">ResourceMetrics</a></td><td class="desc">A generic catalog of simple metrics </td></tr>
+<tr id="row_0_0_11_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduPartitioner.html" target="_self">KuduPartitioner</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_12_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduPartitionerBuilder.html" target="_self">KuduPartitionerBuilder</a></td><td class="desc">Builder for Partitioner instances </td></tr>
+<tr id="row_0_0_13_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html" target="_self">KuduPredicate</a></td><td class="desc">A representation of comparison predicate for Kudu queries </td></tr>
+<tr id="row_0_0_14_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduReplica.html" target="_self">KuduReplica</a></td><td class="desc">In-memory representation of a remote tablet's replica </td></tr>
+<tr id="row_0_0_15_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html" target="_self">KuduScanBatch</a></td><td class="desc">A batch of zero or more rows returned by a scan operation </td></tr>
+<tr id="row_0_0_16_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduScanner.html" target="_self">KuduScanner</a></td><td class="desc">This class is a representation of a single scan </td></tr>
+<tr id="row_0_0_17_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduScanToken.html" target="_self">KuduScanToken</a></td><td class="desc">A scan descriptor limited to a single physical contiguous location </td></tr>
+<tr id="row_0_0_18_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html" target="_self">KuduScanTokenBuilder</a></td><td class="desc">Builds scan tokens for a table </td></tr>
+<tr id="row_0_0_19_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduSchema.html" target="_self">KuduSchema</a></td><td class="desc">A representation of a table's schema </td></tr>
+<tr id="row_0_0_20_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduSchemaBuilder.html" target="_self">KuduSchemaBuilder</a></td><td class="desc">Builder API for constructing a <a class="el" href="classkudu_1_1client_1_1KuduSchema.html" title="A representation of a table&#39;s schema. ">KuduSchema</a> object </td></tr>
+<tr id="row_0_0_21_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduSession.html" target="_self">KuduSession</a></td><td class="desc">Representation of a Kudu client session </td></tr>
+<tr id="row_0_0_22_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduStatusCallback.html" target="_self">KuduStatusCallback</a></td><td class="desc">The interface for all status callbacks </td></tr>
+<tr id="row_0_0_23_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduStatusFunctionCallback.html" target="_self">KuduStatusFunctionCallback</a></td><td class="desc">The status callback that invokes a function by pointer with a single argument </td></tr>
+<tr id="row_0_0_24_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduStatusMemberCallback.html" target="_self">KuduStatusMemberCallback</a></td><td class="desc">The status callback that invokes a member function of an object </td></tr>
+<tr id="row_0_0_25_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduTable.html" target="_self">KuduTable</a></td><td class="desc">A representation of a table on a particular cluster </td></tr>
+<tr id="row_0_0_26_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html" target="_self">KuduTableAlterer</a></td><td class="desc">Alters an existing table based on the provided steps </td></tr>
+<tr id="row_0_0_27_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html" target="_self">KuduTableCreator</a></td><td class="desc">A helper class to create a new table with the desired options </td></tr>
+<tr id="row_0_0_28_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduTablet.html" target="_self">KuduTablet</a></td><td class="desc">In-memory representation of a remote tablet </td></tr>
+<tr id="row_0_0_29_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduTabletServer.html" target="_self">KuduTabletServer</a></td><td class="desc">In-memory representation of a remote tablet server </td></tr>
+<tr id="row_0_0_30_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduUpdate.html" target="_self">KuduUpdate</a></td><td class="desc">A single row update to be sent to the cluster </td></tr>
+<tr id="row_0_0_31_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduUpsert.html" target="_self">KuduUpsert</a></td><td class="desc">A single row upsert to be sent to the cluster </td></tr>
+<tr id="row_0_0_32_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduValue.html" target="_self">KuduValue</a></td><td class="desc">A constant cell value with a specific type </td></tr>
+<tr id="row_0_0_33_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html" target="_self">KuduWriteOperation</a></td><td class="desc">A single-row write operation to be sent to a Kudu table </td></tr>
+<tr id="row_0_0_34_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1ResourceMetrics.html" target="_self">ResourceMetrics</a></td><td class="desc">A generic catalog of simple metrics </td></tr>
 <tr id="row_0_1_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span id="arr_0_1_" class="arrow" onclick="toggleFolder('0_1_')">&#9660;</span><span class="icona"><span class="icon">N</span></span><b>internal_logging</b></td><td class="desc"></td></tr>
 <tr id="row_0_1_0_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1internal__logging_1_1CerrLog.html" target="_self">CerrLog</a></td><td class="desc">A helper for stderr log sink </td></tr>
 <tr id="row_0_1_1_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1internal__logging_1_1NullLog.html" target="_self">NullLog</a></td><td class="desc">A helper for the nil log sink </td></tr>
@@ -140,7 +142,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/callbacks_8h_source.html b/cpp-client-api/callbacks_8h_source.html
index f2eb28f..3677b06 100644
--- a/cpp-client-api/callbacks_8h_source.html
+++ b/cpp-client-api/callbacks_8h_source.html
@@ -109,7 +109,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:02 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classKuduPartialRow-members.html b/cpp-client-api/classKuduPartialRow-members.html
index e1889c3..94d6fda 100644
--- a/cpp-client-api/classKuduPartialRow-members.html
+++ b/cpp-client-api/classKuduPartialRow-members.html
@@ -170,7 +170,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:02 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classKuduPartialRow.html b/cpp-client-api/classKuduPartialRow.html
index 2707320..320f6d3 100644
--- a/cpp-client-api/classKuduPartialRow.html
+++ b/cpp-client-api/classKuduPartialRow.html
@@ -845,7 +845,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:02 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classes.html b/cpp-client-api/classes.html
index 41d7e76..4436dbc 100644
--- a/cpp-client-api/classes.html
+++ b/cpp-client-api/classes.html
@@ -90,24 +90,23 @@
 <div class="qindex"><a class="qindex" href="#letter_C">C</a>&#160;|&#160;<a class="qindex" href="#letter_K">K</a>&#160;|&#160;<a class="qindex" href="#letter_M">M</a>&#160;|&#160;<a class="qindex" href="#letter_N">N</a>&#160;|&#160;<a class="qindex" href="#letter_R">R</a>&#160;|&#160;<a class="qindex" href="#letter_S">S</a></div>
 <table class="classindex">
 <tr><td rowspan="2" valign="bottom"><a name="letter_C"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;C&#160;&#160;</div></td></tr></table>
-</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduDelete.html">KuduDelete</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduScanToken.html">KuduScanToken</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduTablet.html">KuduTablet</a> (kudu::client)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_R"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;R&#160;&#160;</div></td></tr></table>
+</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduError.html">KuduError</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduScanToken.html">KuduScanToken</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduTabletServer.html">KuduTabletServer</a> (kudu::client)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_R"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;R&#160;&#160;</div></td></tr></table>
 </td></tr>
-<tr><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduError.html">KuduError</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html">KuduScanTokenBuilder</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduTabletServer.html">KuduTabletServer</a> (kudu::client)&#160;&#160;&#160;</td></tr>
-<tr><td valign="top"><a class="el" href="classkudu_1_1internal__logging_1_1CerrLog.html">CerrLog</a> (kudu::internal_logging)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduInsert.html">KuduInsert</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduUpdate.html">KuduUpdate</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1ResourceMetrics.html">ResourceMetrics</a> (kudu::client)&#160;&#160;&#160;</td></tr>
-<tr><td valign="top"><a class="el" href="structkudu_1_1Slice_1_1Comparator.html">Slice::Comparator</a> (kudu)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduLoggingCallback.html">KuduLoggingCallback</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduSchemaBuilder.html">KuduSchemaBuilder</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduUpsert.html">KuduUpsert</a> (kudu::client)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_S"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;S&#160;&#160;</div></td></tr></table>
+<tr><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduInsert.html">KuduInsert</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html">KuduScanTokenBuilder</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduUpdate.html">KuduUpdate</a> (kudu::client)&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="classkudu_1_1internal__logging_1_1CerrLog.html">CerrLog</a> (kudu::internal_logging)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduLoggingCallback.html">KuduLoggingCallback</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduUpsert.html">KuduUpsert</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1ResourceMetrics.html">ResourceMetrics</a> (kudu::client)&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="structkudu_1_1Slice_1_1Comparator.html">Slice::Comparator</a> (kudu)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduLoggingFunctionCallback.html">KuduLoggingFunctionCallback</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduSchemaBuilder.html">KuduSchemaBuilder</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduValue.html">KuduValue</a> (kudu::client)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_S"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;S&#160;&#160;</div></td></tr></table>
 </td></tr>
 <tr><td rowspan="2" valign="bottom"><a name="letter_K"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;K&#160;&#160;</div></td></tr></table>
-</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduLoggingFunctionCallback.html">KuduLoggingFunctionCallback</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduSession.html">KuduSession</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduValue.html">KuduValue</a> (kudu::client)&#160;&#160;&#160;</td></tr>
-<tr><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduLoggingMemberCallback.html">KuduLoggingMemberCallback</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduStatusCallback.html">KuduStatusCallback</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">KuduWriteOperation</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1Slice.html">Slice</a> (kudu)&#160;&#160;&#160;</td></tr>
-<tr><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">KuduClient</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduStatusFunctionCallback.html">KuduStatusFunctionCallback</a> (kudu::client)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_M"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;M&#160;&#160;</div></td></tr></table>
-</td><td valign="top"><a class="el" href="structkudu_1_1SliceMap.html">SliceMap</a> (kudu)&#160;&#160;&#160;</td></tr>
-<tr><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">KuduPredicate</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduStatusMemberCallback.html">KuduStatusMemberCallback</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a> (kudu)&#160;&#160;&#160;</td></tr>
-<tr><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html">KuduColumnSchema</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduReplica.html">KuduReplica</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduTable.html">KuduTable</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a> (kudu)&#160;&#160;&#160;</td><td></td></tr>
-<tr><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html">KuduColumnSpec</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">KuduScanBatch</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html">KuduTableAlterer</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1MonoTime.html">MonoTime</a> (kudu)&#160;&#160;&#160;</td><td></td></tr>
-<tr><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html">KuduColumnStorageAttributes</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">KuduScanner</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html">KuduTableCreator</a> (kudu::client)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_N"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;N&#160;&#160;</div></td></tr></table>
+</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduLoggingMemberCallback.html">KuduLoggingMemberCallback</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduSession.html">KuduSession</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">KuduWriteOperation</a> (kudu::client)&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduStatusCallback.html">KuduStatusCallback</a> (kudu::client)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_M"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;M&#160;&#160;</div></td></tr></table>
+</td><td valign="top"><a class="el" href="classkudu_1_1Slice.html">Slice</a> (kudu)&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">KuduClient</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduPartitioner.html">KuduPartitioner</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduStatusFunctionCallback.html">KuduStatusFunctionCallback</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structkudu_1_1SliceMap.html">SliceMap</a> (kudu)&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduPartitionerBuilder.html">KuduPartitionerBuilder</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduStatusMemberCallback.html">KuduStatusMemberCallback</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a> (kudu)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a> (kudu)&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html">KuduColumnSchema</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">KuduPredicate</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduTable.html">KuduTable</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1MonoTime.html">MonoTime</a> (kudu)&#160;&#160;&#160;</td><td></td></tr>
+<tr><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html">KuduColumnSpec</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduReplica.html">KuduReplica</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html">KuduTableAlterer</a> (kudu::client)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_N"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;N&#160;&#160;</div></td></tr></table>
 </td><td></td></tr>
-<tr><td></td><td></td><td></td><td></td></tr>
-<tr><td></td><td></td><td></td><td valign="top"><a class="el" href="classkudu_1_1internal__logging_1_1NullLog.html">NullLog</a> (kudu::internal_logging)&#160;&#160;&#160;</td><td></td></tr>
+<tr><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html">KuduColumnStorageAttributes</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">KuduScanBatch</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html">KuduTableCreator</a> (kudu::client)&#160;&#160;&#160;</td><td></td></tr>
+<tr><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduDelete.html">KuduDelete</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">KuduScanner</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduTablet.html">KuduTablet</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1internal__logging_1_1NullLog.html">NullLog</a> (kudu::internal_logging)&#160;&#160;&#160;</td><td></td></tr>
 <tr><td></td><td></td><td></td><td></td><td></td></tr>
 </table>
 <div class="qindex"><a class="qindex" href="#letter_C">C</a>&#160;|&#160;<a class="qindex" href="#letter_K">K</a>&#160;|&#160;<a class="qindex" href="#letter_M">M</a>&#160;|&#160;<a class="qindex" href="#letter_N">N</a>&#160;|&#160;<a class="qindex" href="#letter_R">R</a>&#160;|&#160;<a class="qindex" href="#letter_S">S</a></div>
@@ -115,7 +114,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1MonoDelta-members.html b/cpp-client-api/classkudu_1_1MonoDelta-members.html
index 84c3430..dce97e3 100644
--- a/cpp-client-api/classkudu_1_1MonoDelta-members.html
+++ b/cpp-client-api/classkudu_1_1MonoDelta-members.html
@@ -116,7 +116,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:02 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1MonoDelta.html b/cpp-client-api/classkudu_1_1MonoDelta.html
index 0e98715..356c08c 100644
--- a/cpp-client-api/classkudu_1_1MonoDelta.html
+++ b/cpp-client-api/classkudu_1_1MonoDelta.html
@@ -389,7 +389,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:02 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1MonoTime-members.html b/cpp-client-api/classkudu_1_1MonoTime-members.html
index 66526ee..9b5b19a 100644
--- a/cpp-client-api/classkudu_1_1MonoTime-members.html
+++ b/cpp-client-api/classkudu_1_1MonoTime-members.html
@@ -116,7 +116,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:02 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1MonoTime.html b/cpp-client-api/classkudu_1_1MonoTime.html
index efe71f6..6345c19 100644
--- a/cpp-client-api/classkudu_1_1MonoTime.html
+++ b/cpp-client-api/classkudu_1_1MonoTime.html
@@ -463,7 +463,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:02 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1Slice-members.html b/cpp-client-api/classkudu_1_1Slice-members.html
index 42057a5..9af50db 100644
--- a/cpp-client-api/classkudu_1_1Slice-members.html
+++ b/cpp-client-api/classkudu_1_1Slice-members.html
@@ -118,7 +118,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:02 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1Slice.html b/cpp-client-api/classkudu_1_1Slice.html
index aaeb680..f73d53f 100644
--- a/cpp-client-api/classkudu_1_1Slice.html
+++ b/cpp-client-api/classkudu_1_1Slice.html
@@ -719,7 +719,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:02 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1Status-members.html b/cpp-client-api/classkudu_1_1Status-members.html
index 86e3482..6205a58 100644
--- a/cpp-client-api/classkudu_1_1Status-members.html
+++ b/cpp-client-api/classkudu_1_1Status-members.html
@@ -133,7 +133,7 @@
   <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>NotSupported</b>(const Slice &amp;msg, const Slice &amp;msg2=Slice(), int16_t posix_code=-1) (defined in <a class="el" href="classkudu_1_1Status.html">kudu::Status</a>)</td><td class="entry"><a class="el" href="classkudu_1_1Status.html">kudu::Status</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
   <tr><td class="entry"><a class="el" href="classkudu_1_1Status.html#abf6454dcb72bfa92189a0595b5a858a7">ok</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1Status.html">kudu::Status</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1Status.html#adaff3248b2f66041d0a7dd59f118b7ac">OK</a>()</td><td class="entry"><a class="el" href="classkudu_1_1Status.html">kudu::Status</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
-  <tr><td class="entry"><a class="el" href="classkudu_1_1Status.html#ae63eecd6e48fa007b2334b6459972c39">operator=</a>(const Status &amp;s)</td><td class="entry"><a class="el" href="classkudu_1_1Status.html">kudu::Status</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1Status.html#aa387797d8a80892563d56244a2351a88">operator=</a>(const Status &amp;s)</td><td class="entry"><a class="el" href="classkudu_1_1Status.html">kudu::Status</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1Status.html#a20d5b34e3507a5dd326029a87df641dc">posix_code</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1Status.html">kudu::Status</a></td><td class="entry"></td></tr>
   <tr bgcolor="#f0f0f0"><td class="entry"><b>RemoteError</b>(const Slice &amp;msg, const Slice &amp;msg2=Slice(), int16_t posix_code=-1) (defined in <a class="el" href="classkudu_1_1Status.html">kudu::Status</a>)</td><td class="entry"><a class="el" href="classkudu_1_1Status.html">kudu::Status</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
   <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>RuntimeError</b>(const Slice &amp;msg, const Slice &amp;msg2=Slice(), int16_t posix_code=-1) (defined in <a class="el" href="classkudu_1_1Status.html">kudu::Status</a>)</td><td class="entry"><a class="el" href="classkudu_1_1Status.html">kudu::Status</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
@@ -148,7 +148,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1Status.html b/cpp-client-api/classkudu_1_1Status.html
index a83be4b..fd018e6 100644
--- a/cpp-client-api/classkudu_1_1Status.html
+++ b/cpp-client-api/classkudu_1_1Status.html
@@ -109,8 +109,8 @@
 <tr class="separator:ad14eb530b3449967ee976aaa1c0bcde0"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:affca5639a3341212bb23ae7f5c701803"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1Status.html#affca5639a3341212bb23ae7f5c701803">Status</a> (const <a class="el" href="classkudu_1_1Status.html">Status</a> &amp;s)</td></tr>
 <tr class="separator:affca5639a3341212bb23ae7f5c701803"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ae63eecd6e48fa007b2334b6459972c39"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1Status.html#ae63eecd6e48fa007b2334b6459972c39">operator=</a> (const <a class="el" href="classkudu_1_1Status.html">Status</a> &amp;s)</td></tr>
-<tr class="separator:ae63eecd6e48fa007b2334b6459972c39"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa387797d8a80892563d56244a2351a88"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1Status.html#aa387797d8a80892563d56244a2351a88">operator=</a> (const <a class="el" href="classkudu_1_1Status.html">Status</a> &amp;s)</td></tr>
+<tr class="separator:aa387797d8a80892563d56244a2351a88"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:abf6454dcb72bfa92189a0595b5a858a7"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1Status.html#abf6454dcb72bfa92189a0595b5a858a7">ok</a> () const </td></tr>
 <tr class="separator:abf6454dcb72bfa92189a0595b5a858a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a38e1a8eb7b23092569cb61983ebb671d"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1Status.html#a38e1a8eb7b23092569cb61983ebb671d">IsNotFound</a> () const </td></tr>
@@ -865,7 +865,7 @@
 
 </div>
 </div>
-<a class="anchor" id="ae63eecd6e48fa007b2334b6459972c39"></a>
+<a class="anchor" id="aa387797d8a80892563d56244a2351a88"></a>
 <div class="memitem">
 <div class="memproto">
 <table class="mlabels">
@@ -873,7 +873,7 @@
   <td class="mlabels-left">
       <table class="memname">
         <tr>
-          <td class="memname">void kudu::Status::operator= </td>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> &amp; kudu::Status::operator= </td>
           <td>(</td>
           <td class="paramtype">const <a class="el" href="classkudu_1_1Status.html">Status</a> &amp;&#160;</td>
           <td class="paramname"><em>s</em></td><td>)</td>
@@ -893,6 +893,7 @@
   </table>
   </dd>
 </dl>
+<dl class="section return"><dt>Returns</dt><dd>The reference to the modified object. </dd></dl>
 
 </div>
 </div>
@@ -935,7 +936,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduClient-members.html b/cpp-client-api/classkudu_1_1client_1_1KuduClient-members.html
index 4413fb8..cceb1a0 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduClient-members.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduClient-members.html
@@ -94,27 +94,29 @@
 
 <p>This is the complete list of members for <a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a>, including all inherited members.</p>
 <table class="directory">
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>ClientTest</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
-  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11aa801886067da41dacd0c9c2b8091f08d8">CLOSEST_REPLICA</a> enum value</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#aacfcd61c7cc1bf7817d1aa0bb738414f">default_admin_operation_timeout</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a2d0e8397e979e651a23eb240513a5556">default_rpc_timeout</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a9d7cbad036bc74c71873a428abce5c1d">DeleteTable</a>(const std::string &amp;table_name)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a974b491e5d0864f4aa3f60347fa1b62e">ExportAuthenticationCredentials</a>(std::string *authn_creds) const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11aaa060fb6126a3e3fa80079f885dc7d48f">FIRST_REPLICA</a> enum value</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a3a671b3540c74ef7c358bb98e95031e0">GetLatestObservedTimestamp</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a2aa649e05e0cfb0e10ebce98fb4d7a65">GetTableSchema</a>(const std::string &amp;table_name, KuduSchema *schema)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>internal::Batcher</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>internal::GetTableSchemaRpc</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>internal::LookupRpc</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>internal::MetaCache</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>internal::RemoteTablet</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>internal::RemoteTabletServer</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>internal::WriteRpc</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a7a331e528759296089837b4611c01809">IsAlterTableInProgress</a>(const std::string &amp;table_name, bool *alter_in_progress)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a2f0323b439d8658b2ac31fde7f46de63">IsCreateTableInProgress</a>(const std::string &amp;table_name, bool *create_in_progress)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a6f52dff0717d6e96863aff068bfb3795">IsMultiMaster</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a196f1a18c000cdca309d05161caaddaa">kNoTimestamp</a></td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>KuduClientBuilder</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>::kudu::SecurityUnknownTskTest</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>ClientTest</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11aa801886067da41dacd0c9c2b8091f08d8">CLOSEST_REPLICA</a> enum value</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#aacfcd61c7cc1bf7817d1aa0bb738414f">default_admin_operation_timeout</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a2d0e8397e979e651a23eb240513a5556">default_rpc_timeout</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a9d7cbad036bc74c71873a428abce5c1d">DeleteTable</a>(const std::string &amp;table_name)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a974b491e5d0864f4aa3f60347fa1b62e">ExportAuthenticationCredentials</a>(std::string *authn_creds) const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11aaa060fb6126a3e3fa80079f885dc7d48f">FIRST_REPLICA</a> enum value</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a3a671b3540c74ef7c358bb98e95031e0">GetLatestObservedTimestamp</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a2aa649e05e0cfb0e10ebce98fb4d7a65">GetTableSchema</a>(const std::string &amp;table_name, KuduSchema *schema)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>internal::Batcher</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>internal::GetTableSchemaRpc</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>internal::LookupRpc</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>internal::MetaCache</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>internal::RemoteTablet</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>internal::RemoteTabletServer</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>internal::WriteRpc</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a7a331e528759296089837b4611c01809">IsAlterTableInProgress</a>(const std::string &amp;table_name, bool *alter_in_progress)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a2f0323b439d8658b2ac31fde7f46de63">IsCreateTableInProgress</a>(const std::string &amp;table_name, bool *create_in_progress)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a6f52dff0717d6e96863aff068bfb3795">IsMultiMaster</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a196f1a18c000cdca309d05161caaddaa">kNoTimestamp</a></td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>KuduClientBuilder</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>KuduPartitionerBuilder</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
   <tr bgcolor="#f0f0f0"><td class="entry"><b>KuduScanner</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
   <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>KuduScanToken</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
   <tr bgcolor="#f0f0f0"><td class="entry"><b>KuduScanTokenBuilder</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
@@ -132,12 +134,13 @@
   <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11a">ReplicaSelection</a> enum name</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a0809b055eda76fd68988462f2a9791dd">SetLatestObservedTimestamp</a>(uint64_t ht_timestamp)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a96e9a6c0a16a8825c291528ac27af818">TableExists</a>(const std::string &amp;table_name, bool *exists)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~KuduClient</b>() (defined in <a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>tools::LeaderMasterProxy</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>~KuduClient</b>() (defined in <a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"></td></tr>
 </table></div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduClient.html b/cpp-client-api/classkudu_1_1client_1_1KuduClient.html
index 9826bef..11ab63f 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduClient.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduClient.html
@@ -106,11 +106,15 @@
 Inheritance diagram for kudu::client::KuduClient:</div>
 <div class="dyncontent">
 <div class="center"><img src="classkudu_1_1client_1_1KuduClient__inherit__graph.png" border="0" usemap="#kudu_1_1client_1_1KuduClient_inherit__map" alt="Inheritance graph"/></div>
+<map name="kudu_1_1client_1_1KuduClient_inherit__map" id="kudu_1_1client_1_1KuduClient_inherit__map">
+</map>
 <center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
 <div class="dynheader">
 Collaboration diagram for kudu::client::KuduClient:</div>
 <div class="dyncontent">
 <div class="center"><img src="classkudu_1_1client_1_1KuduClient__coll__graph.png" border="0" usemap="#kudu_1_1client_1_1KuduClient_coll__map" alt="Collaboration graph"/></div>
+<map name="kudu_1_1client_1_1KuduClient_coll__map" id="kudu_1_1client_1_1KuduClient_coll__map">
+</map>
 <center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
 <table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
@@ -193,6 +197,9 @@
 <tr class="memitem:ad396ed74a6421797a2320caf02bec46c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad396ed74a6421797a2320caf02bec46c"></a>
 class&#160;</td><td class="memItemRight" valign="bottom"><b>KuduClientBuilder</b></td></tr>
 <tr class="separator:ad396ed74a6421797a2320caf02bec46c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4a88b01a7cf6a8b126e310af8a973077"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4a88b01a7cf6a8b126e310af8a973077"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>KuduPartitionerBuilder</b></td></tr>
+<tr class="separator:a4a88b01a7cf6a8b126e310af8a973077"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a79d30f3059c783e077627a6f6d153c1b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a79d30f3059c783e077627a6f6d153c1b"></a>
 class&#160;</td><td class="memItemRight" valign="bottom"><b>KuduScanner</b></td></tr>
 <tr class="separator:a79d30f3059c783e077627a6f6d153c1b"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -214,6 +221,12 @@
 <tr class="memitem:af500eb2379d14e4e6603db2c69faa783"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af500eb2379d14e4e6603db2c69faa783"></a>
 class&#160;</td><td class="memItemRight" valign="bottom"><b>KuduTableCreator</b></td></tr>
 <tr class="separator:af500eb2379d14e4e6603db2c69faa783"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6ea0a9ac656faa8d48cc1f0b413fb7a7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6ea0a9ac656faa8d48cc1f0b413fb7a7"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>::kudu::SecurityUnknownTskTest</b></td></tr>
+<tr class="separator:a6ea0a9ac656faa8d48cc1f0b413fb7a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abd8d8500650a19511fc193f5f2f09220"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abd8d8500650a19511fc193f5f2f09220"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>tools::LeaderMasterProxy</b></td></tr>
+<tr class="separator:abd8d8500650a19511fc193f5f2f09220"><td class="memSeparator" colspan="2">&#160;</td></tr>
 </table>
 <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
 <div class="textblock"><p>A handle for a connection to a cluster. </p>
@@ -618,6 +631,7 @@
 </div><div class="memdoc">
 <p>Open table with the given name.</p>
 <p>This method does an RPC to ensure that the table exists and looks up its schema.</p>
+<dl class="section note"><dt>Note</dt><dd>New range partitions created by other clients will immediately be available after opening the table.</dd></dl>
 <dl class="params"><dt>Parameters</dt><dd>
   <table class="params">
     <tr><td class="paramdir">[in]</td><td class="paramname">table_name</td><td>Name of the table. </td></tr>
@@ -722,7 +736,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduClientBuilder-members.html b/cpp-client-api/classkudu_1_1client_1_1KuduClientBuilder-members.html
index e596431..e15af4f 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduClientBuilder-members.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduClientBuilder-members.html
@@ -107,7 +107,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduClientBuilder.html b/cpp-client-api/classkudu_1_1client_1_1KuduClientBuilder.html
index b09413e..6762905 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduClientBuilder.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduClientBuilder.html
@@ -293,7 +293,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduColumnSchema-members.html b/cpp-client-api/classkudu_1_1client_1_1KuduColumnSchema-members.html
index 3835fc2..4d8715c 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduColumnSchema-members.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduColumnSchema-members.html
@@ -124,7 +124,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduColumnSchema.html b/cpp-client-api/classkudu_1_1client_1_1KuduColumnSchema.html
index 9b90b02..09aa8df 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduColumnSchema.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduColumnSchema.html
@@ -412,7 +412,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduColumnSpec-members.html b/cpp-client-api/classkudu_1_1client_1_1KuduColumnSpec-members.html
index 12a2861..4414783 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduColumnSpec-members.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduColumnSpec-members.html
@@ -110,7 +110,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduColumnSpec.html b/cpp-client-api/classkudu_1_1client_1_1KuduColumnSpec.html
index 82ff158..9986a1d 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduColumnSpec.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduColumnSpec.html
@@ -346,7 +346,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduColumnStorageAttributes-members.html b/cpp-client-api/classkudu_1_1client_1_1KuduColumnStorageAttributes-members.html
index 50ff895..d09ab98 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduColumnStorageAttributes-members.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduColumnStorageAttributes-members.html
@@ -116,7 +116,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduColumnStorageAttributes.html b/cpp-client-api/classkudu_1_1client_1_1KuduColumnStorageAttributes.html
index 416b7b4..d47677c 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduColumnStorageAttributes.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduColumnStorageAttributes.html
@@ -284,7 +284,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduDelete-members.html b/cpp-client-api/classkudu_1_1client_1_1KuduDelete-members.html
index 0963edf..ca8af37 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduDelete-members.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduDelete-members.html
@@ -109,7 +109,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduDelete.html b/cpp-client-api/classkudu_1_1client_1_1KuduDelete.html
index 1998c7f..996b517 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduDelete.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduDelete.html
@@ -183,7 +183,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduError-members.html b/cpp-client-api/classkudu_1_1client_1_1KuduError-members.html
index 4daacd4..37d39ec 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduError-members.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduError-members.html
@@ -106,7 +106,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduError.html b/cpp-client-api/classkudu_1_1client_1_1KuduError.html
index f4b5a0e..f51438c 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduError.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduError.html
@@ -203,7 +203,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduInsert-members.html b/cpp-client-api/classkudu_1_1client_1_1KuduInsert-members.html
index cd5c497..f0d5c9b 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduInsert-members.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduInsert-members.html
@@ -109,7 +109,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduInsert.html b/cpp-client-api/classkudu_1_1client_1_1KuduInsert.html
index 99b1b9f..e0f5b99 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduInsert.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduInsert.html
@@ -183,7 +183,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduLoggingCallback-members.html b/cpp-client-api/classkudu_1_1client_1_1KuduLoggingCallback-members.html
index ee7e2a9..9e09fe2 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduLoggingCallback-members.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduLoggingCallback-members.html
@@ -101,7 +101,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduLoggingCallback.html b/cpp-client-api/classkudu_1_1client_1_1KuduLoggingCallback.html
index 15da27e..95d076a 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduLoggingCallback.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduLoggingCallback.html
@@ -197,7 +197,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduLoggingFunctionCallback-members.html b/cpp-client-api/classkudu_1_1client_1_1KuduLoggingFunctionCallback-members.html
index a14558b..48dff52 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduLoggingFunctionCallback-members.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduLoggingFunctionCallback-members.html
@@ -103,7 +103,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduLoggingFunctionCallback.html b/cpp-client-api/classkudu_1_1client_1_1KuduLoggingFunctionCallback.html
index 1ea4030..7e7e264 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduLoggingFunctionCallback.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduLoggingFunctionCallback.html
@@ -266,7 +266,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduLoggingMemberCallback-members.html b/cpp-client-api/classkudu_1_1client_1_1KuduLoggingMemberCallback-members.html
index 8bb2e6c..ebc4f6f 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduLoggingMemberCallback-members.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduLoggingMemberCallback-members.html
@@ -103,7 +103,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduLoggingMemberCallback.html b/cpp-client-api/classkudu_1_1client_1_1KuduLoggingMemberCallback.html
index c63c9ab..ced45f0 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduLoggingMemberCallback.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduLoggingMemberCallback.html
@@ -266,7 +266,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduPartitioner-members.html b/cpp-client-api/classkudu_1_1client_1_1KuduPartitioner-members.html
index da5697f..f99ad2f 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduPartitioner-members.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduPartitioner-members.html
@@ -102,7 +102,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.4.0-SNAPSHOT on Mon May 15 2017 12:25:58 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduPartitioner.html b/cpp-client-api/classkudu_1_1client_1_1KuduPartitioner.html
index 50f63ff..6b847bf 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduPartitioner.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduPartitioner.html
@@ -174,7 +174,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.4.0-SNAPSHOT on Mon May 15 2017 12:25:58 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduPartitionerBuilder-members.html b/cpp-client-api/classkudu_1_1client_1_1KuduPartitionerBuilder-members.html
index 84240e7..634aa7b 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduPartitionerBuilder-members.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduPartitionerBuilder-members.html
@@ -102,7 +102,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.4.0-SNAPSHOT on Mon May 15 2017 12:25:58 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduPartitionerBuilder.html b/cpp-client-api/classkudu_1_1client_1_1KuduPartitionerBuilder.html
index 548b263..e306167 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduPartitionerBuilder.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduPartitionerBuilder.html
@@ -178,7 +178,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.4.0-SNAPSHOT on Mon May 15 2017 12:25:58 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduPredicate-members.html b/cpp-client-api/classkudu_1_1client_1_1KuduPredicate-members.html
index 69fae4e..3c95cf8 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduPredicate-members.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduPredicate-members.html
@@ -114,7 +114,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduPredicate.html b/cpp-client-api/classkudu_1_1client_1_1KuduPredicate.html
index a48542f..a0df2e4 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduPredicate.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduPredicate.html
@@ -195,7 +195,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduReplica-members.html b/cpp-client-api/classkudu_1_1client_1_1KuduReplica-members.html
index c8549a0..ba43977 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduReplica-members.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduReplica-members.html
@@ -103,7 +103,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduReplica.html b/cpp-client-api/classkudu_1_1client_1_1KuduReplica.html
index 3165454..58ce041 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduReplica.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduReplica.html
@@ -160,7 +160,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduScanBatch-members.html b/cpp-client-api/classkudu_1_1client_1_1KuduScanBatch-members.html
index 848a35b..5eb0dad 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduScanBatch-members.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduScanBatch-members.html
@@ -96,27 +96,29 @@
 <table class="directory">
   <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#a30f55cf8f3c9d6fcb47537e586d82e9f">begin</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
   <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#ae07d3fd8616c5c69cc0a4ef3d247bf2c">cell</a>(int col_idx) const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#ad30dcfafb276b5347842882cf68cb522">end</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>GetBinary</b>(const Slice &amp;col_name, Slice *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetBinary</b>(int col_idx, Slice *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>GetBool</b>(const Slice &amp;col_name, bool *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetBool</b>(int col_idx, bool *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>GetDouble</b>(const Slice &amp;col_name, double *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetDouble</b>(int col_idx, double *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>GetFloat</b>(const Slice &amp;col_name, float *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetFloat</b>(int col_idx, float *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>GetInt16</b>(const Slice &amp;col_name, int16_t *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetInt16</b>(int col_idx, int16_t *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>GetInt32</b>(const Slice &amp;col_name, int32_t *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetInt32</b>(int col_idx, int32_t *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>GetInt64</b>(const Slice &amp;col_name, int64_t *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetInt64</b>(int col_idx, int64_t *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>GetInt8</b>(const Slice &amp;col_name, int8_t *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetInt8</b>(int col_idx, int8_t *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>GetString</b>(const Slice &amp;col_name, Slice *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetString</b>(int col_idx, Slice *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>GetUnixTimeMicros</b>(const Slice &amp;col_name, int64_t *micros_since_utc_epoch) const WARN_UNUSED_RESULT (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetUnixTimeMicros</b>(int col_idx, int64_t *micros_since_utc_epoch) const WARN_UNUSED_RESULT (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#a1073a0c6517b126690d99527556dba51">direct_data</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#ad30dcfafb276b5347842882cf68cb522">end</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetBinary</b>(const Slice &amp;col_name, Slice *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>GetBinary</b>(int col_idx, Slice *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetBool</b>(const Slice &amp;col_name, bool *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>GetBool</b>(int col_idx, bool *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetDouble</b>(const Slice &amp;col_name, double *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>GetDouble</b>(int col_idx, double *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetFloat</b>(const Slice &amp;col_name, float *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>GetFloat</b>(int col_idx, float *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetInt16</b>(const Slice &amp;col_name, int16_t *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>GetInt16</b>(int col_idx, int16_t *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetInt32</b>(const Slice &amp;col_name, int32_t *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>GetInt32</b>(int col_idx, int32_t *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetInt64</b>(const Slice &amp;col_name, int64_t *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>GetInt64</b>(int col_idx, int64_t *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetInt8</b>(const Slice &amp;col_name, int8_t *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>GetInt8</b>(int col_idx, int8_t *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetString</b>(const Slice &amp;col_name, Slice *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>GetString</b>(int col_idx, Slice *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetUnixTimeMicros</b>(const Slice &amp;col_name, int64_t *micros_since_utc_epoch) const WARN_UNUSED_RESULT (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>GetUnixTimeMicros</b>(int col_idx, int64_t *micros_since_utc_epoch) const WARN_UNUSED_RESULT (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#af41b26a5f137122454d6341a5b5c1a43">indirect_data</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
   <tr bgcolor="#f0f0f0"><td class="entry"><b>IntKeysTestSetup</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#af37f56c4ef55f2e140fcea2a07340054">IsNull</a>(const Slice &amp;col_name) const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#a1b0b04656fec608919b7b6ac7c99451e">IsNull</a>(int col_idx) const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
@@ -142,7 +144,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduScanBatch.html b/cpp-client-api/classkudu_1_1client_1_1KuduScanBatch.html
index 892048e..6cfa6cd 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduScanBatch.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduScanBatch.html
@@ -105,11 +105,15 @@
 Inheritance diagram for kudu::client::KuduScanBatch:</div>
 <div class="dyncontent">
 <div class="center"><img src="classkudu_1_1client_1_1KuduScanBatch__inherit__graph.png" border="0" usemap="#kudu_1_1client_1_1KuduScanBatch_inherit__map" alt="Inheritance graph"/></div>
+<map name="kudu_1_1client_1_1KuduScanBatch_inherit__map" id="kudu_1_1client_1_1KuduScanBatch_inherit__map">
+</map>
 <center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
 <div class="dynheader">
 Collaboration diagram for kudu::client::KuduScanBatch:</div>
 <div class="dyncontent">
 <div class="center"><img src="classkudu_1_1client_1_1KuduScanBatch__coll__graph.png" border="0" usemap="#kudu_1_1client_1_1KuduScanBatch_coll__map" alt="Collaboration graph"/></div>
+<map name="kudu_1_1client_1_1KuduScanBatch_coll__map" id="kudu_1_1client_1_1KuduScanBatch_coll__map">
+</map>
 <center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
 <table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
@@ -151,6 +155,14 @@
 <tr class="separator:a378a5844a4b4774056b26f0003c15048"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:afd2b2c4cb038cbd366c2af8cf09a3a68"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#afd2b2c4cb038cbd366c2af8cf09a3a68">operator!=</a> (const const_iterator &amp;other) const </td></tr>
 <tr class="separator:afd2b2c4cb038cbd366c2af8cf09a3a68"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr><td colspan="2"><div class="groupHeader">Advanced/Unstable API</div></td></tr>
+<tr><td colspan="2"><div class="groupText"><p>There are no guarantees on the stability of the format returned by these methods, which might change at any given time.</p>
+<dl class="section note"><dt>Note</dt><dd>The Slices returned by both <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#a1073a0c6517b126690d99527556dba51">direct_data()</a> and <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#af41b26a5f137122454d6341a5b5c1a43">indirect_data()</a> are only valid for the lifetime of the <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html" title="A batch of zero or more rows returned by a scan operation. ">KuduScanBatch</a>. </dd></dl>
+</div></td></tr>
+<tr class="memitem:a1073a0c6517b126690d99527556dba51"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Slice.html">Slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#a1073a0c6517b126690d99527556dba51">direct_data</a> () const </td></tr>
+<tr class="separator:a1073a0c6517b126690d99527556dba51"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af41b26a5f137122454d6341a5b5c1a43"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Slice.html">Slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#af41b26a5f137122454d6341a5b5c1a43">indirect_data</a> () const </td></tr>
+<tr class="separator:af41b26a5f137122454d6341a5b5c1a43"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr><td colspan="2"><div class="groupHeader">Getters for integral type columns by column name.</div></td></tr>
 <tr><td colspan="2"><div class="groupText"><dl class="params"><dt>Parameters</dt><dd>
   <table class="params">
@@ -350,6 +362,23 @@
 
 </div>
 </div>
+<a class="anchor" id="a1073a0c6517b126690d99527556dba51"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Slice.html">Slice</a> kudu::client::KuduScanBatch::direct_data </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Return a slice that points to the direct row data received from the server. Users of this API must have knowledge of the data format in order to decode the data.</p>
+<dl class="section return"><dt>Returns</dt><dd>a <a class="el" href="classkudu_1_1Slice.html" title="A wrapper around externally allocated data. ">Slice</a> that points to the raw direct row data. </dd></dl>
+
+</div>
+</div>
 <a class="anchor" id="ad30dcfafb276b5347842882cf68cb522"></a>
 <div class="memitem">
 <div class="memproto">
@@ -374,6 +403,23 @@
 
 </div>
 </div>
+<a class="anchor" id="af41b26a5f137122454d6341a5b5c1a43"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Slice.html">Slice</a> kudu::client::KuduScanBatch::indirect_data </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Like the method above, but for indirect data.</p>
+<dl class="section return"><dt>Returns</dt><dd>a <a class="el" href="classkudu_1_1Slice.html" title="A wrapper around externally allocated data. ">Slice</a> that points to the raw indirect row data. </dd></dl>
+
+</div>
+</div>
 <a class="anchor" id="af37f56c4ef55f2e140fcea2a07340054"></a>
 <div class="memitem">
 <div class="memproto">
@@ -662,7 +708,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduScanToken-members.html b/cpp-client-api/classkudu_1_1client_1_1KuduScanToken-members.html
index 2bbaa71..3dd2dec 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduScanToken-members.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduScanToken-members.html
@@ -104,7 +104,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduScanToken.html b/cpp-client-api/classkudu_1_1client_1_1KuduScanToken.html
index 70b1c4a..379c87a 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduScanToken.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduScanToken.html
@@ -252,7 +252,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduScanTokenBuilder-members.html b/cpp-client-api/classkudu_1_1client_1_1KuduScanTokenBuilder-members.html
index 5444e4c..d5eb2f7 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduScanTokenBuilder-members.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduScanTokenBuilder-members.html
@@ -114,7 +114,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduScanTokenBuilder.html b/cpp-client-api/classkudu_1_1client_1_1KuduScanTokenBuilder.html
index 3deec70..fcbc55b 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduScanTokenBuilder.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduScanTokenBuilder.html
@@ -533,7 +533,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduScanner-members.html b/cpp-client-api/classkudu_1_1client_1_1KuduScanner-members.html
index cbc4388..49fb4de 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduScanner-members.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduScanner-members.html
@@ -112,9 +112,11 @@
   <tr bgcolor="#f0f0f0"><td class="entry"><b>KuduScanToken</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#af365f1d3b3b34aeb7d016727a9019067">NextBatch</a>(std::vector&lt; KuduRowResult &gt; *rows) ATTRIBUTE_DEPRECATED(&quot;use NextBatch(KuduScanBatch*) instead&quot;)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#af1475d9a0667839c1ed9c3714b47d487">NextBatch</a>(KuduScanBatch *batch)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#aa1ff3c11d9ac9f8183189ea5ac1ed9f1">Open</a>()</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a3d6c79325c9da9741d0accf1b43bf7f9a4395ad2ec57ce53e30d8b5748fa2c63a">ORDERED</a> enum value</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a3d6c79325c9da9741d0accf1b43bf7f9">OrderMode</a> enum name</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a68345956f3f4c7fd5e1665fd292f6a85">NO_FLAGS</a></td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#aa1ff3c11d9ac9f8183189ea5ac1ed9f1">Open</a>()</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a3d6c79325c9da9741d0accf1b43bf7f9a4395ad2ec57ce53e30d8b5748fa2c63a">ORDERED</a> enum value</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a3d6c79325c9da9741d0accf1b43bf7f9">OrderMode</a> enum name</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a63cd270f3bc72f4197d2581ec8f8fc44">PAD_UNIXTIME_MICROS_TO_16_BYTES</a></td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
   <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a36fdb59d6488618363331269d3f58348a380798cc81589d865b7b2549e186b2e2">READ_AT_SNAPSHOT</a> enum value</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a36fdb59d6488618363331269d3f58348a8694cef688d819806fa9a85b002231a8">READ_LATEST</a> enum value</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a36fdb59d6488618363331269d3f58348">ReadMode</a> enum name</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
@@ -126,18 +128,19 @@
   <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#abb10b26056757bf81c410d3d5e6bcc01">SetProjectedColumnNames</a>(const std::vector&lt; std::string &gt; &amp;col_names) WARN_UNUSED_RESULT</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a68e2115cde71e113674e7a8b4df399ad">SetProjectedColumns</a>(const std::vector&lt; std::string &gt; &amp;col_names) WARN_UNUSED_RESULT ATTRIBUTE_DEPRECATED(&quot;use SetProjectedColumnNames() instead&quot;)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a248e0a05e7bfdc31b5b8d363a937e81e">SetReadMode</a>(ReadMode read_mode) WARN_UNUSED_RESULT</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#af1db3f372fe3d0f30cd0b6a36b783cc8">SetSelection</a>(KuduClient::ReplicaSelection selection) WARN_UNUSED_RESULT</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a5b36a405daf09399438d5501b25b9f9f">SetSnapshotMicros</a>(uint64_t snapshot_timestamp_micros) WARN_UNUSED_RESULT</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#ab13dbb301197b411dec4cd6870801bae">SetSnapshotRaw</a>(uint64_t snapshot_timestamp) WARN_UNUSED_RESULT</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a97c9f5e6a1056484c88ced411e19bee6">SetTimeoutMillis</a>(int millis)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#aea36ffb783be3ffdf370cd7399f232d3">ToString</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a3d6c79325c9da9741d0accf1b43bf7f9adfeea547de613f36a0aff9f585671ec3">UNORDERED</a> enum value</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~KuduScanner</b>() (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a3dbaf4c2db6a37517a242dcb8ee64c11">SetRowFormatFlags</a>(uint64_t flags)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#af1db3f372fe3d0f30cd0b6a36b783cc8">SetSelection</a>(KuduClient::ReplicaSelection selection) WARN_UNUSED_RESULT</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a5b36a405daf09399438d5501b25b9f9f">SetSnapshotMicros</a>(uint64_t snapshot_timestamp_micros) WARN_UNUSED_RESULT</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#ab13dbb301197b411dec4cd6870801bae">SetSnapshotRaw</a>(uint64_t snapshot_timestamp) WARN_UNUSED_RESULT</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a97c9f5e6a1056484c88ced411e19bee6">SetTimeoutMillis</a>(int millis)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#aea36ffb783be3ffdf370cd7399f232d3">ToString</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a3d6c79325c9da9741d0accf1b43bf7f9adfeea547de613f36a0aff9f585671ec3">UNORDERED</a> enum value</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>~KuduScanner</b>() (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
 </table></div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduScanner.html b/cpp-client-api/classkudu_1_1client_1_1KuduScanner.html
index ae13b10..667d3a2 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduScanner.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduScanner.html
@@ -185,6 +185,15 @@
 <tr class="memitem:a08335df27491aef74f8ed104799ab541"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a08335df27491aef74f8ed104799ab541"></a>
 class&#160;</td><td class="memItemRight" valign="bottom"><b>KuduScanToken</b></td></tr>
 <tr class="separator:a08335df27491aef74f8ed104799ab541"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
+Advanced/Unstable API</h2></td></tr>
+<tr class="memitem:a68345956f3f4c7fd5e1665fd292f6a85"><td class="memItemLeft" align="right" valign="top">static const uint64_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a68345956f3f4c7fd5e1665fd292f6a85">NO_FLAGS</a> = 0</td></tr>
+<tr class="separator:a68345956f3f4c7fd5e1665fd292f6a85"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a63cd270f3bc72f4197d2581ec8f8fc44"><td class="memItemLeft" align="right" valign="top">static const uint64_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a63cd270f3bc72f4197d2581ec8f8fc44">PAD_UNIXTIME_MICROS_TO_16_BYTES</a> = 1 &lt;&lt; 0</td></tr>
+<tr class="separator:a63cd270f3bc72f4197d2581ec8f8fc44"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3dbaf4c2db6a37517a242dcb8ee64c11"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a3dbaf4c2db6a37517a242dcb8ee64c11">SetRowFormatFlags</a> (uint64_t flags)</td></tr>
+<tr class="separator:a3dbaf4c2db6a37517a242dcb8ee64c11"><td class="memSeparator" colspan="2">&#160;</td></tr>
 </table>
 <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
 <div class="textblock"><p>This class is a representation of a single scan. </p>
@@ -825,6 +834,25 @@
 
 </div>
 </div>
+<a class="anchor" id="a3dbaf4c2db6a37517a242dcb8ee64c11"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduScanner::SetRowFormatFlags </td>
+          <td>(</td>
+          <td class="paramtype">uint64_t&#160;</td>
+          <td class="paramname"><em>flags</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Optionally set row format modifier flags.</p>
+<p>If flags is RowFormatFlags::NO_FLAGS, then no modifications will be made to the row format and the default will be used.</p>
+<p>Some flags require server-side server-side support, thus the caller should be prepared to handle a NotSupported status in <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#aa1ff3c11d9ac9f8183189ea5ac1ed9f1">Open()</a> and <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#af365f1d3b3b34aeb7d016727a9019067">NextBatch()</a>.</p>
+<p>Example usage (without error handling, for brevity): </p><div class="fragment"><div class="line"><a class="code" href="classkudu_1_1client_1_1KuduScanner.html#a2c621f778072a02f4092e96a0baf8180">KuduScanner</a> scanner(...);</div><div class="line">uint64_t row_format_flags = <a class="code" href="classkudu_1_1client_1_1KuduScanner.html#a68345956f3f4c7fd5e1665fd292f6a85">KuduScanner::NO_FLAGS</a>;</div><div class="line">row_format_flags |= <a class="code" href="classkudu_1_1client_1_1KuduScanner.html#a63cd270f3bc72f4197d2581ec8f8fc44">KuduScanner::PAD_UNIXTIME_MICROS_TO_16_BYTES</a>;</div><div class="line">scanner.SetRowFormatFlags(row_format_flags);</div><div class="line">scanner.Open();</div><div class="line"><span class="keywordflow">while</span> (scanner.HasMoreRows()) {</div><div class="line">  KuduScanBatch batch;</div><div class="line">  scanner.NextBatch(&amp;batch);</div><div class="line">  Slice direct_data = batch.direct_data();</div><div class="line">  Slice indirect_data = batch.indirect_data();</div><div class="line">  ... <span class="comment">// Row data decoding and handling.</span></div><div class="line">}</div></div><!-- fragment --> 
+</div>
+</div>
 <a class="anchor" id="af1db3f372fe3d0f30cd0b6a36b783cc8"></a>
 <div class="memitem">
 <div class="memproto">
@@ -940,6 +968,50 @@
 
 </div>
 </div>
+<h2 class="groupheader">Member Data Documentation</h2>
+<a class="anchor" id="a68345956f3f4c7fd5e1665fd292f6a85"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">const uint64_t kudu::client::KuduScanner::NO_FLAGS = 0</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Modifier flags for the row format returned from the server.</p>
+<dl class="section note"><dt>Note</dt><dd>Each flag corresponds to a bit that gets set on a bitset that is sent to the server. See <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a3dbaf4c2db6a37517a242dcb8ee64c11">SetRowFormatFlags()</a> for example usage. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a63cd270f3bc72f4197d2581ec8f8fc44"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">const uint64_t kudu::client::KuduScanner::PAD_UNIXTIME_MICROS_TO_16_BYTES = 1 &lt;&lt; 0</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Makes the server pad UNIXTIME_MICROS slots to 16 bytes. </p><dl class="section note"><dt>Note</dt><dd>This flag actually wastes throughput by making messages larger than they need to be. It exists merely for compatibility reasons and requires the user to know the row format in order to decode the data. That is, if this flag is enabled, the user <em>must</em> use <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#a1073a0c6517b126690d99527556dba51">KuduScanBatch::direct_data()</a> and <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#af41b26a5f137122454d6341a5b5c1a43">KuduScanBatch::indirect_data()</a> to obtain the row data for further decoding. Using <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#a93c2f0914140dd405a51d57e2f75014a">KuduScanBatch::Row()</a> might yield incorrect/corrupt results and might even cause the client to crash. </dd></dl>
+
+</div>
+</div>
 <hr/>The documentation for this class was generated from the following file:<ul>
 <li>include/kudu/client/<a class="el" href="client_8h_source.html">client.h</a></li>
 </ul>
@@ -947,7 +1019,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduSchema-members.html b/cpp-client-api/classkudu_1_1client_1_1KuduSchema-members.html
index b2a01a2..48b64fb 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduSchema-members.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduSchema-members.html
@@ -94,38 +94,39 @@
 
 <p>This is the complete list of members for <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a>, including all inherited members.</p>
 <table class="directory">
-  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html#afe784e7c95d85391246a9b4745fed00b">Column</a>(size_t idx) const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>CopyFrom</b>(const KuduSchema &amp;other) (defined in <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html#a3d9bc062492e472a2055841461b2a87f">Equals</a>(const KuduSchema &amp;other) const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html#a192b707f348178b698070d3a88a4d156">GetPrimaryKeyColumnIndexes</a>(std::vector&lt; int &gt; *indexes) const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>internal::GetTableSchemaRpc</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>internal::LookupRpc</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>internal::MetaCacheEntry</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>internal::WriteRpc</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>KuduClient</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>KuduScanner</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>KuduScanToken</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>KuduScanTokenBuilder</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>KuduSchema</b>() (defined in <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html#a41a683f3d93357fe68531bf71df39d02">KuduSchema</a>(const KuduSchema &amp;other)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>KuduSchemaBuilder</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>KuduSchemaFromSchema</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>KuduTable</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>KuduTableCreator</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>KuduWriteOperation</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
-  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html#aafaa50819a283b014ae03373e53489a1">NewRow</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html#ac9e9f590006bd7ccfa44b87dec1b3c7a">num_columns</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>operator=</b>(const KuduSchema &amp;other) (defined in <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html#a3f51ccf1a7e6f4a4fe4958073305dbab">Reset</a>(const std::vector&lt; KuduColumnSchema &gt; &amp;columns, int key_columns) WARN_UNUSED_RESULT</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>ScanConfiguration</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>tools::RemoteKsckMaster</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>tools::ReplicaDumper</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~KuduSchema</b>() (defined in <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>ClientTest</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html#afe784e7c95d85391246a9b4745fed00b">Column</a>(size_t idx) const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>CopyFrom</b>(const KuduSchema &amp;other) (defined in <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html#a3d9bc062492e472a2055841461b2a87f">Equals</a>(const KuduSchema &amp;other) const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html#a192b707f348178b698070d3a88a4d156">GetPrimaryKeyColumnIndexes</a>(std::vector&lt; int &gt; *indexes) const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>internal::GetTableSchemaRpc</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>internal::LookupRpc</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>internal::MetaCacheEntry</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>internal::WriteRpc</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>KuduClient</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>KuduScanner</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>KuduScanToken</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>KuduScanTokenBuilder</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>KuduSchema</b>() (defined in <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html#a41a683f3d93357fe68531bf71df39d02">KuduSchema</a>(const KuduSchema &amp;other)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>KuduSchemaBuilder</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>KuduSchemaFromSchema</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>KuduTable</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>KuduTableCreator</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>KuduWriteOperation</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html#aafaa50819a283b014ae03373e53489a1">NewRow</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html#ac9e9f590006bd7ccfa44b87dec1b3c7a">num_columns</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>operator=</b>(const KuduSchema &amp;other) (defined in <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html#a3f51ccf1a7e6f4a4fe4958073305dbab">Reset</a>(const std::vector&lt; KuduColumnSchema &gt; &amp;columns, int key_columns) WARN_UNUSED_RESULT</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>ScanConfiguration</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>tools::RemoteKsckMaster</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>tools::ReplicaDumper</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>~KuduSchema</b>() (defined in <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"></td></tr>
 </table></div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduSchema.html b/cpp-client-api/classkudu_1_1client_1_1KuduSchema.html
index 0f27ddb..1007669 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduSchema.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduSchema.html
@@ -134,6 +134,9 @@
 </table><table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
 Friends</h2></td></tr>
+<tr class="memitem:aba2affbf999dd265d3a7f8c30598fec7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aba2affbf999dd265d3a7f8c30598fec7"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>ClientTest</b></td></tr>
+<tr class="separator:aba2affbf999dd265d3a7f8c30598fec7"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a5b5a804db2a148e792148f521f04b486"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5b5a804db2a148e792148f521f04b486"></a>
 class&#160;</td><td class="memItemRight" valign="bottom"><b>KuduClient</b></td></tr>
 <tr class="separator:a5b5a804db2a148e792148f521f04b486"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -358,7 +361,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduSchemaBuilder-members.html b/cpp-client-api/classkudu_1_1client_1_1KuduSchemaBuilder-members.html
index 7f800f4..5ca1406 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduSchemaBuilder-members.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduSchemaBuilder-members.html
@@ -103,7 +103,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduSchemaBuilder.html b/cpp-client-api/classkudu_1_1client_1_1KuduSchemaBuilder.html
index ef89fa8..5529445 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduSchemaBuilder.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduSchemaBuilder.html
@@ -193,7 +193,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduSession-members.html b/cpp-client-api/classkudu_1_1client_1_1KuduSession-members.html
index 8460404..0bfe225 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduSession-members.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduSession-members.html
@@ -126,7 +126,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduSession.html b/cpp-client-api/classkudu_1_1client_1_1KuduSession.html
index 4e9f158..5480636 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduSession.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduSession.html
@@ -105,11 +105,15 @@
 Inheritance diagram for kudu::client::KuduSession:</div>
 <div class="dyncontent">
 <div class="center"><img src="classkudu_1_1client_1_1KuduSession__inherit__graph.png" border="0" usemap="#kudu_1_1client_1_1KuduSession_inherit__map" alt="Inheritance graph"/></div>
+<map name="kudu_1_1client_1_1KuduSession_inherit__map" id="kudu_1_1client_1_1KuduSession_inherit__map">
+</map>
 <center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
 <div class="dynheader">
 Collaboration diagram for kudu::client::KuduSession:</div>
 <div class="dyncontent">
 <div class="center"><img src="classkudu_1_1client_1_1KuduSession__coll__graph.png" border="0" usemap="#kudu_1_1client_1_1KuduSession_coll__map" alt="Collaboration graph"/></div>
+<map name="kudu_1_1client_1_1KuduSession_coll__map" id="kudu_1_1client_1_1KuduSession_coll__map">
+</map>
 <center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
 <table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
@@ -666,7 +670,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduStatusCallback-members.html b/cpp-client-api/classkudu_1_1client_1_1KuduStatusCallback-members.html
index 58b90b2..927c63d 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduStatusCallback-members.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduStatusCallback-members.html
@@ -101,7 +101,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduStatusCallback.html b/cpp-client-api/classkudu_1_1client_1_1KuduStatusCallback.html
index 24ccc88..f34ddce 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduStatusCallback.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduStatusCallback.html
@@ -157,7 +157,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduStatusFunctionCallback-members.html b/cpp-client-api/classkudu_1_1client_1_1KuduStatusFunctionCallback-members.html
index 8c43a4b..8fbf769 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduStatusFunctionCallback-members.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduStatusFunctionCallback-members.html
@@ -103,7 +103,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduStatusFunctionCallback.html b/cpp-client-api/classkudu_1_1client_1_1KuduStatusFunctionCallback.html
index 205eee8..2147f48 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduStatusFunctionCallback.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduStatusFunctionCallback.html
@@ -226,7 +226,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduStatusMemberCallback-members.html b/cpp-client-api/classkudu_1_1client_1_1KuduStatusMemberCallback-members.html
index 23e349d..1ed5b11 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduStatusMemberCallback-members.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduStatusMemberCallback-members.html
@@ -103,7 +103,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduStatusMemberCallback.html b/cpp-client-api/classkudu_1_1client_1_1KuduStatusMemberCallback.html
index 89d5a4c..5a3572c 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduStatusMemberCallback.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduStatusMemberCallback.html
@@ -226,7 +226,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduTable-members.html b/cpp-client-api/classkudu_1_1client_1_1KuduTable-members.html
index 73d4d27..310ff61 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduTable-members.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduTable-members.html
@@ -97,24 +97,25 @@
   <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#a08836bfb79f6f91e7f235712ea271d35">client</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#a185ff8f18b9bea6b41d6f4cf8dfa1377">id</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a></td><td class="entry"></td></tr>
   <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>KuduClient</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
-  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#aa0f8b6d63c800727c3a827945512555e">name</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#aed6c3571aff35270a3e6cd66770f1cea">NewComparisonPredicate</a>(const Slice &amp;col_name, KuduPredicate::ComparisonOp op, KuduValue *value)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#ad873078bdbcafe015d359a65c370a89a">NewDelete</a>()</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#a453ffb83cf7c12541caba5ea182fadd9">NewInListPredicate</a>(const Slice &amp;col_name, std::vector&lt; KuduValue * &gt; *values)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#a0c78f86c5d0fbf53437c2c9db26f92b6">NewInsert</a>()</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#af6e70f115cf3c0359b1c170533a2d523">NewIsNotNullPredicate</a>(const Slice &amp;col_name)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#a5f453909cdeda167ad15506358470466">NewIsNullPredicate</a>(const Slice &amp;col_name)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#a7e95271452d608fc2b563f7b46ddcda8">NewUpdate</a>()</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#a19e92dbaeeff86c5d707b15b2a7051fc">NewUpsert</a>()</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#a147bdffbd798161916471b721d63128f">num_replicas</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#af1125879ce34fa6c994a70fe1803a808">partition_schema</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#a4482e54a05c5b61b2bddc8c5297973fd">schema</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a></td><td class="entry"></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>~KuduTable</b>() (defined in <a class="el" href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>KuduPartitioner</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#aa0f8b6d63c800727c3a827945512555e">name</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#aed6c3571aff35270a3e6cd66770f1cea">NewComparisonPredicate</a>(const Slice &amp;col_name, KuduPredicate::ComparisonOp op, KuduValue *value)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#ad873078bdbcafe015d359a65c370a89a">NewDelete</a>()</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#a453ffb83cf7c12541caba5ea182fadd9">NewInListPredicate</a>(const Slice &amp;col_name, std::vector&lt; KuduValue * &gt; *values)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#a0c78f86c5d0fbf53437c2c9db26f92b6">NewInsert</a>()</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#af6e70f115cf3c0359b1c170533a2d523">NewIsNotNullPredicate</a>(const Slice &amp;col_name)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#a5f453909cdeda167ad15506358470466">NewIsNullPredicate</a>(const Slice &amp;col_name)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#a7e95271452d608fc2b563f7b46ddcda8">NewUpdate</a>()</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#a19e92dbaeeff86c5d707b15b2a7051fc">NewUpsert</a>()</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#a147bdffbd798161916471b721d63128f">num_replicas</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#af1125879ce34fa6c994a70fe1803a808">partition_schema</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#a4482e54a05c5b61b2bddc8c5297973fd">schema</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~KuduTable</b>() (defined in <a class="el" href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a></td><td class="entry"></td></tr>
 </table></div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduTable.html b/cpp-client-api/classkudu_1_1client_1_1KuduTable.html
index 02b452a..effc7a6 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduTable.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduTable.html
@@ -104,11 +104,15 @@
 Inheritance diagram for kudu::client::KuduTable:</div>
 <div class="dyncontent">
 <div class="center"><img src="classkudu_1_1client_1_1KuduTable__inherit__graph.png" border="0" usemap="#kudu_1_1client_1_1KuduTable_inherit__map" alt="Inheritance graph"/></div>
+<map name="kudu_1_1client_1_1KuduTable_inherit__map" id="kudu_1_1client_1_1KuduTable_inherit__map">
+</map>
 <center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
 <div class="dynheader">
 Collaboration diagram for kudu::client::KuduTable:</div>
 <div class="dyncontent">
 <div class="center"><img src="classkudu_1_1client_1_1KuduTable__coll__graph.png" border="0" usemap="#kudu_1_1client_1_1KuduTable_coll__map" alt="Collaboration graph"/></div>
+<map name="kudu_1_1client_1_1KuduTable_coll__map" id="kudu_1_1client_1_1KuduTable_coll__map">
+</map>
 <center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
 <table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
@@ -147,6 +151,9 @@
 <tr class="memitem:a5b5a804db2a148e792148f521f04b486"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5b5a804db2a148e792148f521f04b486"></a>
 class&#160;</td><td class="memItemRight" valign="bottom"><b>KuduClient</b></td></tr>
 <tr class="separator:a5b5a804db2a148e792148f521f04b486"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af582b10fe356bdad95ed5f4cbf2ef2ef"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af582b10fe356bdad95ed5f4cbf2ef2ef"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>KuduPartitioner</b></td></tr>
+<tr class="separator:af582b10fe356bdad95ed5f4cbf2ef2ef"><td class="memSeparator" colspan="2">&#160;</td></tr>
 </table>
 <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
 <div class="textblock"><p>A representation of a table on a particular cluster. </p>
@@ -457,7 +464,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduTableAlterer-members.html b/cpp-client-api/classkudu_1_1client_1_1KuduTableAlterer-members.html
index be5f932..051977d 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduTableAlterer-members.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduTableAlterer-members.html
@@ -109,7 +109,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduTableAlterer.html b/cpp-client-api/classkudu_1_1client_1_1KuduTableAlterer.html
index 80a31b1..dd64f89 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduTableAlterer.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduTableAlterer.html
@@ -409,7 +409,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduTableCreator-members.html b/cpp-client-api/classkudu_1_1client_1_1KuduTableCreator-members.html
index 014d13c..6896487 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduTableCreator-members.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduTableCreator-members.html
@@ -115,7 +115,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduTableCreator.html b/cpp-client-api/classkudu_1_1client_1_1KuduTableCreator.html
index c9e75a9..1e47183 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduTableCreator.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduTableCreator.html
@@ -528,7 +528,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduTablet-members.html b/cpp-client-api/classkudu_1_1client_1_1KuduTablet-members.html
index 9d44d2c..0001626 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduTablet-members.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduTablet-members.html
@@ -103,7 +103,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduTablet.html b/cpp-client-api/classkudu_1_1client_1_1KuduTablet.html
index 03e1365..47a1095 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduTablet.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduTablet.html
@@ -160,7 +160,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduTabletServer-members.html b/cpp-client-api/classkudu_1_1client_1_1KuduTabletServer-members.html
index 1db0af0..2ab7744 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduTabletServer-members.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduTabletServer-members.html
@@ -105,7 +105,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduTabletServer.html b/cpp-client-api/classkudu_1_1client_1_1KuduTabletServer.html
index a141700..566ce3f 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduTabletServer.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduTabletServer.html
@@ -180,7 +180,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduUpdate-members.html b/cpp-client-api/classkudu_1_1client_1_1KuduUpdate-members.html
index b6abc43..13134b7 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduUpdate-members.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduUpdate-members.html
@@ -109,7 +109,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduUpdate.html b/cpp-client-api/classkudu_1_1client_1_1KuduUpdate.html
index 9b6e077..7b7217b 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduUpdate.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduUpdate.html
@@ -183,7 +183,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduUpsert-members.html b/cpp-client-api/classkudu_1_1client_1_1KuduUpsert-members.html
index 5366b84..663fc56 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduUpsert-members.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduUpsert-members.html
@@ -109,7 +109,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduUpsert.html b/cpp-client-api/classkudu_1_1client_1_1KuduUpsert.html
index 1309b94..a3ce817 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduUpsert.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduUpsert.html
@@ -183,7 +183,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduValue-members.html b/cpp-client-api/classkudu_1_1client_1_1KuduValue-members.html
index eae8e26..7abd74d 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduValue-members.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduValue-members.html
@@ -108,7 +108,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduValue.html b/cpp-client-api/classkudu_1_1client_1_1KuduValue.html
index 95a75a2..bdfd50b 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduValue.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduValue.html
@@ -204,7 +204,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduWriteOperation-members.html b/cpp-client-api/classkudu_1_1client_1_1KuduWriteOperation-members.html
index ec00c15..f1a8af5 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduWriteOperation-members.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduWriteOperation-members.html
@@ -110,7 +110,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1KuduWriteOperation.html b/cpp-client-api/classkudu_1_1client_1_1KuduWriteOperation.html
index 691251d..7734352 100644
--- a/cpp-client-api/classkudu_1_1client_1_1KuduWriteOperation.html
+++ b/cpp-client-api/classkudu_1_1client_1_1KuduWriteOperation.html
@@ -232,7 +232,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1ResourceMetrics-members.html b/cpp-client-api/classkudu_1_1client_1_1ResourceMetrics-members.html
index bea973a..71a4d8b 100644
--- a/cpp-client-api/classkudu_1_1client_1_1ResourceMetrics-members.html
+++ b/cpp-client-api/classkudu_1_1client_1_1ResourceMetrics-members.html
@@ -103,7 +103,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1client_1_1ResourceMetrics.html b/cpp-client-api/classkudu_1_1client_1_1ResourceMetrics.html
index d0da1a4..08e9fb4 100644
--- a/cpp-client-api/classkudu_1_1client_1_1ResourceMetrics.html
+++ b/cpp-client-api/classkudu_1_1client_1_1ResourceMetrics.html
@@ -193,7 +193,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1internal__logging_1_1CerrLog-members.html b/cpp-client-api/classkudu_1_1internal__logging_1_1CerrLog-members.html
index 76e55d5..1bd7bba 100644
--- a/cpp-client-api/classkudu_1_1internal__logging_1_1CerrLog-members.html
+++ b/cpp-client-api/classkudu_1_1internal__logging_1_1CerrLog-members.html
@@ -101,7 +101,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1internal__logging_1_1CerrLog.html b/cpp-client-api/classkudu_1_1internal__logging_1_1CerrLog.html
index aeca189..ab7c5c3 100644
--- a/cpp-client-api/classkudu_1_1internal__logging_1_1CerrLog.html
+++ b/cpp-client-api/classkudu_1_1internal__logging_1_1CerrLog.html
@@ -184,7 +184,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1internal__logging_1_1NullLog-members.html b/cpp-client-api/classkudu_1_1internal__logging_1_1NullLog-members.html
index 4e3d862..3ecb1a0 100644
--- a/cpp-client-api/classkudu_1_1internal__logging_1_1NullLog-members.html
+++ b/cpp-client-api/classkudu_1_1internal__logging_1_1NullLog-members.html
@@ -99,7 +99,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/classkudu_1_1internal__logging_1_1NullLog.html b/cpp-client-api/classkudu_1_1internal__logging_1_1NullLog.html
index 0319062..268edc0 100644
--- a/cpp-client-api/classkudu_1_1internal__logging_1_1NullLog.html
+++ b/cpp-client-api/classkudu_1_1internal__logging_1_1NullLog.html
@@ -151,7 +151,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/client_8h_source.html b/cpp-client-api/client_8h_source.html
index 42deaf4..542d65b 100644
--- a/cpp-client-api/client_8h_source.html
+++ b/cpp-client-api/client_8h_source.html
@@ -89,59 +89,61 @@
 <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&quot;); 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 class="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 class="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 class="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><div 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><div 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="l00144"></a><span class="lineno">  144</span>&#160;</div><div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;Status KUDU_EXPORT DisableOpenSSLInitialization();</div><div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;</div><div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;std::string KUDU_EXPORT GetShortVersionString();</div><div class="line"><a name="l00172"></a><span class="lineno">  172</span>&#160;</div><div class="line"><a name="l00175"></a><span class="lineno">  175</span>&#160;std::string KUDU_EXPORT GetAllVersionInfo();</div><div class="line"><a name="l00176"></a><span class="lineno">  176</span>&#160;</div><div class="line"><a name="l00181"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduClientBuilder.html">  181</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="l00182"></a><span class="lineno">  182</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a>();</div><div class="line"><a name="l00184"></a><span class="lineno">  184</span>&#160;  ~<a class="code" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a>();</div><div class="line"><a name="l00185"></a><span class="lineno">  185</span>&#160;</div><div class="line"><a name="l00189"></a><span class="lineno">  189</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="l00190"></a><span class="lineno">  190</span>&#160;</div><div class="line"><a name="l00196"></a><span class="lineno">  196</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="l00197"></a><span class="lineno">  197</span>&#160;</div><div class="line"><a name="l00205"></a><span class="lineno">  205</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="l00206"></a><span class="lineno">  206</span>&#160;</div><div class="line"><a name="l00216"></a><span class="lineno">  216</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="l00217"></a><span class="lineno">  217</span>&#160;</div><div class="line"><a name="l00225"></a><span class="lineno">  225</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="l00226"></a><span class="lineno">  226</span>&#160;</div><div class="line"><a name="l00234"></a><span class="lineno">  234</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a>&amp; import_authentication_credentials(std::string authn_creds);</div><div class="line"><a name="l00235"></a><span class="lineno">  235</span>&#160;</div><div class="line"><a name="l00246"></a><span class="lineno">  246</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> Build(sp::shared_ptr&lt;KuduClient&gt;* client);</div><div class="line"><a name="l00247"></a><span class="lineno">  247</span>&#160;</div><div class="line"><a name="l00248"></a><span class="lineno">  248</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00249"></a><span class="lineno">  249</span>&#160;  <span class="keyword">class </span>KUDU_NO_EXPORT Data;</div><div class="line"><a name="l00250"></a><span class="lineno">  250</span>&#160;</div><div class="line"><a name="l00251"></a><span class="lineno">  251</span>&#160;  <span class="comment">// Owned.</span></div><div class="line"><a name="l00252"></a><span class="lineno">  252</span>&#160;  Data* data_;</div><div class="line"><a name="l00253"></a><span class="lineno">  253</span>&#160;</div><div class="line"><a name="l00254"></a><span class="lineno">  254</span>&#160;  DISALLOW_COPY_AND_ASSIGN(<a class="code" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a>);</div><div class="line"><a name="l00255"></a><span class="lineno">  255</span>&#160;};</div><div class="line"><a name="l00256"></a><span class="lineno">  256</span>&#160;</div><div class="line"><a name="l00283"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduClient.html">  283</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="l00284"></a><span class="lineno">  284</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00285"></a><span class="lineno">  285</span>&#160;  ~<a class="code" href="classkudu_1_1client_1_1KuduClient.html">KuduClient</a>();</div><div class="line"><a name="l00286"></a><span class="lineno">  286</span>&#160;</div><div class="line"><a name="l00291"></a><span class="lineno">  291</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduTableCreator.html">KuduTableCreator</a>* NewTableCreator();</div><div class="line"><a name="l00292"></a><span class="lineno">  292</span>&#160;</div><div class="line"><a name="l00301"></a><span class="lineno">  301</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="l00302"></a><span class="lineno">  302</span>&#160;                                 <span class="keywordtype">bool</span> *create_in_progress);</div><div class="line"><a name="l00303"></a><span class="lineno">  303</span>&#160;</div><div class="line"><a name="l00309"></a><span class="lineno">  309</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="l00310"></a><span class="lineno">  310</span>&#160;</div><div class="line"><a name="l00317"></a><span class="lineno">  317</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="l00318"></a><span class="lineno">  318</span>&#160;</div><div class="line"><a name="l00327"></a><span class="lineno">  327</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="l00328"></a><span class="lineno">  328</span>&#160;                                <span class="keywordtype">bool</span> *alter_in_progress);</div><div class="line"><a name="l00336"></a><span class="lineno">  336</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="l00337"></a><span class="lineno">  337</span>&#160;                        <a class="code" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a>* schema);</div><div class="line"><a name="l00338"></a><span class="lineno">  338</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> ListTabletServers(std::vector&lt;KuduTabletServer*&gt;* tablet_servers);</div><div class="line"><a name="l00346"></a><span class="lineno">  346</span>&#160;</div><div class="line"><a name="l00354"></a><span class="lineno">  354</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="l00355"></a><span class="lineno">  355</span>&#160;                    <span class="keyword">const</span> std::string&amp; filter = <span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l00356"></a><span class="lineno">  356</span>&#160;</div><div class="line"><a name="l00364"></a><span class="lineno">  364</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="l00365"></a><span class="lineno">  365</span>&#160;</div><div class="line"><a name="l00379"></a><span class="lineno">  379</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="l00380"></a><span class="lineno">  380</span>&#160;                   sp::shared_ptr&lt;KuduTable&gt;* table);</div><div class="line"><a name="l00381"></a><span class="lineno">  381</span>&#160;</div><div class="line"><a name="l00387"></a><span class="lineno">  387</span>&#160;  sp::shared_ptr&lt;KuduSession&gt; NewSession();</div><div class="line"><a name="l00388"></a><span class="lineno">  388</span>&#160;</div><div class="line"><a name="l00390"></a><span class="lineno">  390</span>&#160;</div><div class="line"><a name="l00403"></a><span class="lineno">  403</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="l00404"></a><span class="lineno">  404</span>&#160;                                  <a class="code" href="classkudu_1_1client_1_1KuduTablet.html">KuduTablet</a>** tablet);</div><div class="line"><a name="l00405"></a><span class="lineno">  405</span>&#160;</div><div class="line"><a name="l00407"></a><span class="lineno">  407</span>&#160;</div><div class="line"><a name="l00409"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11a">  409</a></span>&#160;  <span class="keyword">enum</span> <a class="code" href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11a">ReplicaSelection</a> {</div><div class="line"><a name="l00410"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11aafb912836db348061379d0e0a9055e239">  410</a></span>&#160;    <a class="code" href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11aafb912836db348061379d0e0a9055e239">LEADER_ONLY</a>,      </div><div class="line"><a name="l00411"></a><span class="lineno">  411</span>&#160;</div><div class="line"><a name="l00412"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11aa801886067da41dacd0c9c2b8091f08d8">  412</a></span>&#160;    CLOSEST_REPLICA,  </div><div class="line"><a name="l00413"></a><span class="lineno">  413</span>&#160;</div><div class="line"><a name="l00415"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11aaa060fb6126a3e3fa80079f885dc7d48f">  415</a></span>&#160;    FIRST_REPLICA     </div><div class="line"><a name="l00416"></a><span class="lineno">  416</span>&#160;  };</div><div class="line"><a name="l00417"></a><span class="lineno">  417</span>&#160;</div><div class="line"><a name="l00420"></a><span class="lineno">  420</span>&#160;  <span class="keywordtype">bool</span> IsMultiMaster() <span class="keyword">const</span>;</div><div class="line"><a name="l00421"></a><span class="lineno">  421</span>&#160;</div><div class="line"><a name="l00423"></a><span class="lineno">  423</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="l00424"></a><span class="lineno">  424</span>&#160;</div><div class="line"><a name="l00426"></a><span class="lineno">  426</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="l00427"></a><span class="lineno">  427</span>&#160;</div><div class="line"><a name="l00430"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduClient.html#a196f1a18c000cdca309d05161caaddaa">  430</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="l00431"></a><span class="lineno">  431</span>&#160;</div><div class="line"><a name="l00471"></a><span class="lineno">  471</span>&#160;  uint64_t GetLatestObservedTimestamp() <span class="keyword">const</span>;</div><div class="line"><a name="l00472"></a><span class="lineno">  472</span>&#160;</div><div class="line"><a name="l00487"></a><span class="lineno">  487</span>&#160;  <span class="keywordtype">void</span> SetLatestObservedTimestamp(uint64_t ht_timestamp);</div><div class="line"><a name="l00488"></a><span class="lineno">  488</span>&#160;</div><div class="line"><a name="l00500"></a><span class="lineno">  500</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> ExportAuthenticationCredentials(std::string* authn_creds) <span class="keyword">const</span>;</div><div class="line"><a name="l00501"></a><span class="lineno">  501</span>&#160;</div><div class="line"><a name="l00502"></a><span class="lineno">  502</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00503"></a><span class="lineno">  503</span>&#160;  <span class="keyword">class </span>KUDU_NO_EXPORT Data;</div><div class="line"><a name="l00504"></a><span class="lineno">  504</span>&#160;</div><div class="line"><a name="l00505"></a><span class="lineno">  505</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>internal::Batcher;</div><div class="line"><a name="l00506"></a><span class="lineno">  506</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>internal::GetTableSchemaRpc;</div><div class="line"><a name="l00507"></a><span class="lineno">  507</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>internal::LookupRpc;</div><div class="line"><a name="l00508"></a><span class="lineno">  508</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>internal::MetaCache;</div><div class="line"><a name="l00509"></a><span class="lineno">  509</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>internal::RemoteTablet;</div><div class="line"><a name="l00510"></a><span class="lineno">  510</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>internal::RemoteTabletServer;</div><div class="line"><a name="l00511"></a><span class="lineno">  511</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>internal::WriteRpc;</div><div class="line"><a name="l00512"></a><span class="lineno">  512</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>ClientTest;</div><div class="line"><a name="l00513"></a><span class="lineno">  513</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="l00514"></a><span class="lineno">  514</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="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_1KuduScanToken.html">KuduScanToken</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_1KuduScanTokenBuilder.html">KuduScanTokenBuilder</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_1KuduSession.html">KuduSession</a>;</div><div class="line"><a name="l00518"></a><span class="lineno">  518</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="l00519"></a><span class="lineno">  519</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="l00520"></a><span class="lineno">  520</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="l00521"></a><span class="lineno">  521</span>&#160;</div><div class="line"><a name="l00522"></a><span class="lineno">  522</span>&#160;  FRIEND_TEST(kudu::ClientStressTest, TestUniqueClientIds);</div><div class="line"><a name="l00523"></a><span class="lineno">  523</span>&#160;  FRIEND_TEST(ClientTest, TestGetSecurityInfoFromMaster);</div><div class="line"><a name="l00524"></a><span class="lineno">  524</span>&#160;  FRIEND_TEST(ClientTest, TestGetTabletServerBlacklist);</div><div class="line"><a name="l00525"></a><span class="lineno">  525</span>&#160;  FRIEND_TEST(ClientTest, TestMasterDown);</div><div class="line"><a name="l00526"></a><span class="lineno">  526</span>&#160;  FRIEND_TEST(ClientTest, TestMasterLookupPermits);</div><div class="line"><a name="l00527"></a><span class="lineno">  527</span>&#160;  FRIEND_TEST(ClientTest, TestMetaCacheExpiry);</div><div class="line"><a name="l00528"></a><span class="lineno">  528</span>&#160;  FRIEND_TEST(ClientTest, TestNonCoveringRangePartitions);</div><div class="line"><a name="l00529"></a><span class="lineno">  529</span>&#160;  FRIEND_TEST(ClientTest, TestReplicatedTabletWritesWithLeaderElection);</div><div class="line"><a name="l00530"></a><span class="lineno">  530</span>&#160;  FRIEND_TEST(ClientTest, TestScanFaultTolerance);</div><div class="line"><a name="l00531"></a><span class="lineno">  531</span>&#160;  FRIEND_TEST(ClientTest, TestScanTimeout);</div><div class="line"><a name="l00532"></a><span class="lineno">  532</span>&#160;  FRIEND_TEST(ClientTest, TestWriteWithDeadMaster);</div><div class="line"><a name="l00533"></a><span class="lineno">  533</span>&#160;  FRIEND_TEST(MasterFailoverTest, TestPauseAfterCreateTableIssued);</div><div class="line"><a name="l00534"></a><span class="lineno">  534</span>&#160;</div><div class="line"><a name="l00535"></a><span class="lineno">  535</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduClient.html">KuduClient</a>();</div><div class="line"><a name="l00536"></a><span class="lineno">  536</span>&#160;</div><div class="line"><a name="l00537"></a><span class="lineno">  537</span>&#160;  <span class="comment">// Owned.</span></div><div class="line"><a name="l00538"></a><span class="lineno">  538</span>&#160;  Data* data_;</div><div class="line"><a name="l00539"></a><span class="lineno">  539</span>&#160;</div><div class="line"><a name="l00540"></a><span class="lineno">  540</span>&#160;  DISALLOW_COPY_AND_ASSIGN(<a class="code" href="classkudu_1_1client_1_1KuduClient.html">KuduClient</a>);</div><div class="line"><a name="l00541"></a><span class="lineno">  541</span>&#160;};</div><div class="line"><a name="l00542"></a><span class="lineno">  542</span>&#160;</div><div class="line"><a name="l00544"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduTabletServer.html">  544</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="l00545"></a><span class="lineno">  545</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00546"></a><span class="lineno">  546</span>&#160;  ~<a class="code" href="classkudu_1_1client_1_1KuduTabletServer.html">KuduTabletServer</a>();</div><div class="line"><a name="l00547"></a><span class="lineno">  547</span>&#160;</div><div class="line"><a name="l00550"></a><span class="lineno">  550</span>&#160;  <span class="keyword">const</span> std::string&amp; uuid() <span class="keyword">const</span>;</div><div class="line"><a name="l00551"></a><span class="lineno">  551</span>&#160;</div><div class="line"><a name="l00554"></a><span class="lineno">  554</span>&#160;  <span class="keyword">const</span> std::string&amp; hostname() <span class="keyword">const</span>;</div><div class="line"><a name="l00555"></a><span class="lineno">  555</span>&#160;</div><div class="line"><a name="l00558"></a><span class="lineno">  558</span>&#160;  uint16_t port() <span class="keyword">const</span>;</div><div class="line"><a name="l00559"></a><span class="lineno">  559</span>&#160;</div><div class="line"><a name="l00560"></a><span class="lineno">  560</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00561"></a><span class="lineno">  561</span>&#160;  <span class="keyword">class </span>KUDU_NO_EXPORT Data;</div><div class="line"><a name="l00562"></a><span class="lineno">  562</span>&#160;</div><div class="line"><a name="l00563"></a><span class="lineno">  563</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="l00564"></a><span class="lineno">  564</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="l00565"></a><span class="lineno">  565</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="l00566"></a><span class="lineno">  566</span>&#160;</div><div class="line"><a name="l00567"></a><span class="lineno">  567</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduTabletServer.html">KuduTabletServer</a>();</div><div class="line"><a name="l00568"></a><span class="lineno">  568</span>&#160;</div><div class="line"><a name="l00569"></a><span class="lineno">  569</span>&#160;  <span class="comment">// Owned.</span></div><div class="line"><a name="l00570"></a><span class="lineno">  570</span>&#160;  Data* data_;</div><div class="line"><a name="l00571"></a><span class="lineno">  571</span>&#160;</div><div class="line"><a name="l00572"></a><span class="lineno">  572</span>&#160;  DISALLOW_COPY_AND_ASSIGN(KuduTabletServer);</div><div class="line"><a name="l00573"></a><span class="lineno">  573</span>&#160;};</div><div class="line"><a name="l00574"></a><span class="lineno">  574</span>&#160;</div><div class="line"><a name="l00576"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduReplica.html">  576</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="l00577"></a><span class="lineno">  577</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00578"></a><span class="lineno">  578</span>&#160;  ~<a class="code" href="classkudu_1_1client_1_1KuduReplica.html">KuduReplica</a>();</div><div class="line"><a name="l00579"></a><span class="lineno">  579</span>&#160;</div><div class="line"><a name="l00584"></a><span class="lineno">  584</span>&#160;  <span class="keywordtype">bool</span> is_leader() <span class="keyword">const</span>;</div><div class="line"><a name="l00585"></a><span class="lineno">  585</span>&#160;</div><div class="line"><a name="l00587"></a><span class="lineno">  587</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="l00588"></a><span class="lineno">  588</span>&#160;</div><div class="line"><a name="l00589"></a><span class="lineno">  589</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00590"></a><span class="lineno">  590</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="l00591"></a><span class="lineno">  591</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="l00592"></a><span class="lineno">  592</span>&#160;</div><div class="line"><a name="l00593"></a><span class="lineno">  593</span>&#160;  <span class="keyword">class </span>KUDU_NO_EXPORT Data;</div><div class="line"><a name="l00594"></a><span class="lineno">  594</span>&#160;</div><div class="line"><a name="l00595"></a><span class="lineno">  595</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduReplica.html">KuduReplica</a>();</div><div class="line"><a name="l00596"></a><span class="lineno">  596</span>&#160;</div><div class="line"><a name="l00597"></a><span class="lineno">  597</span>&#160;  <span class="comment">// Owned.</span></div><div class="line"><a name="l00598"></a><span class="lineno">  598</span>&#160;  Data* data_;</div><div class="line"><a name="l00599"></a><span class="lineno">  599</span>&#160;</div><div class="line"><a name="l00600"></a><span class="lineno">  600</span>&#160;  DISALLOW_COPY_AND_ASSIGN(KuduReplica);</div><div class="line"><a name="l00601"></a><span class="lineno">  601</span>&#160;};</div><div class="line"><a name="l00602"></a><span class="lineno">  602</span>&#160;</div><div class="line"><a name="l00604"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduTablet.html">  604</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="l00605"></a><span class="lineno">  605</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00606"></a><span class="lineno">  606</span>&#160;  ~<a class="code" href="classkudu_1_1client_1_1KuduTablet.html">KuduTablet</a>();</div><div class="line"><a name="l00607"></a><span class="lineno">  607</span>&#160;</div><div class="line"><a name="l00610"></a><span class="lineno">  610</span>&#160;  <span class="keyword">const</span> std::string&amp; id() <span class="keyword">const</span>;</div><div class="line"><a name="l00611"></a><span class="lineno">  611</span>&#160;</div><div class="line"><a name="l00617"></a><span class="lineno">  617</span>&#160;  <span class="keyword">const</span> std::vector&lt;const KuduReplica*&gt;&amp; replicas() <span class="keyword">const</span>;</div><div class="line"><a name="l00618"></a><span class="lineno">  618</span>&#160;</div><div class="line"><a name="l00619"></a><span class="lineno">  619</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00620"></a><span class="lineno">  620</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="l00621"></a><span class="lineno">  621</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="l00622"></a><span class="lineno">  622</span>&#160;</div><div class="line"><a name="l00623"></a><span class="lineno">  623</span>&#160;  <span class="keyword">class </span>KUDU_NO_EXPORT Data;</div><div class="line"><a name="l00624"></a><span class="lineno">  624</span>&#160;</div><div class="line"><a name="l00625"></a><span class="lineno">  625</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduTablet.html">KuduTablet</a>();</div><div class="line"><a name="l00626"></a><span class="lineno">  626</span>&#160;</div><div class="line"><a name="l00627"></a><span class="lineno">  627</span>&#160;  <span class="comment">// Owned.</span></div><div class="line"><a name="l00628"></a><span class="lineno">  628</span>&#160;  Data* data_;</div><div class="line"><a name="l00629"></a><span class="lineno">  629</span>&#160;</div><div class="line"><a name="l00630"></a><span class="lineno">  630</span>&#160;  DISALLOW_COPY_AND_ASSIGN(KuduTablet);</div><div class="line"><a name="l00631"></a><span class="lineno">  631</span>&#160;};</div><div class="line"><a name="l00632"></a><span class="lineno">  632</span>&#160;</div><div class="line"><a name="l00634"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduTableCreator.html">  634</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="l00635"></a><span class="lineno">  635</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00636"></a><span class="lineno">  636</span>&#160;  ~<a class="code" href="classkudu_1_1client_1_1KuduTableCreator.html">KuduTableCreator</a>();</div><div class="line"><a name="l00637"></a><span class="lineno">  637</span>&#160;</div><div class="line"><a name="l00649"></a><span class="lineno">  649</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="l00650"></a><span class="lineno">  650</span>&#160;</div><div class="line"><a name="l00661"></a><span class="lineno">  661</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="l00662"></a><span class="lineno">  662</span>&#160;</div><div class="line"><a name="l00679"></a><span class="lineno">  679</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="l00680"></a><span class="lineno">  680</span>&#160;                                        int32_t num_buckets);</div><div class="line"><a name="l00681"></a><span class="lineno">  681</span>&#160;</div><div class="line"><a name="l00697"></a><span class="lineno">  697</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="l00698"></a><span class="lineno">  698</span>&#160;                                        int32_t num_buckets, int32_t seed);</div><div class="line"><a name="l00699"></a><span class="lineno">  699</span>&#160;</div><div class="line"><a name="l00712"></a><span class="lineno">  712</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="l00713"></a><span class="lineno">  713</span>&#160;</div><div class="line"><a name="l00715"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343b">  715</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="l00716"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343baa117961e0003fd28663861833d23e601">  716</a></span>&#160;    <a class="code" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343baa117961e0003fd28663861833d23e601">EXCLUSIVE_BOUND</a>, </div><div class="line"><a name="l00717"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343ba0f4899cc63fba167455e05b525f0b950">  717</a></span>&#160;    <a class="code" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343ba0f4899cc63fba167455e05b525f0b950">INCLUSIVE_BOUND</a>, </div><div class="line"><a name="l00718"></a><span class="lineno">  718</span>&#160;  };</div><div class="line"><a name="l00719"></a><span class="lineno">  719</span>&#160;</div><div class="line"><a name="l00748"></a><span class="lineno">  748</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="l00749"></a><span class="lineno">  749</span>&#160;                                        <a class="code" href="classKuduPartialRow.html">KuduPartialRow</a>* upper_bound,</div><div class="line"><a name="l00750"></a><span class="lineno">  750</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="l00751"></a><span class="lineno">  751</span>&#160;                                        <a class="code" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343b">RangePartitionBound</a> upper_bound_type = EXCLUSIVE_BOUND);</div><div class="line"><a name="l00752"></a><span class="lineno">  752</span>&#160;</div><div class="line"><a name="l00761"></a><span class="lineno">  761</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="l00762"></a><span class="lineno">  762</span>&#160;</div><div class="line"><a name="l00768"></a><span class="lineno">  768</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="l00769"></a><span class="lineno">  769</span>&#160;      ATTRIBUTE_DEPRECATED(<span class="stringliteral">&quot;use add_range_partition_split() instead&quot;</span>);</div><div class="line"><a name="l00770"></a><span class="lineno">  770</span>&#160;</div><div class="line"><a name="l00780"></a><span class="lineno">  780</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="l00781"></a><span class="lineno">  781</span>&#160;</div><div class="line"><a name="l00791"></a><span class="lineno">  791</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="l00792"></a><span class="lineno">  792</span>&#160;</div><div class="line"><a name="l00800"></a><span class="lineno">  800</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduTableCreator.html">KuduTableCreator</a>&amp; wait(<span class="keywordtype">bool</span> wait);</div><div class="line"><a name="l00801"></a><span class="lineno">  801</span>&#160;</div><div class="line"><a name="l00815"></a><span class="lineno">  815</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> Create();</div><div class="line"><a name="l00816"></a><span class="lineno">  816</span>&#160;</div><div class="line"><a name="l00817"></a><span class="lineno">  817</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00818"></a><span class="lineno">  818</span>&#160;  <span class="keyword">class </span>KUDU_NO_EXPORT Data;</div><div class="line"><a name="l00819"></a><span class="lineno">  819</span>&#160;</div><div class="line"><a name="l00820"></a><span class="lineno">  820</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="l00821"></a><span class="lineno">  821</span>&#160;</div><div class="line"><a name="l00822"></a><span class="lineno">  822</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="l00823"></a><span class="lineno">  823</span>&#160;</div><div class="line"><a name="l00824"></a><span class="lineno">  824</span>&#160;  <span class="comment">// Owned.</span></div><div class="line"><a name="l00825"></a><span class="lineno">  825</span>&#160;  Data* data_;</div><div class="line"><a name="l00826"></a><span class="lineno">  826</span>&#160;</div><div class="line"><a name="l00827"></a><span class="lineno">  827</span>&#160;  DISALLOW_COPY_AND_ASSIGN(<a class="code" href="classkudu_1_1client_1_1KuduTableCreator.html">KuduTableCreator</a>);</div><div class="line"><a name="l00828"></a><span class="lineno">  828</span>&#160;};</div><div class="line"><a name="l00829"></a><span class="lineno">  829</span>&#160;</div><div class="line"><a name="l00850"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduTable.html">  850</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="l00851"></a><span class="lineno">  851</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00852"></a><span class="lineno">  852</span>&#160;  ~<a class="code" href="classkudu_1_1client_1_1KuduTable.html">KuduTable</a>();</div><div class="line"><a name="l00853"></a><span class="lineno">  853</span>&#160;</div><div class="line"><a name="l00855"></a><span class="lineno">  855</span>&#160;  <span class="keyword">const</span> std::string&amp; name() <span class="keyword">const</span>;</div><div class="line"><a name="l00856"></a><span class="lineno">  856</span>&#160;</div><div class="line"><a name="l00864"></a><span class="lineno">  864</span>&#160;  <span class="keyword">const</span> std::string&amp; id() <span class="keyword">const</span>;</div><div class="line"><a name="l00865"></a><span class="lineno">  865</span>&#160;</div><div class="line"><a name="l00867"></a><span class="lineno">  867</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="l00868"></a><span class="lineno">  868</span>&#160;</div><div class="line"><a name="l00870"></a><span class="lineno">  870</span>&#160;  <span class="keywordtype">int</span> num_replicas() <span class="keyword">const</span>;</div><div class="line"><a name="l00871"></a><span class="lineno">  871</span>&#160;</div><div class="line"><a name="l00875"></a><span class="lineno">  875</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduInsert.html">KuduInsert</a>* NewInsert();</div><div class="line"><a name="l00876"></a><span class="lineno">  876</span>&#160;</div><div class="line"><a name="l00880"></a><span class="lineno">  880</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduUpsert.html">KuduUpsert</a>* NewUpsert();</div><div class="line"><a name="l00881"></a><span class="lineno">  881</span>&#160;</div><div class="line"><a name="l00885"></a><span class="lineno">  885</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduUpdate.html">KuduUpdate</a>* NewUpdate();</div><div class="line"><a name="l00886"></a><span class="lineno">  886</span>&#160;</div><div class="line"><a name="l00890"></a><span class="lineno">  890</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduDelete.html">KuduDelete</a>* NewDelete();</div><div class="line"><a name="l00891"></a><span class="lineno">  891</span>&#160;</div><div class="line"><a name="l00915"></a><span class="lineno">  915</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="l00916"></a><span class="lineno">  916</span>&#160;                                        <a class="code" href="classkudu_1_1client_1_1KuduPredicate.html#ad58e80ced596d7738f99b5b83ba24eb4">KuduPredicate::ComparisonOp</a> op,</div><div class="line"><a name="l00917"></a><span class="lineno">  917</span>&#160;                                        <a class="code" href="classkudu_1_1client_1_1KuduValue.html">KuduValue</a>* value);</div><div class="line"><a name="l00918"></a><span class="lineno">  918</span>&#160;</div><div class="line"><a name="l00942"></a><span class="lineno">  942</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="l00943"></a><span class="lineno">  943</span>&#160;                                    std::vector&lt;KuduValue*&gt;* values);</div><div class="line"><a name="l00944"></a><span class="lineno">  944</span>&#160;</div><div class="line"><a name="l00955"></a><span class="lineno">  955</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduPredicate.html">KuduPredicate</a>* NewIsNotNullPredicate(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; col_name);</div><div class="line"><a name="l00956"></a><span class="lineno">  956</span>&#160;</div><div class="line"><a name="l00967"></a><span class="lineno">  967</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduPredicate.html">KuduPredicate</a>* NewIsNullPredicate(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; col_name);</div><div class="line"><a name="l00968"></a><span class="lineno">  968</span>&#160;</div><div class="line"><a name="l00971"></a><span class="lineno">  971</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="l00972"></a><span class="lineno">  972</span>&#160;</div><div class="line"><a name="l00974"></a><span class="lineno">  974</span>&#160;  <span class="keyword">const</span> PartitionSchema&amp; partition_schema() <span class="keyword">const</span>;</div><div class="line"><a name="l00975"></a><span class="lineno">  975</span>&#160;</div><div class="line"><a name="l00976"></a><span class="lineno">  976</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00977"></a><span class="lineno">  977</span>&#160;  <span class="keyword">class </span>KUDU_NO_EXPORT Data;</div><div class="line"><a name="l00978"></a><span class="lineno">  978</span>&#160;</div><div class="line"><a name="l00979"></a><span class="lineno">  979</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="l00980"></a><span class="lineno">  980</span>&#160;</div><div class="line"><a name="l00981"></a><span class="lineno">  981</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="l00982"></a><span class="lineno">  982</span>&#160;            <span class="keyword">const</span> std::string&amp; name,</div><div class="line"><a name="l00983"></a><span class="lineno">  983</span>&#160;            <span class="keyword">const</span> std::string&amp; <span class="keywordtype">id</span>,</div><div class="line"><a name="l00984"></a><span class="lineno">  984</span>&#160;            <span class="keywordtype">int</span> num_replicas,</div><div class="line"><a name="l00985"></a><span class="lineno">  985</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="l00986"></a><span class="lineno">  986</span>&#160;            <span class="keyword">const</span> PartitionSchema&amp; partition_schema);</div><div class="line"><a name="l00987"></a><span class="lineno">  987</span>&#160;</div><div class="line"><a name="l00988"></a><span class="lineno">  988</span>&#160;  <span class="comment">// Owned.</span></div><div class="line"><a name="l00989"></a><span class="lineno">  989</span>&#160;  Data* data_;</div><div class="line"><a name="l00990"></a><span class="lineno">  990</span>&#160;</div><div class="line"><a name="l00991"></a><span class="lineno">  991</span>&#160;  DISALLOW_COPY_AND_ASSIGN(KuduTable);</div><div class="line"><a name="l00992"></a><span class="lineno">  992</span>&#160;};</div><div class="line"><a name="l00993"></a><span class="lineno">  993</span>&#160;</div><div class="line"><a name="l01005"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduTableAlterer.html"> 1005</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="l01006"></a><span class="lineno"> 1006</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l01007"></a><span class="lineno"> 1007</span>&#160;  ~<a class="code" href="classkudu_1_1client_1_1KuduTableAlterer.html">KuduTableAlterer</a>();</div><div class="line"><a name="l01008"></a><span class="lineno"> 1008</span>&#160;</div><div class="line"><a name="l01014"></a><span class="lineno"> 1014</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="l01015"></a><span class="lineno"> 1015</span>&#160;</div><div class="line"><a name="l01025"></a><span class="lineno"> 1025</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="l01026"></a><span class="lineno"> 1026</span>&#160;</div><div class="line"><a name="l01035"></a><span class="lineno"> 1035</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduColumnSpec.html">KuduColumnSpec</a>* AlterColumn(<span class="keyword">const</span> std::string&amp; name);</div><div class="line"><a name="l01036"></a><span class="lineno"> 1036</span>&#160;</div><div class="line"><a name="l01044"></a><span class="lineno"> 1044</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="l01045"></a><span class="lineno"> 1045</span>&#160;</div><div class="line"><a name="l01077"></a><span class="lineno"> 1077</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduTableAlterer.html">KuduTableAlterer</a>* AddRangePartition(</div><div class="line"><a name="l01078"></a><span class="lineno"> 1078</span>&#160;      <a class="code" href="classKuduPartialRow.html">KuduPartialRow</a>* lower_bound,</div><div class="line"><a name="l01079"></a><span class="lineno"> 1079</span>&#160;      <a class="code" href="classKuduPartialRow.html">KuduPartialRow</a>* upper_bound,</div><div class="line"><a name="l01080"></a><span class="lineno"> 1080</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="l01081"></a><span class="lineno"> 1081</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="l01082"></a><span class="lineno"> 1082</span>&#160;</div><div class="line"><a name="l01110"></a><span class="lineno"> 1110</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduTableAlterer.html">KuduTableAlterer</a>* DropRangePartition(</div><div class="line"><a name="l01111"></a><span class="lineno"> 1111</span>&#160;      <a class="code" href="classKuduPartialRow.html">KuduPartialRow</a>* lower_bound,</div><div class="line"><a name="l01112"></a><span class="lineno"> 1112</span>&#160;      <a class="code" href="classKuduPartialRow.html">KuduPartialRow</a>* upper_bound,</div><div class="line"><a name="l01113"></a><span class="lineno"> 1113</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="l01114"></a><span class="lineno"> 1114</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="l01115"></a><span class="lineno"> 1115</span>&#160;</div><div class="line"><a name="l01125"></a><span class="lineno"> 1125</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="l01126"></a><span class="lineno"> 1126</span>&#160;</div><div class="line"><a name="l01138"></a><span class="lineno"> 1138</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduTableAlterer.html">KuduTableAlterer</a>* wait(<span class="keywordtype">bool</span> wait);</div><div class="line"><a name="l01139"></a><span class="lineno"> 1139</span>&#160;</div><div class="line"><a name="l01144"></a><span class="lineno"> 1144</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> Alter();</div><div class="line"><a name="l01145"></a><span class="lineno"> 1145</span>&#160;</div><div class="line"><a name="l01146"></a><span class="lineno"> 1146</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l01147"></a><span class="lineno"> 1147</span>&#160;  <span class="keyword">class </span>KUDU_NO_EXPORT Data;</div><div class="line"><a name="l01148"></a><span class="lineno"> 1148</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="l01149"></a><span class="lineno"> 1149</span>&#160;</div><div class="line"><a name="l01150"></a><span class="lineno"> 1150</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="l01151"></a><span class="lineno"> 1151</span>&#160;                   <span class="keyword">const</span> std::string&amp; name);</div><div class="line"><a name="l01152"></a><span class="lineno"> 1152</span>&#160;</div><div class="line"><a name="l01153"></a><span class="lineno"> 1153</span>&#160;  <span class="comment">// Owned.</span></div><div class="line"><a name="l01154"></a><span class="lineno"> 1154</span>&#160;  Data* data_;</div><div class="line"><a name="l01155"></a><span class="lineno"> 1155</span>&#160;</div><div class="line"><a name="l01156"></a><span class="lineno"> 1156</span>&#160;  DISALLOW_COPY_AND_ASSIGN(KuduTableAlterer);</div><div class="line"><a name="l01157"></a><span class="lineno"> 1157</span>&#160;};</div><div class="line"><a name="l01158"></a><span class="lineno"> 1158</span>&#160;</div><div class="line"><a name="l01164"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduError.html"> 1164</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="l01165"></a><span class="lineno"> 1165</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l01166"></a><span class="lineno"> 1166</span>&#160;  ~<a class="code" href="classkudu_1_1client_1_1KuduError.html">KuduError</a>();</div><div class="line"><a name="l01167"></a><span class="lineno"> 1167</span>&#160;</div><div class="line"><a name="l01169"></a><span class="lineno"> 1169</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="l01170"></a><span class="lineno"> 1170</span>&#160;</div><div class="line"><a name="l01172"></a><span class="lineno"> 1172</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="l01173"></a><span class="lineno"> 1173</span>&#160;</div><div class="line"><a name="l01181"></a><span class="lineno"> 1181</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduWriteOperation.html">KuduWriteOperation</a>* release_failed_op();</div><div class="line"><a name="l01182"></a><span class="lineno"> 1182</span>&#160;</div><div class="line"><a name="l01193"></a><span class="lineno"> 1193</span>&#160;  <span class="keywordtype">bool</span> was_possibly_successful() <span class="keyword">const</span>;</div><div class="line"><a name="l01194"></a><span class="lineno"> 1194</span>&#160;</div><div class="line"><a name="l01195"></a><span class="lineno"> 1195</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l01196"></a><span class="lineno"> 1196</span>&#160;  <span class="keyword">class </span>KUDU_NO_EXPORT Data;</div><div class="line"><a name="l01197"></a><span class="lineno"> 1197</span>&#160;</div><div class="line"><a name="l01198"></a><span class="lineno"> 1198</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>internal::Batcher;</div><div class="line"><a name="l01199"></a><span class="lineno"> 1199</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>internal::ErrorCollector;</div><div class="line"><a name="l01200"></a><span class="lineno"> 1200</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="l01201"></a><span class="lineno"> 1201</span>&#160;</div><div class="line"><a name="l01202"></a><span class="lineno"> 1202</span>&#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="l01203"></a><span class="lineno"> 1203</span>&#160;</div><div class="line"><a name="l01204"></a><span class="lineno"> 1204</span>&#160;  <span class="comment">// Owned.</span></div><div class="line"><a name="l01205"></a><span class="lineno"> 1205</span>&#160;  Data* data_;</div><div class="line"><a name="l01206"></a><span class="lineno"> 1206</span>&#160;</div><div class="line"><a name="l01207"></a><span class="lineno"> 1207</span>&#160;  DISALLOW_COPY_AND_ASSIGN(KuduError);</div><div class="line"><a name="l01208"></a><span class="lineno"> 1208</span>&#160;};</div><div class="line"><a name="l01209"></a><span class="lineno"> 1209</span>&#160;</div><div class="line"><a name="l01210"></a><span class="lineno"> 1210</span>&#160;</div><div class="line"><a name="l01269"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduSession.html"> 1269</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="l01270"></a><span class="lineno"> 1270</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l01271"></a><span class="lineno"> 1271</span>&#160;  ~<a class="code" href="classkudu_1_1client_1_1KuduSession.html">KuduSession</a>();</div><div class="line"><a name="l01272"></a><span class="lineno"> 1272</span>&#160;</div><div class="line"><a name="l01274"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19"> 1274</a></span>&#160;  <span class="keyword">enum</span> <a class="code" href="classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19">FlushMode</a> {</div><div class="line"><a name="l01279"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19ad74b76e407e62ca951d369521636df2b"> 1279</a></span>&#160;    <a class="code" href="classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19ad74b76e407e62ca951d369521636df2b">AUTO_FLUSH_SYNC</a>,</div><div class="line"><a name="l01280"></a><span class="lineno"> 1280</span>&#160;</div><div class="line"><a name="l01307"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19a520b8eef7ef0fd149b2757faf43972b1"> 1307</a></span>&#160;    <a class="code" href="classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19a520b8eef7ef0fd149b2757faf43972b1">AUTO_FLUSH_BACKGROUND</a>,</div><div class="line"><a name="l01308"></a><span class="lineno"> 1308</span>&#160;</div><div class="line"><a name="l01321"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19a1db3efc2094da09aae45bb68475cdb4a"> 1321</a></span>&#160;    MANUAL_FLUSH</div><div class="line"><a name="l01322"></a><span class="lineno"> 1322</span>&#160;  };</div><div class="line"><a name="l01323"></a><span class="lineno"> 1323</span>&#160;</div><div class="line"><a name="l01332"></a><span class="lineno"> 1332</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="l01333"></a><span class="lineno"> 1333</span>&#160;</div><div class="line"><a name="l01335"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduSession.html#aabd55109ba3b086bbe33b277cdd40d22"> 1335</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="l01354"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduSession.html#aabd55109ba3b086bbe33b277cdd40d22ae978fab7451faebf4399830b603c855c"> 1354</a></span>&#160;    <a class="code" href="classkudu_1_1client_1_1KuduSession.html#aabd55109ba3b086bbe33b277cdd40d22ae978fab7451faebf4399830b603c855c">CLIENT_PROPAGATED</a>,</div><div class="line"><a name="l01355"></a><span class="lineno"> 1355</span>&#160;</div><div class="line"><a name="l01370"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduSession.html#aabd55109ba3b086bbe33b277cdd40d22a70010f3ef1f70b99b02328c024c436c9"> 1370</a></span>&#160;    COMMIT_WAIT</div><div class="line"><a name="l01371"></a><span class="lineno"> 1371</span>&#160;  };</div><div class="line"><a name="l01372"></a><span class="lineno"> 1372</span>&#160;</div><div class="line"><a name="l01378"></a><span class="lineno"> 1378</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="l01379"></a><span class="lineno"> 1379</span>&#160;    WARN_UNUSED_RESULT;</div><div class="line"><a name="l01380"></a><span class="lineno"> 1380</span>&#160;</div><div class="line"><a name="l01398"></a><span class="lineno"> 1398</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="l01399"></a><span class="lineno"> 1399</span>&#160;</div><div class="line"><a name="l01423"></a><span class="lineno"> 1423</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="l01424"></a><span class="lineno"> 1424</span>&#160;      WARN_UNUSED_RESULT;</div><div class="line"><a name="l01425"></a><span class="lineno"> 1425</span>&#160;</div><div class="line"><a name="l01447"></a><span class="lineno"> 1447</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="l01448"></a><span class="lineno"> 1448</span>&#160;</div><div class="line"><a name="l01473"></a><span class="lineno"> 1473</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="l01474"></a><span class="lineno"> 1474</span>&#160;</div><div class="line"><a name="l01480"></a><span class="lineno"> 1480</span>&#160;  <span class="keywordtype">void</span> SetTimeoutMillis(<span class="keywordtype">int</span> millis);</div><div class="line"><a name="l01481"></a><span class="lineno"> 1481</span>&#160;</div><div class="line"><a name="l01485"></a><span class="lineno"> 1485</span>&#160;</div><div class="line"><a name="l01509"></a><span class="lineno"> 1509</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="l01510"></a><span class="lineno"> 1510</span>&#160;</div><div class="line"><a name="l01525"></a><span class="lineno"> 1525</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> Flush() WARN_UNUSED_RESULT;</div><div class="line"><a name="l01526"></a><span class="lineno"> 1526</span>&#160;</div><div class="line"><a name="l01567"></a><span class="lineno"> 1567</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="l01568"></a><span class="lineno"> 1568</span>&#160;</div><div class="line"><a name="l01571"></a><span class="lineno"> 1571</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> Close() WARN_UNUSED_RESULT;</div><div class="line"><a name="l01572"></a><span class="lineno"> 1572</span>&#160;</div><div class="line"><a name="l01581"></a><span class="lineno"> 1581</span>&#160;  <span class="keywordtype">bool</span> HasPendingOperations() const;</div><div class="line"><a name="l01582"></a><span class="lineno"> 1582</span>&#160;</div><div class="line"><a name="l01604"></a><span class="lineno"> 1604</span>&#160;  <span class="keywordtype">int</span> CountBufferedOperations() const</div><div class="line"><a name="l01605"></a><span class="lineno"> 1605</span>&#160;      ATTRIBUTE_DEPRECATED(&quot;this method is experimental and will disappear &quot;</div><div class="line"><a name="l01606"></a><span class="lineno"> 1606</span>&#160;                           &quot;in a future release&quot;);</div><div class="line"><a name="l01607"></a><span class="lineno"> 1607</span>&#160;</div><div class="line"><a name="l01632"></a><span class="lineno"> 1632</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="l01633"></a><span class="lineno"> 1633</span>&#160;</div><div class="line"><a name="l01643"></a><span class="lineno"> 1643</span>&#160;  <span class="keywordtype">int</span> CountPendingErrors() const;</div><div class="line"><a name="l01644"></a><span class="lineno"> 1644</span>&#160;</div><div class="line"><a name="l01655"></a><span class="lineno"> 1655</span>&#160;  <span class="keywordtype">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="l01656"></a><span class="lineno"> 1656</span>&#160;</div><div class="line"><a name="l01658"></a><span class="lineno"> 1658</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduClient.html">KuduClient</a>* client() const;</div><div class="line"><a name="l01659"></a><span class="lineno"> 1659</span>&#160;</div><div class="line"><a name="l01660"></a><span class="lineno"> 1660</span>&#160; private:</div><div class="line"><a name="l01661"></a><span class="lineno"> 1661</span>&#160;  class KUDU_NO_EXPORT Data;</div><div class="line"><a name="l01662"></a><span class="lineno"> 1662</span>&#160;</div><div class="line"><a name="l01663"></a><span class="lineno"> 1663</span>&#160;  friend class <a class="code" href="classkudu_1_1client_1_1KuduClient.html">KuduClient</a>;</div><div class="line"><a name="l01664"></a><span class="lineno"> 1664</span>&#160;  friend class internal::Batcher;</div><div class="line"><a name="l01665"></a><span class="lineno"> 1665</span>&#160;  friend class ClientTest;</div><div class="line"><a name="l01666"></a><span class="lineno"> 1666</span>&#160;  FRIEND_TEST(ClientTest, TestAutoFlushBackgroundApplyBlocks);</div><div class="line"><a name="l01667"></a><span class="lineno"> 1667</span>&#160;  FRIEND_TEST(ClientTest, TestAutoFlushBackgroundAndErrorCollector);</div><div class="line"><a name="l01668"></a><span class="lineno"> 1668</span>&#160;</div><div class="line"><a name="l01669"></a><span class="lineno"> 1669</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="l01670"></a><span class="lineno"> 1670</span>&#160;</div><div class="line"><a name="l01671"></a><span class="lineno"> 1671</span>&#160;  <span class="comment">// Owned.</span></div><div class="line"><a name="l01672"></a><span class="lineno"> 1672</span>&#160;  Data* data_;</div><div class="line"><a name="l01673"></a><span class="lineno"> 1673</span>&#160;</div><div class="line"><a name="l01674"></a><span class="lineno"> 1674</span>&#160;  DISALLOW_COPY_AND_ASSIGN(<a class="code" href="classkudu_1_1client_1_1KuduSession.html">KuduSession</a>);</div><div class="line"><a name="l01675"></a><span class="lineno"> 1675</span>&#160;};</div><div class="line"><a name="l01676"></a><span class="lineno"> 1676</span>&#160;</div><div class="line"><a name="l01677"></a><span class="lineno"> 1677</span>&#160;</div><div class="line"><a name="l01682"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanner.html"> 1682</a></span>&#160;class KUDU_EXPORT <a class="code" href="classkudu_1_1client_1_1KuduScanner.html">KuduScanner</a> {</div><div class="line"><a name="l01683"></a><span class="lineno"> 1683</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l01685"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanner.html#a36fdb59d6488618363331269d3f58348"> 1685</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="l01693"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanner.html#a36fdb59d6488618363331269d3f58348a8694cef688d819806fa9a85b002231a8"> 1693</a></span>&#160;    <a class="code" href="classkudu_1_1client_1_1KuduScanner.html#a36fdb59d6488618363331269d3f58348a8694cef688d819806fa9a85b002231a8">READ_LATEST</a>,</div><div class="line"><a name="l01694"></a><span class="lineno"> 1694</span>&#160;</div><div class="line"><a name="l01714"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanner.html#a36fdb59d6488618363331269d3f58348a380798cc81589d865b7b2549e186b2e2"> 1714</a></span>&#160;    READ_AT_SNAPSHOT</div><div class="line"><a name="l01715"></a><span class="lineno"> 1715</span>&#160;  };</div><div class="line"><a name="l01716"></a><span class="lineno"> 1716</span>&#160;</div><div class="line"><a name="l01720"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanner.html#a3d6c79325c9da9741d0accf1b43bf7f9"> 1720</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="l01726"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanner.html#a3d6c79325c9da9741d0accf1b43bf7f9adfeea547de613f36a0aff9f585671ec3"> 1726</a></span>&#160;    <a class="code" href="classkudu_1_1client_1_1KuduScanner.html#a3d6c79325c9da9741d0accf1b43bf7f9adfeea547de613f36a0aff9f585671ec3">UNORDERED</a>,</div><div class="line"><a name="l01727"></a><span class="lineno"> 1727</span>&#160;</div><div class="line"><a name="l01732"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanner.html#a3d6c79325c9da9741d0accf1b43bf7f9a4395ad2ec57ce53e30d8b5748fa2c63a"> 1732</a></span>&#160;    ORDERED</div><div class="line"><a name="l01733"></a><span class="lineno"> 1733</span>&#160;  };</div><div class="line"><a name="l01734"></a><span class="lineno"> 1734</span>&#160;</div><div class="line"><a name="l01738"></a><span class="lineno"> 1738</span>&#160;  <span class="keyword">enum</span> { kScanTimeoutMillis = 30000 };</div><div class="line"><a name="l01739"></a><span class="lineno"> 1739</span>&#160;</div><div class="line"><a name="l01745"></a><span class="lineno"> 1745</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="l01746"></a><span class="lineno"> 1746</span>&#160;  ~KuduScanner();</div><div class="line"><a name="l01747"></a><span class="lineno"> 1747</span>&#160;</div><div class="line"><a name="l01757"></a><span class="lineno"> 1757</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="l01758"></a><span class="lineno"> 1758</span>&#160;    WARN_UNUSED_RESULT;</div><div class="line"><a name="l01759"></a><span class="lineno"> 1759</span>&#160;</div><div class="line"><a name="l01769"></a><span class="lineno"> 1769</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="l01770"></a><span class="lineno"> 1770</span>&#160;    WARN_UNUSED_RESULT;</div><div class="line"><a name="l01771"></a><span class="lineno"> 1771</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> SetProjectedColumns(<span class="keyword">const</span> std::vector&lt;std::string&gt;&amp; col_names)</div><div class="line"><a name="l01778"></a><span class="lineno"> 1778</span>&#160;      WARN_UNUSED_RESULT</div><div class="line"><a name="l01779"></a><span class="lineno"> 1779</span>&#160;      ATTRIBUTE_DEPRECATED(<span class="stringliteral">&quot;use SetProjectedColumnNames() instead&quot;</span>);</div><div class="line"><a name="l01780"></a><span class="lineno"> 1780</span>&#160;</div><div class="line"><a name="l01789"></a><span class="lineno"> 1789</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="l01790"></a><span class="lineno"> 1790</span>&#160;</div><div class="line"><a name="l01799"></a><span class="lineno"> 1799</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="l01800"></a><span class="lineno"> 1800</span>&#160;</div><div class="line"><a name="l01808"></a><span class="lineno"> 1808</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="l01809"></a><span class="lineno"> 1809</span>&#160;      ATTRIBUTE_DEPRECATED(<span class="stringliteral">&quot;use AddLowerBound() instead&quot;</span>);</div><div class="line"><a name="l01810"></a><span class="lineno"> 1810</span>&#160;</div><div class="line"><a name="l01819"></a><span class="lineno"> 1819</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> AddExclusiveUpperBound(<span class="keyword">const</span> <a class="code" href="classKuduPartialRow.html">KuduPartialRow</a>&amp; key);</div><div class="line"><a name="l01820"></a><span class="lineno"> 1820</span>&#160;</div><div class="line"><a name="l01828"></a><span class="lineno"> 1828</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="l01829"></a><span class="lineno"> 1829</span>&#160;      ATTRIBUTE_DEPRECATED(<span class="stringliteral">&quot;use AddExclusiveUpperBound() instead&quot;</span>);</div><div class="line"><a name="l01830"></a><span class="lineno"> 1830</span>&#160;</div><div class="line"><a name="l01839"></a><span class="lineno"> 1839</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="l01840"></a><span class="lineno"> 1840</span>&#160;</div><div class="line"><a name="l01849"></a><span class="lineno"> 1849</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="l01850"></a><span class="lineno"> 1850</span>&#160;</div><div class="line"><a name="l01857"></a><span class="lineno"> 1857</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="l01858"></a><span class="lineno"> 1858</span>&#160;</div><div class="line"><a name="l01860"></a><span class="lineno"> 1860</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> Open();</div><div class="line"><a name="l01861"></a><span class="lineno"> 1861</span>&#160;</div><div class="line"><a name="l01877"></a><span class="lineno"> 1877</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> KeepAlive();</div><div class="line"><a name="l01878"></a><span class="lineno"> 1878</span>&#160;</div><div class="line"><a name="l01887"></a><span class="lineno"> 1887</span>&#160;  <span class="keywordtype">void</span> Close();</div><div class="line"><a name="l01888"></a><span class="lineno"> 1888</span>&#160;</div><div class="line"><a name="l01897"></a><span class="lineno"> 1897</span>&#160;  <span class="keywordtype">bool</span> HasMoreRows() <span class="keyword">const</span>;</div><div class="line"><a name="l01898"></a><span class="lineno"> 1898</span>&#160;</div><div class="line"><a name="l01910"></a><span class="lineno"> 1910</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> NextBatch(std::vector&lt;KuduRowResult&gt;* rows)</div><div class="line"><a name="l01911"></a><span class="lineno"> 1911</span>&#160;      ATTRIBUTE_DEPRECATED(<span class="stringliteral">&quot;use NextBatch(KuduScanBatch*) instead&quot;</span>);</div><div class="line"><a name="l01912"></a><span class="lineno"> 1912</span>&#160;</div><div class="line"><a name="l01921"></a><span class="lineno"> 1921</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> NextBatch(<a class="code" href="classkudu_1_1client_1_1KuduScanBatch.html">KuduScanBatch</a>* batch);</div><div class="line"><a name="l01922"></a><span class="lineno"> 1922</span>&#160;</div><div class="line"><a name="l01931"></a><span class="lineno"> 1931</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> GetCurrentServer(<a class="code" href="classkudu_1_1client_1_1KuduTabletServer.html">KuduTabletServer</a>** server);</div><div class="line"><a name="l01932"></a><span class="lineno"> 1932</span>&#160;</div><div class="line"><a name="l01934"></a><span class="lineno"> 1934</span>&#160;  <span class="keyword">const</span> <a class="code" href="classkudu_1_1client_1_1ResourceMetrics.html">ResourceMetrics</a>&amp; GetResourceMetrics() <span class="keyword">const</span>;</div><div class="line"><a name="l01935"></a><span class="lineno"> 1935</span>&#160;</div><div class="line"><a name="l01942"></a><span class="lineno"> 1942</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> SetBatchSizeBytes(uint32_t batch_size);</div><div class="line"><a name="l01943"></a><span class="lineno"> 1943</span>&#160;</div><div class="line"><a name="l01951"></a><span class="lineno"> 1951</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> SetSelection(<a class="code" href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11a">KuduClient::ReplicaSelection</a> selection)</div><div class="line"><a name="l01952"></a><span class="lineno"> 1952</span>&#160;    WARN_UNUSED_RESULT;</div><div class="line"><a name="l01953"></a><span class="lineno"> 1953</span>&#160;</div><div class="line"><a name="l01959"></a><span class="lineno"> 1959</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> SetReadMode(<a class="code" href="classkudu_1_1client_1_1KuduScanner.html#a36fdb59d6488618363331269d3f58348">ReadMode</a> read_mode) WARN_UNUSED_RESULT;</div><div class="line"><a name="l01960"></a><span class="lineno"> 1960</span>&#160;</div><div class="line"><a name="l01966"></a><span class="lineno"> 1966</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> SetOrderMode(<a class="code" href="classkudu_1_1client_1_1KuduScanner.html#a3d6c79325c9da9741d0accf1b43bf7f9">OrderMode</a> order_mode) WARN_UNUSED_RESULT</div><div class="line"><a name="l01967"></a><span class="lineno"> 1967</span>&#160;      ATTRIBUTE_DEPRECATED(<span class="stringliteral">&quot;use SetFaultTolerant() instead&quot;</span>);</div><div class="line"><a name="l01968"></a><span class="lineno"> 1968</span>&#160;</div><div class="line"><a name="l01981"></a><span class="lineno"> 1981</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> SetFaultTolerant() WARN_UNUSED_RESULT;</div><div class="line"><a name="l01982"></a><span class="lineno"> 1982</span>&#160;</div><div class="line"><a name="l01988"></a><span class="lineno"> 1988</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> SetSnapshotMicros(uint64_t snapshot_timestamp_micros) WARN_UNUSED_RESULT;</div><div class="line"><a name="l01989"></a><span class="lineno"> 1989</span>&#160;</div><div class="line"><a name="l02002"></a><span class="lineno"> 2002</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> SetSnapshotRaw(uint64_t snapshot_timestamp) WARN_UNUSED_RESULT;</div><div class="line"><a name="l02003"></a><span class="lineno"> 2003</span>&#160;</div><div class="line"><a name="l02009"></a><span class="lineno"> 2009</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> SetTimeoutMillis(<span class="keywordtype">int</span> millis);</div><div class="line"><a name="l02010"></a><span class="lineno"> 2010</span>&#160;</div><div class="line"><a name="l02012"></a><span class="lineno"> 2012</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a> GetProjectionSchema() <span class="keyword">const</span>;</div><div class="line"><a name="l02013"></a><span class="lineno"> 2013</span>&#160;</div><div class="line"><a name="l02019"></a><span class="lineno"> 2019</span>&#160;  std::string ToString() <span class="keyword">const</span>;</div><div class="line"><a name="l02020"></a><span class="lineno"> 2020</span>&#160;</div><div class="line"><a name="l02021"></a><span class="lineno"> 2021</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l02022"></a><span class="lineno"> 2022</span>&#160;  <span class="keyword">class </span>KUDU_NO_EXPORT Data;</div><div class="line"><a name="l02023"></a><span class="lineno"> 2023</span>&#160;</div><div class="line"><a name="l02024"></a><span class="lineno"> 2024</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="l02025"></a><span class="lineno"> 2025</span>&#160;  FRIEND_TEST(ClientTest, TestScanCloseProxy);</div><div class="line"><a name="l02026"></a><span class="lineno"> 2026</span>&#160;  FRIEND_TEST(ClientTest, TestScanFaultTolerance);</div><div class="line"><a name="l02027"></a><span class="lineno"> 2027</span>&#160;  FRIEND_TEST(ClientTest, TestScanNoBlockCaching);</div><div class="line"><a name="l02028"></a><span class="lineno"> 2028</span>&#160;  FRIEND_TEST(ClientTest, TestScanTimeout);</div><div class="line"><a name="l02029"></a><span class="lineno"> 2029</span>&#160;  FRIEND_TEST(ClientTest, TestReadAtSnapshotNoTimestampSet);</div><div class="line"><a name="l02030"></a><span class="lineno"> 2030</span>&#160;  FRIEND_TEST(ConsistencyITest, TestSnapshotScanTimestampReuse);</div><div class="line"><a name="l02031"></a><span class="lineno"> 2031</span>&#160;</div><div class="line"><a name="l02032"></a><span class="lineno"> 2032</span>&#160;  <span class="comment">// Owned.</span></div><div class="line"><a name="l02033"></a><span class="lineno"> 2033</span>&#160;  Data* data_;</div><div class="line"><a name="l02034"></a><span class="lineno"> 2034</span>&#160;</div><div class="line"><a name="l02035"></a><span class="lineno"> 2035</span>&#160;  DISALLOW_COPY_AND_ASSIGN(KuduScanner);</div><div class="line"><a name="l02036"></a><span class="lineno"> 2036</span>&#160;};</div><div class="line"><a name="l02037"></a><span class="lineno"> 2037</span>&#160;</div><div class="line"><a name="l02058"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanToken.html"> 2058</a></span>&#160;<span class="keyword">class </span>KUDU_EXPORT <a class="code" href="classkudu_1_1client_1_1KuduScanToken.html">KuduScanToken</a> {</div><div class="line"><a name="l02059"></a><span class="lineno"> 2059</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l02060"></a><span class="lineno"> 2060</span>&#160;</div><div class="line"><a name="l02061"></a><span class="lineno"> 2061</span>&#160;  ~<a class="code" href="classkudu_1_1client_1_1KuduScanToken.html">KuduScanToken</a>();</div><div class="line"><a name="l02062"></a><span class="lineno"> 2062</span>&#160;</div><div class="line"><a name="l02073"></a><span class="lineno"> 2073</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> IntoKuduScanner(<a class="code" href="classkudu_1_1client_1_1KuduScanner.html">KuduScanner</a>** scanner) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l02074"></a><span class="lineno"> 2074</span>&#160;</div><div class="line"><a name="l02076"></a><span class="lineno"> 2076</span>&#160;  <span class="keyword">const</span> <a class="code" href="classkudu_1_1client_1_1KuduTablet.html">KuduTablet</a>&amp; tablet() <span class="keyword">const</span>;</div><div class="line"><a name="l02077"></a><span class="lineno"> 2077</span>&#160;</div><div class="line"><a name="l02085"></a><span class="lineno"> 2085</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> Serialize(std::string* buf) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l02086"></a><span class="lineno"> 2086</span>&#160;</div><div class="line"><a name="l02098"></a><span class="lineno"> 2098</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1Status.html">Status</a> DeserializeIntoScanner(<a class="code" href="classkudu_1_1client_1_1KuduClient.html">KuduClient</a>* client,</div><div class="line"><a name="l02099"></a><span class="lineno"> 2099</span>&#160;                                       <span class="keyword">const</span> std::string&amp; serialized_token,</div><div class="line"><a name="l02100"></a><span class="lineno"> 2100</span>&#160;                                       <a class="code" href="classkudu_1_1client_1_1KuduScanner.html">KuduScanner</a>** scanner) WARN_UNUSED_RESULT;</div><div class="line"><a name="l02101"></a><span class="lineno"> 2101</span>&#160;</div><div class="line"><a name="l02102"></a><span class="lineno"> 2102</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l02103"></a><span class="lineno"> 2103</span>&#160;  <span class="keyword">class </span>KUDU_NO_EXPORT Data;</div><div class="line"><a name="l02104"></a><span class="lineno"> 2104</span>&#160;</div><div class="line"><a name="l02105"></a><span class="lineno"> 2105</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="l02106"></a><span class="lineno"> 2106</span>&#160;</div><div class="line"><a name="l02107"></a><span class="lineno"> 2107</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduScanToken.html">KuduScanToken</a>();</div><div class="line"><a name="l02108"></a><span class="lineno"> 2108</span>&#160;</div><div class="line"><a name="l02109"></a><span class="lineno"> 2109</span>&#160;  <span class="comment">// Owned.</span></div><div class="line"><a name="l02110"></a><span class="lineno"> 2110</span>&#160;  Data* data_;</div><div class="line"><a name="l02111"></a><span class="lineno"> 2111</span>&#160;</div><div class="line"><a name="l02112"></a><span class="lineno"> 2112</span>&#160;  DISALLOW_COPY_AND_ASSIGN(KuduScanToken);</div><div class="line"><a name="l02113"></a><span class="lineno"> 2113</span>&#160;};</div><div class="line"><a name="l02114"></a><span class="lineno"> 2114</span>&#160;</div><div class="line"><a name="l02118"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html"> 2118</a></span>&#160;<span class="keyword">class </span>KUDU_EXPORT <a class="code" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html">KuduScanTokenBuilder</a> {</div><div class="line"><a name="l02119"></a><span class="lineno"> 2119</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l02120"></a><span class="lineno"> 2120</span>&#160;</div><div class="line"><a name="l02126"></a><span class="lineno"> 2126</span>&#160;  <span class="keyword">explicit</span> <a class="code" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html">KuduScanTokenBuilder</a>(<a class="code" href="classkudu_1_1client_1_1KuduTable.html">KuduTable</a>* table);</div><div class="line"><a name="l02127"></a><span class="lineno"> 2127</span>&#160;  ~<a class="code" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html">KuduScanTokenBuilder</a>();</div><div class="line"><a name="l02128"></a><span class="lineno"> 2128</span>&#160;</div><div class="line"><a name="l02138"></a><span class="lineno"> 2138</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="l02139"></a><span class="lineno"> 2139</span>&#160;    WARN_UNUSED_RESULT;</div><div class="line"><a name="l02140"></a><span class="lineno"> 2140</span>&#160;</div><div class="line"><a name="l02142"></a><span class="lineno"> 2142</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="l02143"></a><span class="lineno"> 2143</span>&#160;    WARN_UNUSED_RESULT;</div><div class="line"><a name="l02144"></a><span class="lineno"> 2144</span>&#160;</div><div class="line"><a name="l02146"></a><span class="lineno"> 2146</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="l02147"></a><span class="lineno"> 2147</span>&#160;</div><div class="line"><a name="l02149"></a><span class="lineno"> 2149</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) WARN_UNUSED_RESULT;</div><div class="line"><a name="l02150"></a><span class="lineno"> 2150</span>&#160;</div><div class="line"><a name="l02159"></a><span class="lineno"> 2159</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> AddUpperBound(<span class="keyword">const</span> <a class="code" href="classKuduPartialRow.html">KuduPartialRow</a>&amp; key) WARN_UNUSED_RESULT;</div><div class="line"><a name="l02160"></a><span class="lineno"> 2160</span>&#160;</div><div class="line"><a name="l02162"></a><span class="lineno"> 2162</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> SetCacheBlocks(<span class="keywordtype">bool</span> cache_blocks) WARN_UNUSED_RESULT;</div><div class="line"><a name="l02163"></a><span class="lineno"> 2163</span>&#160;</div><div class="line"><a name="l02170"></a><span class="lineno"> 2170</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> SetBatchSizeBytes(uint32_t batch_size) WARN_UNUSED_RESULT;</div><div class="line"><a name="l02171"></a><span class="lineno"> 2171</span>&#160;</div><div class="line"><a name="l02179"></a><span class="lineno"> 2179</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> SetSelection(<a class="code" href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11a">KuduClient::ReplicaSelection</a> selection)</div><div class="line"><a name="l02180"></a><span class="lineno"> 2180</span>&#160;    WARN_UNUSED_RESULT;</div><div class="line"><a name="l02181"></a><span class="lineno"> 2181</span>&#160;</div><div class="line"><a name="l02183"></a><span class="lineno"> 2183</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> SetReadMode(<a class="code" href="classkudu_1_1client_1_1KuduScanner.html#a36fdb59d6488618363331269d3f58348">KuduScanner::ReadMode</a> read_mode) WARN_UNUSED_RESULT;</div><div class="line"><a name="l02184"></a><span class="lineno"> 2184</span>&#160;</div><div class="line"><a name="l02186"></a><span class="lineno"> 2186</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> SetFaultTolerant() WARN_UNUSED_RESULT;</div><div class="line"><a name="l02187"></a><span class="lineno"> 2187</span>&#160;</div><div class="line"><a name="l02189"></a><span class="lineno"> 2189</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> SetSnapshotMicros(uint64_t snapshot_timestamp_micros)</div><div class="line"><a name="l02190"></a><span class="lineno"> 2190</span>&#160;    WARN_UNUSED_RESULT;</div><div class="line"><a name="l02191"></a><span class="lineno"> 2191</span>&#160;</div><div class="line"><a name="l02193"></a><span class="lineno"> 2193</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> SetSnapshotRaw(uint64_t snapshot_timestamp) WARN_UNUSED_RESULT;</div><div class="line"><a name="l02194"></a><span class="lineno"> 2194</span>&#160;</div><div class="line"><a name="l02196"></a><span class="lineno"> 2196</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> SetTimeoutMillis(<span class="keywordtype">int</span> millis) WARN_UNUSED_RESULT;</div><div class="line"><a name="l02197"></a><span class="lineno"> 2197</span>&#160;</div><div class="line"><a name="l02206"></a><span class="lineno"> 2206</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> Build(std::vector&lt;KuduScanToken*&gt;* tokens) WARN_UNUSED_RESULT;</div><div class="line"><a name="l02207"></a><span class="lineno"> 2207</span>&#160;</div><div class="line"><a name="l02208"></a><span class="lineno"> 2208</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l02209"></a><span class="lineno"> 2209</span>&#160;  <span class="keyword">class </span>KUDU_NO_EXPORT Data;</div><div class="line"><a name="l02210"></a><span class="lineno"> 2210</span>&#160;</div><div class="line"><a name="l02211"></a><span class="lineno"> 2211</span>&#160;  <span class="comment">// Owned.</span></div><div class="line"><a name="l02212"></a><span class="lineno"> 2212</span>&#160;  Data* data_;</div><div class="line"><a name="l02213"></a><span class="lineno"> 2213</span>&#160;</div><div class="line"><a name="l02214"></a><span class="lineno"> 2214</span>&#160;  DISALLOW_COPY_AND_ASSIGN(<a class="code" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html">KuduScanTokenBuilder</a>);</div><div class="line"><a name="l02215"></a><span class="lineno"> 2215</span>&#160;};</div><div class="line"><a name="l02216"></a><span class="lineno"> 2216</span>&#160;</div><div class="line"><a name="l02217"></a><span class="lineno"> 2217</span>&#160;} <span class="comment">// namespace client</span></div><div class="line"><a name="l02218"></a><span class="lineno"> 2218</span>&#160;} <span class="comment">// namespace kudu</span></div><div class="line"><a name="l02219"></a><span class="lineno"> 2219</span>&#160;<span class="preprocessor">#endif</span></div><div class="ttc" id="classkudu_1_1client_1_1KuduUpdate_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduUpdate.html">kudu::client::KuduUpdate</a></div><div class="ttdoc">A single row update to be sent to the cluster. </div><div class="ttdef"><b>Definition:</b> write_op.h:184</div></div>
-<div class="ttc" id="classkudu_1_1client_1_1KuduSchema_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></div><div class="ttdoc">A representation of a table&amp;#39;s schema. </div><div class="ttdef"><b>Definition:</b> schema.h:417</div></div>
+<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&quot;); 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 class="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 class="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;<span class="keyword">class </span>SecurityUnknownTskTest;</div><div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;</div><div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;<span class="keyword">namespace </span>tools {</div><div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;<span class="keyword">class </span>LeaderMasterProxy;</div><div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;} <span class="comment">// namespace tools</span></div><div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;</div><div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;<span class="keyword">namespace </span>client {</div><div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;</div><div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;<span class="keyword">class </span>KuduLoggingCallback;</div><div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;<span class="keyword">class </span>KuduPartitioner;</div><div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;<span class="keyword">class </span>KuduScanToken;</div><div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;<span class="keyword">class </span>KuduSession;</div><div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;<span class="keyword">class </span>KuduStatusCallback;</div><div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;<span class="keyword">class </span>KuduTable;</div><div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;<span class="keyword">class </span>KuduTableAlterer;</div><div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;<span class="keyword">class </span>KuduTableCreator;</div><div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;<span class="keyword">class </span>KuduTablet;</div><div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;<span class="keyword">class </span>KuduTabletServer;</div><div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;<span class="keyword">class </span>KuduValue;</div><div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;<span class="keyword">class </span>KuduWriteOperation;</div><div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;</div><div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;<span class="keyword">namespace </span>internal {</div><div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;<span class="keyword">class </span>Batcher;</div><div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;<span class="keyword">class </span>ErrorCollector;</div><div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;<span class="keyword">class </span>GetTableSchemaRpc;</div><div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;<span class="keyword">class </span>LookupRpc;</div><div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;<span class="keyword">class </span>MetaCache;</div><div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;<span class="keyword">class </span>RemoteTablet;</div><div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;<span class="keyword">class </span>RemoteTabletServer;</div><div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;<span class="keyword">class </span>WriteRpc;</div><div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;} <span class="comment">// namespace internal</span></div><div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;</div><div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;<span class="keywordtype">void</span> KUDU_EXPORT InstallLoggingCallback(KuduLoggingCallback* cb);</div><div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;</div><div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;<span class="keywordtype">void</span> KUDU_EXPORT UninstallLoggingCallback();</div><div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;</div><div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;<span class="keywordtype">void</span> KUDU_EXPORT SetVerboseLogLevel(<span class="keywordtype">int</span> level);</div><div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;</div><div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;Status KUDU_EXPORT SetInternalSignalNumber(<span class="keywordtype">int</span> signum);</div><div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;</div><div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;Status KUDU_EXPORT DisableSaslInitialization();</div><div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;</div><div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;</div><div class="line"><a name="l00173"></a><span class="lineno">  173</span>&#160;Status KUDU_EXPORT DisableOpenSSLInitialization();</div><div class="line"><a name="l00174"></a><span class="lineno">  174</span>&#160;</div><div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160;std::string KUDU_EXPORT GetShortVersionString();</div><div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;</div><div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;std::string KUDU_EXPORT GetAllVersionInfo();</div><div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;</div><div class="line"><a name="l00187"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduClientBuilder.html">  187</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="l00188"></a><span class="lineno">  188</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a>();</div><div class="line"><a name="l00190"></a><span class="lineno">  190</span>&#160;  ~<a class="code" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a>();</div><div class="line"><a name="l00191"></a><span class="lineno">  191</span>&#160;</div><div class="line"><a name="l00195"></a><span class="lineno">  195</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="l00196"></a><span class="lineno">  196</span>&#160;</div><div class="line"><a name="l00202"></a><span class="lineno">  202</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="l00203"></a><span class="lineno">  203</span>&#160;</div><div class="line"><a name="l00211"></a><span class="lineno">  211</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="l00212"></a><span class="lineno">  212</span>&#160;</div><div class="line"><a name="l00222"></a><span class="lineno">  222</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="l00223"></a><span class="lineno">  223</span>&#160;</div><div class="line"><a name="l00231"></a><span class="lineno">  231</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="l00232"></a><span class="lineno">  232</span>&#160;</div><div class="line"><a name="l00240"></a><span class="lineno">  240</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a>&amp; import_authentication_credentials(std::string authn_creds);</div><div class="line"><a name="l00241"></a><span class="lineno">  241</span>&#160;</div><div class="line"><a name="l00252"></a><span class="lineno">  252</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> Build(sp::shared_ptr&lt;KuduClient&gt;* client);</div><div class="line"><a name="l00253"></a><span class="lineno">  253</span>&#160;</div><div class="line"><a name="l00254"></a><span class="lineno">  254</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00255"></a><span class="lineno">  255</span>&#160;  <span class="keyword">class </span>KUDU_NO_EXPORT Data;</div><div class="line"><a name="l00256"></a><span class="lineno">  256</span>&#160;</div><div class="line"><a name="l00257"></a><span class="lineno">  257</span>&#160;  <span class="comment">// Owned.</span></div><div class="line"><a name="l00258"></a><span class="lineno">  258</span>&#160;  Data* data_;</div><div class="line"><a name="l00259"></a><span class="lineno">  259</span>&#160;</div><div class="line"><a name="l00260"></a><span class="lineno">  260</span>&#160;  DISALLOW_COPY_AND_ASSIGN(<a class="code" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a>);</div><div class="line"><a name="l00261"></a><span class="lineno">  261</span>&#160;};</div><div class="line"><a name="l00262"></a><span class="lineno">  262</span>&#160;</div><div class="line"><a name="l00289"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduClient.html">  289</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="l00290"></a><span class="lineno">  290</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00291"></a><span class="lineno">  291</span>&#160;  ~<a class="code" href="classkudu_1_1client_1_1KuduClient.html">KuduClient</a>();</div><div class="line"><a name="l00292"></a><span class="lineno">  292</span>&#160;</div><div class="line"><a name="l00297"></a><span class="lineno">  297</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduTableCreator.html">KuduTableCreator</a>* NewTableCreator();</div><div class="line"><a name="l00298"></a><span class="lineno">  298</span>&#160;</div><div class="line"><a name="l00307"></a><span class="lineno">  307</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="l00308"></a><span class="lineno">  308</span>&#160;                                 <span class="keywordtype">bool</span> *create_in_progress);</div><div class="line"><a name="l00309"></a><span class="lineno">  309</span>&#160;</div><div class="line"><a name="l00315"></a><span class="lineno">  315</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="l00316"></a><span class="lineno">  316</span>&#160;</div><div class="line"><a name="l00323"></a><span class="lineno">  323</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="l00324"></a><span class="lineno">  324</span>&#160;</div><div class="line"><a name="l00333"></a><span class="lineno">  333</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="l00334"></a><span class="lineno">  334</span>&#160;                                <span class="keywordtype">bool</span> *alter_in_progress);</div><div class="line"><a name="l00342"></a><span class="lineno">  342</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="l00343"></a><span class="lineno">  343</span>&#160;                        <a class="code" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a>* schema);</div><div class="line"><a name="l00344"></a><span class="lineno">  344</span>&#160;</div><div class="line"><a name="l00351"></a><span class="lineno">  351</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="l00352"></a><span class="lineno">  352</span>&#160;</div><div class="line"><a name="l00360"></a><span class="lineno">  360</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="l00361"></a><span class="lineno">  361</span>&#160;                    <span class="keyword">const</span> std::string&amp; filter = <span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l00362"></a><span class="lineno">  362</span>&#160;</div><div class="line"><a name="l00370"></a><span class="lineno">  370</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="l00371"></a><span class="lineno">  371</span>&#160;</div><div class="line"><a name="l00388"></a><span class="lineno">  388</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="l00389"></a><span class="lineno">  389</span>&#160;                   sp::shared_ptr&lt;KuduTable&gt;* table);</div><div class="line"><a name="l00390"></a><span class="lineno">  390</span>&#160;</div><div class="line"><a name="l00396"></a><span class="lineno">  396</span>&#160;  sp::shared_ptr&lt;KuduSession&gt; NewSession();</div><div class="line"><a name="l00397"></a><span class="lineno">  397</span>&#160;</div><div class="line"><a name="l00399"></a><span class="lineno">  399</span>&#160;</div><div class="line"><a name="l00412"></a><span class="lineno">  412</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="l00413"></a><span class="lineno">  413</span>&#160;                                  <a class="code" href="classkudu_1_1client_1_1KuduTablet.html">KuduTablet</a>** tablet);</div><div class="line"><a name="l00414"></a><span class="lineno">  414</span>&#160;</div><div class="line"><a name="l00416"></a><span class="lineno">  416</span>&#160;</div><div class="line"><a name="l00418"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11a">  418</a></span>&#160;  <span class="keyword">enum</span> <a class="code" href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11a">ReplicaSelection</a> {</div><div class="line"><a name="l00419"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11aafb912836db348061379d0e0a9055e239">  419</a></span>&#160;    <a class="code" href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11aafb912836db348061379d0e0a9055e239">LEADER_ONLY</a>,      </div><div class="line"><a name="l00420"></a><span class="lineno">  420</span>&#160;</div><div class="line"><a name="l00421"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11aa801886067da41dacd0c9c2b8091f08d8">  421</a></span>&#160;    CLOSEST_REPLICA,  </div><div class="line"><a name="l00422"></a><span class="lineno">  422</span>&#160;</div><div class="line"><a name="l00424"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11aaa060fb6126a3e3fa80079f885dc7d48f">  424</a></span>&#160;    FIRST_REPLICA     </div><div class="line"><a name="l00425"></a><span class="lineno">  425</span>&#160;  };</div><div class="line"><a name="l00426"></a><span class="lineno">  426</span>&#160;</div><div class="line"><a name="l00429"></a><span class="lineno">  429</span>&#160;  <span class="keywordtype">bool</span> IsMultiMaster() <span class="keyword">const</span>;</div><div class="line"><a name="l00430"></a><span class="lineno">  430</span>&#160;</div><div class="line"><a name="l00432"></a><span class="lineno">  432</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="l00433"></a><span class="lineno">  433</span>&#160;</div><div class="line"><a name="l00435"></a><span class="lineno">  435</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="l00436"></a><span class="lineno">  436</span>&#160;</div><div class="line"><a name="l00439"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduClient.html#a196f1a18c000cdca309d05161caaddaa">  439</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="l00440"></a><span class="lineno">  440</span>&#160;</div><div class="line"><a name="l00480"></a><span class="lineno">  480</span>&#160;  uint64_t GetLatestObservedTimestamp() <span class="keyword">const</span>;</div><div class="line"><a name="l00481"></a><span class="lineno">  481</span>&#160;</div><div class="line"><a name="l00496"></a><span class="lineno">  496</span>&#160;  <span class="keywordtype">void</span> SetLatestObservedTimestamp(uint64_t ht_timestamp);</div><div class="line"><a name="l00497"></a><span class="lineno">  497</span>&#160;</div><div class="line"><a name="l00509"></a><span class="lineno">  509</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> ExportAuthenticationCredentials(std::string* authn_creds) <span class="keyword">const</span>;</div><div class="line"><a name="l00510"></a><span class="lineno">  510</span>&#160;</div><div class="line"><a name="l00511"></a><span class="lineno">  511</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00512"></a><span class="lineno">  512</span>&#160;  <span class="keyword">class </span>KUDU_NO_EXPORT Data;</div><div class="line"><a name="l00513"></a><span class="lineno">  513</span>&#160;</div><div class="line"><a name="l00514"></a><span class="lineno">  514</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>internal::Batcher;</div><div class="line"><a name="l00515"></a><span class="lineno">  515</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>internal::GetTableSchemaRpc;</div><div class="line"><a name="l00516"></a><span class="lineno">  516</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>internal::LookupRpc;</div><div class="line"><a name="l00517"></a><span class="lineno">  517</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>internal::MetaCache;</div><div class="line"><a name="l00518"></a><span class="lineno">  518</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>internal::RemoteTablet;</div><div class="line"><a name="l00519"></a><span class="lineno">  519</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>internal::RemoteTabletServer;</div><div class="line"><a name="l00520"></a><span class="lineno">  520</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>internal::WriteRpc;</div><div class="line"><a name="l00521"></a><span class="lineno">  521</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>ClientTest;</div><div class="line"><a name="l00522"></a><span class="lineno">  522</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="l00523"></a><span class="lineno">  523</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classkudu_1_1client_1_1KuduPartitionerBuilder.html">KuduPartitionerBuilder</a>;</div><div class="line"><a name="l00524"></a><span class="lineno">  524</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="l00525"></a><span class="lineno">  525</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="l00526"></a><span class="lineno">  526</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="l00527"></a><span class="lineno">  527</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="l00528"></a><span class="lineno">  528</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="l00529"></a><span class="lineno">  529</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="l00530"></a><span class="lineno">  530</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="l00531"></a><span class="lineno">  531</span>&#160;  <span class="keyword">friend</span> class ::kudu::SecurityUnknownTskTest;</div><div class="line"><a name="l00532"></a><span class="lineno">  532</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>tools::LeaderMasterProxy;</div><div class="line"><a name="l00533"></a><span class="lineno">  533</span>&#160;</div><div class="line"><a name="l00534"></a><span class="lineno">  534</span>&#160;  FRIEND_TEST(kudu::ClientStressTest, TestUniqueClientIds);</div><div class="line"><a name="l00535"></a><span class="lineno">  535</span>&#160;  FRIEND_TEST(ClientTest, TestGetSecurityInfoFromMaster);</div><div class="line"><a name="l00536"></a><span class="lineno">  536</span>&#160;  FRIEND_TEST(ClientTest, TestGetTabletServerBlacklist);</div><div class="line"><a name="l00537"></a><span class="lineno">  537</span>&#160;  FRIEND_TEST(ClientTest, TestMasterDown);</div><div class="line"><a name="l00538"></a><span class="lineno">  538</span>&#160;  FRIEND_TEST(ClientTest, TestMasterLookupPermits);</div><div class="line"><a name="l00539"></a><span class="lineno">  539</span>&#160;  FRIEND_TEST(ClientTest, TestMetaCacheExpiry);</div><div class="line"><a name="l00540"></a><span class="lineno">  540</span>&#160;  FRIEND_TEST(ClientTest, TestNonCoveringRangePartitions);</div><div class="line"><a name="l00541"></a><span class="lineno">  541</span>&#160;  FRIEND_TEST(ClientTest, TestReplicatedTabletWritesWithLeaderElection);</div><div class="line"><a name="l00542"></a><span class="lineno">  542</span>&#160;  FRIEND_TEST(ClientTest, TestScanFaultTolerance);</div><div class="line"><a name="l00543"></a><span class="lineno">  543</span>&#160;  FRIEND_TEST(ClientTest, TestScanTimeout);</div><div class="line"><a name="l00544"></a><span class="lineno">  544</span>&#160;  FRIEND_TEST(ClientTest, TestWriteWithDeadMaster);</div><div class="line"><a name="l00545"></a><span class="lineno">  545</span>&#160;  FRIEND_TEST(MasterFailoverTest, TestPauseAfterCreateTableIssued);</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_1KuduClient.html">KuduClient</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(<a class="code" href="classkudu_1_1client_1_1KuduClient.html">KuduClient</a>);</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_1KuduTabletServer.html">  556</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="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_1KuduTabletServer.html">KuduTabletServer</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; uuid() <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="l00566"></a><span class="lineno">  566</span>&#160;  <span class="keyword">const</span> std::string&amp; hostname() <span class="keyword">const</span>;</div><div class="line"><a name="l00567"></a><span class="lineno">  567</span>&#160;</div><div class="line"><a name="l00570"></a><span class="lineno">  570</span>&#160;  uint16_t port() <span class="keyword">const</span>;</div><div class="line"><a name="l00571"></a><span class="lineno">  571</span>&#160;</div><div class="line"><a name="l00572"></a><span class="lineno">  572</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00573"></a><span class="lineno">  573</span>&#160;  <span class="keyword">class </span>KUDU_NO_EXPORT Data;</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">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="l00576"></a><span class="lineno">  576</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="l00577"></a><span class="lineno">  577</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="l00578"></a><span class="lineno">  578</span>&#160;</div><div class="line"><a name="l00579"></a><span class="lineno">  579</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduTabletServer.html">KuduTabletServer</a>();</div><div class="line"><a name="l00580"></a><span class="lineno">  580</span>&#160;</div><div class="line"><a name="l00581"></a><span class="lineno">  581</span>&#160;  <span class="comment">// Owned.</span></div><div class="line"><a name="l00582"></a><span class="lineno">  582</span>&#160;  Data* data_;</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;  DISALLOW_COPY_AND_ASSIGN(KuduTabletServer);</div><div class="line"><a name="l00585"></a><span class="lineno">  585</span>&#160;};</div><div class="line"><a name="l00586"></a><span class="lineno">  586</span>&#160;</div><div class="line"><a name="l00588"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduReplica.html">  588</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="l00589"></a><span class="lineno">  589</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00590"></a><span class="lineno">  590</span>&#160;  ~<a class="code" href="classkudu_1_1client_1_1KuduReplica.html">KuduReplica</a>();</div><div class="line"><a name="l00591"></a><span class="lineno">  591</span>&#160;</div><div class="line"><a name="l00596"></a><span class="lineno">  596</span>&#160;  <span class="keywordtype">bool</span> is_leader() <span class="keyword">const</span>;</div><div class="line"><a name="l00597"></a><span class="lineno">  597</span>&#160;</div><div class="line"><a name="l00599"></a><span class="lineno">  599</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="l00600"></a><span class="lineno">  600</span>&#160;</div><div class="line"><a name="l00601"></a><span class="lineno">  601</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00602"></a><span class="lineno">  602</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="l00603"></a><span class="lineno">  603</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="l00604"></a><span class="lineno">  604</span>&#160;</div><div class="line"><a name="l00605"></a><span class="lineno">  605</span>&#160;  <span class="keyword">class </span>KUDU_NO_EXPORT Data;</div><div class="line"><a name="l00606"></a><span class="lineno">  606</span>&#160;</div><div class="line"><a name="l00607"></a><span class="lineno">  607</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduReplica.html">KuduReplica</a>();</div><div class="line"><a name="l00608"></a><span class="lineno">  608</span>&#160;</div><div class="line"><a name="l00609"></a><span class="lineno">  609</span>&#160;  <span class="comment">// Owned.</span></div><div class="line"><a name="l00610"></a><span class="lineno">  610</span>&#160;  Data* data_;</div><div class="line"><a name="l00611"></a><span class="lineno">  611</span>&#160;</div><div class="line"><a name="l00612"></a><span class="lineno">  612</span>&#160;  DISALLOW_COPY_AND_ASSIGN(KuduReplica);</div><div class="line"><a name="l00613"></a><span class="lineno">  613</span>&#160;};</div><div class="line"><a name="l00614"></a><span class="lineno">  614</span>&#160;</div><div class="line"><a name="l00616"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduTablet.html">  616</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="l00617"></a><span class="lineno">  617</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00618"></a><span class="lineno">  618</span>&#160;  ~<a class="code" href="classkudu_1_1client_1_1KuduTablet.html">KuduTablet</a>();</div><div class="line"><a name="l00619"></a><span class="lineno">  619</span>&#160;</div><div class="line"><a name="l00622"></a><span class="lineno">  622</span>&#160;  <span class="keyword">const</span> std::string&amp; id() <span class="keyword">const</span>;</div><div class="line"><a name="l00623"></a><span class="lineno">  623</span>&#160;</div><div class="line"><a name="l00629"></a><span class="lineno">  629</span>&#160;  <span class="keyword">const</span> std::vector&lt;const KuduReplica*&gt;&amp; replicas() <span class="keyword">const</span>;</div><div class="line"><a name="l00630"></a><span class="lineno">  630</span>&#160;</div><div class="line"><a name="l00631"></a><span class="lineno">  631</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00632"></a><span class="lineno">  632</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="l00633"></a><span class="lineno">  633</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="l00634"></a><span class="lineno">  634</span>&#160;</div><div class="line"><a name="l00635"></a><span class="lineno">  635</span>&#160;  <span class="keyword">class </span>KUDU_NO_EXPORT Data;</div><div class="line"><a name="l00636"></a><span class="lineno">  636</span>&#160;</div><div class="line"><a name="l00637"></a><span class="lineno">  637</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduTablet.html">KuduTablet</a>();</div><div class="line"><a name="l00638"></a><span class="lineno">  638</span>&#160;</div><div class="line"><a name="l00639"></a><span class="lineno">  639</span>&#160;  <span class="comment">// Owned.</span></div><div class="line"><a name="l00640"></a><span class="lineno">  640</span>&#160;  Data* data_;</div><div class="line"><a name="l00641"></a><span class="lineno">  641</span>&#160;</div><div class="line"><a name="l00642"></a><span class="lineno">  642</span>&#160;  DISALLOW_COPY_AND_ASSIGN(KuduTablet);</div><div class="line"><a name="l00643"></a><span class="lineno">  643</span>&#160;};</div><div class="line"><a name="l00644"></a><span class="lineno">  644</span>&#160;</div><div class="line"><a name="l00646"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduTableCreator.html">  646</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="l00647"></a><span class="lineno">  647</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00648"></a><span class="lineno">  648</span>&#160;  ~<a class="code" href="classkudu_1_1client_1_1KuduTableCreator.html">KuduTableCreator</a>();</div><div class="line"><a name="l00649"></a><span class="lineno">  649</span>&#160;</div><div class="line"><a name="l00661"></a><span class="lineno">  661</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="l00662"></a><span class="lineno">  662</span>&#160;</div><div class="line"><a name="l00673"></a><span class="lineno">  673</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="l00674"></a><span class="lineno">  674</span>&#160;</div><div class="line"><a name="l00691"></a><span class="lineno">  691</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="l00692"></a><span class="lineno">  692</span>&#160;                                        int32_t num_buckets);</div><div class="line"><a name="l00693"></a><span class="lineno">  693</span>&#160;</div><div class="line"><a name="l00709"></a><span class="lineno">  709</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="l00710"></a><span class="lineno">  710</span>&#160;                                        int32_t num_buckets, int32_t seed);</div><div class="line"><a name="l00711"></a><span class="lineno">  711</span>&#160;</div><div class="line"><a name="l00724"></a><span class="lineno">  724</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="l00725"></a><span class="lineno">  725</span>&#160;</div><div class="line"><a name="l00727"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343b">  727</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="l00728"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343baa117961e0003fd28663861833d23e601">  728</a></span>&#160;    <a class="code" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343baa117961e0003fd28663861833d23e601">EXCLUSIVE_BOUND</a>, </div><div class="line"><a name="l00729"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343ba0f4899cc63fba167455e05b525f0b950">  729</a></span>&#160;    <a class="code" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343ba0f4899cc63fba167455e05b525f0b950">INCLUSIVE_BOUND</a>, </div><div class="line"><a name="l00730"></a><span class="lineno">  730</span>&#160;  };</div><div class="line"><a name="l00731"></a><span class="lineno">  731</span>&#160;</div><div class="line"><a name="l00760"></a><span class="lineno">  760</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="l00761"></a><span class="lineno">  761</span>&#160;                                        <a class="code" href="classKuduPartialRow.html">KuduPartialRow</a>* upper_bound,</div><div class="line"><a name="l00762"></a><span class="lineno">  762</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="l00763"></a><span class="lineno">  763</span>&#160;                                        <a class="code" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343b">RangePartitionBound</a> upper_bound_type = EXCLUSIVE_BOUND);</div><div class="line"><a name="l00764"></a><span class="lineno">  764</span>&#160;</div><div class="line"><a name="l00773"></a><span class="lineno">  773</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="l00774"></a><span class="lineno">  774</span>&#160;</div><div class="line"><a name="l00780"></a><span class="lineno">  780</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="l00781"></a><span class="lineno">  781</span>&#160;      ATTRIBUTE_DEPRECATED(<span class="stringliteral">&quot;use add_range_partition_split() instead&quot;</span>);</div><div class="line"><a name="l00782"></a><span class="lineno">  782</span>&#160;</div><div class="line"><a name="l00792"></a><span class="lineno">  792</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="l00793"></a><span class="lineno">  793</span>&#160;</div><div class="line"><a name="l00803"></a><span class="lineno">  803</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="l00804"></a><span class="lineno">  804</span>&#160;</div><div class="line"><a name="l00812"></a><span class="lineno">  812</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduTableCreator.html">KuduTableCreator</a>&amp; wait(<span class="keywordtype">bool</span> wait);</div><div class="line"><a name="l00813"></a><span class="lineno">  813</span>&#160;</div><div class="line"><a name="l00827"></a><span class="lineno">  827</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> Create();</div><div class="line"><a name="l00828"></a><span class="lineno">  828</span>&#160;</div><div class="line"><a name="l00829"></a><span class="lineno">  829</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00830"></a><span class="lineno">  830</span>&#160;  <span class="keyword">class </span>KUDU_NO_EXPORT Data;</div><div class="line"><a name="l00831"></a><span class="lineno">  831</span>&#160;</div><div class="line"><a name="l00832"></a><span class="lineno">  832</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="l00833"></a><span class="lineno">  833</span>&#160;</div><div class="line"><a name="l00834"></a><span class="lineno">  834</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="l00835"></a><span class="lineno">  835</span>&#160;</div><div class="line"><a name="l00836"></a><span class="lineno">  836</span>&#160;  <span class="comment">// Owned.</span></div><div class="line"><a name="l00837"></a><span class="lineno">  837</span>&#160;  Data* data_;</div><div class="line"><a name="l00838"></a><span class="lineno">  838</span>&#160;</div><div class="line"><a name="l00839"></a><span class="lineno">  839</span>&#160;  DISALLOW_COPY_AND_ASSIGN(<a class="code" href="classkudu_1_1client_1_1KuduTableCreator.html">KuduTableCreator</a>);</div><div class="line"><a name="l00840"></a><span class="lineno">  840</span>&#160;};</div><div class="line"><a name="l00841"></a><span class="lineno">  841</span>&#160;</div><div class="line"><a name="l00862"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduTable.html">  862</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="l00863"></a><span class="lineno">  863</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00864"></a><span class="lineno">  864</span>&#160;  ~<a class="code" href="classkudu_1_1client_1_1KuduTable.html">KuduTable</a>();</div><div class="line"><a name="l00865"></a><span class="lineno">  865</span>&#160;</div><div class="line"><a name="l00867"></a><span class="lineno">  867</span>&#160;  <span class="keyword">const</span> std::string&amp; name() <span class="keyword">const</span>;</div><div class="line"><a name="l00868"></a><span class="lineno">  868</span>&#160;</div><div class="line"><a name="l00876"></a><span class="lineno">  876</span>&#160;  <span class="keyword">const</span> std::string&amp; id() <span class="keyword">const</span>;</div><div class="line"><a name="l00877"></a><span class="lineno">  877</span>&#160;</div><div class="line"><a name="l00879"></a><span class="lineno">  879</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="l00880"></a><span class="lineno">  880</span>&#160;</div><div class="line"><a name="l00882"></a><span class="lineno">  882</span>&#160;  <span class="keywordtype">int</span> num_replicas() <span class="keyword">const</span>;</div><div class="line"><a name="l00883"></a><span class="lineno">  883</span>&#160;</div><div class="line"><a name="l00887"></a><span class="lineno">  887</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduInsert.html">KuduInsert</a>* NewInsert();</div><div class="line"><a name="l00888"></a><span class="lineno">  888</span>&#160;</div><div class="line"><a name="l00892"></a><span class="lineno">  892</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduUpsert.html">KuduUpsert</a>* NewUpsert();</div><div class="line"><a name="l00893"></a><span class="lineno">  893</span>&#160;</div><div class="line"><a name="l00897"></a><span class="lineno">  897</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduUpdate.html">KuduUpdate</a>* NewUpdate();</div><div class="line"><a name="l00898"></a><span class="lineno">  898</span>&#160;</div><div class="line"><a name="l00902"></a><span class="lineno">  902</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduDelete.html">KuduDelete</a>* NewDelete();</div><div class="line"><a name="l00903"></a><span class="lineno">  903</span>&#160;</div><div class="line"><a name="l00927"></a><span class="lineno">  927</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="l00928"></a><span class="lineno">  928</span>&#160;                                        <a class="code" href="classkudu_1_1client_1_1KuduPredicate.html#ad58e80ced596d7738f99b5b83ba24eb4">KuduPredicate::ComparisonOp</a> op,</div><div class="line"><a name="l00929"></a><span class="lineno">  929</span>&#160;                                        <a class="code" href="classkudu_1_1client_1_1KuduValue.html">KuduValue</a>* value);</div><div class="line"><a name="l00930"></a><span class="lineno">  930</span>&#160;</div><div class="line"><a name="l00954"></a><span class="lineno">  954</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="l00955"></a><span class="lineno">  955</span>&#160;                                    std::vector&lt;KuduValue*&gt;* values);</div><div class="line"><a name="l00956"></a><span class="lineno">  956</span>&#160;</div><div class="line"><a name="l00967"></a><span class="lineno">  967</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduPredicate.html">KuduPredicate</a>* NewIsNotNullPredicate(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; col_name);</div><div class="line"><a name="l00968"></a><span class="lineno">  968</span>&#160;</div><div class="line"><a name="l00979"></a><span class="lineno">  979</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduPredicate.html">KuduPredicate</a>* NewIsNullPredicate(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; col_name);</div><div class="line"><a name="l00980"></a><span class="lineno">  980</span>&#160;</div><div class="line"><a name="l00983"></a><span class="lineno">  983</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="l00984"></a><span class="lineno">  984</span>&#160;</div><div class="line"><a name="l00986"></a><span class="lineno">  986</span>&#160;  <span class="keyword">const</span> PartitionSchema&amp; partition_schema() <span class="keyword">const</span>;</div><div class="line"><a name="l00987"></a><span class="lineno">  987</span>&#160;</div><div class="line"><a name="l00988"></a><span class="lineno">  988</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00989"></a><span class="lineno">  989</span>&#160;  <span class="keyword">class </span>KUDU_NO_EXPORT Data;</div><div class="line"><a name="l00990"></a><span class="lineno">  990</span>&#160;</div><div class="line"><a name="l00991"></a><span class="lineno">  991</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="l00992"></a><span class="lineno">  992</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classkudu_1_1client_1_1KuduPartitioner.html">KuduPartitioner</a>;</div><div class="line"><a name="l00993"></a><span class="lineno">  993</span>&#160;</div><div class="line"><a name="l00994"></a><span class="lineno">  994</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="l00995"></a><span class="lineno">  995</span>&#160;            <span class="keyword">const</span> std::string&amp; name,</div><div class="line"><a name="l00996"></a><span class="lineno">  996</span>&#160;            <span class="keyword">const</span> std::string&amp; <span class="keywordtype">id</span>,</div><div class="line"><a name="l00997"></a><span class="lineno">  997</span>&#160;            <span class="keywordtype">int</span> num_replicas,</div><div class="line"><a name="l00998"></a><span class="lineno">  998</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="l00999"></a><span class="lineno">  999</span>&#160;            <span class="keyword">const</span> PartitionSchema&amp; partition_schema);</div><div class="line"><a name="l01000"></a><span class="lineno"> 1000</span>&#160;</div><div class="line"><a name="l01001"></a><span class="lineno"> 1001</span>&#160;  <span class="comment">// Owned.</span></div><div class="line"><a name="l01002"></a><span class="lineno"> 1002</span>&#160;  Data* data_;</div><div class="line"><a name="l01003"></a><span class="lineno"> 1003</span>&#160;</div><div class="line"><a name="l01004"></a><span class="lineno"> 1004</span>&#160;  DISALLOW_COPY_AND_ASSIGN(KuduTable);</div><div class="line"><a name="l01005"></a><span class="lineno"> 1005</span>&#160;};</div><div class="line"><a name="l01006"></a><span class="lineno"> 1006</span>&#160;</div><div class="line"><a name="l01018"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduTableAlterer.html"> 1018</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="l01019"></a><span class="lineno"> 1019</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l01020"></a><span class="lineno"> 1020</span>&#160;  ~<a class="code" href="classkudu_1_1client_1_1KuduTableAlterer.html">KuduTableAlterer</a>();</div><div class="line"><a name="l01021"></a><span class="lineno"> 1021</span>&#160;</div><div class="line"><a name="l01027"></a><span class="lineno"> 1027</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="l01028"></a><span class="lineno"> 1028</span>&#160;</div><div class="line"><a name="l01038"></a><span class="lineno"> 1038</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="l01039"></a><span class="lineno"> 1039</span>&#160;</div><div class="line"><a name="l01048"></a><span class="lineno"> 1048</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduColumnSpec.html">KuduColumnSpec</a>* AlterColumn(<span class="keyword">const</span> std::string&amp; name);</div><div class="line"><a name="l01049"></a><span class="lineno"> 1049</span>&#160;</div><div class="line"><a name="l01057"></a><span class="lineno"> 1057</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="l01058"></a><span class="lineno"> 1058</span>&#160;</div><div class="line"><a name="l01090"></a><span class="lineno"> 1090</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduTableAlterer.html">KuduTableAlterer</a>* AddRangePartition(</div><div class="line"><a name="l01091"></a><span class="lineno"> 1091</span>&#160;      <a class="code" href="classKuduPartialRow.html">KuduPartialRow</a>* lower_bound,</div><div class="line"><a name="l01092"></a><span class="lineno"> 1092</span>&#160;      <a class="code" href="classKuduPartialRow.html">KuduPartialRow</a>* upper_bound,</div><div class="line"><a name="l01093"></a><span class="lineno"> 1093</span>&#160;      <a class="code" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343b">KuduTableCreator::RangePartitionBound</a> lower_bound_type = KuduTableCreator::INCLUSIVE_BOUND,</div><div class="line"><a name="l01094"></a><span class="lineno"> 1094</span>&#160;      <a class="code" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343b">KuduTableCreator::RangePartitionBound</a> upper_bound_type = KuduTableCreator::EXCLUSIVE_BOUND);</div><div class="line"><a name="l01095"></a><span class="lineno"> 1095</span>&#160;</div><div class="line"><a name="l01123"></a><span class="lineno"> 1123</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduTableAlterer.html">KuduTableAlterer</a>* DropRangePartition(</div><div class="line"><a name="l01124"></a><span class="lineno"> 1124</span>&#160;      <a class="code" href="classKuduPartialRow.html">KuduPartialRow</a>* lower_bound,</div><div class="line"><a name="l01125"></a><span class="lineno"> 1125</span>&#160;      <a class="code" href="classKuduPartialRow.html">KuduPartialRow</a>* upper_bound,</div><div class="line"><a name="l01126"></a><span class="lineno"> 1126</span>&#160;      <a class="code" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343b">KuduTableCreator::RangePartitionBound</a> lower_bound_type = KuduTableCreator::INCLUSIVE_BOUND,</div><div class="line"><a name="l01127"></a><span class="lineno"> 1127</span>&#160;      <a class="code" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343b">KuduTableCreator::RangePartitionBound</a> upper_bound_type = KuduTableCreator::EXCLUSIVE_BOUND);</div><div class="line"><a name="l01128"></a><span class="lineno"> 1128</span>&#160;</div><div class="line"><a name="l01138"></a><span class="lineno"> 1138</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="l01139"></a><span class="lineno"> 1139</span>&#160;</div><div class="line"><a name="l01151"></a><span class="lineno"> 1151</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduTableAlterer.html">KuduTableAlterer</a>* wait(<span class="keywordtype">bool</span> wait);</div><div class="line"><a name="l01152"></a><span class="lineno"> 1152</span>&#160;</div><div class="line"><a name="l01157"></a><span class="lineno"> 1157</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> Alter();</div><div class="line"><a name="l01158"></a><span class="lineno"> 1158</span>&#160;</div><div class="line"><a name="l01159"></a><span class="lineno"> 1159</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l01160"></a><span class="lineno"> 1160</span>&#160;  <span class="keyword">class </span>KUDU_NO_EXPORT Data;</div><div class="line"><a name="l01161"></a><span class="lineno"> 1161</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="l01162"></a><span class="lineno"> 1162</span>&#160;</div><div class="line"><a name="l01163"></a><span class="lineno"> 1163</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="l01164"></a><span class="lineno"> 1164</span>&#160;                   <span class="keyword">const</span> std::string&amp; name);</div><div class="line"><a name="l01165"></a><span class="lineno"> 1165</span>&#160;</div><div class="line"><a name="l01166"></a><span class="lineno"> 1166</span>&#160;  <span class="comment">// Owned.</span></div><div class="line"><a name="l01167"></a><span class="lineno"> 1167</span>&#160;  Data* data_;</div><div class="line"><a name="l01168"></a><span class="lineno"> 1168</span>&#160;</div><div class="line"><a name="l01169"></a><span class="lineno"> 1169</span>&#160;  DISALLOW_COPY_AND_ASSIGN(KuduTableAlterer);</div><div class="line"><a name="l01170"></a><span class="lineno"> 1170</span>&#160;};</div><div class="line"><a name="l01171"></a><span class="lineno"> 1171</span>&#160;</div><div class="line"><a name="l01177"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduError.html"> 1177</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="l01178"></a><span class="lineno"> 1178</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l01179"></a><span class="lineno"> 1179</span>&#160;  ~<a class="code" href="classkudu_1_1client_1_1KuduError.html">KuduError</a>();</div><div class="line"><a name="l01180"></a><span class="lineno"> 1180</span>&#160;</div><div class="line"><a name="l01182"></a><span class="lineno"> 1182</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="l01183"></a><span class="lineno"> 1183</span>&#160;</div><div class="line"><a name="l01185"></a><span class="lineno"> 1185</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="l01186"></a><span class="lineno"> 1186</span>&#160;</div><div class="line"><a name="l01194"></a><span class="lineno"> 1194</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduWriteOperation.html">KuduWriteOperation</a>* release_failed_op();</div><div class="line"><a name="l01195"></a><span class="lineno"> 1195</span>&#160;</div><div class="line"><a name="l01206"></a><span class="lineno"> 1206</span>&#160;  <span class="keywordtype">bool</span> was_possibly_successful() <span class="keyword">const</span>;</div><div class="line"><a name="l01207"></a><span class="lineno"> 1207</span>&#160;</div><div class="line"><a name="l01208"></a><span class="lineno"> 1208</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l01209"></a><span class="lineno"> 1209</span>&#160;  <span class="keyword">class </span>KUDU_NO_EXPORT Data;</div><div class="line"><a name="l01210"></a><span class="lineno"> 1210</span>&#160;</div><div class="line"><a name="l01211"></a><span class="lineno"> 1211</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>internal::Batcher;</div><div class="line"><a name="l01212"></a><span class="lineno"> 1212</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>internal::ErrorCollector;</div><div class="line"><a name="l01213"></a><span class="lineno"> 1213</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="l01214"></a><span class="lineno"> 1214</span>&#160;</div><div class="line"><a name="l01215"></a><span class="lineno"> 1215</span>&#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="l01216"></a><span class="lineno"> 1216</span>&#160;</div><div class="line"><a name="l01217"></a><span class="lineno"> 1217</span>&#160;  <span class="comment">// Owned.</span></div><div class="line"><a name="l01218"></a><span class="lineno"> 1218</span>&#160;  Data* data_;</div><div class="line"><a name="l01219"></a><span class="lineno"> 1219</span>&#160;</div><div class="line"><a name="l01220"></a><span class="lineno"> 1220</span>&#160;  DISALLOW_COPY_AND_ASSIGN(KuduError);</div><div class="line"><a name="l01221"></a><span class="lineno"> 1221</span>&#160;};</div><div class="line"><a name="l01222"></a><span class="lineno"> 1222</span>&#160;</div><div class="line"><a name="l01223"></a><span class="lineno"> 1223</span>&#160;</div><div class="line"><a name="l01282"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduSession.html"> 1282</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="l01283"></a><span class="lineno"> 1283</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l01284"></a><span class="lineno"> 1284</span>&#160;  ~<a class="code" href="classkudu_1_1client_1_1KuduSession.html">KuduSession</a>();</div><div class="line"><a name="l01285"></a><span class="lineno"> 1285</span>&#160;</div><div class="line"><a name="l01287"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19"> 1287</a></span>&#160;  <span class="keyword">enum</span> <a class="code" href="classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19">FlushMode</a> {</div><div class="line"><a name="l01292"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19ad74b76e407e62ca951d369521636df2b"> 1292</a></span>&#160;    <a class="code" href="classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19ad74b76e407e62ca951d369521636df2b">AUTO_FLUSH_SYNC</a>,</div><div class="line"><a name="l01293"></a><span class="lineno"> 1293</span>&#160;</div><div class="line"><a name="l01320"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19a520b8eef7ef0fd149b2757faf43972b1"> 1320</a></span>&#160;    <a class="code" href="classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19a520b8eef7ef0fd149b2757faf43972b1">AUTO_FLUSH_BACKGROUND</a>,</div><div class="line"><a name="l01321"></a><span class="lineno"> 1321</span>&#160;</div><div class="line"><a name="l01334"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19a1db3efc2094da09aae45bb68475cdb4a"> 1334</a></span>&#160;    MANUAL_FLUSH</div><div class="line"><a name="l01335"></a><span class="lineno"> 1335</span>&#160;  };</div><div class="line"><a name="l01336"></a><span class="lineno"> 1336</span>&#160;</div><div class="line"><a name="l01345"></a><span class="lineno"> 1345</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="l01346"></a><span class="lineno"> 1346</span>&#160;</div><div class="line"><a name="l01348"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduSession.html#aabd55109ba3b086bbe33b277cdd40d22"> 1348</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="l01367"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduSession.html#aabd55109ba3b086bbe33b277cdd40d22ae978fab7451faebf4399830b603c855c"> 1367</a></span>&#160;    <a class="code" href="classkudu_1_1client_1_1KuduSession.html#aabd55109ba3b086bbe33b277cdd40d22ae978fab7451faebf4399830b603c855c">CLIENT_PROPAGATED</a>,</div><div class="line"><a name="l01368"></a><span class="lineno"> 1368</span>&#160;</div><div class="line"><a name="l01383"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduSession.html#aabd55109ba3b086bbe33b277cdd40d22a70010f3ef1f70b99b02328c024c436c9"> 1383</a></span>&#160;    COMMIT_WAIT</div><div class="line"><a name="l01384"></a><span class="lineno"> 1384</span>&#160;  };</div><div class="line"><a name="l01385"></a><span class="lineno"> 1385</span>&#160;</div><div class="line"><a name="l01391"></a><span class="lineno"> 1391</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="l01392"></a><span class="lineno"> 1392</span>&#160;    WARN_UNUSED_RESULT;</div><div class="line"><a name="l01393"></a><span class="lineno"> 1393</span>&#160;</div><div class="line"><a name="l01411"></a><span class="lineno"> 1411</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="l01412"></a><span class="lineno"> 1412</span>&#160;</div><div class="line"><a name="l01436"></a><span class="lineno"> 1436</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="l01437"></a><span class="lineno"> 1437</span>&#160;      WARN_UNUSED_RESULT;</div><div class="line"><a name="l01438"></a><span class="lineno"> 1438</span>&#160;</div><div class="line"><a name="l01460"></a><span class="lineno"> 1460</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="l01461"></a><span class="lineno"> 1461</span>&#160;</div><div class="line"><a name="l01486"></a><span class="lineno"> 1486</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="l01487"></a><span class="lineno"> 1487</span>&#160;</div><div class="line"><a name="l01493"></a><span class="lineno"> 1493</span>&#160;  <span class="keywordtype">void</span> SetTimeoutMillis(<span class="keywordtype">int</span> millis);</div><div class="line"><a name="l01494"></a><span class="lineno"> 1494</span>&#160;</div><div class="line"><a name="l01498"></a><span class="lineno"> 1498</span>&#160;</div><div class="line"><a name="l01522"></a><span class="lineno"> 1522</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="l01523"></a><span class="lineno"> 1523</span>&#160;</div><div class="line"><a name="l01538"></a><span class="lineno"> 1538</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> Flush() WARN_UNUSED_RESULT;</div><div class="line"><a name="l01539"></a><span class="lineno"> 1539</span>&#160;</div><div class="line"><a name="l01580"></a><span class="lineno"> 1580</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="l01581"></a><span class="lineno"> 1581</span>&#160;</div><div class="line"><a name="l01584"></a><span class="lineno"> 1584</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> Close() WARN_UNUSED_RESULT;</div><div class="line"><a name="l01585"></a><span class="lineno"> 1585</span>&#160;</div><div class="line"><a name="l01594"></a><span class="lineno"> 1594</span>&#160;  <span class="keywordtype">bool</span> HasPendingOperations() const;</div><div class="line"><a name="l01595"></a><span class="lineno"> 1595</span>&#160;</div><div class="line"><a name="l01617"></a><span class="lineno"> 1617</span>&#160;  <span class="keywordtype">int</span> CountBufferedOperations() const</div><div class="line"><a name="l01618"></a><span class="lineno"> 1618</span>&#160;      ATTRIBUTE_DEPRECATED(&quot;this method is experimental and will disappear &quot;</div><div class="line"><a name="l01619"></a><span class="lineno"> 1619</span>&#160;                           &quot;in a future release&quot;);</div><div class="line"><a name="l01620"></a><span class="lineno"> 1620</span>&#160;</div><div class="line"><a name="l01645"></a><span class="lineno"> 1645</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="l01646"></a><span class="lineno"> 1646</span>&#160;</div><div class="line"><a name="l01656"></a><span class="lineno"> 1656</span>&#160;  <span class="keywordtype">int</span> CountPendingErrors() const;</div><div class="line"><a name="l01657"></a><span class="lineno"> 1657</span>&#160;</div><div class="line"><a name="l01668"></a><span class="lineno"> 1668</span>&#160;  <span class="keywordtype">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="l01669"></a><span class="lineno"> 1669</span>&#160;</div><div class="line"><a name="l01671"></a><span class="lineno"> 1671</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduClient.html">KuduClient</a>* client() const;</div><div class="line"><a name="l01672"></a><span class="lineno"> 1672</span>&#160;</div><div class="line"><a name="l01673"></a><span class="lineno"> 1673</span>&#160; private:</div><div class="line"><a name="l01674"></a><span class="lineno"> 1674</span>&#160;  class KUDU_NO_EXPORT Data;</div><div class="line"><a name="l01675"></a><span class="lineno"> 1675</span>&#160;</div><div class="line"><a name="l01676"></a><span class="lineno"> 1676</span>&#160;  friend class <a class="code" href="classkudu_1_1client_1_1KuduClient.html">KuduClient</a>;</div><div class="line"><a name="l01677"></a><span class="lineno"> 1677</span>&#160;  friend class internal::Batcher;</div><div class="line"><a name="l01678"></a><span class="lineno"> 1678</span>&#160;  friend class ClientTest;</div><div class="line"><a name="l01679"></a><span class="lineno"> 1679</span>&#160;  FRIEND_TEST(ClientTest, TestAutoFlushBackgroundApplyBlocks);</div><div class="line"><a name="l01680"></a><span class="lineno"> 1680</span>&#160;  FRIEND_TEST(ClientTest, TestAutoFlushBackgroundAndErrorCollector);</div><div class="line"><a name="l01681"></a><span class="lineno"> 1681</span>&#160;</div><div class="line"><a name="l01682"></a><span class="lineno"> 1682</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="l01683"></a><span class="lineno"> 1683</span>&#160;</div><div class="line"><a name="l01684"></a><span class="lineno"> 1684</span>&#160;  <span class="comment">// Owned.</span></div><div class="line"><a name="l01685"></a><span class="lineno"> 1685</span>&#160;  Data* data_;</div><div class="line"><a name="l01686"></a><span class="lineno"> 1686</span>&#160;</div><div class="line"><a name="l01687"></a><span class="lineno"> 1687</span>&#160;  DISALLOW_COPY_AND_ASSIGN(<a class="code" href="classkudu_1_1client_1_1KuduSession.html">KuduSession</a>);</div><div class="line"><a name="l01688"></a><span class="lineno"> 1688</span>&#160;};</div><div class="line"><a name="l01689"></a><span class="lineno"> 1689</span>&#160;</div><div class="line"><a name="l01690"></a><span class="lineno"> 1690</span>&#160;</div><div class="line"><a name="l01695"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanner.html"> 1695</a></span>&#160;class KUDU_EXPORT <a class="code" href="classkudu_1_1client_1_1KuduScanner.html">KuduScanner</a> {</div><div class="line"><a name="l01696"></a><span class="lineno"> 1696</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l01698"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanner.html#a36fdb59d6488618363331269d3f58348"> 1698</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="l01706"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanner.html#a36fdb59d6488618363331269d3f58348a8694cef688d819806fa9a85b002231a8"> 1706</a></span>&#160;    <a class="code" href="classkudu_1_1client_1_1KuduScanner.html#a36fdb59d6488618363331269d3f58348a8694cef688d819806fa9a85b002231a8">READ_LATEST</a>,</div><div class="line"><a name="l01707"></a><span class="lineno"> 1707</span>&#160;</div><div class="line"><a name="l01727"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanner.html#a36fdb59d6488618363331269d3f58348a380798cc81589d865b7b2549e186b2e2"> 1727</a></span>&#160;    READ_AT_SNAPSHOT</div><div class="line"><a name="l01728"></a><span class="lineno"> 1728</span>&#160;  };</div><div class="line"><a name="l01729"></a><span class="lineno"> 1729</span>&#160;</div><div class="line"><a name="l01733"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanner.html#a3d6c79325c9da9741d0accf1b43bf7f9"> 1733</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="l01739"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanner.html#a3d6c79325c9da9741d0accf1b43bf7f9adfeea547de613f36a0aff9f585671ec3"> 1739</a></span>&#160;    <a class="code" href="classkudu_1_1client_1_1KuduScanner.html#a3d6c79325c9da9741d0accf1b43bf7f9adfeea547de613f36a0aff9f585671ec3">UNORDERED</a>,</div><div class="line"><a name="l01740"></a><span class="lineno"> 1740</span>&#160;</div><div class="line"><a name="l01745"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanner.html#a3d6c79325c9da9741d0accf1b43bf7f9a4395ad2ec57ce53e30d8b5748fa2c63a"> 1745</a></span>&#160;    ORDERED</div><div class="line"><a name="l01746"></a><span class="lineno"> 1746</span>&#160;  };</div><div class="line"><a name="l01747"></a><span class="lineno"> 1747</span>&#160;</div><div class="line"><a name="l01751"></a><span class="lineno"> 1751</span>&#160;  <span class="keyword">enum</span> { kScanTimeoutMillis = 30000 };</div><div class="line"><a name="l01752"></a><span class="lineno"> 1752</span>&#160;</div><div class="line"><a name="l01758"></a><span class="lineno"> 1758</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="l01759"></a><span class="lineno"> 1759</span>&#160;  ~KuduScanner();</div><div class="line"><a name="l01760"></a><span class="lineno"> 1760</span>&#160;</div><div class="line"><a name="l01770"></a><span class="lineno"> 1770</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="l01771"></a><span class="lineno"> 1771</span>&#160;    WARN_UNUSED_RESULT;</div><div class="line"><a name="l01772"></a><span class="lineno"> 1772</span>&#160;</div><div class="line"><a name="l01782"></a><span class="lineno"> 1782</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="l01783"></a><span class="lineno"> 1783</span>&#160;    WARN_UNUSED_RESULT;</div><div class="line"><a name="l01784"></a><span class="lineno"> 1784</span>&#160;</div><div class="line"><a name="l01790"></a><span class="lineno"> 1790</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="l01791"></a><span class="lineno"> 1791</span>&#160;      WARN_UNUSED_RESULT</div><div class="line"><a name="l01792"></a><span class="lineno"> 1792</span>&#160;      ATTRIBUTE_DEPRECATED(<span class="stringliteral">&quot;use SetProjectedColumnNames() instead&quot;</span>);</div><div class="line"><a name="l01793"></a><span class="lineno"> 1793</span>&#160;</div><div class="line"><a name="l01802"></a><span class="lineno"> 1802</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="l01803"></a><span class="lineno"> 1803</span>&#160;</div><div class="line"><a name="l01812"></a><span class="lineno"> 1812</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="l01813"></a><span class="lineno"> 1813</span>&#160;</div><div class="line"><a name="l01821"></a><span class="lineno"> 1821</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="l01822"></a><span class="lineno"> 1822</span>&#160;      ATTRIBUTE_DEPRECATED(<span class="stringliteral">&quot;use AddLowerBound() instead&quot;</span>);</div><div class="line"><a name="l01823"></a><span class="lineno"> 1823</span>&#160;</div><div class="line"><a name="l01832"></a><span class="lineno"> 1832</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> AddExclusiveUpperBound(<span class="keyword">const</span> <a class="code" href="classKuduPartialRow.html">KuduPartialRow</a>&amp; key);</div><div class="line"><a name="l01833"></a><span class="lineno"> 1833</span>&#160;</div><div class="line"><a name="l01841"></a><span class="lineno"> 1841</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="l01842"></a><span class="lineno"> 1842</span>&#160;      ATTRIBUTE_DEPRECATED(<span class="stringliteral">&quot;use AddExclusiveUpperBound() instead&quot;</span>);</div><div class="line"><a name="l01843"></a><span class="lineno"> 1843</span>&#160;</div><div class="line"><a name="l01852"></a><span class="lineno"> 1852</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="l01853"></a><span class="lineno"> 1853</span>&#160;</div><div class="line"><a name="l01862"></a><span class="lineno"> 1862</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="l01863"></a><span class="lineno"> 1863</span>&#160;</div><div class="line"><a name="l01870"></a><span class="lineno"> 1870</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="l01871"></a><span class="lineno"> 1871</span>&#160;</div><div class="line"><a name="l01873"></a><span class="lineno"> 1873</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> Open();</div><div class="line"><a name="l01874"></a><span class="lineno"> 1874</span>&#160;</div><div class="line"><a name="l01890"></a><span class="lineno"> 1890</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> KeepAlive();</div><div class="line"><a name="l01891"></a><span class="lineno"> 1891</span>&#160;</div><div class="line"><a name="l01900"></a><span class="lineno"> 1900</span>&#160;  <span class="keywordtype">void</span> Close();</div><div class="line"><a name="l01901"></a><span class="lineno"> 1901</span>&#160;</div><div class="line"><a name="l01910"></a><span class="lineno"> 1910</span>&#160;  <span class="keywordtype">bool</span> HasMoreRows() <span class="keyword">const</span>;</div><div class="line"><a name="l01911"></a><span class="lineno"> 1911</span>&#160;</div><div class="line"><a name="l01923"></a><span class="lineno"> 1923</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> NextBatch(std::vector&lt;KuduRowResult&gt;* rows)</div><div class="line"><a name="l01924"></a><span class="lineno"> 1924</span>&#160;      ATTRIBUTE_DEPRECATED(<span class="stringliteral">&quot;use NextBatch(KuduScanBatch*) instead&quot;</span>);</div><div class="line"><a name="l01925"></a><span class="lineno"> 1925</span>&#160;</div><div class="line"><a name="l01934"></a><span class="lineno"> 1934</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> NextBatch(<a class="code" href="classkudu_1_1client_1_1KuduScanBatch.html">KuduScanBatch</a>* batch);</div><div class="line"><a name="l01935"></a><span class="lineno"> 1935</span>&#160;</div><div class="line"><a name="l01944"></a><span class="lineno"> 1944</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> GetCurrentServer(<a class="code" href="classkudu_1_1client_1_1KuduTabletServer.html">KuduTabletServer</a>** server);</div><div class="line"><a name="l01945"></a><span class="lineno"> 1945</span>&#160;</div><div class="line"><a name="l01947"></a><span class="lineno"> 1947</span>&#160;  <span class="keyword">const</span> <a class="code" href="classkudu_1_1client_1_1ResourceMetrics.html">ResourceMetrics</a>&amp; GetResourceMetrics() <span class="keyword">const</span>;</div><div class="line"><a name="l01948"></a><span class="lineno"> 1948</span>&#160;</div><div class="line"><a name="l01955"></a><span class="lineno"> 1955</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> SetBatchSizeBytes(uint32_t batch_size);</div><div class="line"><a name="l01956"></a><span class="lineno"> 1956</span>&#160;</div><div class="line"><a name="l01964"></a><span class="lineno"> 1964</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> SetSelection(<a class="code" href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11a">KuduClient::ReplicaSelection</a> selection)</div><div class="line"><a name="l01965"></a><span class="lineno"> 1965</span>&#160;    WARN_UNUSED_RESULT;</div><div class="line"><a name="l01966"></a><span class="lineno"> 1966</span>&#160;</div><div class="line"><a name="l01972"></a><span class="lineno"> 1972</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> SetReadMode(<a class="code" href="classkudu_1_1client_1_1KuduScanner.html#a36fdb59d6488618363331269d3f58348">ReadMode</a> read_mode) WARN_UNUSED_RESULT;</div><div class="line"><a name="l01973"></a><span class="lineno"> 1973</span>&#160;</div><div class="line"><a name="l01979"></a><span class="lineno"> 1979</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> SetOrderMode(<a class="code" href="classkudu_1_1client_1_1KuduScanner.html#a3d6c79325c9da9741d0accf1b43bf7f9">OrderMode</a> order_mode) WARN_UNUSED_RESULT</div><div class="line"><a name="l01980"></a><span class="lineno"> 1980</span>&#160;      ATTRIBUTE_DEPRECATED(<span class="stringliteral">&quot;use SetFaultTolerant() instead&quot;</span>);</div><div class="line"><a name="l01981"></a><span class="lineno"> 1981</span>&#160;</div><div class="line"><a name="l01994"></a><span class="lineno"> 1994</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> SetFaultTolerant() WARN_UNUSED_RESULT;</div><div class="line"><a name="l01995"></a><span class="lineno"> 1995</span>&#160;</div><div class="line"><a name="l02001"></a><span class="lineno"> 2001</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> SetSnapshotMicros(uint64_t snapshot_timestamp_micros) WARN_UNUSED_RESULT;</div><div class="line"><a name="l02002"></a><span class="lineno"> 2002</span>&#160;</div><div class="line"><a name="l02015"></a><span class="lineno"> 2015</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> SetSnapshotRaw(uint64_t snapshot_timestamp) WARN_UNUSED_RESULT;</div><div class="line"><a name="l02016"></a><span class="lineno"> 2016</span>&#160;</div><div class="line"><a name="l02022"></a><span class="lineno"> 2022</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> SetTimeoutMillis(<span class="keywordtype">int</span> millis);</div><div class="line"><a name="l02023"></a><span class="lineno"> 2023</span>&#160;</div><div class="line"><a name="l02025"></a><span class="lineno"> 2025</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a> GetProjectionSchema() <span class="keyword">const</span>;</div><div class="line"><a name="l02026"></a><span class="lineno"> 2026</span>&#160;</div><div class="line"><a name="l02028"></a><span class="lineno"> 2028</span>&#160;  <span class="comment">//</span></div><div class="line"><a name="l02034"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanner.html#a68345956f3f4c7fd5e1665fd292f6a85"> 2034</a></span>&#160;<span class="comment"></span>  <span class="keyword">static</span> <span class="keyword">const</span> uint64_t NO_FLAGS = 0;</div><div class="line"><a name="l02042"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanner.html#a63cd270f3bc72f4197d2581ec8f8fc44"> 2042</a></span>&#160;  <span class="keyword">static</span> <span class="keyword">const</span> uint64_t PAD_UNIXTIME_MICROS_TO_16_BYTES = 1 &lt;&lt; 0;</div><div class="line"><a name="l02066"></a><span class="lineno"> 2066</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> SetRowFormatFlags(uint64_t flags);</div><div class="line"><a name="l02068"></a><span class="lineno"> 2068</span>&#160;</div><div class="line"><a name="l02074"></a><span class="lineno"> 2074</span>&#160;  std::string ToString() <span class="keyword">const</span>;</div><div class="line"><a name="l02075"></a><span class="lineno"> 2075</span>&#160;</div><div class="line"><a name="l02076"></a><span class="lineno"> 2076</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l02077"></a><span class="lineno"> 2077</span>&#160;  <span class="keyword">class </span>KUDU_NO_EXPORT Data;</div><div class="line"><a name="l02078"></a><span class="lineno"> 2078</span>&#160;</div><div class="line"><a name="l02079"></a><span class="lineno"> 2079</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="l02080"></a><span class="lineno"> 2080</span>&#160;  FRIEND_TEST(ClientTest, TestScanCloseProxy);</div><div class="line"><a name="l02081"></a><span class="lineno"> 2081</span>&#160;  FRIEND_TEST(ClientTest, TestScanFaultTolerance);</div><div class="line"><a name="l02082"></a><span class="lineno"> 2082</span>&#160;  FRIEND_TEST(ClientTest, TestScanNoBlockCaching);</div><div class="line"><a name="l02083"></a><span class="lineno"> 2083</span>&#160;  FRIEND_TEST(ClientTest, TestScanTimeout);</div><div class="line"><a name="l02084"></a><span class="lineno"> 2084</span>&#160;  FRIEND_TEST(ClientTest, TestReadAtSnapshotNoTimestampSet);</div><div class="line"><a name="l02085"></a><span class="lineno"> 2085</span>&#160;  FRIEND_TEST(ConsistencyITest, TestSnapshotScanTimestampReuse);</div><div class="line"><a name="l02086"></a><span class="lineno"> 2086</span>&#160;</div><div class="line"><a name="l02087"></a><span class="lineno"> 2087</span>&#160;  <span class="comment">// Owned.</span></div><div class="line"><a name="l02088"></a><span class="lineno"> 2088</span>&#160;  Data* data_;</div><div class="line"><a name="l02089"></a><span class="lineno"> 2089</span>&#160;</div><div class="line"><a name="l02090"></a><span class="lineno"> 2090</span>&#160;  DISALLOW_COPY_AND_ASSIGN(KuduScanner);</div><div class="line"><a name="l02091"></a><span class="lineno"> 2091</span>&#160;};</div><div class="line"><a name="l02092"></a><span class="lineno"> 2092</span>&#160;</div><div class="line"><a name="l02113"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanToken.html"> 2113</a></span>&#160;<span class="keyword">class </span>KUDU_EXPORT <a class="code" href="classkudu_1_1client_1_1KuduScanToken.html">KuduScanToken</a> {</div><div class="line"><a name="l02114"></a><span class="lineno"> 2114</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l02115"></a><span class="lineno"> 2115</span>&#160;</div><div class="line"><a name="l02116"></a><span class="lineno"> 2116</span>&#160;  ~<a class="code" href="classkudu_1_1client_1_1KuduScanToken.html">KuduScanToken</a>();</div><div class="line"><a name="l02117"></a><span class="lineno"> 2117</span>&#160;</div><div class="line"><a name="l02128"></a><span class="lineno"> 2128</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> IntoKuduScanner(<a class="code" href="classkudu_1_1client_1_1KuduScanner.html">KuduScanner</a>** scanner) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l02129"></a><span class="lineno"> 2129</span>&#160;</div><div class="line"><a name="l02131"></a><span class="lineno"> 2131</span>&#160;  <span class="keyword">const</span> <a class="code" href="classkudu_1_1client_1_1KuduTablet.html">KuduTablet</a>&amp; tablet() <span class="keyword">const</span>;</div><div class="line"><a name="l02132"></a><span class="lineno"> 2132</span>&#160;</div><div class="line"><a name="l02140"></a><span class="lineno"> 2140</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> Serialize(std::string* buf) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l02141"></a><span class="lineno"> 2141</span>&#160;</div><div class="line"><a name="l02153"></a><span class="lineno"> 2153</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1Status.html">Status</a> DeserializeIntoScanner(<a class="code" href="classkudu_1_1client_1_1KuduClient.html">KuduClient</a>* client,</div><div class="line"><a name="l02154"></a><span class="lineno"> 2154</span>&#160;                                       <span class="keyword">const</span> std::string&amp; serialized_token,</div><div class="line"><a name="l02155"></a><span class="lineno"> 2155</span>&#160;                                       <a class="code" href="classkudu_1_1client_1_1KuduScanner.html">KuduScanner</a>** scanner) WARN_UNUSED_RESULT;</div><div class="line"><a name="l02156"></a><span class="lineno"> 2156</span>&#160;</div><div class="line"><a name="l02157"></a><span class="lineno"> 2157</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l02158"></a><span class="lineno"> 2158</span>&#160;  <span class="keyword">class </span>KUDU_NO_EXPORT Data;</div><div class="line"><a name="l02159"></a><span class="lineno"> 2159</span>&#160;</div><div class="line"><a name="l02160"></a><span class="lineno"> 2160</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="l02161"></a><span class="lineno"> 2161</span>&#160;</div><div class="line"><a name="l02162"></a><span class="lineno"> 2162</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduScanToken.html">KuduScanToken</a>();</div><div class="line"><a name="l02163"></a><span class="lineno"> 2163</span>&#160;</div><div class="line"><a name="l02164"></a><span class="lineno"> 2164</span>&#160;  <span class="comment">// Owned.</span></div><div class="line"><a name="l02165"></a><span class="lineno"> 2165</span>&#160;  Data* data_;</div><div class="line"><a name="l02166"></a><span class="lineno"> 2166</span>&#160;</div><div class="line"><a name="l02167"></a><span class="lineno"> 2167</span>&#160;  DISALLOW_COPY_AND_ASSIGN(KuduScanToken);</div><div class="line"><a name="l02168"></a><span class="lineno"> 2168</span>&#160;};</div><div class="line"><a name="l02169"></a><span class="lineno"> 2169</span>&#160;</div><div class="line"><a name="l02173"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html"> 2173</a></span>&#160;<span class="keyword">class </span>KUDU_EXPORT <a class="code" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html">KuduScanTokenBuilder</a> {</div><div class="line"><a name="l02174"></a><span class="lineno"> 2174</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l02175"></a><span class="lineno"> 2175</span>&#160;</div><div class="line"><a name="l02181"></a><span class="lineno"> 2181</span>&#160;  <span class="keyword">explicit</span> <a class="code" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html">KuduScanTokenBuilder</a>(<a class="code" href="classkudu_1_1client_1_1KuduTable.html">KuduTable</a>* table);</div><div class="line"><a name="l02182"></a><span class="lineno"> 2182</span>&#160;  ~<a class="code" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html">KuduScanTokenBuilder</a>();</div><div class="line"><a name="l02183"></a><span class="lineno"> 2183</span>&#160;</div><div class="line"><a name="l02193"></a><span class="lineno"> 2193</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="l02194"></a><span class="lineno"> 2194</span>&#160;    WARN_UNUSED_RESULT;</div><div class="line"><a name="l02195"></a><span class="lineno"> 2195</span>&#160;</div><div class="line"><a name="l02197"></a><span class="lineno"> 2197</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="l02198"></a><span class="lineno"> 2198</span>&#160;    WARN_UNUSED_RESULT;</div><div class="line"><a name="l02199"></a><span class="lineno"> 2199</span>&#160;</div><div class="line"><a name="l02201"></a><span class="lineno"> 2201</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="l02202"></a><span class="lineno"> 2202</span>&#160;</div><div class="line"><a name="l02204"></a><span class="lineno"> 2204</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) WARN_UNUSED_RESULT;</div><div class="line"><a name="l02205"></a><span class="lineno"> 2205</span>&#160;</div><div class="line"><a name="l02214"></a><span class="lineno"> 2214</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> AddUpperBound(<span class="keyword">const</span> <a class="code" href="classKuduPartialRow.html">KuduPartialRow</a>&amp; key) WARN_UNUSED_RESULT;</div><div class="line"><a name="l02215"></a><span class="lineno"> 2215</span>&#160;</div><div class="line"><a name="l02217"></a><span class="lineno"> 2217</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> SetCacheBlocks(<span class="keywordtype">bool</span> cache_blocks) WARN_UNUSED_RESULT;</div><div class="line"><a name="l02218"></a><span class="lineno"> 2218</span>&#160;</div><div class="line"><a name="l02225"></a><span class="lineno"> 2225</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> SetBatchSizeBytes(uint32_t batch_size) WARN_UNUSED_RESULT;</div><div class="line"><a name="l02226"></a><span class="lineno"> 2226</span>&#160;</div><div class="line"><a name="l02234"></a><span class="lineno"> 2234</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> SetSelection(<a class="code" href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11a">KuduClient::ReplicaSelection</a> selection)</div><div class="line"><a name="l02235"></a><span class="lineno"> 2235</span>&#160;    WARN_UNUSED_RESULT;</div><div class="line"><a name="l02236"></a><span class="lineno"> 2236</span>&#160;</div><div class="line"><a name="l02238"></a><span class="lineno"> 2238</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> SetReadMode(<a class="code" href="classkudu_1_1client_1_1KuduScanner.html#a36fdb59d6488618363331269d3f58348">KuduScanner::ReadMode</a> read_mode) WARN_UNUSED_RESULT;</div><div class="line"><a name="l02239"></a><span class="lineno"> 2239</span>&#160;</div><div class="line"><a name="l02241"></a><span class="lineno"> 2241</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> SetFaultTolerant() WARN_UNUSED_RESULT;</div><div class="line"><a name="l02242"></a><span class="lineno"> 2242</span>&#160;</div><div class="line"><a name="l02244"></a><span class="lineno"> 2244</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> SetSnapshotMicros(uint64_t snapshot_timestamp_micros)</div><div class="line"><a name="l02245"></a><span class="lineno"> 2245</span>&#160;    WARN_UNUSED_RESULT;</div><div class="line"><a name="l02246"></a><span class="lineno"> 2246</span>&#160;</div><div class="line"><a name="l02248"></a><span class="lineno"> 2248</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> SetSnapshotRaw(uint64_t snapshot_timestamp) WARN_UNUSED_RESULT;</div><div class="line"><a name="l02249"></a><span class="lineno"> 2249</span>&#160;</div><div class="line"><a name="l02251"></a><span class="lineno"> 2251</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> SetTimeoutMillis(<span class="keywordtype">int</span> millis) WARN_UNUSED_RESULT;</div><div class="line"><a name="l02252"></a><span class="lineno"> 2252</span>&#160;</div><div class="line"><a name="l02261"></a><span class="lineno"> 2261</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> Build(std::vector&lt;KuduScanToken*&gt;* tokens) WARN_UNUSED_RESULT;</div><div class="line"><a name="l02262"></a><span class="lineno"> 2262</span>&#160;</div><div class="line"><a name="l02263"></a><span class="lineno"> 2263</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l02264"></a><span class="lineno"> 2264</span>&#160;  <span class="keyword">class </span>KUDU_NO_EXPORT Data;</div><div class="line"><a name="l02265"></a><span class="lineno"> 2265</span>&#160;</div><div class="line"><a name="l02266"></a><span class="lineno"> 2266</span>&#160;  <span class="comment">// Owned.</span></div><div class="line"><a name="l02267"></a><span class="lineno"> 2267</span>&#160;  Data* data_;</div><div class="line"><a name="l02268"></a><span class="lineno"> 2268</span>&#160;</div><div class="line"><a name="l02269"></a><span class="lineno"> 2269</span>&#160;  DISALLOW_COPY_AND_ASSIGN(<a class="code" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html">KuduScanTokenBuilder</a>);</div><div class="line"><a name="l02270"></a><span class="lineno"> 2270</span>&#160;};</div><div class="line"><a name="l02271"></a><span class="lineno"> 2271</span>&#160;</div><div class="line"><a name="l02273"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduPartitionerBuilder.html"> 2273</a></span>&#160;<span class="keyword">class </span>KUDU_EXPORT <a class="code" href="classkudu_1_1client_1_1KuduPartitionerBuilder.html">KuduPartitionerBuilder</a> {</div><div class="line"><a name="l02274"></a><span class="lineno"> 2274</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l02279"></a><span class="lineno"> 2279</span>&#160;  <span class="keyword">explicit</span> <a class="code" href="classkudu_1_1client_1_1KuduPartitionerBuilder.html">KuduPartitionerBuilder</a>(sp::shared_ptr&lt;KuduTable&gt; table);</div><div class="line"><a name="l02280"></a><span class="lineno"> 2280</span>&#160;  ~<a class="code" href="classkudu_1_1client_1_1KuduPartitionerBuilder.html">KuduPartitionerBuilder</a>();</div><div class="line"><a name="l02281"></a><span class="lineno"> 2281</span>&#160;</div><div class="line"><a name="l02283"></a><span class="lineno"> 2283</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduPartitionerBuilder.html">KuduPartitionerBuilder</a>* SetBuildTimeout(<a class="code" href="classkudu_1_1MonoDelta.html">MonoDelta</a> timeout);</div><div class="line"><a name="l02284"></a><span class="lineno"> 2284</span>&#160;</div><div class="line"><a name="l02301"></a><span class="lineno"> 2301</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> Build(<a class="code" href="classkudu_1_1client_1_1KuduPartitioner.html">KuduPartitioner</a>** partitioner);</div><div class="line"><a name="l02302"></a><span class="lineno"> 2302</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l02303"></a><span class="lineno"> 2303</span>&#160;  <span class="keyword">class </span>KUDU_NO_EXPORT Data;</div><div class="line"><a name="l02304"></a><span class="lineno"> 2304</span>&#160;</div><div class="line"><a name="l02305"></a><span class="lineno"> 2305</span>&#160;  <span class="comment">// Owned.</span></div><div class="line"><a name="l02306"></a><span class="lineno"> 2306</span>&#160;  Data* data_;</div><div class="line"><a name="l02307"></a><span class="lineno"> 2307</span>&#160;</div><div class="line"><a name="l02308"></a><span class="lineno"> 2308</span>&#160;  DISALLOW_COPY_AND_ASSIGN(<a class="code" href="classkudu_1_1client_1_1KuduPartitionerBuilder.html">KuduPartitionerBuilder</a>);</div><div class="line"><a name="l02309"></a><span class="lineno"> 2309</span>&#160;};</div><div class="line"><a name="l02310"></a><span class="lineno"> 2310</span>&#160;</div><div class="line"><a name="l02321"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduPartitioner.html"> 2321</a></span>&#160;<span class="keyword">class </span>KUDU_EXPORT <a class="code" href="classkudu_1_1client_1_1KuduPartitioner.html">KuduPartitioner</a> {</div><div class="line"><a name="l02322"></a><span class="lineno"> 2322</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l02323"></a><span class="lineno"> 2323</span>&#160;  ~<a class="code" href="classkudu_1_1client_1_1KuduPartitioner.html">KuduPartitioner</a>();</div><div class="line"><a name="l02324"></a><span class="lineno"> 2324</span>&#160;</div><div class="line"><a name="l02328"></a><span class="lineno"> 2328</span>&#160;  <span class="keywordtype">int</span> NumPartitions() <span class="keyword">const</span>;</div><div class="line"><a name="l02329"></a><span class="lineno"> 2329</span>&#160;</div><div class="line"><a name="l02341"></a><span class="lineno"> 2341</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> PartitionRow(<span class="keyword">const</span> <a class="code" href="classKuduPartialRow.html">KuduPartialRow</a>&amp; row, <span class="keywordtype">int</span>* partition);</div><div class="line"><a name="l02342"></a><span class="lineno"> 2342</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l02343"></a><span class="lineno"> 2343</span>&#160;  <span class="keyword">class </span>KUDU_NO_EXPORT Data;</div><div class="line"><a name="l02344"></a><span class="lineno"> 2344</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classkudu_1_1client_1_1KuduPartitionerBuilder.html">KuduPartitionerBuilder</a>;</div><div class="line"><a name="l02345"></a><span class="lineno"> 2345</span>&#160;</div><div class="line"><a name="l02346"></a><span class="lineno"> 2346</span>&#160;  <span class="keyword">explicit</span> <a class="code" href="classkudu_1_1client_1_1KuduPartitioner.html">KuduPartitioner</a>(Data* data);</div><div class="line"><a name="l02347"></a><span class="lineno"> 2347</span>&#160;  Data* data_; <span class="comment">// Owned.</span></div><div class="line"><a name="l02348"></a><span class="lineno"> 2348</span>&#160;};</div><div class="line"><a name="l02349"></a><span class="lineno"> 2349</span>&#160;</div><div class="line"><a name="l02350"></a><span class="lineno"> 2350</span>&#160;</div><div class="line"><a name="l02351"></a><span class="lineno"> 2351</span>&#160;} <span class="comment">// namespace client</span></div><div class="line"><a name="l02352"></a><span class="lineno"> 2352</span>&#160;} <span class="comment">// namespace kudu</span></div><div class="line"><a name="l02353"></a><span class="lineno"> 2353</span>&#160;<span class="preprocessor">#endif</span></div><div class="ttc" id="classkudu_1_1client_1_1KuduUpdate_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduUpdate.html">kudu::client::KuduUpdate</a></div><div class="ttdoc">A single row update to be sent to the cluster. </div><div class="ttdef"><b>Definition:</b> write_op.h:184</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduSchema_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></div><div class="ttdoc">A representation of a table&amp;#39;s schema. </div><div class="ttdef"><b>Definition:</b> schema.h:423</div></div>
 <div class="ttc" id="classkudu_1_1Status_html"><div class="ttname"><a href="classkudu_1_1Status.html">kudu::Status</a></div><div class="ttdoc">A representation of an operation&amp;#39;s outcome. </div><div class="ttdef"><b>Definition:</b> status.h:130</div></div>
 <div class="ttc" id="classkudu_1_1client_1_1KuduValue_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduValue.html">kudu::client::KuduValue</a></div><div class="ttdoc">A constant cell value with a specific type. </div><div class="ttdef"><b>Definition:</b> value.h:33</div></div>
-<div class="ttc" id="classkudu_1_1client_1_1KuduSession_html_aabd55109ba3b086bbe33b277cdd40d22"><div class="ttname"><a href="classkudu_1_1client_1_1KuduSession.html#aabd55109ba3b086bbe33b277cdd40d22">kudu::client::KuduSession::ExternalConsistencyMode</a></div><div class="ttdeci">ExternalConsistencyMode</div><div class="ttdoc">The possible external consistency modes on which Kudu operates. </div><div class="ttdef"><b>Definition:</b> client.h:1335</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduPartitionerBuilder_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduPartitionerBuilder.html">kudu::client::KuduPartitionerBuilder</a></div><div class="ttdoc">Builder for Partitioner instances. </div><div class="ttdef"><b>Definition:</b> client.h:2273</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduSession_html_aabd55109ba3b086bbe33b277cdd40d22"><div class="ttname"><a href="classkudu_1_1client_1_1KuduSession.html#aabd55109ba3b086bbe33b277cdd40d22">kudu::client::KuduSession::ExternalConsistencyMode</a></div><div class="ttdeci">ExternalConsistencyMode</div><div class="ttdoc">The possible external consistency modes on which Kudu operates. </div><div class="ttdef"><b>Definition:</b> client.h:1348</div></div>
 <div class="ttc" id="namespacekudu_html"><div class="ttname"><a href="namespacekudu.html">kudu</a></div><div class="ttdef"><b>Definition:</b> callbacks.h:28</div></div>
-<div class="ttc" id="classkudu_1_1client_1_1KuduSession_html_aabd55109ba3b086bbe33b277cdd40d22ae978fab7451faebf4399830b603c855c"><div class="ttname"><a href="classkudu_1_1client_1_1KuduSession.html#aabd55109ba3b086bbe33b277cdd40d22ae978fab7451faebf4399830b603c855c">kudu::client::KuduSession::CLIENT_PROPAGATED</a></div><div class="ttdef"><b>Definition:</b> client.h:1354</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduSession_html_aabd55109ba3b086bbe33b277cdd40d22ae978fab7451faebf4399830b603c855c"><div class="ttname"><a href="classkudu_1_1client_1_1KuduSession.html#aabd55109ba3b086bbe33b277cdd40d22ae978fab7451faebf4399830b603c855c">kudu::client::KuduSession::CLIENT_PROPAGATED</a></div><div class="ttdef"><b>Definition:</b> client.h:1367</div></div>
 <div class="ttc" id="classkudu_1_1client_1_1KuduInsert_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduInsert.html">kudu::client::KuduInsert</a></div><div class="ttdoc">A single row insert to be sent to the cluster. </div><div class="ttdef"><b>Definition:</b> write_op.h:132</div></div>
-<div class="ttc" id="classkudu_1_1client_1_1KuduColumnSpec_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduColumnSpec.html">kudu::client::KuduColumnSpec</a></div><div class="ttdoc">Builder API for specifying or altering a column within a table schema. </div><div class="ttdef"><b>Definition:</b> schema.h:230</div></div>
-<div class="ttc" id="classkudu_1_1client_1_1KuduClient_html_a196f1a18c000cdca309d05161caaddaa"><div class="ttname"><a href="classkudu_1_1client_1_1KuduClient.html#a196f1a18c000cdca309d05161caaddaa">kudu::client::KuduClient::kNoTimestamp</a></div><div class="ttdeci">static const uint64_t kNoTimestamp</div><div class="ttdef"><b>Definition:</b> client.h:430</div></div>
-<div class="ttc" id="classkudu_1_1client_1_1KuduClient_html_aef70c7f3a596ecda4040f9d46514b11a"><div class="ttname"><a href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11a">kudu::client::KuduClient::ReplicaSelection</a></div><div class="ttdeci">ReplicaSelection</div><div class="ttdoc">Policy with which to choose amongst multiple replicas. </div><div class="ttdef"><b>Definition:</b> client.h:409</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduColumnSpec_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduColumnSpec.html">kudu::client::KuduColumnSpec</a></div><div class="ttdoc">Builder API for specifying or altering a column within a table schema. </div><div class="ttdef"><b>Definition:</b> schema.h:232</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduClient_html_a196f1a18c000cdca309d05161caaddaa"><div class="ttname"><a href="classkudu_1_1client_1_1KuduClient.html#a196f1a18c000cdca309d05161caaddaa">kudu::client::KuduClient::kNoTimestamp</a></div><div class="ttdeci">static const uint64_t kNoTimestamp</div><div class="ttdef"><b>Definition:</b> client.h:439</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduClient_html_aef70c7f3a596ecda4040f9d46514b11a"><div class="ttname"><a href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11a">kudu::client::KuduClient::ReplicaSelection</a></div><div class="ttdeci">ReplicaSelection</div><div class="ttdoc">Policy with which to choose amongst multiple replicas. </div><div class="ttdef"><b>Definition:</b> client.h:418</div></div>
 <div class="ttc" id="classkudu_1_1client_1_1KuduUpsert_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduUpsert.html">kudu::client::KuduUpsert</a></div><div class="ttdoc">A single row upsert to be sent to the cluster. </div><div class="ttdef"><b>Definition:</b> write_op.h:157</div></div>
-<div class="ttc" id="classkudu_1_1client_1_1KuduScanTokenBuilder_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduScanTokenBuilder.html">kudu::client::KuduScanTokenBuilder</a></div><div class="ttdoc">Builds scan tokens for a table. </div><div class="ttdef"><b>Definition:</b> client.h:2118</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduScanTokenBuilder_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduScanTokenBuilder.html">kudu::client::KuduScanTokenBuilder</a></div><div class="ttdoc">Builds scan tokens for a table. </div><div class="ttdef"><b>Definition:</b> client.h:2173</div></div>
 <div class="ttc" id="classkudu_1_1client_1_1KuduPredicate_html_ad58e80ced596d7738f99b5b83ba24eb4"><div class="ttname"><a href="classkudu_1_1client_1_1KuduPredicate.html#ad58e80ced596d7738f99b5b83ba24eb4">kudu::client::KuduPredicate::ComparisonOp</a></div><div class="ttdeci">ComparisonOp</div><div class="ttdoc">Supported comparison operators. </div><div class="ttdef"><b>Definition:</b> scan_predicate.h:39</div></div>
-<div class="ttc" id="classkudu_1_1client_1_1KuduTableAlterer_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduTableAlterer.html">kudu::client::KuduTableAlterer</a></div><div class="ttdoc">Alters an existing table based on the provided steps. </div><div class="ttdef"><b>Definition:</b> client.h:1005</div></div>
-<div class="ttc" id="classkudu_1_1client_1_1KuduScanner_html_a3d6c79325c9da9741d0accf1b43bf7f9"><div class="ttname"><a href="classkudu_1_1client_1_1KuduScanner.html#a3d6c79325c9da9741d0accf1b43bf7f9">kudu::client::KuduScanner::OrderMode</a></div><div class="ttdeci">OrderMode</div><div class="ttdef"><b>Definition:</b> client.h:1720</div></div>
-<div class="ttc" id="classkudu_1_1client_1_1KuduScanner_html_a3d6c79325c9da9741d0accf1b43bf7f9adfeea547de613f36a0aff9f585671ec3"><div class="ttname"><a href="classkudu_1_1client_1_1KuduScanner.html#a3d6c79325c9da9741d0accf1b43bf7f9adfeea547de613f36a0aff9f585671ec3">kudu::client::KuduScanner::UNORDERED</a></div><div class="ttdef"><b>Definition:</b> client.h:1726</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduTableAlterer_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduTableAlterer.html">kudu::client::KuduTableAlterer</a></div><div class="ttdoc">Alters an existing table based on the provided steps. </div><div class="ttdef"><b>Definition:</b> client.h:1018</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduScanner_html_a3d6c79325c9da9741d0accf1b43bf7f9"><div class="ttname"><a href="classkudu_1_1client_1_1KuduScanner.html#a3d6c79325c9da9741d0accf1b43bf7f9">kudu::client::KuduScanner::OrderMode</a></div><div class="ttdeci">OrderMode</div><div class="ttdef"><b>Definition:</b> client.h:1733</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduScanner_html_a3d6c79325c9da9741d0accf1b43bf7f9adfeea547de613f36a0aff9f585671ec3"><div class="ttname"><a href="classkudu_1_1client_1_1KuduScanner.html#a3d6c79325c9da9741d0accf1b43bf7f9adfeea547de613f36a0aff9f585671ec3">kudu::client::KuduScanner::UNORDERED</a></div><div class="ttdef"><b>Definition:</b> client.h:1739</div></div>
 <div class="ttc" id="shared__ptr_8h_html"><div class="ttname"><a href="shared__ptr_8h.html">shared_ptr.h</a></div><div class="ttdoc">Smart pointer typedefs for externally-faced code. </div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduPartitioner_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduPartitioner.html">kudu::client::KuduPartitioner</a></div><div class="ttdef"><b>Definition:</b> client.h:2321</div></div>
 <div class="ttc" id="classkudu_1_1client_1_1KuduPredicate_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduPredicate.html">kudu::client::KuduPredicate</a></div><div class="ttdoc">A representation of comparison predicate for Kudu queries. </div><div class="ttdef"><b>Definition:</b> scan_predicate.h:36</div></div>
-<div class="ttc" id="classkudu_1_1client_1_1KuduTableCreator_html_a0a63fdc58e8062e505f4fa71d6f2343baa117961e0003fd28663861833d23e601"><div class="ttname"><a href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343baa117961e0003fd28663861833d23e601">kudu::client::KuduTableCreator::EXCLUSIVE_BOUND</a></div><div class="ttdoc">An exclusive bound. </div><div class="ttdef"><b>Definition:</b> client.h:716</div></div>
-<div class="ttc" id="classkudu_1_1client_1_1KuduError_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduError.html">kudu::client::KuduError</a></div><div class="ttdoc">This class represents an error which occurred in a write operation. </div><div class="ttdef"><b>Definition:</b> client.h:1164</div></div>
-<div class="ttc" id="classkudu_1_1client_1_1KuduClient_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></div><div class="ttdoc">A handle for a connection to a cluster. </div><div class="ttdef"><b>Definition:</b> client.h:283</div></div>
-<div class="ttc" id="classkudu_1_1client_1_1KuduTableCreator_html_a0a63fdc58e8062e505f4fa71d6f2343ba0f4899cc63fba167455e05b525f0b950"><div class="ttname"><a href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343ba0f4899cc63fba167455e05b525f0b950">kudu::client::KuduTableCreator::INCLUSIVE_BOUND</a></div><div class="ttdoc">An inclusive bound. </div><div class="ttdef"><b>Definition:</b> client.h:717</div></div>
-<div class="ttc" id="classkudu_1_1client_1_1KuduTabletServer_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduTabletServer.html">kudu::client::KuduTabletServer</a></div><div class="ttdoc">In-memory representation of a remote tablet server. </div><div class="ttdef"><b>Definition:</b> client.h:544</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduTableCreator_html_a0a63fdc58e8062e505f4fa71d6f2343baa117961e0003fd28663861833d23e601"><div class="ttname"><a href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343baa117961e0003fd28663861833d23e601">kudu::client::KuduTableCreator::EXCLUSIVE_BOUND</a></div><div class="ttdoc">An exclusive bound. </div><div class="ttdef"><b>Definition:</b> client.h:728</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduError_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduError.html">kudu::client::KuduError</a></div><div class="ttdoc">This class represents an error which occurred in a write operation. </div><div class="ttdef"><b>Definition:</b> client.h:1177</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduClient_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></div><div class="ttdoc">A handle for a connection to a cluster. </div><div class="ttdef"><b>Definition:</b> client.h:289</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduTableCreator_html_a0a63fdc58e8062e505f4fa71d6f2343ba0f4899cc63fba167455e05b525f0b950"><div class="ttname"><a href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343ba0f4899cc63fba167455e05b525f0b950">kudu::client::KuduTableCreator::INCLUSIVE_BOUND</a></div><div class="ttdoc">An inclusive bound. </div><div class="ttdef"><b>Definition:</b> client.h:729</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduTabletServer_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduTabletServer.html">kudu::client::KuduTabletServer</a></div><div class="ttdoc">In-memory representation of a remote tablet server. </div><div class="ttdef"><b>Definition:</b> client.h:556</div></div>
 <div class="ttc" id="classkudu_1_1client_1_1KuduStatusCallback_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduStatusCallback.html">kudu::client::KuduStatusCallback</a></div><div class="ttdoc">The interface for all status callbacks. </div><div class="ttdef"><b>Definition:</b> callbacks.h:161</div></div>
 <div class="ttc" id="classkudu_1_1Slice_html"><div class="ttname"><a href="classkudu_1_1Slice.html">kudu::Slice</a></div><div class="ttdoc">A wrapper around externally allocated data. </div><div class="ttdef"><b>Definition:</b> slice.h:43</div></div>
-<div class="ttc" id="classkudu_1_1client_1_1KuduTable_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a></div><div class="ttdoc">A representation of a table on a particular cluster. </div><div class="ttdef"><b>Definition:</b> client.h:850</div></div>
-<div class="ttc" id="classkudu_1_1client_1_1KuduScanner_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></div><div class="ttdoc">This class is a representation of a single scan. </div><div class="ttdef"><b>Definition:</b> client.h:1682</div></div>
-<div class="ttc" id="classkudu_1_1client_1_1KuduScanner_html_a36fdb59d6488618363331269d3f58348"><div class="ttname"><a href="classkudu_1_1client_1_1KuduScanner.html#a36fdb59d6488618363331269d3f58348">kudu::client::KuduScanner::ReadMode</a></div><div class="ttdeci">ReadMode</div><div class="ttdoc">The read modes for scanners. </div><div class="ttdef"><b>Definition:</b> client.h:1685</div></div>
-<div class="ttc" id="classkudu_1_1client_1_1KuduSession_html_aaec3956e642610d703f3b83b78e24e19a520b8eef7ef0fd149b2757faf43972b1"><div class="ttname"><a href="classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19a520b8eef7ef0fd149b2757faf43972b1">kudu::client::KuduSession::AUTO_FLUSH_BACKGROUND</a></div><div class="ttdef"><b>Definition:</b> client.h:1307</div></div>
-<div class="ttc" id="classkudu_1_1client_1_1KuduScanner_html_a36fdb59d6488618363331269d3f58348a8694cef688d819806fa9a85b002231a8"><div class="ttname"><a href="classkudu_1_1client_1_1KuduScanner.html#a36fdb59d6488618363331269d3f58348a8694cef688d819806fa9a85b002231a8">kudu::client::KuduScanner::READ_LATEST</a></div><div class="ttdef"><b>Definition:</b> client.h:1693</div></div>
-<div class="ttc" id="classkudu_1_1client_1_1KuduClientBuilder_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduClientBuilder.html">kudu::client::KuduClientBuilder</a></div><div class="ttdoc">A &quot;factory&quot; for KuduClient objects. </div><div class="ttdef"><b>Definition:</b> client.h:181</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduTable_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a></div><div class="ttdoc">A representation of a table on a particular cluster. </div><div class="ttdef"><b>Definition:</b> client.h:862</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduScanner_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></div><div class="ttdoc">This class is a representation of a single scan. </div><div class="ttdef"><b>Definition:</b> client.h:1695</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduScanner_html_a36fdb59d6488618363331269d3f58348"><div class="ttname"><a href="classkudu_1_1client_1_1KuduScanner.html#a36fdb59d6488618363331269d3f58348">kudu::client::KuduScanner::ReadMode</a></div><div class="ttdeci">ReadMode</div><div class="ttdoc">The read modes for scanners. </div><div class="ttdef"><b>Definition:</b> client.h:1698</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduSession_html_aaec3956e642610d703f3b83b78e24e19a520b8eef7ef0fd149b2757faf43972b1"><div class="ttname"><a href="classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19a520b8eef7ef0fd149b2757faf43972b1">kudu::client::KuduSession::AUTO_FLUSH_BACKGROUND</a></div><div class="ttdef"><b>Definition:</b> client.h:1320</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduScanner_html_a36fdb59d6488618363331269d3f58348a8694cef688d819806fa9a85b002231a8"><div class="ttname"><a href="classkudu_1_1client_1_1KuduScanner.html#a36fdb59d6488618363331269d3f58348a8694cef688d819806fa9a85b002231a8">kudu::client::KuduScanner::READ_LATEST</a></div><div class="ttdef"><b>Definition:</b> client.h:1706</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduClientBuilder_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduClientBuilder.html">kudu::client::KuduClientBuilder</a></div><div class="ttdoc">A &quot;factory&quot; for KuduClient objects. </div><div class="ttdef"><b>Definition:</b> client.h:187</div></div>
 <div class="ttc" id="classkudu_1_1client_1_1KuduWriteOperation_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a></div><div class="ttdoc">A single-row write operation to be sent to a Kudu table. </div><div class="ttdef"><b>Definition:</b> write_op.h:56</div></div>
-<div class="ttc" id="classkudu_1_1client_1_1KuduClient_html_aef70c7f3a596ecda4040f9d46514b11aafb912836db348061379d0e0a9055e239"><div class="ttname"><a href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11aafb912836db348061379d0e0a9055e239">kudu::client::KuduClient::LEADER_ONLY</a></div><div class="ttdoc">Select the LEADER replica. </div><div class="ttdef"><b>Definition:</b> client.h:410</div></div>
-<div class="ttc" id="classkudu_1_1client_1_1KuduTableCreator_html_a0a63fdc58e8062e505f4fa71d6f2343b"><div class="ttname"><a href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343b">kudu::client::KuduTableCreator::RangePartitionBound</a></div><div class="ttdeci">RangePartitionBound</div><div class="ttdoc">Range partition bound type. </div><div class="ttdef"><b>Definition:</b> client.h:715</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduClient_html_aef70c7f3a596ecda4040f9d46514b11aafb912836db348061379d0e0a9055e239"><div class="ttname"><a href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11aafb912836db348061379d0e0a9055e239">kudu::client::KuduClient::LEADER_ONLY</a></div><div class="ttdoc">Select the LEADER replica. </div><div class="ttdef"><b>Definition:</b> client.h:419</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduTableCreator_html_a0a63fdc58e8062e505f4fa71d6f2343b"><div class="ttname"><a href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343b">kudu::client::KuduTableCreator::RangePartitionBound</a></div><div class="ttdeci">RangePartitionBound</div><div class="ttdoc">Range partition bound type. </div><div class="ttdef"><b>Definition:</b> client.h:727</div></div>
 <div class="ttc" id="status_8h_html"><div class="ttname"><a href="status_8h.html">status.h</a></div></div>
-<div class="ttc" id="classkudu_1_1client_1_1KuduTablet_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduTablet.html">kudu::client::KuduTablet</a></div><div class="ttdoc">In-memory representation of a remote tablet. </div><div class="ttdef"><b>Definition:</b> client.h:604</div></div>
-<div class="ttc" id="classkudu_1_1client_1_1KuduReplica_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduReplica.html">kudu::client::KuduReplica</a></div><div class="ttdoc">In-memory representation of a remote tablet&amp;#39;s replica. </div><div class="ttdef"><b>Definition:</b> client.h:576</div></div>
-<div class="ttc" id="classkudu_1_1client_1_1KuduSession_html_aaec3956e642610d703f3b83b78e24e19"><div class="ttname"><a href="classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19">kudu::client::KuduSession::FlushMode</a></div><div class="ttdeci">FlushMode</div><div class="ttdoc">Modes of flush operations. </div><div class="ttdef"><b>Definition:</b> client.h:1274</div></div>
-<div class="ttc" id="classkudu_1_1client_1_1KuduScanToken_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduScanToken.html">kudu::client::KuduScanToken</a></div><div class="ttdoc">A scan descriptor limited to a single physical contiguous location. </div><div class="ttdef"><b>Definition:</b> client.h:2058</div></div>
-<div class="ttc" id="classkudu_1_1client_1_1KuduSession_html_aaec3956e642610d703f3b83b78e24e19ad74b76e407e62ca951d369521636df2b"><div class="ttname"><a href="classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19ad74b76e407e62ca951d369521636df2b">kudu::client::KuduSession::AUTO_FLUSH_SYNC</a></div><div class="ttdef"><b>Definition:</b> client.h:1279</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduTablet_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduTablet.html">kudu::client::KuduTablet</a></div><div class="ttdoc">In-memory representation of a remote tablet. </div><div class="ttdef"><b>Definition:</b> client.h:616</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduReplica_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduReplica.html">kudu::client::KuduReplica</a></div><div class="ttdoc">In-memory representation of a remote tablet&amp;#39;s replica. </div><div class="ttdef"><b>Definition:</b> client.h:588</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduSession_html_aaec3956e642610d703f3b83b78e24e19"><div class="ttname"><a href="classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19">kudu::client::KuduSession::FlushMode</a></div><div class="ttdeci">FlushMode</div><div class="ttdoc">Modes of flush operations. </div><div class="ttdef"><b>Definition:</b> client.h:1287</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduScanToken_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduScanToken.html">kudu::client::KuduScanToken</a></div><div class="ttdoc">A scan descriptor limited to a single physical contiguous location. </div><div class="ttdef"><b>Definition:</b> client.h:2113</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduSession_html_aaec3956e642610d703f3b83b78e24e19ad74b76e407e62ca951d369521636df2b"><div class="ttname"><a href="classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19ad74b76e407e62ca951d369521636df2b">kudu::client::KuduSession::AUTO_FLUSH_SYNC</a></div><div class="ttdef"><b>Definition:</b> client.h:1292</div></div>
 <div class="ttc" id="classkudu_1_1client_1_1KuduDelete_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduDelete.html">kudu::client::KuduDelete</a></div><div class="ttdoc">A single row delete to be sent to the cluster. </div><div class="ttdef"><b>Definition:</b> write_op.h:211</div></div>
 <div class="ttc" id="classkudu_1_1client_1_1ResourceMetrics_html"><div class="ttname"><a href="classkudu_1_1client_1_1ResourceMetrics.html">kudu::client::ResourceMetrics</a></div><div class="ttdoc">A generic catalog of simple metrics. </div><div class="ttdef"><b>Definition:</b> resource_metrics.h:30</div></div>
-<div class="ttc" id="classkudu_1_1client_1_1KuduTableCreator_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduTableCreator.html">kudu::client::KuduTableCreator</a></div><div class="ttdoc">A helper class to create a new table with the desired options. </div><div class="ttdef"><b>Definition:</b> client.h:634</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduTableCreator_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduTableCreator.html">kudu::client::KuduTableCreator</a></div><div class="ttdoc">A helper class to create a new table with the desired options. </div><div class="ttdef"><b>Definition:</b> client.h:646</div></div>
 <div class="ttc" id="classKuduPartialRow_html"><div class="ttname"><a href="classKuduPartialRow.html">KuduPartialRow</a></div><div class="ttdoc">A row which may only contain values for a subset of the columns. </div><div class="ttdef"><b>Definition:</b> partial_row.h:61</div></div>
-<div class="ttc" id="classkudu_1_1client_1_1KuduSession_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduSession.html">kudu::client::KuduSession</a></div><div class="ttdoc">Representation of a Kudu client session. </div><div class="ttdef"><b>Definition:</b> client.h:1269</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduSession_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduSession.html">kudu::client::KuduSession</a></div><div class="ttdoc">Representation of a Kudu client session. </div><div class="ttdef"><b>Definition:</b> client.h:1282</div></div>
 <div class="ttc" id="classkudu_1_1client_1_1KuduScanBatch_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></div><div class="ttdoc">A batch of zero or more rows returned by a scan operation. </div><div class="ttdef"><b>Definition:</b> scan_batch.h:75</div></div>
 <div class="ttc" id="classkudu_1_1MonoDelta_html"><div class="ttname"><a href="classkudu_1_1MonoDelta.html">kudu::MonoDelta</a></div><div class="ttdoc">A representation of a time interval. </div><div class="ttdef"><b>Definition:</b> monotime.h:43</div></div>
 </div><!-- fragment --></div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:02 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/deprecated.html b/cpp-client-api/deprecated.html
index 9f3c624..0bdd6cd 100644
--- a/cpp-client-api/deprecated.html
+++ b/cpp-client-api/deprecated.html
@@ -107,7 +107,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:02 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/dir_000002_000004.html b/cpp-client-api/dir_000002_000004.html
index 0b4202a..ce0ed1a 100644
--- a/cpp-client-api/dir_000002_000004.html
+++ b/cpp-client-api/dir_000002_000004.html
@@ -83,7 +83,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/dir_4eb331d85bb84eae27db9d0af49f6f99.html b/cpp-client-api/dir_4eb331d85bb84eae27db9d0af49f6f99.html
index e3f4c43..46cbe20 100644
--- a/cpp-client-api/dir_4eb331d85bb84eae27db9d0af49f6f99.html
+++ b/cpp-client-api/dir_4eb331d85bb84eae27db9d0af49f6f99.html
@@ -111,7 +111,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/dir_58b01e52e53886b8d78ab5060a2cd2bd.html b/cpp-client-api/dir_58b01e52e53886b8d78ab5060a2cd2bd.html
index 081fefc..81bc187 100644
--- a/cpp-client-api/dir_58b01e52e53886b8d78ab5060a2cd2bd.html
+++ b/cpp-client-api/dir_58b01e52e53886b8d78ab5060a2cd2bd.html
@@ -110,7 +110,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/dir_a7d8e458a72ff63c89f2ceb44d9dd2f6.html b/cpp-client-api/dir_a7d8e458a72ff63c89f2ceb44d9dd2f6.html
index e3496bc..8d0c19f 100644
--- a/cpp-client-api/dir_a7d8e458a72ff63c89f2ceb44d9dd2f6.html
+++ b/cpp-client-api/dir_a7d8e458a72ff63c89f2ceb44d9dd2f6.html
@@ -97,7 +97,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/dir_d44c64559bbebec7f509842c48db8b23.html b/cpp-client-api/dir_d44c64559bbebec7f509842c48db8b23.html
index 02131d6..742cea4 100644
--- a/cpp-client-api/dir_d44c64559bbebec7f509842c48db8b23.html
+++ b/cpp-client-api/dir_d44c64559bbebec7f509842c48db8b23.html
@@ -106,7 +106,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/dir_e8a2e446cf73a5a1ae0ad6a5a21b6d03.html b/cpp-client-api/dir_e8a2e446cf73a5a1ae0ad6a5a21b6d03.html
index 3d47e8c..30c923e 100644
--- a/cpp-client-api/dir_e8a2e446cf73a5a1ae0ad6a5a21b6d03.html
+++ b/cpp-client-api/dir_e8a2e446cf73a5a1ae0ad6a5a21b6d03.html
@@ -99,7 +99,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/files.html b/cpp-client-api/files.html
index 931470c..f61cf97 100644
--- a/cpp-client-api/files.html
+++ b/cpp-client-api/files.html
@@ -114,7 +114,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:57 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/functions.html b/cpp-client-api/functions.html
index 2acd17d..b83a66f 100644
--- a/cpp-client-api/functions.html
+++ b/cpp-client-api/functions.html
@@ -193,7 +193,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:57 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/functions_b.html b/cpp-client-api/functions_b.html
index 164101f..798fc54 100644
--- a/cpp-client-api/functions_b.html
+++ b/cpp-client-api/functions_b.html
@@ -130,6 +130,7 @@
 </li>
 <li>Build()
 : <a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html#a1585dd6eff82519fe81088d1cfd35b77">kudu::client::KuduClientBuilder</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduPartitionerBuilder.html#aa8859050484de2d367781ce6ec41d0ba">kudu::client::KuduPartitionerBuilder</a>
 , <a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#acbc00b42db998f3342fa0ca7ab55dfdb">kudu::client::KuduScanTokenBuilder</a>
 , <a class="el" href="classkudu_1_1client_1_1KuduSchemaBuilder.html#af117e347a7d0910dda2695997859db15">kudu::client::KuduSchemaBuilder</a>
 </li>
@@ -138,7 +139,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:57 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/functions_c.html b/cpp-client-api/functions_c.html
index 2d23265..c433647 100644
--- a/cpp-client-api/functions_c.html
+++ b/cpp-client-api/functions_c.html
@@ -208,7 +208,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:57 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/functions_d.html b/cpp-client-api/functions_d.html
index 7e42b11..ac1cc40 100644
--- a/cpp-client-api/functions_d.html
+++ b/cpp-client-api/functions_d.html
@@ -151,6 +151,9 @@
 <li>DeserializeIntoScanner()
 : <a class="el" href="classkudu_1_1client_1_1KuduScanToken.html#ae90d9422476cf6eee5c33afb41d1f867">kudu::client::KuduScanToken</a>
 </li>
+<li>direct_data()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#a1073a0c6517b126690d99527556dba51">kudu::client::KuduScanBatch</a>
+</li>
 <li>DropColumn()
 : <a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html#ac5a4ec376ec53ba912b85ea0057d10a7">kudu::client::KuduTableAlterer</a>
 </li>
@@ -162,7 +165,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:57 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/functions_e.html b/cpp-client-api/functions_e.html
index 5e126ce..369d252 100644
--- a/cpp-client-api/functions_e.html
+++ b/cpp-client-api/functions_e.html
@@ -163,7 +163,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:57 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/functions_enum.html b/cpp-client-api/functions_enum.html
index ddff35d..203ff33 100644
--- a/cpp-client-api/functions_enum.html
+++ b/cpp-client-api/functions_enum.html
@@ -133,7 +133,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:57 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/functions_eval.html b/cpp-client-api/functions_eval.html
index 39356f8..ab0fbb7 100644
--- a/cpp-client-api/functions_eval.html
+++ b/cpp-client-api/functions_eval.html
@@ -148,7 +148,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:57 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/functions_f.html b/cpp-client-api/functions_f.html
index 123bcb5..1d01d8c 100644
--- a/cpp-client-api/functions_f.html
+++ b/cpp-client-api/functions_f.html
@@ -146,7 +146,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:57 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/functions_func.html b/cpp-client-api/functions_func.html
index c9e37c3..b8f0852 100644
--- a/cpp-client-api/functions_func.html
+++ b/cpp-client-api/functions_func.html
@@ -186,7 +186,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:57 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/functions_func_b.html b/cpp-client-api/functions_func_b.html
index 8bc1e44..fa59734 100644
--- a/cpp-client-api/functions_func_b.html
+++ b/cpp-client-api/functions_func_b.html
@@ -129,6 +129,7 @@
 </li>
 <li>Build()
 : <a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html#a1585dd6eff82519fe81088d1cfd35b77">kudu::client::KuduClientBuilder</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduPartitionerBuilder.html#aa8859050484de2d367781ce6ec41d0ba">kudu::client::KuduPartitionerBuilder</a>
 , <a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#acbc00b42db998f3342fa0ca7ab55dfdb">kudu::client::KuduScanTokenBuilder</a>
 , <a class="el" href="classkudu_1_1client_1_1KuduSchemaBuilder.html#af117e347a7d0910dda2695997859db15">kudu::client::KuduSchemaBuilder</a>
 </li>
@@ -137,7 +138,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:57 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/functions_func_c.html b/cpp-client-api/functions_func_c.html
index 929444d..494a19e 100644
--- a/cpp-client-api/functions_func_c.html
+++ b/cpp-client-api/functions_func_c.html
@@ -192,7 +192,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:57 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/functions_func_d.html b/cpp-client-api/functions_func_d.html
index 07578a5..d18e2c6 100644
--- a/cpp-client-api/functions_func_d.html
+++ b/cpp-client-api/functions_func_d.html
@@ -144,6 +144,9 @@
 <li>DeserializeIntoScanner()
 : <a class="el" href="classkudu_1_1client_1_1KuduScanToken.html#ae90d9422476cf6eee5c33afb41d1f867">kudu::client::KuduScanToken</a>
 </li>
+<li>direct_data()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#a1073a0c6517b126690d99527556dba51">kudu::client::KuduScanBatch</a>
+</li>
 <li>DropColumn()
 : <a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html#ac5a4ec376ec53ba912b85ea0057d10a7">kudu::client::KuduTableAlterer</a>
 </li>
@@ -155,7 +158,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:57 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/functions_func_e.html b/cpp-client-api/functions_func_e.html
index 5843ed3..c40e554 100644
--- a/cpp-client-api/functions_func_e.html
+++ b/cpp-client-api/functions_func_e.html
@@ -153,7 +153,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:57 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/functions_func_f.html b/cpp-client-api/functions_func_f.html
index bfcfc44..97c3dc2 100644
--- a/cpp-client-api/functions_func_f.html
+++ b/cpp-client-api/functions_func_f.html
@@ -135,7 +135,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:57 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/functions_func_g.html b/cpp-client-api/functions_func_g.html
index adb2790..76773a2 100644
--- a/cpp-client-api/functions_func_g.html
+++ b/cpp-client-api/functions_func_g.html
@@ -156,7 +156,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:57 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/functions_func_h.html b/cpp-client-api/functions_func_h.html
index 33bff07..e757f88 100644
--- a/cpp-client-api/functions_func_h.html
+++ b/cpp-client-api/functions_func_h.html
@@ -135,7 +135,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:57 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/functions_func_i.html b/cpp-client-api/functions_func_i.html
index 4553ddd..d1559cb 100644
--- a/cpp-client-api/functions_func_i.html
+++ b/cpp-client-api/functions_func_i.html
@@ -131,6 +131,9 @@
 <li>Increment()
 : <a class="el" href="classkudu_1_1client_1_1ResourceMetrics.html#ae7b5f6021f63c25bbd087ba2cf48dc8a">kudu::client::ResourceMetrics</a>
 </li>
+<li>indirect_data()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#af41b26a5f137122454d6341a5b5c1a43">kudu::client::KuduScanBatch</a>
+</li>
 <li>Initialized()
 : <a class="el" href="classkudu_1_1MonoDelta.html#aad3a0f1a1fc2e504ff137e55cfe068a3">kudu::MonoDelta</a>
 , <a class="el" href="classkudu_1_1MonoTime.html#a4ba08bf71a2496672338522952301926">kudu::MonoTime</a>
@@ -199,7 +202,7 @@
 : <a class="el" href="classkudu_1_1Status.html#a2b1672aba7ec84133cd086186b27821b">kudu::Status</a>
 </li>
 <li>IsNull()
-: <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#af37f56c4ef55f2e140fcea2a07340054">kudu::client::KuduScanBatch</a>
+: <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#a1b0b04656fec608919b7b6ac7c99451e">kudu::client::KuduScanBatch</a>
 , <a class="el" href="classKuduPartialRow.html#acaff842dad3af9546b2ed936613e59ab">KuduPartialRow</a>
 </li>
 <li>IsRemoteError()
@@ -222,7 +225,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:57 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/functions_func_k.html b/cpp-client-api/functions_func_k.html
index ca4e78c..28ae0c7 100644
--- a/cpp-client-api/functions_func_k.html
+++ b/cpp-client-api/functions_func_k.html
@@ -139,6 +139,9 @@
 <li>KuduPartialRow()
 : <a class="el" href="classKuduPartialRow.html#ab4ebb399982edbb3e877e38a74c700f1">KuduPartialRow</a>
 </li>
+<li>KuduPartitionerBuilder()
+: <a class="el" href="classkudu_1_1client_1_1KuduPartitionerBuilder.html#a27d130235be1c2691779e1d97732a4ba">kudu::client::KuduPartitionerBuilder</a>
+</li>
 <li>KuduScanner()
 : <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a2c621f778072a02f4092e96a0baf8180">kudu::client::KuduScanner</a>
 </li>
@@ -159,7 +162,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:57 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/functions_func_l.html b/cpp-client-api/functions_func_l.html
index 44de73c..317a6f4 100644
--- a/cpp-client-api/functions_func_l.html
+++ b/cpp-client-api/functions_func_l.html
@@ -135,7 +135,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:57 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/functions_func_m.html b/cpp-client-api/functions_func_m.html
index 9156cf8..d37c075 100644
--- a/cpp-client-api/functions_func_m.html
+++ b/cpp-client-api/functions_func_m.html
@@ -159,7 +159,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:57 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/functions_func_n.html b/cpp-client-api/functions_func_n.html
index 87ae71c..7254184 100644
--- a/cpp-client-api/functions_func_n.html
+++ b/cpp-client-api/functions_func_n.html
@@ -164,7 +164,7 @@
 : <a class="el" href="classkudu_1_1client_1_1KuduTable.html#a19e92dbaeeff86c5d707b15b2a7051fc">kudu::client::KuduTable</a>
 </li>
 <li>NextBatch()
-: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#af1475d9a0667839c1ed9c3714b47d487">kudu::client::KuduScanner</a>
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#af365f1d3b3b34aeb7d016727a9019067">kudu::client::KuduScanner</a>
 </li>
 <li>NotNull()
 : <a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html#af8c64c5a8a7a93ec644d481f23d91cca">kudu::client::KuduColumnSpec</a>
@@ -182,6 +182,9 @@
 : <a class="el" href="classkudu_1_1client_1_1KuduTable.html#a147bdffbd798161916471b721d63128f">kudu::client::KuduTable</a>
 , <a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a9dd4673755ba242eab3f06b19182d139">kudu::client::KuduTableCreator</a>
 </li>
+<li>NumPartitions()
+: <a class="el" href="classkudu_1_1client_1_1KuduPartitioner.html#af692612faaccb259bf3d15f2bf5b246d">kudu::client::KuduPartitioner</a>
+</li>
 <li>NumRows()
 : <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#a16e45694c5932eb3decc2184c3834157">kudu::client::KuduScanBatch</a>
 </li>
@@ -190,7 +193,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:57 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/functions_func_o.html b/cpp-client-api/functions_func_o.html
index f497b12..49c9102 100644
--- a/cpp-client-api/functions_func_o.html
+++ b/cpp-client-api/functions_func_o.html
@@ -121,12 +121,12 @@
 &#160;
 
 <h3><a class="anchor" id="index_o"></a>- o -</h3><ul>
-<li>ok()
-: <a class="el" href="classkudu_1_1Status.html#abf6454dcb72bfa92189a0595b5a858a7">kudu::Status</a>
-</li>
 <li>OK()
 : <a class="el" href="classkudu_1_1Status.html#adaff3248b2f66041d0a7dd59f118b7ac">kudu::Status</a>
 </li>
+<li>ok()
+: <a class="el" href="classkudu_1_1Status.html#abf6454dcb72bfa92189a0595b5a858a7">kudu::Status</a>
+</li>
 <li>Open()
 : <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#aa1ff3c11d9ac9f8183189ea5ac1ed9f1">kudu::client::KuduScanner</a>
 </li>
@@ -154,7 +154,7 @@
 </li>
 <li>operator=()
 : <a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html#a4b58da787c8e7dc14987aa74a54f199e">kudu::client::KuduColumnSchema</a>
-, <a class="el" href="classkudu_1_1Status.html#ae63eecd6e48fa007b2334b6459972c39">kudu::Status</a>
+, <a class="el" href="classkudu_1_1Status.html#aa387797d8a80892563d56244a2351a88">kudu::Status</a>
 , <a class="el" href="classKuduPartialRow.html#a03cab3e1aa0bef19c14f94181934181f">KuduPartialRow</a>
 </li>
 <li>operator==()
@@ -168,7 +168,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:57 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/functions_func_p.html b/cpp-client-api/functions_func_p.html
index b51f4cb..675296f 100644
--- a/cpp-client-api/functions_func_p.html
+++ b/cpp-client-api/functions_func_p.html
@@ -124,6 +124,9 @@
 <li>partition_schema()
 : <a class="el" href="classkudu_1_1client_1_1KuduTable.html#af1125879ce34fa6c994a70fe1803a808">kudu::client::KuduTable</a>
 </li>
+<li>PartitionRow()
+: <a class="el" href="classkudu_1_1client_1_1KuduPartitioner.html#a05d816ba08d85d5c0c95025e12d2e369">kudu::client::KuduPartitioner</a>
+</li>
 <li>port()
 : <a class="el" href="classkudu_1_1client_1_1KuduTabletServer.html#ab4715d71c64dad1059698f2bb9ef192d">kudu::client::KuduTabletServer</a>
 </li>
@@ -138,7 +141,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:57 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/functions_func_r.html b/cpp-client-api/functions_func_r.html
index 5bc782d..50b8de5 100644
--- a/cpp-client-api/functions_func_r.html
+++ b/cpp-client-api/functions_func_r.html
@@ -162,7 +162,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:57 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/functions_func_s.html b/cpp-client-api/functions_func_s.html
index e453cc3..d47f52b 100644
--- a/cpp-client-api/functions_func_s.html
+++ b/cpp-client-api/functions_func_s.html
@@ -136,6 +136,9 @@
 : <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#af82c4ccb442c222033841dd65cf5a67c">kudu::client::KuduScanner</a>
 , <a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#a36523ca7f2f9a2b4e3c096cf6167643c">kudu::client::KuduScanTokenBuilder</a>
 </li>
+<li>SetBuildTimeout()
+: <a class="el" href="classkudu_1_1client_1_1KuduPartitionerBuilder.html#a11e28b7ad87a53a92d2ad5494f2c5f14">kudu::client::KuduPartitionerBuilder</a>
+</li>
 <li>SetCacheBlocks()
 : <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a4a4a2e354b3113561758b9bf4095d310">kudu::client::KuduScanner</a>
 , <a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#a7ab7c9c1c4f4d3bbbc18b2b35d7d5475">kudu::client::KuduScanTokenBuilder</a>
@@ -192,6 +195,9 @@
 : <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a248e0a05e7bfdc31b5b8d363a937e81e">kudu::client::KuduScanner</a>
 , <a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#adb34f01a9bc52a9e23ce49124bab3892">kudu::client::KuduScanTokenBuilder</a>
 </li>
+<li>SetRowFormatFlags()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a3dbaf4c2db6a37517a242dcb8ee64c11">kudu::client::KuduScanner</a>
+</li>
 <li>SetSelection()
 : <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#af1db3f372fe3d0f30cd0b6a36b783cc8">kudu::client::KuduScanner</a>
 , <a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#a168bfed43dcd754a17d4c82293dade88">kudu::client::KuduScanTokenBuilder</a>
@@ -213,7 +219,7 @@
 : <a class="el" href="classkudu_1_1Slice.html#a141b4a1fc0555d57f192e574e427c146">kudu::Slice</a>
 </li>
 <li>Slice()
-: <a class="el" href="classkudu_1_1Slice.html#a904b8732b247676c52cbd9147b34c54c">kudu::Slice</a>
+: <a class="el" href="classkudu_1_1Slice.html#aaee66c59ee434349680679bdf0462b66">kudu::Slice</a>
 </li>
 <li>split_rows()
 : <a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#ae12cc7c72da40f25b079273a6169faf9">kudu::client::KuduTableCreator</a>
@@ -232,7 +238,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:57 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/functions_func_t.html b/cpp-client-api/functions_func_t.html
index 7c2eff3..2ec9cd7 100644
--- a/cpp-client-api/functions_func_t.html
+++ b/cpp-client-api/functions_func_t.html
@@ -178,7 +178,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:57 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/functions_func_u.html b/cpp-client-api/functions_func_u.html
index 91998f2..f03794a 100644
--- a/cpp-client-api/functions_func_u.html
+++ b/cpp-client-api/functions_func_u.html
@@ -132,7 +132,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:57 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/functions_func_w.html b/cpp-client-api/functions_func_w.html
index 1eebad0..6102236 100644
--- a/cpp-client-api/functions_func_w.html
+++ b/cpp-client-api/functions_func_w.html
@@ -133,7 +133,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:57 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/functions_g.html b/cpp-client-api/functions_g.html
index f850282..65416ff 100644
--- a/cpp-client-api/functions_g.html
+++ b/cpp-client-api/functions_g.html
@@ -160,7 +160,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:57 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/functions_h.html b/cpp-client-api/functions_h.html
index d0040eb..f3e5b91 100644
--- a/cpp-client-api/functions_h.html
+++ b/cpp-client-api/functions_h.html
@@ -136,7 +136,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:57 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/functions_i.html b/cpp-client-api/functions_i.html
index e1cd14d..e302d44 100644
--- a/cpp-client-api/functions_i.html
+++ b/cpp-client-api/functions_i.html
@@ -135,6 +135,9 @@
 <li>Increment()
 : <a class="el" href="classkudu_1_1client_1_1ResourceMetrics.html#ae7b5f6021f63c25bbd087ba2cf48dc8a">kudu::client::ResourceMetrics</a>
 </li>
+<li>indirect_data()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#af41b26a5f137122454d6341a5b5c1a43">kudu::client::KuduScanBatch</a>
+</li>
 <li>Initialized()
 : <a class="el" href="classkudu_1_1MonoDelta.html#aad3a0f1a1fc2e504ff137e55cfe068a3">kudu::MonoDelta</a>
 , <a class="el" href="classkudu_1_1MonoTime.html#a4ba08bf71a2496672338522952301926">kudu::MonoTime</a>
@@ -158,7 +161,7 @@
 : <a class="el" href="classkudu_1_1client_1_1KuduClient.html#a7a331e528759296089837b4611c01809">kudu::client::KuduClient</a>
 </li>
 <li>IsColumnSet()
-: <a class="el" href="classKuduPartialRow.html#a592d2ee5fb13a710fcd675cc675f2193">KuduPartialRow</a>
+: <a class="el" href="classKuduPartialRow.html#aa53b99d14bb61a010c4857cad17bb8ff">KuduPartialRow</a>
 </li>
 <li>IsConfigurationError()
 : <a class="el" href="classkudu_1_1Status.html#a8d31d26943101023125666bbbea002e3">kudu::Status</a>
@@ -204,7 +207,7 @@
 </li>
 <li>IsNull()
 : <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#a1b0b04656fec608919b7b6ac7c99451e">kudu::client::KuduScanBatch</a>
-, <a class="el" href="classKuduPartialRow.html#acaff842dad3af9546b2ed936613e59ab">KuduPartialRow</a>
+, <a class="el" href="classKuduPartialRow.html#a0b0a0103eea4cc39fbc89df0a9403a26">KuduPartialRow</a>
 </li>
 <li>IsRemoteError()
 : <a class="el" href="classkudu_1_1Status.html#a96a35401df4ecd6420c86c65bc3e05f9">kudu::Status</a>
@@ -226,7 +229,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:57 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/functions_k.html b/cpp-client-api/functions_k.html
index fab5ebd..e284ed7 100644
--- a/cpp-client-api/functions_k.html
+++ b/cpp-client-api/functions_k.html
@@ -143,6 +143,9 @@
 <li>KuduPartialRow()
 : <a class="el" href="classKuduPartialRow.html#a9eb1cbd1b216f6313a03c82ab67112e4">KuduPartialRow</a>
 </li>
+<li>KuduPartitionerBuilder()
+: <a class="el" href="classkudu_1_1client_1_1KuduPartitionerBuilder.html#a27d130235be1c2691779e1d97732a4ba">kudu::client::KuduPartitionerBuilder</a>
+</li>
 <li>KuduScanner()
 : <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a2c621f778072a02f4092e96a0baf8180">kudu::client::KuduScanner</a>
 </li>
@@ -163,7 +166,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:57 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/functions_l.html b/cpp-client-api/functions_l.html
index 33dfa5a..3324e1c 100644
--- a/cpp-client-api/functions_l.html
+++ b/cpp-client-api/functions_l.html
@@ -139,7 +139,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:57 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/functions_m.html b/cpp-client-api/functions_m.html
index 86ab3c6..a7f1e14 100644
--- a/cpp-client-api/functions_m.html
+++ b/cpp-client-api/functions_m.html
@@ -167,7 +167,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:57 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/functions_n.html b/cpp-client-api/functions_n.html
index 6e8f64f..d6fda7f 100644
--- a/cpp-client-api/functions_n.html
+++ b/cpp-client-api/functions_n.html
@@ -167,6 +167,9 @@
 <li>NextBatch()
 : <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#af1475d9a0667839c1ed9c3714b47d487">kudu::client::KuduScanner</a>
 </li>
+<li>NO_FLAGS
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a68345956f3f4c7fd5e1665fd292f6a85">kudu::client::KuduScanner</a>
+</li>
 <li>NotNull()
 : <a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html#af8c64c5a8a7a93ec644d481f23d91cca">kudu::client::KuduColumnSpec</a>
 </li>
@@ -183,6 +186,9 @@
 : <a class="el" href="classkudu_1_1client_1_1KuduTable.html#a147bdffbd798161916471b721d63128f">kudu::client::KuduTable</a>
 , <a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a9dd4673755ba242eab3f06b19182d139">kudu::client::KuduTableCreator</a>
 </li>
+<li>NumPartitions()
+: <a class="el" href="classkudu_1_1client_1_1KuduPartitioner.html#af692612faaccb259bf3d15f2bf5b246d">kudu::client::KuduPartitioner</a>
+</li>
 <li>NumRows()
 : <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#a16e45694c5932eb3decc2184c3834157">kudu::client::KuduScanBatch</a>
 </li>
@@ -191,7 +197,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:57 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/functions_o.html b/cpp-client-api/functions_o.html
index fa268a1..910c1c1 100644
--- a/cpp-client-api/functions_o.html
+++ b/cpp-client-api/functions_o.html
@@ -122,12 +122,12 @@
 <div class="textblock">Here is a list of all documented class members with links to the class documentation for each member:</div>
 
 <h3><a class="anchor" id="index_o"></a>- o -</h3><ul>
-<li>ok()
-: <a class="el" href="classkudu_1_1Status.html#abf6454dcb72bfa92189a0595b5a858a7">kudu::Status</a>
-</li>
 <li>OK()
 : <a class="el" href="classkudu_1_1Status.html#adaff3248b2f66041d0a7dd59f118b7ac">kudu::Status</a>
 </li>
+<li>ok()
+: <a class="el" href="classkudu_1_1Status.html#abf6454dcb72bfa92189a0595b5a858a7">kudu::Status</a>
+</li>
 <li>Open()
 : <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#aa1ff3c11d9ac9f8183189ea5ac1ed9f1">kudu::client::KuduScanner</a>
 </li>
@@ -155,7 +155,7 @@
 </li>
 <li>operator=()
 : <a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html#a4b58da787c8e7dc14987aa74a54f199e">kudu::client::KuduColumnSchema</a>
-, <a class="el" href="classkudu_1_1Status.html#ae63eecd6e48fa007b2334b6459972c39">kudu::Status</a>
+, <a class="el" href="classkudu_1_1Status.html#aa387797d8a80892563d56244a2351a88">kudu::Status</a>
 , <a class="el" href="classKuduPartialRow.html#a03cab3e1aa0bef19c14f94181934181f">KuduPartialRow</a>
 </li>
 <li>operator==()
@@ -176,7 +176,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:57 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/functions_p.html b/cpp-client-api/functions_p.html
index 4a62a25..830f66a 100644
--- a/cpp-client-api/functions_p.html
+++ b/cpp-client-api/functions_p.html
@@ -122,9 +122,15 @@
 <div class="textblock">Here is a list of all documented class members with links to the class documentation for each member:</div>
 
 <h3><a class="anchor" id="index_p"></a>- p -</h3><ul>
+<li>PAD_UNIXTIME_MICROS_TO_16_BYTES
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a63cd270f3bc72f4197d2581ec8f8fc44">kudu::client::KuduScanner</a>
+</li>
 <li>partition_schema()
 : <a class="el" href="classkudu_1_1client_1_1KuduTable.html#af1125879ce34fa6c994a70fe1803a808">kudu::client::KuduTable</a>
 </li>
+<li>PartitionRow()
+: <a class="el" href="classkudu_1_1client_1_1KuduPartitioner.html#a05d816ba08d85d5c0c95025e12d2e369">kudu::client::KuduPartitioner</a>
+</li>
 <li>port()
 : <a class="el" href="classkudu_1_1client_1_1KuduTabletServer.html#ab4715d71c64dad1059698f2bb9ef192d">kudu::client::KuduTabletServer</a>
 </li>
@@ -139,7 +145,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:57 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/functions_r.html b/cpp-client-api/functions_r.html
index 3ed3733..9811cf4 100644
--- a/cpp-client-api/functions_r.html
+++ b/cpp-client-api/functions_r.html
@@ -178,7 +178,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:57 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/functions_rela.html b/cpp-client-api/functions_rela.html
index c79c50a..5ceb4cd 100644
--- a/cpp-client-api/functions_rela.html
+++ b/cpp-client-api/functions_rela.html
@@ -103,7 +103,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:57 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/functions_s.html b/cpp-client-api/functions_s.html
index 77ca1dc..c39d5bd 100644
--- a/cpp-client-api/functions_s.html
+++ b/cpp-client-api/functions_s.html
@@ -137,6 +137,9 @@
 : <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#af82c4ccb442c222033841dd65cf5a67c">kudu::client::KuduScanner</a>
 , <a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#a36523ca7f2f9a2b4e3c096cf6167643c">kudu::client::KuduScanTokenBuilder</a>
 </li>
+<li>SetBuildTimeout()
+: <a class="el" href="classkudu_1_1client_1_1KuduPartitionerBuilder.html#a11e28b7ad87a53a92d2ad5494f2c5f14">kudu::client::KuduPartitionerBuilder</a>
+</li>
 <li>SetCacheBlocks()
 : <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a4a4a2e354b3113561758b9bf4095d310">kudu::client::KuduScanner</a>
 , <a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#a7ab7c9c1c4f4d3bbbc18b2b35d7d5475">kudu::client::KuduScanTokenBuilder</a>
@@ -193,6 +196,9 @@
 : <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a248e0a05e7bfdc31b5b8d363a937e81e">kudu::client::KuduScanner</a>
 , <a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#adb34f01a9bc52a9e23ce49124bab3892">kudu::client::KuduScanTokenBuilder</a>
 </li>
+<li>SetRowFormatFlags()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a3dbaf4c2db6a37517a242dcb8ee64c11">kudu::client::KuduScanner</a>
+</li>
 <li>SetSelection()
 : <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#af1db3f372fe3d0f30cd0b6a36b783cc8">kudu::client::KuduScanner</a>
 , <a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#a168bfed43dcd754a17d4c82293dade88">kudu::client::KuduScanTokenBuilder</a>
@@ -214,7 +220,7 @@
 : <a class="el" href="classkudu_1_1Slice.html#a141b4a1fc0555d57f192e574e427c146">kudu::Slice</a>
 </li>
 <li>Slice()
-: <a class="el" href="classkudu_1_1Slice.html#a904b8732b247676c52cbd9147b34c54c">kudu::Slice</a>
+: <a class="el" href="classkudu_1_1Slice.html#aaee66c59ee434349680679bdf0462b66">kudu::Slice</a>
 </li>
 <li>split_rows()
 : <a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#ae12cc7c72da40f25b079273a6169faf9">kudu::client::KuduTableCreator</a>
@@ -233,7 +239,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:57 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/functions_t.html b/cpp-client-api/functions_t.html
index 36f71d2..5061a97 100644
--- a/cpp-client-api/functions_t.html
+++ b/cpp-client-api/functions_t.html
@@ -186,7 +186,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:57 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/functions_type.html b/cpp-client-api/functions_type.html
index 99ae336..0a34f7a 100644
--- a/cpp-client-api/functions_type.html
+++ b/cpp-client-api/functions_type.html
@@ -114,7 +114,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:57 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/functions_u.html b/cpp-client-api/functions_u.html
index 96949c1..541cac2 100644
--- a/cpp-client-api/functions_u.html
+++ b/cpp-client-api/functions_u.html
@@ -136,7 +136,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:57 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/functions_v.html b/cpp-client-api/functions_v.html
index 17284b5..07603d7 100644
--- a/cpp-client-api/functions_v.html
+++ b/cpp-client-api/functions_v.html
@@ -130,7 +130,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:57 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/functions_vars.html b/cpp-client-api/functions_vars.html
index 1733bdf..d8ae353 100644
--- a/cpp-client-api/functions_vars.html
+++ b/cpp-client-api/functions_vars.html
@@ -101,12 +101,18 @@
 <li>kNoTimestamp
 : <a class="el" href="classkudu_1_1client_1_1KuduClient.html#a196f1a18c000cdca309d05161caaddaa">kudu::client::KuduClient</a>
 </li>
+<li>NO_FLAGS
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a68345956f3f4c7fd5e1665fd292f6a85">kudu::client::KuduScanner</a>
+</li>
+<li>PAD_UNIXTIME_MICROS_TO_16_BYTES
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a63cd270f3bc72f4197d2581ec8f8fc44">kudu::client::KuduScanner</a>
+</li>
 </ul>
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:57 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/functions_w.html b/cpp-client-api/functions_w.html
index 665e81a..1fb0221 100644
--- a/cpp-client-api/functions_w.html
+++ b/cpp-client-api/functions_w.html
@@ -134,7 +134,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:57 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/globals.html b/cpp-client-api/globals.html
index ae9dbbb..2e8c989 100644
--- a/cpp-client-api/globals.html
+++ b/cpp-client-api/globals.html
@@ -123,7 +123,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:57 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/globals_defs.html b/cpp-client-api/globals_defs.html
index bdc737d..2536ca0 100644
--- a/cpp-client-api/globals_defs.html
+++ b/cpp-client-api/globals_defs.html
@@ -123,7 +123,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:57 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/graph_legend.html b/cpp-client-api/graph_legend.html
index 5d6dabe..0bba399 100644
--- a/cpp-client-api/graph_legend.html
+++ b/cpp-client-api/graph_legend.html
@@ -112,7 +112,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/hierarchy.html b/cpp-client-api/hierarchy.html
index cab10db..6b66fc5 100644
--- a/cpp-client-api/hierarchy.html
+++ b/cpp-client-api/hierarchy.html
@@ -104,46 +104,48 @@
 <tr id="row_8_0_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduLoggingFunctionCallback.html" target="_self">kudu::client::KuduLoggingFunctionCallback&lt; T &gt;</a></td><td class="desc">The logging callback that invokes a function by pointer with a single argument </td></tr>
 <tr id="row_8_1_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduLoggingMemberCallback.html" target="_self">kudu::client::KuduLoggingMemberCallback&lt; T &gt;</a></td><td class="desc">The logging callback that invokes a member function of an object </td></tr>
 <tr id="row_9_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classKuduPartialRow.html" target="_self">KuduPartialRow</a></td><td class="desc">A row which may only contain values for a subset of the columns </td></tr>
-<tr id="row_10_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html" target="_self">kudu::client::KuduPredicate</a></td><td class="desc">A representation of comparison predicate for Kudu queries </td></tr>
-<tr id="row_11_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduReplica.html" target="_self">kudu::client::KuduReplica</a></td><td class="desc">In-memory representation of a remote tablet's replica </td></tr>
-<tr id="row_12_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduScanner.html" target="_self">kudu::client::KuduScanner</a></td><td class="desc">This class is a representation of a single scan </td></tr>
-<tr id="row_13_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduScanToken.html" target="_self">kudu::client::KuduScanToken</a></td><td class="desc">A scan descriptor limited to a single physical contiguous location </td></tr>
-<tr id="row_14_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html" target="_self">kudu::client::KuduScanTokenBuilder</a></td><td class="desc">Builds scan tokens for a table </td></tr>
-<tr id="row_15_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduSchema.html" target="_self">kudu::client::KuduSchema</a></td><td class="desc">A representation of a table's schema </td></tr>
-<tr id="row_16_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduSchemaBuilder.html" target="_self">kudu::client::KuduSchemaBuilder</a></td><td class="desc">Builder API for constructing a <a class="el" href="classkudu_1_1client_1_1KuduSchema.html" title="A representation of a table&#39;s schema. ">KuduSchema</a> object </td></tr>
-<tr id="row_17_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_17_" class="arrow" onclick="toggleFolder('17_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduStatusCallback.html" target="_self">kudu::client::KuduStatusCallback</a></td><td class="desc">The interface for all status callbacks </td></tr>
-<tr id="row_17_0_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduStatusFunctionCallback.html" target="_self">kudu::client::KuduStatusFunctionCallback&lt; T &gt;</a></td><td class="desc">The status callback that invokes a function by pointer with a single argument </td></tr>
-<tr id="row_17_1_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduStatusMemberCallback.html" target="_self">kudu::client::KuduStatusMemberCallback&lt; T &gt;</a></td><td class="desc">The status callback that invokes a member function of an object </td></tr>
-<tr id="row_18_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html" target="_self">kudu::client::KuduTableAlterer</a></td><td class="desc">Alters an existing table based on the provided steps </td></tr>
-<tr id="row_19_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html" target="_self">kudu::client::KuduTableCreator</a></td><td class="desc">A helper class to create a new table with the desired options </td></tr>
-<tr id="row_20_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduTablet.html" target="_self">kudu::client::KuduTablet</a></td><td class="desc">In-memory representation of a remote tablet </td></tr>
-<tr id="row_21_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduTabletServer.html" target="_self">kudu::client::KuduTabletServer</a></td><td class="desc">In-memory representation of a remote tablet server </td></tr>
-<tr id="row_22_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduValue.html" target="_self">kudu::client::KuduValue</a></td><td class="desc">A constant cell value with a specific type </td></tr>
-<tr id="row_23_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_23_" class="arrow" onclick="toggleFolder('23_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html" target="_self">kudu::client::KuduWriteOperation</a></td><td class="desc">A single-row write operation to be sent to a Kudu table </td></tr>
-<tr id="row_23_0_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduDelete.html" target="_self">kudu::client::KuduDelete</a></td><td class="desc">A single row delete to be sent to the cluster </td></tr>
-<tr id="row_23_1_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduInsert.html" target="_self">kudu::client::KuduInsert</a></td><td class="desc">A single row insert to be sent to the cluster </td></tr>
-<tr id="row_23_2_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduUpdate.html" target="_self">kudu::client::KuduUpdate</a></td><td class="desc">A single row update to be sent to the cluster </td></tr>
-<tr id="row_23_3_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduUpsert.html" target="_self">kudu::client::KuduUpsert</a></td><td class="desc">A single row upsert to be sent to the cluster </td></tr>
-<tr id="row_24_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1MonoDelta.html" target="_self">kudu::MonoDelta</a></td><td class="desc">A representation of a time interval </td></tr>
-<tr id="row_25_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1MonoTime.html" target="_self">kudu::MonoTime</a></td><td class="desc">Representation of a particular point in time </td></tr>
-<tr id="row_26_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1internal__logging_1_1NullLog.html" target="_self">kudu::internal_logging::NullLog</a></td><td class="desc">A helper for the nil log sink </td></tr>
-<tr id="row_27_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1ResourceMetrics.html" target="_self">kudu::client::ResourceMetrics</a></td><td class="desc">A generic catalog of simple metrics </td></tr>
-<tr id="row_28_"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_28_" class="arrow" onclick="toggleFolder('28_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><b>RowPtr</b></td><td class="desc"></td></tr>
-<tr id="row_28_0_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html" target="_self">kudu::client::KuduScanBatch</a></td><td class="desc">A batch of zero or more rows returned by a scan operation </td></tr>
-<tr id="row_29_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1Slice.html" target="_self">kudu::Slice</a></td><td class="desc">A wrapper around externally allocated data </td></tr>
-<tr id="row_30_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structkudu_1_1SliceMap.html" target="_self">kudu::SliceMap&lt; T &gt;</a></td><td class="desc">STL map whose keys are Slices </td></tr>
-<tr id="row_31_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1Status.html" target="_self">kudu::Status</a></td><td class="desc">A representation of an operation's outcome </td></tr>
-<tr id="row_32_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_32_" class="arrow" onclick="toggleFolder('32_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><b>enable_shared_from_this</b></td><td class="desc"></td></tr>
-<tr id="row_32_0_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduClient.html" target="_self">kudu::client::KuduClient</a></td><td class="desc">A handle for a connection to a cluster </td></tr>
-<tr id="row_32_1_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduSession.html" target="_self">kudu::client::KuduSession</a></td><td class="desc">Representation of a Kudu client session </td></tr>
-<tr id="row_32_2_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduTable.html" target="_self">kudu::client::KuduTable</a></td><td class="desc">A representation of a table on a particular cluster </td></tr>
+<tr id="row_10_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduPartitioner.html" target="_self">kudu::client::KuduPartitioner</a></td><td class="desc"></td></tr>
+<tr id="row_11_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduPartitionerBuilder.html" target="_self">kudu::client::KuduPartitionerBuilder</a></td><td class="desc">Builder for Partitioner instances </td></tr>
+<tr id="row_12_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html" target="_self">kudu::client::KuduPredicate</a></td><td class="desc">A representation of comparison predicate for Kudu queries </td></tr>
+<tr id="row_13_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduReplica.html" target="_self">kudu::client::KuduReplica</a></td><td class="desc">In-memory representation of a remote tablet's replica </td></tr>
+<tr id="row_14_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduScanner.html" target="_self">kudu::client::KuduScanner</a></td><td class="desc">This class is a representation of a single scan </td></tr>
+<tr id="row_15_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduScanToken.html" target="_self">kudu::client::KuduScanToken</a></td><td class="desc">A scan descriptor limited to a single physical contiguous location </td></tr>
+<tr id="row_16_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html" target="_self">kudu::client::KuduScanTokenBuilder</a></td><td class="desc">Builds scan tokens for a table </td></tr>
+<tr id="row_17_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduSchema.html" target="_self">kudu::client::KuduSchema</a></td><td class="desc">A representation of a table's schema </td></tr>
+<tr id="row_18_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduSchemaBuilder.html" target="_self">kudu::client::KuduSchemaBuilder</a></td><td class="desc">Builder API for constructing a <a class="el" href="classkudu_1_1client_1_1KuduSchema.html" title="A representation of a table&#39;s schema. ">KuduSchema</a> object </td></tr>
+<tr id="row_19_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_19_" class="arrow" onclick="toggleFolder('19_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduStatusCallback.html" target="_self">kudu::client::KuduStatusCallback</a></td><td class="desc">The interface for all status callbacks </td></tr>
+<tr id="row_19_0_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduStatusFunctionCallback.html" target="_self">kudu::client::KuduStatusFunctionCallback&lt; T &gt;</a></td><td class="desc">The status callback that invokes a function by pointer with a single argument </td></tr>
+<tr id="row_19_1_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduStatusMemberCallback.html" target="_self">kudu::client::KuduStatusMemberCallback&lt; T &gt;</a></td><td class="desc">The status callback that invokes a member function of an object </td></tr>
+<tr id="row_20_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html" target="_self">kudu::client::KuduTableAlterer</a></td><td class="desc">Alters an existing table based on the provided steps </td></tr>
+<tr id="row_21_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html" target="_self">kudu::client::KuduTableCreator</a></td><td class="desc">A helper class to create a new table with the desired options </td></tr>
+<tr id="row_22_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduTablet.html" target="_self">kudu::client::KuduTablet</a></td><td class="desc">In-memory representation of a remote tablet </td></tr>
+<tr id="row_23_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduTabletServer.html" target="_self">kudu::client::KuduTabletServer</a></td><td class="desc">In-memory representation of a remote tablet server </td></tr>
+<tr id="row_24_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduValue.html" target="_self">kudu::client::KuduValue</a></td><td class="desc">A constant cell value with a specific type </td></tr>
+<tr id="row_25_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_25_" class="arrow" onclick="toggleFolder('25_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html" target="_self">kudu::client::KuduWriteOperation</a></td><td class="desc">A single-row write operation to be sent to a Kudu table </td></tr>
+<tr id="row_25_0_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduDelete.html" target="_self">kudu::client::KuduDelete</a></td><td class="desc">A single row delete to be sent to the cluster </td></tr>
+<tr id="row_25_1_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduInsert.html" target="_self">kudu::client::KuduInsert</a></td><td class="desc">A single row insert to be sent to the cluster </td></tr>
+<tr id="row_25_2_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduUpdate.html" target="_self">kudu::client::KuduUpdate</a></td><td class="desc">A single row update to be sent to the cluster </td></tr>
+<tr id="row_25_3_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduUpsert.html" target="_self">kudu::client::KuduUpsert</a></td><td class="desc">A single row upsert to be sent to the cluster </td></tr>
+<tr id="row_26_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1MonoDelta.html" target="_self">kudu::MonoDelta</a></td><td class="desc">A representation of a time interval </td></tr>
+<tr id="row_27_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1MonoTime.html" target="_self">kudu::MonoTime</a></td><td class="desc">Representation of a particular point in time </td></tr>
+<tr id="row_28_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1internal__logging_1_1NullLog.html" target="_self">kudu::internal_logging::NullLog</a></td><td class="desc">A helper for the nil log sink </td></tr>
+<tr id="row_29_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1ResourceMetrics.html" target="_self">kudu::client::ResourceMetrics</a></td><td class="desc">A generic catalog of simple metrics </td></tr>
+<tr id="row_30_"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_30_" class="arrow" onclick="toggleFolder('30_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><b>RowPtr</b></td><td class="desc"></td></tr>
+<tr id="row_30_0_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html" target="_self">kudu::client::KuduScanBatch</a></td><td class="desc">A batch of zero or more rows returned by a scan operation </td></tr>
+<tr id="row_31_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1Slice.html" target="_self">kudu::Slice</a></td><td class="desc">A wrapper around externally allocated data </td></tr>
+<tr id="row_32_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structkudu_1_1SliceMap.html" target="_self">kudu::SliceMap&lt; T &gt;</a></td><td class="desc">STL map whose keys are Slices </td></tr>
+<tr id="row_33_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1Status.html" target="_self">kudu::Status</a></td><td class="desc">A representation of an operation's outcome </td></tr>
+<tr id="row_34_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_34_" class="arrow" onclick="toggleFolder('34_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><b>enable_shared_from_this</b></td><td class="desc"></td></tr>
+<tr id="row_34_0_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduClient.html" target="_self">kudu::client::KuduClient</a></td><td class="desc">A handle for a connection to a cluster </td></tr>
+<tr id="row_34_1_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduSession.html" target="_self">kudu::client::KuduSession</a></td><td class="desc">Representation of a Kudu client session </td></tr>
+<tr id="row_34_2_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduTable.html" target="_self">kudu::client::KuduTable</a></td><td class="desc">A representation of a table on a particular cluster </td></tr>
 </table>
 </div><!-- directory -->
 </div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/index.html b/cpp-client-api/index.html
index 91a43a5..d9e3614 100644
--- a/cpp-client-api/index.html
+++ b/cpp-client-api/index.html
@@ -84,7 +84,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/inherit_graph_10.map b/cpp-client-api/inherit_graph_10.map
index b795e08..35ecf07 100644
--- a/cpp-client-api/inherit_graph_10.map
+++ b/cpp-client-api/inherit_graph_10.map
@@ -1,3 +1,3 @@
 <map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
-<area shape="rect" id="node1" href="$classkudu_1_1client_1_1KuduScanner.html" title="This class is a representation of a single scan. " alt="" coords="5,5,180,32"/>
+<area shape="rect" id="node1" href="$classkudu_1_1client_1_1KuduReplica.html" title="In&#45;memory representation of a remote tablet&#39;s replica. " alt="" coords="5,5,176,32"/>
 </map>
diff --git a/cpp-client-api/inherit_graph_10.md5 b/cpp-client-api/inherit_graph_10.md5
index 74ec260..4fc3899 100644
--- a/cpp-client-api/inherit_graph_10.md5
+++ b/cpp-client-api/inherit_graph_10.md5
@@ -1 +1 @@
-33698973dc070defee5811a525f22d2e
\ No newline at end of file
+472011b462e65b3c2f82c8e8ebae186a
\ No newline at end of file
diff --git a/cpp-client-api/inherit_graph_10.png b/cpp-client-api/inherit_graph_10.png
index efa0029..624c60a 100644
--- a/cpp-client-api/inherit_graph_10.png
+++ b/cpp-client-api/inherit_graph_10.png
Binary files differ
diff --git a/cpp-client-api/inherit_graph_11.map b/cpp-client-api/inherit_graph_11.map
index b32a4f1..5134094 100644
--- a/cpp-client-api/inherit_graph_11.map
+++ b/cpp-client-api/inherit_graph_11.map
@@ -1,3 +1,3 @@
 <map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
-<area shape="rect" id="node1" href="$classkudu_1_1client_1_1KuduScanToken.html" title="A scan descriptor limited to a single physical contiguous location. " alt="" coords="5,5,199,32"/>
+<area shape="rect" id="node2" href="$classkudu_1_1client_1_1KuduScanBatch.html" title="A batch of zero or more rows returned by a scan operation. " alt="" coords="120,31,311,57"/>
 </map>
diff --git a/cpp-client-api/inherit_graph_11.md5 b/cpp-client-api/inherit_graph_11.md5
index 734d40d..28073da 100644
--- a/cpp-client-api/inherit_graph_11.md5
+++ b/cpp-client-api/inherit_graph_11.md5
@@ -1 +1 @@
-0cb65fd06643b34d485c6b19ff347b0c
\ No newline at end of file
+7886916407d9d6ccea8f7d3bddd4df53
\ No newline at end of file
diff --git a/cpp-client-api/inherit_graph_11.png b/cpp-client-api/inherit_graph_11.png
index f35f609..e690f88 100644
--- a/cpp-client-api/inherit_graph_11.png
+++ b/cpp-client-api/inherit_graph_11.png
Binary files differ
diff --git a/cpp-client-api/inherit_graph_12.map b/cpp-client-api/inherit_graph_12.map
index 01e97e0..b795e08 100644
--- a/cpp-client-api/inherit_graph_12.map
+++ b/cpp-client-api/inherit_graph_12.map
@@ -1,3 +1,3 @@
 <map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
-<area shape="rect" id="node1" href="$classkudu_1_1client_1_1KuduScanTokenBuilder.html" title="Builds scan tokens for a table. " alt="" coords="5,5,199,47"/>
+<area shape="rect" id="node1" href="$classkudu_1_1client_1_1KuduScanner.html" title="This class is a representation of a single scan. " alt="" coords="5,5,180,32"/>
 </map>
diff --git a/cpp-client-api/inherit_graph_12.md5 b/cpp-client-api/inherit_graph_12.md5
index 5b7af43..74ec260 100644
--- a/cpp-client-api/inherit_graph_12.md5
+++ b/cpp-client-api/inherit_graph_12.md5
@@ -1 +1 @@
-508e569d8dbdba96080d8944105cc147
\ No newline at end of file
+33698973dc070defee5811a525f22d2e
\ No newline at end of file
diff --git a/cpp-client-api/inherit_graph_12.png b/cpp-client-api/inherit_graph_12.png
index c09ade4..efa0029 100644
--- a/cpp-client-api/inherit_graph_12.png
+++ b/cpp-client-api/inherit_graph_12.png
Binary files differ
diff --git a/cpp-client-api/inherit_graph_13.map b/cpp-client-api/inherit_graph_13.map
index 9910f48..b32a4f1 100644
--- a/cpp-client-api/inherit_graph_13.map
+++ b/cpp-client-api/inherit_graph_13.map
@@ -1,3 +1,3 @@
 <map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
-<area shape="rect" id="node1" href="$classkudu_1_1client_1_1KuduSchema.html" title="A representation of a table&#39;s schema. " alt="" coords="5,5,180,32"/>
+<area shape="rect" id="node1" href="$classkudu_1_1client_1_1KuduScanToken.html" title="A scan descriptor limited to a single physical contiguous location. " alt="" coords="5,5,199,32"/>
 </map>
diff --git a/cpp-client-api/inherit_graph_13.md5 b/cpp-client-api/inherit_graph_13.md5
index a951fa7..734d40d 100644
--- a/cpp-client-api/inherit_graph_13.md5
+++ b/cpp-client-api/inherit_graph_13.md5
@@ -1 +1 @@
-1f8f5203cbf1700a9ca8221b358c5f12
\ No newline at end of file
+0cb65fd06643b34d485c6b19ff347b0c
\ No newline at end of file
diff --git a/cpp-client-api/inherit_graph_13.png b/cpp-client-api/inherit_graph_13.png
index a6d90a8..f35f609 100644
--- a/cpp-client-api/inherit_graph_13.png
+++ b/cpp-client-api/inherit_graph_13.png
Binary files differ
diff --git a/cpp-client-api/inherit_graph_14.map b/cpp-client-api/inherit_graph_14.map
index efe699f..01e97e0 100644
--- a/cpp-client-api/inherit_graph_14.map
+++ b/cpp-client-api/inherit_graph_14.map
@@ -1,3 +1,3 @@
 <map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
-<area shape="rect" id="node1" href="$classkudu_1_1client_1_1KuduSchemaBuilder.html" title="Builder API for constructing a KuduSchema object. " alt="" coords="5,5,180,47"/>
+<area shape="rect" id="node1" href="$classkudu_1_1client_1_1KuduScanTokenBuilder.html" title="Builds scan tokens for a table. " alt="" coords="5,5,199,47"/>
 </map>
diff --git a/cpp-client-api/inherit_graph_14.md5 b/cpp-client-api/inherit_graph_14.md5
index 1e7a5b2..5b7af43 100644
--- a/cpp-client-api/inherit_graph_14.md5
+++ b/cpp-client-api/inherit_graph_14.md5
@@ -1 +1 @@
-daa9573895a3ab8767301dc5d201da83
\ No newline at end of file
+508e569d8dbdba96080d8944105cc147
\ No newline at end of file
diff --git a/cpp-client-api/inherit_graph_14.png b/cpp-client-api/inherit_graph_14.png
index f70c1b5..c09ade4 100644
--- a/cpp-client-api/inherit_graph_14.png
+++ b/cpp-client-api/inherit_graph_14.png
Binary files differ
diff --git a/cpp-client-api/inherit_graph_15.map b/cpp-client-api/inherit_graph_15.map
index 9dc5f53..9910f48 100644
--- a/cpp-client-api/inherit_graph_15.map
+++ b/cpp-client-api/inherit_graph_15.map
@@ -1,5 +1,3 @@
 <map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
-<area shape="rect" id="node1" href="$classkudu_1_1client_1_1KuduStatusCallback.html" title="The interface for all status callbacks. " alt="" coords="5,39,171,80"/>
-<area shape="rect" id="node2" href="$classkudu_1_1client_1_1KuduStatusFunctionCallback.html" title="The status callback that invokes a function by pointer with a single argument. " alt="" coords="219,5,384,47"/>
-<area shape="rect" id="node3" href="$classkudu_1_1client_1_1KuduStatusMemberCallback.html" title="The status callback that invokes a member function of an object. " alt="" coords="219,71,384,112"/>
+<area shape="rect" id="node1" href="$classkudu_1_1client_1_1KuduSchema.html" title="A representation of a table&#39;s schema. " alt="" coords="5,5,180,32"/>
 </map>
diff --git a/cpp-client-api/inherit_graph_15.md5 b/cpp-client-api/inherit_graph_15.md5
index ffaae4c..a951fa7 100644
--- a/cpp-client-api/inherit_graph_15.md5
+++ b/cpp-client-api/inherit_graph_15.md5
@@ -1 +1 @@
-59009dd71b1fa7ef9eaf936ae8907f9b
\ No newline at end of file
+1f8f5203cbf1700a9ca8221b358c5f12
\ No newline at end of file
diff --git a/cpp-client-api/inherit_graph_15.png b/cpp-client-api/inherit_graph_15.png
index a35b54e..a6d90a8 100644
--- a/cpp-client-api/inherit_graph_15.png
+++ b/cpp-client-api/inherit_graph_15.png
Binary files differ
diff --git a/cpp-client-api/inherit_graph_16.map b/cpp-client-api/inherit_graph_16.map
index 2d76ec8..efe699f 100644
--- a/cpp-client-api/inherit_graph_16.map
+++ b/cpp-client-api/inherit_graph_16.map
@@ -1,3 +1,3 @@
 <map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
-<area shape="rect" id="node1" href="$classkudu_1_1client_1_1KuduTableAlterer.html" title="Alters an existing table based on the provided steps. " alt="" coords="5,5,203,32"/>
+<area shape="rect" id="node1" href="$classkudu_1_1client_1_1KuduSchemaBuilder.html" title="Builder API for constructing a KuduSchema object. " alt="" coords="5,5,180,47"/>
 </map>
diff --git a/cpp-client-api/inherit_graph_16.md5 b/cpp-client-api/inherit_graph_16.md5
index 11734de..1e7a5b2 100644
--- a/cpp-client-api/inherit_graph_16.md5
+++ b/cpp-client-api/inherit_graph_16.md5
@@ -1 +1 @@
-01984aa1995d55ac00ceaef979f4274d
\ No newline at end of file
+daa9573895a3ab8767301dc5d201da83
\ No newline at end of file
diff --git a/cpp-client-api/inherit_graph_16.png b/cpp-client-api/inherit_graph_16.png
index c14e19d..f70c1b5 100644
--- a/cpp-client-api/inherit_graph_16.png
+++ b/cpp-client-api/inherit_graph_16.png
Binary files differ
diff --git a/cpp-client-api/inherit_graph_17.map b/cpp-client-api/inherit_graph_17.map
index 05d6911..9dc5f53 100644
--- a/cpp-client-api/inherit_graph_17.map
+++ b/cpp-client-api/inherit_graph_17.map
@@ -1,3 +1,5 @@
 <map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
-<area shape="rect" id="node1" href="$classkudu_1_1client_1_1KuduTableCreator.html" title="A helper class to create a new table with the desired options. " alt="" coords="5,5,208,32"/>
+<area shape="rect" id="node1" href="$classkudu_1_1client_1_1KuduStatusCallback.html" title="The interface for all status callbacks. " alt="" coords="5,39,171,80"/>
+<area shape="rect" id="node2" href="$classkudu_1_1client_1_1KuduStatusFunctionCallback.html" title="The status callback that invokes a function by pointer with a single argument. " alt="" coords="219,5,384,47"/>
+<area shape="rect" id="node3" href="$classkudu_1_1client_1_1KuduStatusMemberCallback.html" title="The status callback that invokes a member function of an object. " alt="" coords="219,71,384,112"/>
 </map>
diff --git a/cpp-client-api/inherit_graph_17.md5 b/cpp-client-api/inherit_graph_17.md5
index dddb3eb..ffaae4c 100644
--- a/cpp-client-api/inherit_graph_17.md5
+++ b/cpp-client-api/inherit_graph_17.md5
@@ -1 +1 @@
-a010d5307874e8d8b5546dff690f2fed
\ No newline at end of file
+59009dd71b1fa7ef9eaf936ae8907f9b
\ No newline at end of file
diff --git a/cpp-client-api/inherit_graph_17.png b/cpp-client-api/inherit_graph_17.png
index 3459a66..a35b54e 100644
--- a/cpp-client-api/inherit_graph_17.png
+++ b/cpp-client-api/inherit_graph_17.png
Binary files differ
diff --git a/cpp-client-api/inherit_graph_18.map b/cpp-client-api/inherit_graph_18.map
index 09b63e0..2d76ec8 100644
--- a/cpp-client-api/inherit_graph_18.map
+++ b/cpp-client-api/inherit_graph_18.map
@@ -1,3 +1,3 @@
 <map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
-<area shape="rect" id="node1" href="$classkudu_1_1client_1_1KuduTablet.html" title="In&#45;memory representation of a remote tablet. " alt="" coords="5,5,168,32"/>
+<area shape="rect" id="node1" href="$classkudu_1_1client_1_1KuduTableAlterer.html" title="Alters an existing table based on the provided steps. " alt="" coords="5,5,203,32"/>
 </map>
diff --git a/cpp-client-api/inherit_graph_18.md5 b/cpp-client-api/inherit_graph_18.md5
index 6db1d41..11734de 100644
--- a/cpp-client-api/inherit_graph_18.md5
+++ b/cpp-client-api/inherit_graph_18.md5
@@ -1 +1 @@
-433213c65773e856d822afb92bd82474
\ No newline at end of file
+01984aa1995d55ac00ceaef979f4274d
\ No newline at end of file
diff --git a/cpp-client-api/inherit_graph_18.png b/cpp-client-api/inherit_graph_18.png
index 028255c..c14e19d 100644
--- a/cpp-client-api/inherit_graph_18.png
+++ b/cpp-client-api/inherit_graph_18.png
Binary files differ
diff --git a/cpp-client-api/inherit_graph_19.map b/cpp-client-api/inherit_graph_19.map
index 554b5a1..05d6911 100644
--- a/cpp-client-api/inherit_graph_19.map
+++ b/cpp-client-api/inherit_graph_19.map
@@ -1,3 +1,3 @@
 <map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
-<area shape="rect" id="node1" href="$classkudu_1_1client_1_1KuduTabletServer.html" title="In&#45;memory representation of a remote tablet server. " alt="" coords="5,5,168,47"/>
+<area shape="rect" id="node1" href="$classkudu_1_1client_1_1KuduTableCreator.html" title="A helper class to create a new table with the desired options. " alt="" coords="5,5,208,32"/>
 </map>
diff --git a/cpp-client-api/inherit_graph_19.md5 b/cpp-client-api/inherit_graph_19.md5
index 28f8ff0..dddb3eb 100644
--- a/cpp-client-api/inherit_graph_19.md5
+++ b/cpp-client-api/inherit_graph_19.md5
@@ -1 +1 @@
-3250cee679bb04fe90e000d2c0f860af
\ No newline at end of file
+a010d5307874e8d8b5546dff690f2fed
\ No newline at end of file
diff --git a/cpp-client-api/inherit_graph_19.png b/cpp-client-api/inherit_graph_19.png
index 0c1e142..3459a66 100644
--- a/cpp-client-api/inherit_graph_19.png
+++ b/cpp-client-api/inherit_graph_19.png
Binary files differ
diff --git a/cpp-client-api/inherit_graph_20.map b/cpp-client-api/inherit_graph_20.map
index 443e658..09b63e0 100644
--- a/cpp-client-api/inherit_graph_20.map
+++ b/cpp-client-api/inherit_graph_20.map
@@ -1,3 +1,3 @@
 <map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
-<area shape="rect" id="node1" href="$classkudu_1_1client_1_1KuduValue.html" title="A constant cell value with a specific type. " alt="" coords="5,5,165,32"/>
+<area shape="rect" id="node1" href="$classkudu_1_1client_1_1KuduTablet.html" title="In&#45;memory representation of a remote tablet. " alt="" coords="5,5,168,32"/>
 </map>
diff --git a/cpp-client-api/inherit_graph_20.md5 b/cpp-client-api/inherit_graph_20.md5
index 023032e..6db1d41 100644
--- a/cpp-client-api/inherit_graph_20.md5
+++ b/cpp-client-api/inherit_graph_20.md5
@@ -1 +1 @@
-ead987d5079de997d5435b9c88dbeec4
\ No newline at end of file
+433213c65773e856d822afb92bd82474
\ No newline at end of file
diff --git a/cpp-client-api/inherit_graph_20.png b/cpp-client-api/inherit_graph_20.png
index f6fe49c..028255c 100644
--- a/cpp-client-api/inherit_graph_20.png
+++ b/cpp-client-api/inherit_graph_20.png
Binary files differ
diff --git a/cpp-client-api/inherit_graph_21.map b/cpp-client-api/inherit_graph_21.map
index e731f00..554b5a1 100644
--- a/cpp-client-api/inherit_graph_21.map
+++ b/cpp-client-api/inherit_graph_21.map
@@ -1,7 +1,3 @@
 <map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
-<area shape="rect" id="node1" href="$classkudu_1_1client_1_1KuduWriteOperation.html" title="A single&#45;row write operation to be sent to a Kudu table. " alt="" coords="5,81,220,108"/>
-<area shape="rect" id="node2" href="$classkudu_1_1client_1_1KuduDelete.html" title="A single row delete to be sent to the cluster. " alt="" coords="270,5,435,32"/>
-<area shape="rect" id="node3" href="$classkudu_1_1client_1_1KuduInsert.html" title="A single row insert to be sent to the cluster. " alt="" coords="273,56,433,83"/>
-<area shape="rect" id="node4" href="$classkudu_1_1client_1_1KuduUpdate.html" title="A single row update to be sent to the cluster. " alt="" coords="268,107,437,133"/>
-<area shape="rect" id="node5" href="$classkudu_1_1client_1_1KuduUpsert.html" title="A single row upsert to be sent to the cluster. " alt="" coords="269,157,436,184"/>
+<area shape="rect" id="node1" href="$classkudu_1_1client_1_1KuduTabletServer.html" title="In&#45;memory representation of a remote tablet server. " alt="" coords="5,5,168,47"/>
 </map>
diff --git a/cpp-client-api/inherit_graph_21.md5 b/cpp-client-api/inherit_graph_21.md5
index 7ed8cb2..28f8ff0 100644
--- a/cpp-client-api/inherit_graph_21.md5
+++ b/cpp-client-api/inherit_graph_21.md5
@@ -1 +1 @@
-89c8bf76229754f04e295970ab3d02be
\ No newline at end of file
+3250cee679bb04fe90e000d2c0f860af
\ No newline at end of file
diff --git a/cpp-client-api/inherit_graph_21.png b/cpp-client-api/inherit_graph_21.png
index 88c9f26..0c1e142 100644
--- a/cpp-client-api/inherit_graph_21.png
+++ b/cpp-client-api/inherit_graph_21.png
Binary files differ
diff --git a/cpp-client-api/inherit_graph_22.map b/cpp-client-api/inherit_graph_22.map
index 905d41b..443e658 100644
--- a/cpp-client-api/inherit_graph_22.map
+++ b/cpp-client-api/inherit_graph_22.map
@@ -1,3 +1,3 @@
 <map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
-<area shape="rect" id="node1" href="$classkudu_1_1client_1_1ResourceMetrics.html" title="A generic catalog of simple metrics. " alt="" coords="5,5,201,32"/>
+<area shape="rect" id="node1" href="$classkudu_1_1client_1_1KuduValue.html" title="A constant cell value with a specific type. " alt="" coords="5,5,165,32"/>
 </map>
diff --git a/cpp-client-api/inherit_graph_22.md5 b/cpp-client-api/inherit_graph_22.md5
index 3cb04d9..023032e 100644
--- a/cpp-client-api/inherit_graph_22.md5
+++ b/cpp-client-api/inherit_graph_22.md5
@@ -1 +1 @@
-2cdca15b126c424b1decd815f8a69dae
\ No newline at end of file
+ead987d5079de997d5435b9c88dbeec4
\ No newline at end of file
diff --git a/cpp-client-api/inherit_graph_22.png b/cpp-client-api/inherit_graph_22.png
index c5ba695..f6fe49c 100644
--- a/cpp-client-api/inherit_graph_22.png
+++ b/cpp-client-api/inherit_graph_22.png
Binary files differ
diff --git a/cpp-client-api/inherit_graph_23.map b/cpp-client-api/inherit_graph_23.map
index 1516445..e731f00 100644
--- a/cpp-client-api/inherit_graph_23.map
+++ b/cpp-client-api/inherit_graph_23.map
@@ -1,3 +1,7 @@
 <map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
-<area shape="rect" id="node1" href="$classkudu_1_1internal__logging_1_1CerrLog.html" title="A helper for stderr log sink. " alt="" coords="5,5,153,47"/>
+<area shape="rect" id="node1" href="$classkudu_1_1client_1_1KuduWriteOperation.html" title="A single&#45;row write operation to be sent to a Kudu table. " alt="" coords="5,81,220,108"/>
+<area shape="rect" id="node2" href="$classkudu_1_1client_1_1KuduDelete.html" title="A single row delete to be sent to the cluster. " alt="" coords="270,5,435,32"/>
+<area shape="rect" id="node3" href="$classkudu_1_1client_1_1KuduInsert.html" title="A single row insert to be sent to the cluster. " alt="" coords="273,56,433,83"/>
+<area shape="rect" id="node4" href="$classkudu_1_1client_1_1KuduUpdate.html" title="A single row update to be sent to the cluster. " alt="" coords="268,107,437,133"/>
+<area shape="rect" id="node5" href="$classkudu_1_1client_1_1KuduUpsert.html" title="A single row upsert to be sent to the cluster. " alt="" coords="269,157,436,184"/>
 </map>
diff --git a/cpp-client-api/inherit_graph_23.md5 b/cpp-client-api/inherit_graph_23.md5
index c4a69f9..7ed8cb2 100644
--- a/cpp-client-api/inherit_graph_23.md5
+++ b/cpp-client-api/inherit_graph_23.md5
@@ -1 +1 @@
-44acf00efa546724e412c2626666ef8a
\ No newline at end of file
+89c8bf76229754f04e295970ab3d02be
\ No newline at end of file
diff --git a/cpp-client-api/inherit_graph_23.png b/cpp-client-api/inherit_graph_23.png
index 2a79c13..88c9f26 100644
--- a/cpp-client-api/inherit_graph_23.png
+++ b/cpp-client-api/inherit_graph_23.png
Binary files differ
diff --git a/cpp-client-api/inherit_graph_24.map b/cpp-client-api/inherit_graph_24.map
index 9693ad3..905d41b 100644
--- a/cpp-client-api/inherit_graph_24.map
+++ b/cpp-client-api/inherit_graph_24.map
@@ -1,3 +1,3 @@
 <map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
-<area shape="rect" id="node1" href="$classkudu_1_1internal__logging_1_1NullLog.html" title="A helper for the nil log sink. " alt="" coords="5,5,153,47"/>
+<area shape="rect" id="node1" href="$classkudu_1_1client_1_1ResourceMetrics.html" title="A generic catalog of simple metrics. " alt="" coords="5,5,201,32"/>
 </map>
diff --git a/cpp-client-api/inherit_graph_24.md5 b/cpp-client-api/inherit_graph_24.md5
index 932a472..3cb04d9 100644
--- a/cpp-client-api/inherit_graph_24.md5
+++ b/cpp-client-api/inherit_graph_24.md5
@@ -1 +1 @@
-f844ef33330dc9302a11894540620f3e
\ No newline at end of file
+2cdca15b126c424b1decd815f8a69dae
\ No newline at end of file
diff --git a/cpp-client-api/inherit_graph_24.png b/cpp-client-api/inherit_graph_24.png
index de1fadf..c5ba695 100644
--- a/cpp-client-api/inherit_graph_24.png
+++ b/cpp-client-api/inherit_graph_24.png
Binary files differ
diff --git a/cpp-client-api/inherit_graph_25.map b/cpp-client-api/inherit_graph_25.map
index 8d594d4..1516445 100644
--- a/cpp-client-api/inherit_graph_25.map
+++ b/cpp-client-api/inherit_graph_25.map
@@ -1,3 +1,3 @@
 <map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
-<area shape="rect" id="node1" href="$classkudu_1_1MonoDelta.html" title="A representation of a time interval. " alt="" coords="5,5,127,32"/>
+<area shape="rect" id="node1" href="$classkudu_1_1internal__logging_1_1CerrLog.html" title="A helper for stderr log sink. " alt="" coords="5,5,153,47"/>
 </map>
diff --git a/cpp-client-api/inherit_graph_25.md5 b/cpp-client-api/inherit_graph_25.md5
index cb1bbd0..c4a69f9 100644
--- a/cpp-client-api/inherit_graph_25.md5
+++ b/cpp-client-api/inherit_graph_25.md5
@@ -1 +1 @@
-448dc707ea4bdf03ed3f76001d20ee55
\ No newline at end of file
+44acf00efa546724e412c2626666ef8a
\ No newline at end of file
diff --git a/cpp-client-api/inherit_graph_25.png b/cpp-client-api/inherit_graph_25.png
index 6f0ccc2..2a79c13 100644
--- a/cpp-client-api/inherit_graph_25.png
+++ b/cpp-client-api/inherit_graph_25.png
Binary files differ
diff --git a/cpp-client-api/inherit_graph_26.map b/cpp-client-api/inherit_graph_26.map
index 1031c9b..9693ad3 100644
--- a/cpp-client-api/inherit_graph_26.map
+++ b/cpp-client-api/inherit_graph_26.map
@@ -1,3 +1,3 @@
 <map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
-<area shape="rect" id="node1" href="$classkudu_1_1MonoTime.html" title="Representation of a particular point in time. " alt="" coords="5,5,124,32"/>
+<area shape="rect" id="node1" href="$classkudu_1_1internal__logging_1_1NullLog.html" title="A helper for the nil log sink. " alt="" coords="5,5,153,47"/>
 </map>
diff --git a/cpp-client-api/inherit_graph_26.md5 b/cpp-client-api/inherit_graph_26.md5
index f6fa1a8..932a472 100644
--- a/cpp-client-api/inherit_graph_26.md5
+++ b/cpp-client-api/inherit_graph_26.md5
@@ -1 +1 @@
-595f5fa28a253ae00a3ded7bd52eb89b
\ No newline at end of file
+f844ef33330dc9302a11894540620f3e
\ No newline at end of file
diff --git a/cpp-client-api/inherit_graph_26.png b/cpp-client-api/inherit_graph_26.png
index 2c4a474..de1fadf 100644
--- a/cpp-client-api/inherit_graph_26.png
+++ b/cpp-client-api/inherit_graph_26.png
Binary files differ
diff --git a/cpp-client-api/inherit_graph_27.map b/cpp-client-api/inherit_graph_27.map
index e3c0d33..8d594d4 100644
--- a/cpp-client-api/inherit_graph_27.map
+++ b/cpp-client-api/inherit_graph_27.map
@@ -1,3 +1,3 @@
 <map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
-<area shape="rect" id="node1" href="$classkudu_1_1Slice.html" title="A wrapper around externally allocated data. " alt="" coords="5,5,92,32"/>
+<area shape="rect" id="node1" href="$classkudu_1_1MonoDelta.html" title="A representation of a time interval. " alt="" coords="5,5,127,32"/>
 </map>
diff --git a/cpp-client-api/inherit_graph_27.md5 b/cpp-client-api/inherit_graph_27.md5
index b84db0b..cb1bbd0 100644
--- a/cpp-client-api/inherit_graph_27.md5
+++ b/cpp-client-api/inherit_graph_27.md5
@@ -1 +1 @@
-d62ff9513e23a17593079ae77dba36a9
\ No newline at end of file
+448dc707ea4bdf03ed3f76001d20ee55
\ No newline at end of file
diff --git a/cpp-client-api/inherit_graph_27.png b/cpp-client-api/inherit_graph_27.png
index 0cb0d17..6f0ccc2 100644
--- a/cpp-client-api/inherit_graph_27.png
+++ b/cpp-client-api/inherit_graph_27.png
Binary files differ
diff --git a/cpp-client-api/inherit_graph_28.map b/cpp-client-api/inherit_graph_28.map
index 1ff423a..1031c9b 100644
--- a/cpp-client-api/inherit_graph_28.map
+++ b/cpp-client-api/inherit_graph_28.map
@@ -1,3 +1,3 @@
 <map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
-<area shape="rect" id="node1" href="$structkudu_1_1Slice_1_1Comparator.html" title="Comparator struct, useful for ordered collections (like STL maps). " alt="" coords="5,5,168,32"/>
+<area shape="rect" id="node1" href="$classkudu_1_1MonoTime.html" title="Representation of a particular point in time. " alt="" coords="5,5,124,32"/>
 </map>
diff --git a/cpp-client-api/inherit_graph_28.md5 b/cpp-client-api/inherit_graph_28.md5
index ebb0ca5..f6fa1a8 100644
--- a/cpp-client-api/inherit_graph_28.md5
+++ b/cpp-client-api/inherit_graph_28.md5
@@ -1 +1 @@
-e2f240a7649569cb768b7c6dff77c7f8
\ No newline at end of file
+595f5fa28a253ae00a3ded7bd52eb89b
\ No newline at end of file
diff --git a/cpp-client-api/inherit_graph_28.png b/cpp-client-api/inherit_graph_28.png
index c44891a..2c4a474 100644
--- a/cpp-client-api/inherit_graph_28.png
+++ b/cpp-client-api/inherit_graph_28.png
Binary files differ
diff --git a/cpp-client-api/inherit_graph_29.map b/cpp-client-api/inherit_graph_29.map
index 1ea3723..e3c0d33 100644
--- a/cpp-client-api/inherit_graph_29.map
+++ b/cpp-client-api/inherit_graph_29.map
@@ -1,3 +1,3 @@
 <map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
-<area shape="rect" id="node1" href="$structkudu_1_1SliceMap.html" title="STL map whose keys are Slices. " alt="" coords="5,5,149,32"/>
+<area shape="rect" id="node1" href="$classkudu_1_1Slice.html" title="A wrapper around externally allocated data. " alt="" coords="5,5,92,32"/>
 </map>
diff --git a/cpp-client-api/inherit_graph_29.md5 b/cpp-client-api/inherit_graph_29.md5
index a8f0296..b84db0b 100644
--- a/cpp-client-api/inherit_graph_29.md5
+++ b/cpp-client-api/inherit_graph_29.md5
@@ -1 +1 @@
-43226203bb9299dfb8409129f924146a
\ No newline at end of file
+d62ff9513e23a17593079ae77dba36a9
\ No newline at end of file
diff --git a/cpp-client-api/inherit_graph_29.png b/cpp-client-api/inherit_graph_29.png
index 93d09e7..0cb0d17 100644
--- a/cpp-client-api/inherit_graph_29.png
+++ b/cpp-client-api/inherit_graph_29.png
Binary files differ
diff --git a/cpp-client-api/inherit_graph_30.map b/cpp-client-api/inherit_graph_30.map
index d1ddc21..1ff423a 100644
--- a/cpp-client-api/inherit_graph_30.map
+++ b/cpp-client-api/inherit_graph_30.map
@@ -1,3 +1,3 @@
 <map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
-<area shape="rect" id="node1" href="$classkudu_1_1Status.html" title="A representation of an operation&#39;s outcome. " alt="" coords="5,5,101,32"/>
+<area shape="rect" id="node1" href="$structkudu_1_1Slice_1_1Comparator.html" title="Comparator struct, useful for ordered collections (like STL maps). " alt="" coords="5,5,168,32"/>
 </map>
diff --git a/cpp-client-api/inherit_graph_30.md5 b/cpp-client-api/inherit_graph_30.md5
index 962036e..ebb0ca5 100644
--- a/cpp-client-api/inherit_graph_30.md5
+++ b/cpp-client-api/inherit_graph_30.md5
@@ -1 +1 @@
-86c7a6a058ccbeb7e4a8feef033f386f
\ No newline at end of file
+e2f240a7649569cb768b7c6dff77c7f8
\ No newline at end of file
diff --git a/cpp-client-api/inherit_graph_30.png b/cpp-client-api/inherit_graph_30.png
index b59e31a..c44891a 100644
--- a/cpp-client-api/inherit_graph_30.png
+++ b/cpp-client-api/inherit_graph_30.png
Binary files differ
diff --git a/cpp-client-api/inherit_graph_31.map b/cpp-client-api/inherit_graph_31.map
index ab26fca..1ea3723 100644
--- a/cpp-client-api/inherit_graph_31.map
+++ b/cpp-client-api/inherit_graph_31.map
@@ -1,3 +1,3 @@
 <map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
-<area shape="rect" id="node1" href="$classKuduPartialRow.html" title="A row which may only contain values for a subset of the columns. " alt="" coords="5,5,121,32"/>
+<area shape="rect" id="node1" href="$structkudu_1_1SliceMap.html" title="STL map whose keys are Slices. " alt="" coords="5,5,149,32"/>
 </map>
diff --git a/cpp-client-api/inherit_graph_31.md5 b/cpp-client-api/inherit_graph_31.md5
index aae0ea1..a8f0296 100644
--- a/cpp-client-api/inherit_graph_31.md5
+++ b/cpp-client-api/inherit_graph_31.md5
@@ -1 +1 @@
-89b1e989775181f44bc11a3a6b3a5476
\ No newline at end of file
+43226203bb9299dfb8409129f924146a
\ No newline at end of file
diff --git a/cpp-client-api/inherit_graph_31.png b/cpp-client-api/inherit_graph_31.png
index 83cacab..93d09e7 100644
--- a/cpp-client-api/inherit_graph_31.png
+++ b/cpp-client-api/inherit_graph_31.png
Binary files differ
diff --git a/cpp-client-api/inherit_graph_7.map b/cpp-client-api/inherit_graph_7.map
index 736c5f2..65eb54b 100644
--- a/cpp-client-api/inherit_graph_7.map
+++ b/cpp-client-api/inherit_graph_7.map
@@ -1,3 +1,3 @@
 <map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
-<area shape="rect" id="node1" href="$classkudu_1_1client_1_1KuduPredicate.html" title="A representation of comparison predicate for Kudu queries. " alt="" coords="5,5,188,32"/>
+<area shape="rect" id="node1" href="$classkudu_1_1client_1_1KuduPartitioner.html" title="kudu::client::KuduPartitioner" alt="" coords="5,5,192,32"/>
 </map>
diff --git a/cpp-client-api/inherit_graph_7.md5 b/cpp-client-api/inherit_graph_7.md5
index c855142..400e8d7 100644
--- a/cpp-client-api/inherit_graph_7.md5
+++ b/cpp-client-api/inherit_graph_7.md5
@@ -1 +1 @@
-e193ee21805ad13d5b88b1c4c7da1694
\ No newline at end of file
+3032012a915d454f317d9c92b04fe417
\ No newline at end of file
diff --git a/cpp-client-api/inherit_graph_7.png b/cpp-client-api/inherit_graph_7.png
index 8fb161f..4f56714 100644
--- a/cpp-client-api/inherit_graph_7.png
+++ b/cpp-client-api/inherit_graph_7.png
Binary files differ
diff --git a/cpp-client-api/inherit_graph_8.map b/cpp-client-api/inherit_graph_8.map
index 35ecf07..e4f7210 100644
--- a/cpp-client-api/inherit_graph_8.map
+++ b/cpp-client-api/inherit_graph_8.map
@@ -1,3 +1,3 @@
 <map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
-<area shape="rect" id="node1" href="$classkudu_1_1client_1_1KuduReplica.html" title="In&#45;memory representation of a remote tablet&#39;s replica. " alt="" coords="5,5,176,32"/>
+<area shape="rect" id="node1" href="$classkudu_1_1client_1_1KuduPartitionerBuilder.html" title="Builder for Partitioner instances. " alt="" coords="5,5,192,47"/>
 </map>
diff --git a/cpp-client-api/inherit_graph_8.md5 b/cpp-client-api/inherit_graph_8.md5
index 4fc3899..e86846b 100644
--- a/cpp-client-api/inherit_graph_8.md5
+++ b/cpp-client-api/inherit_graph_8.md5
@@ -1 +1 @@
-472011b462e65b3c2f82c8e8ebae186a
\ No newline at end of file
+a407276fb7428050b0a158f09c214210
\ No newline at end of file
diff --git a/cpp-client-api/inherit_graph_8.png b/cpp-client-api/inherit_graph_8.png
index 624c60a..785b8e5 100644
--- a/cpp-client-api/inherit_graph_8.png
+++ b/cpp-client-api/inherit_graph_8.png
Binary files differ
diff --git a/cpp-client-api/inherit_graph_9.map b/cpp-client-api/inherit_graph_9.map
index 5134094..736c5f2 100644
--- a/cpp-client-api/inherit_graph_9.map
+++ b/cpp-client-api/inherit_graph_9.map
@@ -1,3 +1,3 @@
 <map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
-<area shape="rect" id="node2" href="$classkudu_1_1client_1_1KuduScanBatch.html" title="A batch of zero or more rows returned by a scan operation. " alt="" coords="120,31,311,57"/>
+<area shape="rect" id="node1" href="$classkudu_1_1client_1_1KuduPredicate.html" title="A representation of comparison predicate for Kudu queries. " alt="" coords="5,5,188,32"/>
 </map>
diff --git a/cpp-client-api/inherit_graph_9.md5 b/cpp-client-api/inherit_graph_9.md5
index 28073da..c855142 100644
--- a/cpp-client-api/inherit_graph_9.md5
+++ b/cpp-client-api/inherit_graph_9.md5
@@ -1 +1 @@
-7886916407d9d6ccea8f7d3bddd4df53
\ No newline at end of file
+e193ee21805ad13d5b88b1c4c7da1694
\ No newline at end of file
diff --git a/cpp-client-api/inherit_graph_9.png b/cpp-client-api/inherit_graph_9.png
index e690f88..8fb161f 100644
--- a/cpp-client-api/inherit_graph_9.png
+++ b/cpp-client-api/inherit_graph_9.png
Binary files differ
diff --git a/cpp-client-api/inherits.html b/cpp-client-api/inherits.html
index 1da71a8..31458b8 100644
--- a/cpp-client-api/inherits.html
+++ b/cpp-client-api/inherits.html
@@ -129,79 +129,89 @@
 <area shape="rect" id="node3" href="classkudu_1_1client_1_1KuduLoggingMemberCallback.html" title="The logging callback that invokes a member function of an object. " alt="" coords="225,71,397,112"/>
 </map>
 </td></tr>
-<tr><td><img src="inherit_graph_7.png" border="0" alt="" usemap="#kudu_1_1client_1_1KuduPredicate"/>
+<tr><td><img src="inherit_graph_7.png" border="0" alt="" usemap="#kudu_1_1client_1_1KuduPartitioner"/>
+<map name="kudu_1_1client_1_1KuduPartitioner" id="kudu_1_1client_1_1KuduPartitioner">
+<area shape="rect" id="node1" href="classkudu_1_1client_1_1KuduPartitioner.html" title="kudu::client::KuduPartitioner" alt="" coords="5,5,192,32"/>
+</map>
+</td></tr>
+<tr><td><img src="inherit_graph_8.png" border="0" alt="" usemap="#kudu_1_1client_1_1KuduPartitionerBuilder"/>
+<map name="kudu_1_1client_1_1KuduPartitionerBuilder" id="kudu_1_1client_1_1KuduPartitionerBuilder">
+<area shape="rect" id="node1" href="classkudu_1_1client_1_1KuduPartitionerBuilder.html" title="Builder for Partitioner instances. " alt="" coords="5,5,192,47"/>
+</map>
+</td></tr>
+<tr><td><img src="inherit_graph_9.png" border="0" alt="" usemap="#kudu_1_1client_1_1KuduPredicate"/>
 <map name="kudu_1_1client_1_1KuduPredicate" id="kudu_1_1client_1_1KuduPredicate">
 <area shape="rect" id="node1" href="classkudu_1_1client_1_1KuduPredicate.html" title="A representation of comparison predicate for Kudu queries. " alt="" coords="5,5,188,32"/>
 </map>
 </td></tr>
-<tr><td><img src="inherit_graph_8.png" border="0" alt="" usemap="#kudu_1_1client_1_1KuduReplica"/>
+<tr><td><img src="inherit_graph_10.png" border="0" alt="" usemap="#kudu_1_1client_1_1KuduReplica"/>
 <map name="kudu_1_1client_1_1KuduReplica" id="kudu_1_1client_1_1KuduReplica">
 <area shape="rect" id="node1" href="classkudu_1_1client_1_1KuduReplica.html" title="In&#45;memory representation of a remote tablet&#39;s replica. " alt="" coords="5,5,176,32"/>
 </map>
 </td></tr>
-<tr><td><img src="inherit_graph_9.png" border="0" alt="" usemap="#kudu_1_1client_1_1KuduScanBatch"/>
+<tr><td><img src="inherit_graph_11.png" border="0" alt="" usemap="#kudu_1_1client_1_1KuduScanBatch"/>
 <map name="kudu_1_1client_1_1KuduScanBatch" id="kudu_1_1client_1_1KuduScanBatch">
 <area shape="rect" id="node2" href="classkudu_1_1client_1_1KuduScanBatch.html" title="A batch of zero or more rows returned by a scan operation. " alt="" coords="120,31,311,57"/>
 </map>
 </td></tr>
-<tr><td><img src="inherit_graph_10.png" border="0" alt="" usemap="#kudu_1_1client_1_1KuduScanner"/>
+<tr><td><img src="inherit_graph_12.png" border="0" alt="" usemap="#kudu_1_1client_1_1KuduScanner"/>
 <map name="kudu_1_1client_1_1KuduScanner" id="kudu_1_1client_1_1KuduScanner">
 <area shape="rect" id="node1" href="classkudu_1_1client_1_1KuduScanner.html" title="This class is a representation of a single scan. " alt="" coords="5,5,180,32"/>
 </map>
 </td></tr>
-<tr><td><img src="inherit_graph_11.png" border="0" alt="" usemap="#kudu_1_1client_1_1KuduScanToken"/>
+<tr><td><img src="inherit_graph_13.png" border="0" alt="" usemap="#kudu_1_1client_1_1KuduScanToken"/>
 <map name="kudu_1_1client_1_1KuduScanToken" id="kudu_1_1client_1_1KuduScanToken">
 <area shape="rect" id="node1" href="classkudu_1_1client_1_1KuduScanToken.html" title="A scan descriptor limited to a single physical contiguous location. " alt="" coords="5,5,199,32"/>
 </map>
 </td></tr>
-<tr><td><img src="inherit_graph_12.png" border="0" alt="" usemap="#kudu_1_1client_1_1KuduScanTokenBuilder"/>
+<tr><td><img src="inherit_graph_14.png" border="0" alt="" usemap="#kudu_1_1client_1_1KuduScanTokenBuilder"/>
 <map name="kudu_1_1client_1_1KuduScanTokenBuilder" id="kudu_1_1client_1_1KuduScanTokenBuilder">
 <area shape="rect" id="node1" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html" title="Builds scan tokens for a table. " alt="" coords="5,5,199,47"/>
 </map>
 </td></tr>
-<tr><td><img src="inherit_graph_13.png" border="0" alt="" usemap="#kudu_1_1client_1_1KuduSchema"/>
+<tr><td><img src="inherit_graph_15.png" border="0" alt="" usemap="#kudu_1_1client_1_1KuduSchema"/>
 <map name="kudu_1_1client_1_1KuduSchema" id="kudu_1_1client_1_1KuduSchema">
 <area shape="rect" id="node1" href="classkudu_1_1client_1_1KuduSchema.html" title="A representation of a table&#39;s schema. " alt="" coords="5,5,180,32"/>
 </map>
 </td></tr>
-<tr><td><img src="inherit_graph_14.png" border="0" alt="" usemap="#kudu_1_1client_1_1KuduSchemaBuilder"/>
+<tr><td><img src="inherit_graph_16.png" border="0" alt="" usemap="#kudu_1_1client_1_1KuduSchemaBuilder"/>
 <map name="kudu_1_1client_1_1KuduSchemaBuilder" id="kudu_1_1client_1_1KuduSchemaBuilder">
 <area shape="rect" id="node1" href="classkudu_1_1client_1_1KuduSchemaBuilder.html" title="Builder API for constructing a KuduSchema object. " alt="" coords="5,5,180,47"/>
 </map>
 </td></tr>
-<tr><td><img src="inherit_graph_15.png" border="0" alt="" usemap="#kudu_1_1client_1_1KuduStatusCallback"/>
+<tr><td><img src="inherit_graph_17.png" border="0" alt="" usemap="#kudu_1_1client_1_1KuduStatusCallback"/>
 <map name="kudu_1_1client_1_1KuduStatusCallback" id="kudu_1_1client_1_1KuduStatusCallback">
 <area shape="rect" id="node1" href="classkudu_1_1client_1_1KuduStatusCallback.html" title="The interface for all status callbacks. " alt="" coords="5,39,171,80"/>
 <area shape="rect" id="node2" href="classkudu_1_1client_1_1KuduStatusFunctionCallback.html" title="The status callback that invokes a function by pointer with a single argument. " alt="" coords="219,5,384,47"/>
 <area shape="rect" id="node3" href="classkudu_1_1client_1_1KuduStatusMemberCallback.html" title="The status callback that invokes a member function of an object. " alt="" coords="219,71,384,112"/>
 </map>
 </td></tr>
-<tr><td><img src="inherit_graph_16.png" border="0" alt="" usemap="#kudu_1_1client_1_1KuduTableAlterer"/>
+<tr><td><img src="inherit_graph_18.png" border="0" alt="" usemap="#kudu_1_1client_1_1KuduTableAlterer"/>
 <map name="kudu_1_1client_1_1KuduTableAlterer" id="kudu_1_1client_1_1KuduTableAlterer">
 <area shape="rect" id="node1" href="classkudu_1_1client_1_1KuduTableAlterer.html" title="Alters an existing table based on the provided steps. " alt="" coords="5,5,203,32"/>
 </map>
 </td></tr>
-<tr><td><img src="inherit_graph_17.png" border="0" alt="" usemap="#kudu_1_1client_1_1KuduTableCreator"/>
+<tr><td><img src="inherit_graph_19.png" border="0" alt="" usemap="#kudu_1_1client_1_1KuduTableCreator"/>
 <map name="kudu_1_1client_1_1KuduTableCreator" id="kudu_1_1client_1_1KuduTableCreator">
 <area shape="rect" id="node1" href="classkudu_1_1client_1_1KuduTableCreator.html" title="A helper class to create a new table with the desired options. " alt="" coords="5,5,208,32"/>
 </map>
 </td></tr>
-<tr><td><img src="inherit_graph_18.png" border="0" alt="" usemap="#kudu_1_1client_1_1KuduTablet"/>
+<tr><td><img src="inherit_graph_20.png" border="0" alt="" usemap="#kudu_1_1client_1_1KuduTablet"/>
 <map name="kudu_1_1client_1_1KuduTablet" id="kudu_1_1client_1_1KuduTablet">
 <area shape="rect" id="node1" href="classkudu_1_1client_1_1KuduTablet.html" title="In&#45;memory representation of a remote tablet. " alt="" coords="5,5,168,32"/>
 </map>
 </td></tr>
-<tr><td><img src="inherit_graph_19.png" border="0" alt="" usemap="#kudu_1_1client_1_1KuduTabletServer"/>
+<tr><td><img src="inherit_graph_21.png" border="0" alt="" usemap="#kudu_1_1client_1_1KuduTabletServer"/>
 <map name="kudu_1_1client_1_1KuduTabletServer" id="kudu_1_1client_1_1KuduTabletServer">
 <area shape="rect" id="node1" href="classkudu_1_1client_1_1KuduTabletServer.html" title="In&#45;memory representation of a remote tablet server. " alt="" coords="5,5,168,47"/>
 </map>
 </td></tr>
-<tr><td><img src="inherit_graph_20.png" border="0" alt="" usemap="#kudu_1_1client_1_1KuduValue"/>
+<tr><td><img src="inherit_graph_22.png" border="0" alt="" usemap="#kudu_1_1client_1_1KuduValue"/>
 <map name="kudu_1_1client_1_1KuduValue" id="kudu_1_1client_1_1KuduValue">
 <area shape="rect" id="node1" href="classkudu_1_1client_1_1KuduValue.html" title="A constant cell value with a specific type. " alt="" coords="5,5,165,32"/>
 </map>
 </td></tr>
-<tr><td><img src="inherit_graph_21.png" border="0" alt="" usemap="#kudu_1_1client_1_1KuduWriteOperation"/>
+<tr><td><img src="inherit_graph_23.png" border="0" alt="" usemap="#kudu_1_1client_1_1KuduWriteOperation"/>
 <map name="kudu_1_1client_1_1KuduWriteOperation" id="kudu_1_1client_1_1KuduWriteOperation">
 <area shape="rect" id="node1" href="classkudu_1_1client_1_1KuduWriteOperation.html" title="A single&#45;row write operation to be sent to a Kudu table. " alt="" coords="5,81,220,108"/>
 <area shape="rect" id="node2" href="classkudu_1_1client_1_1KuduDelete.html" title="A single row delete to be sent to the cluster. " alt="" coords="270,5,435,32"/>
@@ -210,52 +220,52 @@
 <area shape="rect" id="node5" href="classkudu_1_1client_1_1KuduUpsert.html" title="A single row upsert to be sent to the cluster. " alt="" coords="269,157,436,184"/>
 </map>
 </td></tr>
-<tr><td><img src="inherit_graph_22.png" border="0" alt="" usemap="#kudu_1_1client_1_1ResourceMetrics"/>
+<tr><td><img src="inherit_graph_24.png" border="0" alt="" usemap="#kudu_1_1client_1_1ResourceMetrics"/>
 <map name="kudu_1_1client_1_1ResourceMetrics" id="kudu_1_1client_1_1ResourceMetrics">
 <area shape="rect" id="node1" href="classkudu_1_1client_1_1ResourceMetrics.html" title="A generic catalog of simple metrics. " alt="" coords="5,5,201,32"/>
 </map>
 </td></tr>
-<tr><td><img src="inherit_graph_23.png" border="0" alt="" usemap="#kudu_1_1internal__logging_1_1CerrLog"/>
+<tr><td><img src="inherit_graph_25.png" border="0" alt="" usemap="#kudu_1_1internal__logging_1_1CerrLog"/>
 <map name="kudu_1_1internal__logging_1_1CerrLog" id="kudu_1_1internal__logging_1_1CerrLog">
 <area shape="rect" id="node1" href="classkudu_1_1internal__logging_1_1CerrLog.html" title="A helper for stderr log sink. " alt="" coords="5,5,153,47"/>
 </map>
 </td></tr>
-<tr><td><img src="inherit_graph_24.png" border="0" alt="" usemap="#kudu_1_1internal__logging_1_1NullLog"/>
+<tr><td><img src="inherit_graph_26.png" border="0" alt="" usemap="#kudu_1_1internal__logging_1_1NullLog"/>
 <map name="kudu_1_1internal__logging_1_1NullLog" id="kudu_1_1internal__logging_1_1NullLog">
 <area shape="rect" id="node1" href="classkudu_1_1internal__logging_1_1NullLog.html" title="A helper for the nil log sink. " alt="" coords="5,5,153,47"/>
 </map>
 </td></tr>
-<tr><td><img src="inherit_graph_25.png" border="0" alt="" usemap="#kudu_1_1MonoDelta"/>
+<tr><td><img src="inherit_graph_27.png" border="0" alt="" usemap="#kudu_1_1MonoDelta"/>
 <map name="kudu_1_1MonoDelta" id="kudu_1_1MonoDelta">
 <area shape="rect" id="node1" href="classkudu_1_1MonoDelta.html" title="A representation of a time interval. " alt="" coords="5,5,127,32"/>
 </map>
 </td></tr>
-<tr><td><img src="inherit_graph_26.png" border="0" alt="" usemap="#kudu_1_1MonoTime"/>
+<tr><td><img src="inherit_graph_28.png" border="0" alt="" usemap="#kudu_1_1MonoTime"/>
 <map name="kudu_1_1MonoTime" id="kudu_1_1MonoTime">
 <area shape="rect" id="node1" href="classkudu_1_1MonoTime.html" title="Representation of a particular point in time. " alt="" coords="5,5,124,32"/>
 </map>
 </td></tr>
-<tr><td><img src="inherit_graph_27.png" border="0" alt="" usemap="#kudu_1_1Slice"/>
+<tr><td><img src="inherit_graph_29.png" border="0" alt="" usemap="#kudu_1_1Slice"/>
 <map name="kudu_1_1Slice" id="kudu_1_1Slice">
 <area shape="rect" id="node1" href="classkudu_1_1Slice.html" title="A wrapper around externally allocated data. " alt="" coords="5,5,92,32"/>
 </map>
 </td></tr>
-<tr><td><img src="inherit_graph_28.png" border="0" alt="" usemap="#kudu_1_1Slice_1_1Comparator"/>
+<tr><td><img src="inherit_graph_30.png" border="0" alt="" usemap="#kudu_1_1Slice_1_1Comparator"/>
 <map name="kudu_1_1Slice_1_1Comparator" id="kudu_1_1Slice_1_1Comparator">
 <area shape="rect" id="node1" href="structkudu_1_1Slice_1_1Comparator.html" title="Comparator struct, useful for ordered collections (like STL maps). " alt="" coords="5,5,168,32"/>
 </map>
 </td></tr>
-<tr><td><img src="inherit_graph_29.png" border="0" alt="" usemap="#kudu_1_1SliceMap_3_01T_01_4"/>
+<tr><td><img src="inherit_graph_31.png" border="0" alt="" usemap="#kudu_1_1SliceMap_3_01T_01_4"/>
 <map name="kudu_1_1SliceMap_3_01T_01_4" id="kudu_1_1SliceMap_3_01T_01_4">
 <area shape="rect" id="node1" href="structkudu_1_1SliceMap.html" title="STL map whose keys are Slices. " alt="" coords="5,5,149,32"/>
 </map>
 </td></tr>
-<tr><td><img src="inherit_graph_30.png" border="0" alt="" usemap="#kudu_1_1Status"/>
+<tr><td><img src="inherit_graph_32.png" border="0" alt="" usemap="#kudu_1_1Status"/>
 <map name="kudu_1_1Status" id="kudu_1_1Status">
 <area shape="rect" id="node1" href="classkudu_1_1Status.html" title="A representation of an operation&#39;s outcome. " alt="" coords="5,5,101,32"/>
 </map>
 </td></tr>
-<tr><td><img src="inherit_graph_31.png" border="0" alt="" usemap="#KuduPartialRow"/>
+<tr><td><img src="inherit_graph_33.png" border="0" alt="" usemap="#KuduPartialRow"/>
 <map name="KuduPartialRow" id="KuduPartialRow">
 <area shape="rect" id="node1" href="classKuduPartialRow.html" title="A row which may only contain values for a subset of the columns. " alt="" coords="5,5,121,32"/>
 </map>
@@ -265,7 +275,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:57 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/kudu__export_8h_source.html b/cpp-client-api/kudu__export_8h_source.html
index ed017dc..5ee2d49 100644
--- a/cpp-client-api/kudu__export_8h_source.html
+++ b/cpp-client-api/kudu__export_8h_source.html
@@ -93,7 +93,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:02 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/monotime_8h_source.html b/cpp-client-api/monotime_8h_source.html
index ebb2bfc..00183ff 100644
--- a/cpp-client-api/monotime_8h_source.html
+++ b/cpp-client-api/monotime_8h_source.html
@@ -96,7 +96,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:02 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/pages.html b/cpp-client-api/pages.html
index 4cd1d31..909d010 100644
--- a/cpp-client-api/pages.html
+++ b/cpp-client-api/pages.html
@@ -89,7 +89,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/partial__row_8h_source.html b/cpp-client-api/partial__row_8h_source.html
index 28d86a4..e55b82f 100644
--- a/cpp-client-api/partial__row_8h_source.html
+++ b/cpp-client-api/partial__row_8h_source.html
@@ -96,7 +96,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:02 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/resource__metrics_8h_source.html b/cpp-client-api/resource__metrics_8h_source.html
index c146cc0..a539a96 100644
--- a/cpp-client-api/resource__metrics_8h_source.html
+++ b/cpp-client-api/resource__metrics_8h_source.html
@@ -95,7 +95,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:02 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/row__result_8h_source.html b/cpp-client-api/row__result_8h_source.html
index 9b849ef..b962040 100644
--- a/cpp-client-api/row__result_8h_source.html
+++ b/cpp-client-api/row__result_8h_source.html
@@ -90,12 +90,12 @@
 </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&quot;); 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;<span class="preprocessor">#ifndef KUDU_CLIENT_ROW_RESULT_H</span></div><div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#define KUDU_CLIENT_ROW_RESULT_H</span></div><div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;</div><div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#include &quot;kudu/client/scan_batch.h&quot;</span></div><div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;</div><div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="keyword">namespace </span><a class="code" href="namespacekudu.html">kudu</a> {</div><div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="keyword">namespace </span>client {</div><div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;</div><div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;<span class="keyword">typedef</span> <a class="code" href="classkudu_1_1client_1_1KuduScanBatch.html#a92bbfa48e9b503181c2dfb5f11f14e4e">KuduScanBatch::RowPtr</a> KuduRowResult;</div><div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;</div><div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;} <span class="comment">// namespace client</span></div><div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;} <span class="comment">// namespace kudu</span></div><div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;</div><div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;<span class="preprocessor">#endif</span></div><div class="ttc" id="namespacekudu_html"><div class="ttname"><a href="namespacekudu.html">kudu</a></div><div class="ttdef"><b>Definition:</b> callbacks.h:28</div></div>
-<div class="ttc" id="classkudu_1_1client_1_1KuduScanBatch_html_a92bbfa48e9b503181c2dfb5f11f14e4e"><div class="ttname"><a href="classkudu_1_1client_1_1KuduScanBatch.html#a92bbfa48e9b503181c2dfb5f11f14e4e">kudu::client::KuduScanBatch::RowPtr</a></div><div class="ttdeci">RowPtr()</div><div class="ttdef"><b>Definition:</b> scan_batch.h:132</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduScanBatch_html_a92bbfa48e9b503181c2dfb5f11f14e4e"><div class="ttname"><a href="classkudu_1_1client_1_1KuduScanBatch.html#a92bbfa48e9b503181c2dfb5f11f14e4e">kudu::client::KuduScanBatch::RowPtr</a></div><div class="ttdeci">RowPtr()</div><div class="ttdef"><b>Definition:</b> scan_batch.h:154</div></div>
 </div><!-- fragment --></div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:02 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/scan__batch_8h_source.html b/cpp-client-api/scan__batch_8h_source.html
index 8edda0e..4966075 100644
--- a/cpp-client-api/scan__batch_8h_source.html
+++ b/cpp-client-api/scan__batch_8h_source.html
@@ -89,24 +89,24 @@
 <div class="title">scan_batch.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&quot;); 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;<span class="preprocessor">#ifndef KUDU_CLIENT_SCAN_BATCH_H</span></div><div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#define KUDU_CLIENT_SCAN_BATCH_H</span></div><div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;</div><div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#include &lt;string&gt;</span></div><div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;</div><div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#ifdef KUDU_HEADERS_NO_STUBS</span></div><div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#include &quot;kudu/gutil/macros.h&quot;</span></div><div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#include &quot;kudu/gutil/port.h&quot;</span></div><div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="preprocessor">#include &quot;kudu/client/stubs.h&quot;</span></div><div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;</div><div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;<span class="preprocessor">#include &quot;kudu/util/kudu_export.h&quot;</span></div><div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;<span class="preprocessor">#include &quot;kudu/util/slice.h&quot;</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="keyword">namespace </span><a class="code" href="namespacekudu.html">kudu</a> {</div><div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;<span class="keyword">class </span>Schema;</div><div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;</div><div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;<span class="keyword">namespace </span>tools {</div><div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;<span class="keyword">class </span>ReplicaDumper;</div><div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;} <span class="comment">// namespace tools</span></div><div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;</div><div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;<span class="keyword">namespace </span>client {</div><div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;<span class="keyword">class </span>KuduSchema;</div><div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;</div><div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanBatch.html">   75</a></span>&#160;<span class="keyword">class </span>KUDU_EXPORT <a class="code" href="classkudu_1_1client_1_1KuduScanBatch.html">KuduScanBatch</a> {</div><div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;  <span class="keyword">class </span>RowPtr;</div><div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;</div><div class="line"><a name="l00089"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanBatch.html#ae1a827120c84eeedb703451bd5782467">   89</a></span>&#160;  <span class="keyword">class </span>const_iterator;</div><div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;</div><div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;  <span class="keyword">typedef</span> RowPtr <a class="code" href="classkudu_1_1client_1_1KuduScanBatch.html#ae1a827120c84eeedb703451bd5782467">value_type</a>;</div><div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;</div><div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduScanBatch.html">KuduScanBatch</a>();</div><div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;  ~<a class="code" href="classkudu_1_1client_1_1KuduScanBatch.html">KuduScanBatch</a>();</div><div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;</div><div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;  <span class="keywordtype">int</span> NumRows() <span class="keyword">const</span>;</div><div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;</div><div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;  KuduScanBatch::RowPtr Row(<span class="keywordtype">int</span> idx) <span class="keyword">const</span>;</div><div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;</div><div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;  const_iterator begin() <span class="keyword">const</span>;</div><div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;  const_iterator end() <span class="keyword">const</span>;</div><div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;</div><div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;  <span class="keyword">const</span> <a class="code" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a>* projection_schema() <span class="keyword">const</span>;</div><div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;</div><div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;  <span class="keyword">class </span>KUDU_NO_EXPORT Data;</div><div class="line"><a name="l00121"></a><span class="lineno">  121</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="l00122"></a><span class="lineno">  122</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>tools::ReplicaDumper;</div><div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;</div><div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;  Data* data_;</div><div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;  DISALLOW_COPY_AND_ASSIGN(<a class="code" href="classkudu_1_1client_1_1KuduScanBatch.html">KuduScanBatch</a>);</div><div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;};</div><div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;</div><div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;<span class="keyword">class </span>KUDU_EXPORT <a class="code" href="classkudu_1_1client_1_1KuduScanBatch.html">KuduScanBatch</a>::RowPtr {</div><div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00132"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanBatch.html#a92bbfa48e9b503181c2dfb5f11f14e4e">  132</a></span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduScanBatch.html#a92bbfa48e9b503181c2dfb5f11f14e4e">RowPtr</a>() : schema_(NULL), row_data_(NULL) {}</div><div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;</div><div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;  <span class="keywordtype">bool</span> IsNull(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; col_name) <span class="keyword">const</span>;</div><div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;</div><div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;  <span class="keywordtype">bool</span> IsNull(<span class="keywordtype">int</span> col_idx) <span class="keyword">const</span>;</div><div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;</div><div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> GetBool(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; col_name, <span class="keywordtype">bool</span>* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;</div><div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> GetInt8(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; col_name, int8_t* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> GetInt16(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; col_name, int16_t* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> GetInt32(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; col_name, int32_t* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> GetInt64(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; col_name, int64_t* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> GetUnixTimeMicros(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; col_name, int64_t* micros_since_utc_epoch)</div><div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;    <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;</div><div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> GetFloat(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; col_name, <span class="keywordtype">float</span>* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> GetDouble(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; col_name, <span class="keywordtype">double</span>* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160;</div><div class="line"><a name="l00188"></a><span class="lineno">  188</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> GetBool(<span class="keywordtype">int</span> col_idx, <span class="keywordtype">bool</span>* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160;</div><div class="line"><a name="l00190"></a><span class="lineno">  190</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> GetInt8(<span class="keywordtype">int</span> col_idx, int8_t* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00191"></a><span class="lineno">  191</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> GetInt16(<span class="keywordtype">int</span> col_idx, int16_t* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00192"></a><span class="lineno">  192</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> GetInt32(<span class="keywordtype">int</span> col_idx, int32_t* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00193"></a><span class="lineno">  193</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> GetInt64(<span class="keywordtype">int</span> col_idx, int64_t* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> GetUnixTimeMicros(<span class="keywordtype">int</span> col_idx, int64_t* micros_since_utc_epoch) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160;</div><div class="line"><a name="l00196"></a><span class="lineno">  196</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> GetFloat(<span class="keywordtype">int</span> col_idx, <span class="keywordtype">float</span>* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00197"></a><span class="lineno">  197</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> GetDouble(<span class="keywordtype">int</span> col_idx, <span class="keywordtype">double</span>* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00199"></a><span class="lineno">  199</span>&#160;</div><div class="line"><a name="l00217"></a><span class="lineno">  217</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> GetString(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; col_name, <a class="code" href="classkudu_1_1Slice.html">Slice</a>* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00218"></a><span class="lineno">  218</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> GetBinary(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; col_name, <a class="code" href="classkudu_1_1Slice.html">Slice</a>* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00220"></a><span class="lineno">  220</span>&#160;</div><div class="line"><a name="l00242"></a><span class="lineno">  242</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> GetString(<span class="keywordtype">int</span> col_idx, <a class="code" href="classkudu_1_1Slice.html">Slice</a>* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00243"></a><span class="lineno">  243</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> GetBinary(<span class="keywordtype">int</span> col_idx, <a class="code" href="classkudu_1_1Slice.html">Slice</a>* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00245"></a><span class="lineno">  245</span>&#160;</div><div class="line"><a name="l00252"></a><span class="lineno">  252</span>&#160;  <span class="keyword">const</span> <span class="keywordtype">void</span>* cell(<span class="keywordtype">int</span> col_idx) <span class="keyword">const</span>;</div><div class="line"><a name="l00253"></a><span class="lineno">  253</span>&#160;</div><div class="line"><a name="l00255"></a><span class="lineno">  255</span>&#160;  std::string ToString() <span class="keyword">const</span>;</div><div class="line"><a name="l00256"></a><span class="lineno">  256</span>&#160;</div><div class="line"><a name="l00257"></a><span class="lineno">  257</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00258"></a><span class="lineno">  258</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classkudu_1_1client_1_1KuduScanBatch.html">KuduScanBatch</a>;</div><div class="line"><a name="l00259"></a><span class="lineno">  259</span>&#160;  <span class="keyword">template</span>&lt;<span class="keyword">typename</span> KeyTypeWrapper&gt; <span class="keyword">friend</span> <span class="keyword">struct </span>SliceKeysTestSetup;</div><div class="line"><a name="l00260"></a><span class="lineno">  260</span>&#160;  <span class="keyword">template</span>&lt;<span class="keyword">typename</span> KeyTypeWrapper&gt; <span class="keyword">friend</span> <span class="keyword">struct </span>IntKeysTestSetup;</div><div class="line"><a name="l00261"></a><span class="lineno">  261</span>&#160;</div><div class="line"><a name="l00262"></a><span class="lineno">  262</span>&#160;  <span class="comment">// Only invoked by KuduScanner.</span></div><div class="line"><a name="l00263"></a><span class="lineno">  263</span>&#160;  RowPtr(<span class="keyword">const</span> Schema* schema,</div><div class="line"><a name="l00264"></a><span class="lineno">  264</span>&#160;         <span class="keyword">const</span> uint8_t* row_data)</div><div class="line"><a name="l00265"></a><span class="lineno">  265</span>&#160;      : schema_(schema),</div><div class="line"><a name="l00266"></a><span class="lineno">  266</span>&#160;        row_data_(row_data) {</div><div class="line"><a name="l00267"></a><span class="lineno">  267</span>&#160;  }</div><div class="line"><a name="l00268"></a><span class="lineno">  268</span>&#160;</div><div class="line"><a name="l00269"></a><span class="lineno">  269</span>&#160;  <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div><div class="line"><a name="l00270"></a><span class="lineno">  270</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> Get(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; col_name, <span class="keyword">typename</span> T::cpp_type* val) <span class="keyword">const</span>;</div><div class="line"><a name="l00271"></a><span class="lineno">  271</span>&#160;</div><div class="line"><a name="l00272"></a><span class="lineno">  272</span>&#160;  <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div><div class="line"><a name="l00273"></a><span class="lineno">  273</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> Get(<span class="keywordtype">int</span> col_idx, <span class="keyword">typename</span> T::cpp_type* val) <span class="keyword">const</span>;</div><div class="line"><a name="l00274"></a><span class="lineno">  274</span>&#160;</div><div class="line"><a name="l00275"></a><span class="lineno">  275</span>&#160;  <span class="keyword">const</span> Schema* schema_;</div><div class="line"><a name="l00276"></a><span class="lineno">  276</span>&#160;  <span class="keyword">const</span> uint8_t* row_data_;</div><div class="line"><a name="l00277"></a><span class="lineno">  277</span>&#160;};</div><div class="line"><a name="l00278"></a><span class="lineno">  278</span>&#160;</div><div class="line"><a name="l00279"></a><span class="lineno">  279</span>&#160;<span class="keyword">class </span>KUDU_EXPORT KuduScanBatch::const_iterator</div><div class="line"><a name="l00280"></a><span class="lineno">  280</span>&#160;    : <span class="keyword">public</span> std::iterator&lt;std::forward_iterator_tag, KuduScanBatch::RowPtr&gt; {</div><div class="line"><a name="l00281"></a><span class="lineno">  281</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00282"></a><span class="lineno">  282</span>&#160;  ~const_iterator() {}</div><div class="line"><a name="l00283"></a><span class="lineno">  283</span>&#160;</div><div class="line"><a name="l00285"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanBatch.html#ab057b7b1bfb713a7e8f216e3b288cb10">  285</a></span>&#160;  KuduScanBatch::RowPtr <a class="code" href="classkudu_1_1client_1_1KuduScanBatch.html#ab057b7b1bfb713a7e8f216e3b288cb10">operator*</a>()<span class="keyword"> const </span>{</div><div class="line"><a name="l00286"></a><span class="lineno">  286</span>&#160;    <span class="keywordflow">return</span> batch_-&gt;Row(idx_);</div><div class="line"><a name="l00287"></a><span class="lineno">  287</span>&#160;  }</div><div class="line"><a name="l00288"></a><span class="lineno">  288</span>&#160;</div><div class="line"><a name="l00292"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanBatch.html#ad5df483ed3172caab5a8d6a72abfad0c">  292</a></span>&#160;  const_iterator&amp; <a class="code" href="classkudu_1_1client_1_1KuduScanBatch.html#ad5df483ed3172caab5a8d6a72abfad0c">operator++</a>() {</div><div class="line"><a name="l00293"></a><span class="lineno">  293</span>&#160;    ++idx_;</div><div class="line"><a name="l00294"></a><span class="lineno">  294</span>&#160;    <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div><div class="line"><a name="l00295"></a><span class="lineno">  295</span>&#160;  }</div><div class="line"><a name="l00296"></a><span class="lineno">  296</span>&#160;</div><div class="line"><a name="l00300"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanBatch.html#a4b1ad47fd7d429859b6181825a063c48">  300</a></span>&#160;  const_iterator <a class="code" href="classkudu_1_1client_1_1KuduScanBatch.html#a4b1ad47fd7d429859b6181825a063c48">operator++</a>(<span class="keywordtype">int</span>) {</div><div class="line"><a name="l00301"></a><span class="lineno">  301</span>&#160;    const_iterator tmp(batch_, idx_);</div><div class="line"><a name="l00302"></a><span class="lineno">  302</span>&#160;    ++idx_;</div><div class="line"><a name="l00303"></a><span class="lineno">  303</span>&#160;    <span class="keywordflow">return</span> tmp;</div><div class="line"><a name="l00304"></a><span class="lineno">  304</span>&#160;  }</div><div class="line"><a name="l00305"></a><span class="lineno">  305</span>&#160;</div><div class="line"><a name="l00312"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanBatch.html#a378a5844a4b4774056b26f0003c15048">  312</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classkudu_1_1client_1_1KuduScanBatch.html#a378a5844a4b4774056b26f0003c15048">operator==</a>(<span class="keyword">const</span> const_iterator&amp; other)<span class="keyword"> const </span>{</div><div class="line"><a name="l00313"></a><span class="lineno">  313</span>&#160;    <span class="keywordflow">return</span> (idx_ == other.idx_) &amp;&amp; (batch_ == other.batch_);</div><div class="line"><a name="l00314"></a><span class="lineno">  314</span>&#160;  }</div><div class="line"><a name="l00315"></a><span class="lineno">  315</span>&#160;</div><div class="line"><a name="l00323"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanBatch.html#afd2b2c4cb038cbd366c2af8cf09a3a68">  323</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classkudu_1_1client_1_1KuduScanBatch.html#afd2b2c4cb038cbd366c2af8cf09a3a68">operator!=</a>(<span class="keyword">const</span> const_iterator&amp; other)<span class="keyword"> const </span>{</div><div class="line"><a name="l00324"></a><span class="lineno">  324</span>&#160;    <span class="keywordflow">return</span> !(*<span class="keyword">this</span> == other);</div><div class="line"><a name="l00325"></a><span class="lineno">  325</span>&#160;  }</div><div class="line"><a name="l00326"></a><span class="lineno">  326</span>&#160;</div><div class="line"><a name="l00327"></a><span class="lineno">  327</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00328"></a><span class="lineno">  328</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>KuduScanBatch;</div><div class="line"><a name="l00329"></a><span class="lineno">  329</span>&#160;  const_iterator(<span class="keyword">const</span> KuduScanBatch* b, <span class="keywordtype">int</span> idx)</div><div class="line"><a name="l00330"></a><span class="lineno">  330</span>&#160;      : batch_(b),</div><div class="line"><a name="l00331"></a><span class="lineno">  331</span>&#160;        idx_(idx) {</div><div class="line"><a name="l00332"></a><span class="lineno">  332</span>&#160;  }</div><div class="line"><a name="l00333"></a><span class="lineno">  333</span>&#160;</div><div class="line"><a name="l00334"></a><span class="lineno">  334</span>&#160;  <span class="keyword">const</span> KuduScanBatch* <span class="keyword">const</span> batch_;</div><div class="line"><a name="l00335"></a><span class="lineno">  335</span>&#160;  <span class="keywordtype">int</span> idx_;</div><div class="line"><a name="l00336"></a><span class="lineno">  336</span>&#160;};</div><div class="line"><a name="l00337"></a><span class="lineno">  337</span>&#160;</div><div class="line"><a name="l00338"></a><span class="lineno">  338</span>&#160;</div><div class="line"><a name="l00339"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanBatch.html#a30f55cf8f3c9d6fcb47537e586d82e9f">  339</a></span>&#160;<span class="keyword">inline</span> KuduScanBatch::const_iterator KuduScanBatch::begin()<span class="keyword"> const </span>{</div><div class="line"><a name="l00340"></a><span class="lineno">  340</span>&#160;  <span class="keywordflow">return</span> const_iterator(<span class="keyword">this</span>, 0);</div><div class="line"><a name="l00341"></a><span class="lineno">  341</span>&#160;}</div><div class="line"><a name="l00342"></a><span class="lineno">  342</span>&#160;</div><div class="line"><a name="l00343"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanBatch.html#ad30dcfafb276b5347842882cf68cb522">  343</a></span>&#160;<span class="keyword">inline</span> KuduScanBatch::const_iterator KuduScanBatch::end()<span class="keyword"> const </span>{</div><div class="line"><a name="l00344"></a><span class="lineno">  344</span>&#160;  <span class="keywordflow">return</span> const_iterator(<span class="keyword">this</span>, NumRows());</div><div class="line"><a name="l00345"></a><span class="lineno">  345</span>&#160;}</div><div class="line"><a name="l00346"></a><span class="lineno">  346</span>&#160;</div><div class="line"><a name="l00347"></a><span class="lineno">  347</span>&#160;} <span class="comment">// namespace client</span></div><div class="line"><a name="l00348"></a><span class="lineno">  348</span>&#160;} <span class="comment">// namespace kudu</span></div><div class="line"><a name="l00349"></a><span class="lineno">  349</span>&#160;</div><div class="line"><a name="l00350"></a><span class="lineno">  350</span>&#160;<span class="preprocessor">#endif</span></div><div class="ttc" id="classkudu_1_1client_1_1KuduSchema_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></div><div class="ttdoc">A representation of a table&amp;#39;s schema. </div><div class="ttdef"><b>Definition:</b> schema.h:417</div></div>
+<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&quot;); 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;<span class="preprocessor">#ifndef KUDU_CLIENT_SCAN_BATCH_H</span></div><div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#define KUDU_CLIENT_SCAN_BATCH_H</span></div><div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;</div><div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#include &lt;string&gt;</span></div><div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;</div><div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#ifdef KUDU_HEADERS_NO_STUBS</span></div><div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#include &quot;kudu/gutil/macros.h&quot;</span></div><div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#include &quot;kudu/gutil/port.h&quot;</span></div><div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="preprocessor">#include &quot;kudu/client/stubs.h&quot;</span></div><div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;</div><div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;<span class="preprocessor">#include &quot;kudu/util/kudu_export.h&quot;</span></div><div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;<span class="preprocessor">#include &quot;kudu/util/slice.h&quot;</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="keyword">namespace </span><a class="code" href="namespacekudu.html">kudu</a> {</div><div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;<span class="keyword">class </span>Schema;</div><div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;</div><div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;<span class="keyword">namespace </span>tools {</div><div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;<span class="keyword">class </span>ReplicaDumper;</div><div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;} <span class="comment">// namespace tools</span></div><div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;</div><div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;<span class="keyword">namespace </span>client {</div><div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;<span class="keyword">class </span>KuduSchema;</div><div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;</div><div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanBatch.html">   75</a></span>&#160;<span class="keyword">class </span>KUDU_EXPORT <a class="code" href="classkudu_1_1client_1_1KuduScanBatch.html">KuduScanBatch</a> {</div><div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;  <span class="keyword">class </span>RowPtr;</div><div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;</div><div class="line"><a name="l00089"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanBatch.html#ae1a827120c84eeedb703451bd5782467">   89</a></span>&#160;  <span class="keyword">class </span>const_iterator;</div><div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;</div><div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;  <span class="keyword">typedef</span> RowPtr <a class="code" href="classkudu_1_1client_1_1KuduScanBatch.html#ae1a827120c84eeedb703451bd5782467">value_type</a>;</div><div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;</div><div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduScanBatch.html">KuduScanBatch</a>();</div><div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;  ~<a class="code" href="classkudu_1_1client_1_1KuduScanBatch.html">KuduScanBatch</a>();</div><div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;</div><div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;  <span class="keywordtype">int</span> NumRows() <span class="keyword">const</span>;</div><div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;</div><div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;  KuduScanBatch::RowPtr Row(<span class="keywordtype">int</span> idx) <span class="keyword">const</span>;</div><div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;</div><div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;  const_iterator begin() <span class="keyword">const</span>;</div><div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;  const_iterator end() <span class="keyword">const</span>;</div><div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;</div><div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;  <span class="keyword">const</span> <a class="code" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a>* projection_schema() <span class="keyword">const</span>;</div><div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;</div><div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;  <span class="comment">//</span></div><div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;<span class="comment"></span>  <a class="code" href="classkudu_1_1Slice.html">Slice</a> direct_data() <span class="keyword">const</span>;</div><div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;</div><div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;  <a class="code" href="classkudu_1_1Slice.html">Slice</a> indirect_data() <span class="keyword">const</span>;</div><div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;</div><div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;  <span class="keyword">class </span>KUDU_NO_EXPORT Data;</div><div class="line"><a name="l00143"></a><span class="lineno">  143</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="l00144"></a><span class="lineno">  144</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>tools::ReplicaDumper;</div><div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;</div><div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;  Data* data_;</div><div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;  DISALLOW_COPY_AND_ASSIGN(<a class="code" href="classkudu_1_1client_1_1KuduScanBatch.html">KuduScanBatch</a>);</div><div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;};</div><div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;</div><div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;<span class="keyword">class </span>KUDU_EXPORT <a class="code" href="classkudu_1_1client_1_1KuduScanBatch.html">KuduScanBatch</a>::RowPtr {</div><div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00154"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanBatch.html#a92bbfa48e9b503181c2dfb5f11f14e4e">  154</a></span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduScanBatch.html#a92bbfa48e9b503181c2dfb5f11f14e4e">RowPtr</a>() : schema_(NULL), row_data_(NULL) {}</div><div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;</div><div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;  <span class="keywordtype">bool</span> IsNull(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; col_name) <span class="keyword">const</span>;</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;  <span class="keywordtype">bool</span> IsNull(<span class="keywordtype">int</span> col_idx) <span class="keyword">const</span>;</div><div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;</div><div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> GetBool(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; col_name, <span class="keywordtype">bool</span>* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;</div><div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> GetInt8(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; col_name, int8_t* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> GetInt16(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; col_name, int16_t* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> GetInt32(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; col_name, int32_t* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00184"></a><span class="lineno">  184</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> GetInt64(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; col_name, int64_t* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00185"></a><span class="lineno">  185</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> GetUnixTimeMicros(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; col_name, int64_t* micros_since_utc_epoch)</div><div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160;    <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160;</div><div class="line"><a name="l00188"></a><span class="lineno">  188</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> GetFloat(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; col_name, <span class="keywordtype">float</span>* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> GetDouble(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; col_name, <span class="keywordtype">double</span>* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00191"></a><span class="lineno">  191</span>&#160;</div><div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> GetBool(<span class="keywordtype">int</span> col_idx, <span class="keywordtype">bool</span>* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160;</div><div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> GetInt8(<span class="keywordtype">int</span> col_idx, int8_t* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00213"></a><span class="lineno">  213</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> GetInt16(<span class="keywordtype">int</span> col_idx, int16_t* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00214"></a><span class="lineno">  214</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> GetInt32(<span class="keywordtype">int</span> col_idx, int32_t* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00215"></a><span class="lineno">  215</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> GetInt64(<span class="keywordtype">int</span> col_idx, int64_t* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00216"></a><span class="lineno">  216</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> GetUnixTimeMicros(<span class="keywordtype">int</span> col_idx, int64_t* micros_since_utc_epoch) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00217"></a><span class="lineno">  217</span>&#160;</div><div class="line"><a name="l00218"></a><span class="lineno">  218</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> GetFloat(<span class="keywordtype">int</span> col_idx, <span class="keywordtype">float</span>* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00219"></a><span class="lineno">  219</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> GetDouble(<span class="keywordtype">int</span> col_idx, <span class="keywordtype">double</span>* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00221"></a><span class="lineno">  221</span>&#160;</div><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> GetString(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; col_name, <a class="code" href="classkudu_1_1Slice.html">Slice</a>* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00240"></a><span class="lineno">  240</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> GetBinary(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; col_name, <a class="code" href="classkudu_1_1Slice.html">Slice</a>* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00242"></a><span class="lineno">  242</span>&#160;</div><div class="line"><a name="l00264"></a><span class="lineno">  264</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> GetString(<span class="keywordtype">int</span> col_idx, <a class="code" href="classkudu_1_1Slice.html">Slice</a>* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00265"></a><span class="lineno">  265</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> GetBinary(<span class="keywordtype">int</span> col_idx, <a class="code" href="classkudu_1_1Slice.html">Slice</a>* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00267"></a><span class="lineno">  267</span>&#160;</div><div class="line"><a name="l00274"></a><span class="lineno">  274</span>&#160;  <span class="keyword">const</span> <span class="keywordtype">void</span>* cell(<span class="keywordtype">int</span> col_idx) <span class="keyword">const</span>;</div><div class="line"><a name="l00275"></a><span class="lineno">  275</span>&#160;</div><div class="line"><a name="l00277"></a><span class="lineno">  277</span>&#160;  std::string ToString() <span class="keyword">const</span>;</div><div class="line"><a name="l00278"></a><span class="lineno">  278</span>&#160;</div><div class="line"><a name="l00279"></a><span class="lineno">  279</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00280"></a><span class="lineno">  280</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classkudu_1_1client_1_1KuduScanBatch.html">KuduScanBatch</a>;</div><div class="line"><a name="l00281"></a><span class="lineno">  281</span>&#160;  <span class="keyword">template</span>&lt;<span class="keyword">typename</span> KeyTypeWrapper&gt; <span class="keyword">friend</span> <span class="keyword">struct </span>SliceKeysTestSetup;</div><div class="line"><a name="l00282"></a><span class="lineno">  282</span>&#160;  <span class="keyword">template</span>&lt;<span class="keyword">typename</span> KeyTypeWrapper&gt; <span class="keyword">friend</span> <span class="keyword">struct </span>IntKeysTestSetup;</div><div class="line"><a name="l00283"></a><span class="lineno">  283</span>&#160;</div><div class="line"><a name="l00284"></a><span class="lineno">  284</span>&#160;  <span class="comment">// Only invoked by KuduScanner.</span></div><div class="line"><a name="l00285"></a><span class="lineno">  285</span>&#160;  RowPtr(<span class="keyword">const</span> Schema* schema,</div><div class="line"><a name="l00286"></a><span class="lineno">  286</span>&#160;         <span class="keyword">const</span> uint8_t* row_data)</div><div class="line"><a name="l00287"></a><span class="lineno">  287</span>&#160;      : schema_(schema),</div><div class="line"><a name="l00288"></a><span class="lineno">  288</span>&#160;        row_data_(row_data) {</div><div class="line"><a name="l00289"></a><span class="lineno">  289</span>&#160;  }</div><div class="line"><a name="l00290"></a><span class="lineno">  290</span>&#160;</div><div class="line"><a name="l00291"></a><span class="lineno">  291</span>&#160;  <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div><div class="line"><a name="l00292"></a><span class="lineno">  292</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> Get(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; col_name, <span class="keyword">typename</span> T::cpp_type* val) <span class="keyword">const</span>;</div><div class="line"><a name="l00293"></a><span class="lineno">  293</span>&#160;</div><div class="line"><a name="l00294"></a><span class="lineno">  294</span>&#160;  <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div><div class="line"><a name="l00295"></a><span class="lineno">  295</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> Get(<span class="keywordtype">int</span> col_idx, <span class="keyword">typename</span> T::cpp_type* val) <span class="keyword">const</span>;</div><div class="line"><a name="l00296"></a><span class="lineno">  296</span>&#160;</div><div class="line"><a name="l00297"></a><span class="lineno">  297</span>&#160;  <span class="keyword">const</span> Schema* schema_;</div><div class="line"><a name="l00298"></a><span class="lineno">  298</span>&#160;  <span class="keyword">const</span> uint8_t* row_data_;</div><div class="line"><a name="l00299"></a><span class="lineno">  299</span>&#160;};</div><div class="line"><a name="l00300"></a><span class="lineno">  300</span>&#160;</div><div class="line"><a name="l00301"></a><span class="lineno">  301</span>&#160;<span class="keyword">class </span>KUDU_EXPORT KuduScanBatch::const_iterator</div><div class="line"><a name="l00302"></a><span class="lineno">  302</span>&#160;    : <span class="keyword">public</span> std::iterator&lt;std::forward_iterator_tag, KuduScanBatch::RowPtr&gt; {</div><div class="line"><a name="l00303"></a><span class="lineno">  303</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00304"></a><span class="lineno">  304</span>&#160;  ~const_iterator() {}</div><div class="line"><a name="l00305"></a><span class="lineno">  305</span>&#160;</div><div class="line"><a name="l00307"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanBatch.html#ab057b7b1bfb713a7e8f216e3b288cb10">  307</a></span>&#160;  KuduScanBatch::RowPtr <a class="code" href="classkudu_1_1client_1_1KuduScanBatch.html#ab057b7b1bfb713a7e8f216e3b288cb10">operator*</a>()<span class="keyword"> const </span>{</div><div class="line"><a name="l00308"></a><span class="lineno">  308</span>&#160;    <span class="keywordflow">return</span> batch_-&gt;Row(idx_);</div><div class="line"><a name="l00309"></a><span class="lineno">  309</span>&#160;  }</div><div class="line"><a name="l00310"></a><span class="lineno">  310</span>&#160;</div><div class="line"><a name="l00314"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanBatch.html#ad5df483ed3172caab5a8d6a72abfad0c">  314</a></span>&#160;  const_iterator&amp; <a class="code" href="classkudu_1_1client_1_1KuduScanBatch.html#ad5df483ed3172caab5a8d6a72abfad0c">operator++</a>() {</div><div class="line"><a name="l00315"></a><span class="lineno">  315</span>&#160;    ++idx_;</div><div class="line"><a name="l00316"></a><span class="lineno">  316</span>&#160;    <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div><div class="line"><a name="l00317"></a><span class="lineno">  317</span>&#160;  }</div><div class="line"><a name="l00318"></a><span class="lineno">  318</span>&#160;</div><div class="line"><a name="l00322"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanBatch.html#a4b1ad47fd7d429859b6181825a063c48">  322</a></span>&#160;  const_iterator <a class="code" href="classkudu_1_1client_1_1KuduScanBatch.html#a4b1ad47fd7d429859b6181825a063c48">operator++</a>(<span class="keywordtype">int</span>) {</div><div class="line"><a name="l00323"></a><span class="lineno">  323</span>&#160;    const_iterator tmp(batch_, idx_);</div><div class="line"><a name="l00324"></a><span class="lineno">  324</span>&#160;    ++idx_;</div><div class="line"><a name="l00325"></a><span class="lineno">  325</span>&#160;    <span class="keywordflow">return</span> tmp;</div><div class="line"><a name="l00326"></a><span class="lineno">  326</span>&#160;  }</div><div class="line"><a name="l00327"></a><span class="lineno">  327</span>&#160;</div><div class="line"><a name="l00334"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanBatch.html#a378a5844a4b4774056b26f0003c15048">  334</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classkudu_1_1client_1_1KuduScanBatch.html#a378a5844a4b4774056b26f0003c15048">operator==</a>(<span class="keyword">const</span> const_iterator&amp; other)<span class="keyword"> const </span>{</div><div class="line"><a name="l00335"></a><span class="lineno">  335</span>&#160;    <span class="keywordflow">return</span> (idx_ == other.idx_) &amp;&amp; (batch_ == other.batch_);</div><div class="line"><a name="l00336"></a><span class="lineno">  336</span>&#160;  }</div><div class="line"><a name="l00337"></a><span class="lineno">  337</span>&#160;</div><div class="line"><a name="l00345"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanBatch.html#afd2b2c4cb038cbd366c2af8cf09a3a68">  345</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classkudu_1_1client_1_1KuduScanBatch.html#afd2b2c4cb038cbd366c2af8cf09a3a68">operator!=</a>(<span class="keyword">const</span> const_iterator&amp; other)<span class="keyword"> const </span>{</div><div class="line"><a name="l00346"></a><span class="lineno">  346</span>&#160;    <span class="keywordflow">return</span> !(*<span class="keyword">this</span> == other);</div><div class="line"><a name="l00347"></a><span class="lineno">  347</span>&#160;  }</div><div class="line"><a name="l00348"></a><span class="lineno">  348</span>&#160;</div><div class="line"><a name="l00349"></a><span class="lineno">  349</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00350"></a><span class="lineno">  350</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>KuduScanBatch;</div><div class="line"><a name="l00351"></a><span class="lineno">  351</span>&#160;  const_iterator(<span class="keyword">const</span> KuduScanBatch* b, <span class="keywordtype">int</span> idx)</div><div class="line"><a name="l00352"></a><span class="lineno">  352</span>&#160;      : batch_(b),</div><div class="line"><a name="l00353"></a><span class="lineno">  353</span>&#160;        idx_(idx) {</div><div class="line"><a name="l00354"></a><span class="lineno">  354</span>&#160;  }</div><div class="line"><a name="l00355"></a><span class="lineno">  355</span>&#160;</div><div class="line"><a name="l00356"></a><span class="lineno">  356</span>&#160;  <span class="keyword">const</span> KuduScanBatch* <span class="keyword">const</span> batch_;</div><div class="line"><a name="l00357"></a><span class="lineno">  357</span>&#160;  <span class="keywordtype">int</span> idx_;</div><div class="line"><a name="l00358"></a><span class="lineno">  358</span>&#160;};</div><div class="line"><a name="l00359"></a><span class="lineno">  359</span>&#160;</div><div class="line"><a name="l00360"></a><span class="lineno">  360</span>&#160;</div><div class="line"><a name="l00361"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanBatch.html#a30f55cf8f3c9d6fcb47537e586d82e9f">  361</a></span>&#160;<span class="keyword">inline</span> KuduScanBatch::const_iterator KuduScanBatch::begin()<span class="keyword"> const </span>{</div><div class="line"><a name="l00362"></a><span class="lineno">  362</span>&#160;  <span class="keywordflow">return</span> const_iterator(<span class="keyword">this</span>, 0);</div><div class="line"><a name="l00363"></a><span class="lineno">  363</span>&#160;}</div><div class="line"><a name="l00364"></a><span class="lineno">  364</span>&#160;</div><div class="line"><a name="l00365"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanBatch.html#ad30dcfafb276b5347842882cf68cb522">  365</a></span>&#160;<span class="keyword">inline</span> KuduScanBatch::const_iterator KuduScanBatch::end()<span class="keyword"> const </span>{</div><div class="line"><a name="l00366"></a><span class="lineno">  366</span>&#160;  <span class="keywordflow">return</span> const_iterator(<span class="keyword">this</span>, NumRows());</div><div class="line"><a name="l00367"></a><span class="lineno">  367</span>&#160;}</div><div class="line"><a name="l00368"></a><span class="lineno">  368</span>&#160;</div><div class="line"><a name="l00369"></a><span class="lineno">  369</span>&#160;} <span class="comment">// namespace client</span></div><div class="line"><a name="l00370"></a><span class="lineno">  370</span>&#160;} <span class="comment">// namespace kudu</span></div><div class="line"><a name="l00371"></a><span class="lineno">  371</span>&#160;</div><div class="line"><a name="l00372"></a><span class="lineno">  372</span>&#160;<span class="preprocessor">#endif</span></div><div class="ttc" id="classkudu_1_1client_1_1KuduSchema_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></div><div class="ttdoc">A representation of a table&amp;#39;s schema. </div><div class="ttdef"><b>Definition:</b> schema.h:423</div></div>
 <div class="ttc" id="classkudu_1_1Status_html"><div class="ttname"><a href="classkudu_1_1Status.html">kudu::Status</a></div><div class="ttdoc">A representation of an operation&amp;#39;s outcome. </div><div class="ttdef"><b>Definition:</b> status.h:130</div></div>
 <div class="ttc" id="namespacekudu_html"><div class="ttname"><a href="namespacekudu.html">kudu</a></div><div class="ttdef"><b>Definition:</b> callbacks.h:28</div></div>
 <div class="ttc" id="classkudu_1_1client_1_1KuduScanBatch_html_ae1a827120c84eeedb703451bd5782467"><div class="ttname"><a href="classkudu_1_1client_1_1KuduScanBatch.html#ae1a827120c84eeedb703451bd5782467">kudu::client::KuduScanBatch::value_type</a></div><div class="ttdeci">RowPtr value_type</div><div class="ttdoc">A handy typedef for the RowPtr. </div><div class="ttdef"><b>Definition:</b> scan_batch.h:89</div></div>
-<div class="ttc" id="classkudu_1_1client_1_1KuduScanBatch_html_a92bbfa48e9b503181c2dfb5f11f14e4e"><div class="ttname"><a href="classkudu_1_1client_1_1KuduScanBatch.html#a92bbfa48e9b503181c2dfb5f11f14e4e">kudu::client::KuduScanBatch::RowPtr</a></div><div class="ttdeci">RowPtr()</div><div class="ttdef"><b>Definition:</b> scan_batch.h:132</div></div>
-<div class="ttc" id="classkudu_1_1client_1_1KuduScanBatch_html_ab057b7b1bfb713a7e8f216e3b288cb10"><div class="ttname"><a href="classkudu_1_1client_1_1KuduScanBatch.html#ab057b7b1bfb713a7e8f216e3b288cb10">kudu::client::KuduScanBatch::operator*</a></div><div class="ttdeci">KuduScanBatch::RowPtr operator*() const </div><div class="ttdef"><b>Definition:</b> scan_batch.h:285</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduScanBatch_html_a92bbfa48e9b503181c2dfb5f11f14e4e"><div class="ttname"><a href="classkudu_1_1client_1_1KuduScanBatch.html#a92bbfa48e9b503181c2dfb5f11f14e4e">kudu::client::KuduScanBatch::RowPtr</a></div><div class="ttdeci">RowPtr()</div><div class="ttdef"><b>Definition:</b> scan_batch.h:154</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduScanBatch_html_ab057b7b1bfb713a7e8f216e3b288cb10"><div class="ttname"><a href="classkudu_1_1client_1_1KuduScanBatch.html#ab057b7b1bfb713a7e8f216e3b288cb10">kudu::client::KuduScanBatch::operator*</a></div><div class="ttdeci">KuduScanBatch::RowPtr operator*() const </div><div class="ttdef"><b>Definition:</b> scan_batch.h:307</div></div>
 <div class="ttc" id="classkudu_1_1Slice_html"><div class="ttname"><a href="classkudu_1_1Slice.html">kudu::Slice</a></div><div class="ttdoc">A wrapper around externally allocated data. </div><div class="ttdef"><b>Definition:</b> slice.h:43</div></div>
-<div class="ttc" id="classkudu_1_1client_1_1KuduScanner_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></div><div class="ttdoc">This class is a representation of a single scan. </div><div class="ttdef"><b>Definition:</b> client.h:1682</div></div>
-<div class="ttc" id="classkudu_1_1client_1_1KuduScanBatch_html_a378a5844a4b4774056b26f0003c15048"><div class="ttname"><a href="classkudu_1_1client_1_1KuduScanBatch.html#a378a5844a4b4774056b26f0003c15048">kudu::client::KuduScanBatch::operator==</a></div><div class="ttdeci">bool operator==(const const_iterator &amp;other) const </div><div class="ttdef"><b>Definition:</b> scan_batch.h:312</div></div>
-<div class="ttc" id="classkudu_1_1client_1_1KuduScanBatch_html_a4b1ad47fd7d429859b6181825a063c48"><div class="ttname"><a href="classkudu_1_1client_1_1KuduScanBatch.html#a4b1ad47fd7d429859b6181825a063c48">kudu::client::KuduScanBatch::operator++</a></div><div class="ttdeci">const_iterator operator++(int)</div><div class="ttdef"><b>Definition:</b> scan_batch.h:300</div></div>
-<div class="ttc" id="classkudu_1_1client_1_1KuduScanBatch_html_afd2b2c4cb038cbd366c2af8cf09a3a68"><div class="ttname"><a href="classkudu_1_1client_1_1KuduScanBatch.html#afd2b2c4cb038cbd366c2af8cf09a3a68">kudu::client::KuduScanBatch::operator!=</a></div><div class="ttdeci">bool operator!=(const const_iterator &amp;other) const </div><div class="ttdef"><b>Definition:</b> scan_batch.h:323</div></div>
-<div class="ttc" id="classkudu_1_1client_1_1KuduScanBatch_html_ad5df483ed3172caab5a8d6a72abfad0c"><div class="ttname"><a href="classkudu_1_1client_1_1KuduScanBatch.html#ad5df483ed3172caab5a8d6a72abfad0c">kudu::client::KuduScanBatch::operator++</a></div><div class="ttdeci">const_iterator &amp; operator++()</div><div class="ttdef"><b>Definition:</b> scan_batch.h:292</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduScanner_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></div><div class="ttdoc">This class is a representation of a single scan. </div><div class="ttdef"><b>Definition:</b> client.h:1695</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduScanBatch_html_a378a5844a4b4774056b26f0003c15048"><div class="ttname"><a href="classkudu_1_1client_1_1KuduScanBatch.html#a378a5844a4b4774056b26f0003c15048">kudu::client::KuduScanBatch::operator==</a></div><div class="ttdeci">bool operator==(const const_iterator &amp;other) const </div><div class="ttdef"><b>Definition:</b> scan_batch.h:334</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduScanBatch_html_a4b1ad47fd7d429859b6181825a063c48"><div class="ttname"><a href="classkudu_1_1client_1_1KuduScanBatch.html#a4b1ad47fd7d429859b6181825a063c48">kudu::client::KuduScanBatch::operator++</a></div><div class="ttdeci">const_iterator operator++(int)</div><div class="ttdef"><b>Definition:</b> scan_batch.h:322</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduScanBatch_html_afd2b2c4cb038cbd366c2af8cf09a3a68"><div class="ttname"><a href="classkudu_1_1client_1_1KuduScanBatch.html#afd2b2c4cb038cbd366c2af8cf09a3a68">kudu::client::KuduScanBatch::operator!=</a></div><div class="ttdeci">bool operator!=(const const_iterator &amp;other) const </div><div class="ttdef"><b>Definition:</b> scan_batch.h:345</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduScanBatch_html_ad5df483ed3172caab5a8d6a72abfad0c"><div class="ttname"><a href="classkudu_1_1client_1_1KuduScanBatch.html#ad5df483ed3172caab5a8d6a72abfad0c">kudu::client::KuduScanBatch::operator++</a></div><div class="ttdeci">const_iterator &amp; operator++()</div><div class="ttdef"><b>Definition:</b> scan_batch.h:314</div></div>
 <div class="ttc" id="classkudu_1_1client_1_1KuduScanBatch_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></div><div class="ttdoc">A batch of zero or more rows returned by a scan operation. </div><div class="ttdef"><b>Definition:</b> scan_batch.h:75</div></div>
 </div><!-- fragment --></div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:02 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/scan__predicate_8h_source.html b/cpp-client-api/scan__predicate_8h_source.html
index d19d9af..52bb47f 100644
--- a/cpp-client-api/scan__predicate_8h_source.html
+++ b/cpp-client-api/scan__predicate_8h_source.html
@@ -92,12 +92,12 @@
 <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&quot;); 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;<span class="preprocessor">#ifndef KUDU_CLIENT_SCAN_PREDICATE_H</span></div><div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#define KUDU_CLIENT_SCAN_PREDICATE_H</span></div><div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;</div><div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#ifdef KUDU_HEADERS_NO_STUBS</span></div><div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#include &quot;kudu/gutil/macros.h&quot;</span></div><div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#include &quot;kudu/gutil/port.h&quot;</span></div><div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#include &quot;kudu/client/stubs.h&quot;</span></div><div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;</div><div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="preprocessor">#include &quot;kudu/client/schema.h&quot;</span></div><div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;<span class="preprocessor">#include &quot;kudu/util/kudu_export.h&quot;</span></div><div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;</div><div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;<span class="keyword">namespace </span><a class="code" href="namespacekudu.html">kudu</a> {</div><div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;<span class="keyword">namespace </span>client {</div><div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;</div><div class="line"><a name="l00036"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduPredicate.html">   36</a></span>&#160;<span class="keyword">class </span>KUDU_EXPORT <a class="code" href="classkudu_1_1client_1_1KuduPredicate.html">KuduPredicate</a> {</div><div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00039"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduPredicate.html#ad58e80ced596d7738f99b5b83ba24eb4">   39</a></span>&#160;  <span class="keyword">enum</span> <a class="code" href="classkudu_1_1client_1_1KuduPredicate.html#ad58e80ced596d7738f99b5b83ba24eb4">ComparisonOp</a> {</div><div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;    LESS_EQUAL,</div><div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;    GREATER_EQUAL,</div><div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;    EQUAL,</div><div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;    LESS,</div><div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;    GREATER,</div><div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;  };</div><div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;</div><div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;  ~<a class="code" href="classkudu_1_1client_1_1KuduPredicate.html">KuduPredicate</a>();</div><div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;</div><div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduPredicate.html">KuduPredicate</a>* Clone() <span class="keyword">const</span>;</div><div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;</div><div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduPredicate.html#ae8643ced562f7c8a4625a58a4e39abb0">   56</a></span>&#160;  <span class="keyword">class </span>KUDU_NO_EXPORT Data;</div><div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>ComparisonPredicateData;</div><div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>ErrorPredicateData;</div><div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>InListPredicateData;</div><div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>IsNotNullPredicateData;</div><div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>IsNullPredicateData;</div><div class="line"><a name="l00063"></a><span class="lineno">   63</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="l00064"></a><span class="lineno">   64</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>ScanConfiguration;</div><div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;</div><div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;  <span class="keyword">explicit</span> <a class="code" href="classkudu_1_1client_1_1KuduPredicate.html">KuduPredicate</a>(Data* d);</div><div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;</div><div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;  Data* data_;</div><div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;  DISALLOW_COPY_AND_ASSIGN(<a class="code" href="classkudu_1_1client_1_1KuduPredicate.html">KuduPredicate</a>);</div><div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;};</div><div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;</div><div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;} <span class="comment">// namespace client</span></div><div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;} <span class="comment">// namespace kudu</span></div><div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;<span class="preprocessor">#endif // KUDU_CLIENT_SCAN_PREDICATE_H</span></div><div class="ttc" id="namespacekudu_html"><div class="ttname"><a href="namespacekudu.html">kudu</a></div><div class="ttdef"><b>Definition:</b> callbacks.h:28</div></div>
 <div class="ttc" id="classkudu_1_1client_1_1KuduPredicate_html_ad58e80ced596d7738f99b5b83ba24eb4"><div class="ttname"><a href="classkudu_1_1client_1_1KuduPredicate.html#ad58e80ced596d7738f99b5b83ba24eb4">kudu::client::KuduPredicate::ComparisonOp</a></div><div class="ttdeci">ComparisonOp</div><div class="ttdoc">Supported comparison operators. </div><div class="ttdef"><b>Definition:</b> scan_predicate.h:39</div></div>
 <div class="ttc" id="classkudu_1_1client_1_1KuduPredicate_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduPredicate.html">kudu::client::KuduPredicate</a></div><div class="ttdoc">A representation of comparison predicate for Kudu queries. </div><div class="ttdef"><b>Definition:</b> scan_predicate.h:36</div></div>
-<div class="ttc" id="classkudu_1_1client_1_1KuduTable_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a></div><div class="ttdoc">A representation of a table on a particular cluster. </div><div class="ttdef"><b>Definition:</b> client.h:850</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduTable_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a></div><div class="ttdoc">A representation of a table on a particular cluster. </div><div class="ttdef"><b>Definition:</b> client.h:862</div></div>
 </div><!-- fragment --></div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:02 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/schema_8h_source.html b/cpp-client-api/schema_8h_source.html
index 879a572..14afd23 100644
--- a/cpp-client-api/schema_8h_source.html
+++ b/cpp-client-api/schema_8h_source.html
@@ -89,34 +89,35 @@
 <div class="title">schema.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">//</span></div><div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="comment">// Licensed to the Apache Software Foundation (ASF) under one</span></div><div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="comment">// or more contributor license agreements.  See the NOTICE file</span></div><div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="comment">// distributed with this work for additional information</span></div><div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="comment">// regarding copyright ownership.  The ASF licenses this file</span></div><div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="comment">// to you under the Apache License, Version 2.0 (the</span></div><div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="comment">// &quot;License&quot;); you may not use this file except in compliance</span></div><div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="comment">// with the License.  You may obtain a copy of the License at</span></div><div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="comment">//</span></div><div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="comment">//   http://www.apache.org/licenses/LICENSE-2.0</span></div><div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="comment">//</span></div><div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="comment">// Unless required by applicable law or agreed to in writing,</span></div><div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="comment">// software distributed under the License is distributed on an</span></div><div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="comment">// &quot;AS IS&quot; BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY</span></div><div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="comment">// KIND, either express or implied.  See the License for the</span></div><div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="comment">// specific language governing permissions and limitations</span></div><div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="comment">// under the License.</span></div><div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#ifndef KUDU_CLIENT_SCHEMA_H</span></div><div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#define KUDU_CLIENT_SCHEMA_H</span></div><div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;</div><div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#include &lt;string&gt;</span></div><div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#include &lt;vector&gt;</span></div><div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;</div><div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#include &quot;kudu/client/value.h&quot;</span></div><div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="preprocessor">#include &quot;kudu/util/kudu_export.h&quot;</span></div><div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;</div><div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="keyword">namespace </span><a class="code" href="namespacekudu.html">kudu</a> {</div><div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;</div><div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;<span class="keyword">class </span>ColumnSchema;</div><div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;<span class="keyword">class </span><a class="code" href="classKuduPartialRow.html">KuduPartialRow</a>;</div><div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;<span class="keyword">class </span>Schema;</div><div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;<span class="keyword">class </span>TestWorkload;</div><div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;</div><div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;<span class="keyword">namespace </span>tools {</div><div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;<span class="keyword">class </span>RemoteKsckMaster;</div><div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;<span class="keyword">class </span>ReplicaDumper;</div><div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;}</div><div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;</div><div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;<span class="keyword">namespace </span>client {</div><div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;</div><div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;<span class="keyword">namespace </span>internal {</div><div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;<span class="keyword">class </span>GetTableSchemaRpc;</div><div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;<span class="keyword">class </span>LookupRpc;</div><div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;<span class="keyword">class </span>MetaCacheEntry;</div><div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;<span class="keyword">class </span>WriteRpc;</div><div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;} <span class="comment">// namespace internal</span></div><div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;</div><div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;<span class="keyword">class </span>KuduClient;</div><div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;<span class="keyword">class </span>KuduSchema;</div><div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;<span class="keyword">class </span>KuduSchemaBuilder;</div><div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;<span class="keyword">class </span>KuduWriteOperation;</div><div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;</div><div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html">   54</a></span>&#160;<span class="keyword">class </span>KUDU_EXPORT <a class="code" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html">KuduColumnStorageAttributes</a> {</div><div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#aeb835a12e6f40b1a619afa8abd773b6d">   57</a></span>&#160;  <span class="keyword">enum</span> <a class="code" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#aeb835a12e6f40b1a619afa8abd773b6d">EncodingType</a> {</div><div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;    AUTO_ENCODING = 0,</div><div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;    PLAIN_ENCODING = 1,</div><div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;    PREFIX_ENCODING = 2,</div><div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;    RLE = 4,</div><div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;    DICT_ENCODING = 5,</div><div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;    BIT_SHUFFLE = 6,</div><div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;</div><div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#aeb835a12e6f40b1a619afa8abd773b6da28c1ed31be30579070232164c24b4b82">   67</a></span>&#160;    GROUP_VARINT = 3</div><div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;  };</div><div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;</div><div class="line"><a name="l00071"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#af579406931a40daa5cb9e10603341a78">   71</a></span>&#160;  <span class="keyword">enum</span> <a class="code" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#af579406931a40daa5cb9e10603341a78">CompressionType</a> {</div><div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;    DEFAULT_COMPRESSION = 0,</div><div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;    NO_COMPRESSION = 1,</div><div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;    SNAPPY = 2,</div><div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;    LZ4 = 3,</div><div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;    ZLIB = 4,</div><div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;  };</div><div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;</div><div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;</div><div class="line"><a name="l00091"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#a2d6e5bec50a7305b3b4d75d21d000fab">   91</a></span>&#160;  <span class="keyword">explicit</span> <a class="code" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#a2d6e5bec50a7305b3b4d75d21d000fab">KuduColumnStorageAttributes</a>(</div><div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;      <a class="code" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#aeb835a12e6f40b1a619afa8abd773b6d">EncodingType</a> encoding = AUTO_ENCODING,</div><div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;      <a class="code" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#af579406931a40daa5cb9e10603341a78">CompressionType</a> compression = DEFAULT_COMPRESSION,</div><div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;      int32_t block_size = 0)</div><div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;      ATTRIBUTE_DEPRECATED(&quot;this constructor will be private in a future release&quot;)</div><div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;      : encoding_(encoding),</div><div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;        compression_(compression),</div><div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;        block_size_(block_size) {</div><div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;  }</div><div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;</div><div class="line"><a name="l00102"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#acd93d52b48be7d87a0d3fd4500048f2e">  102</a></span>&#160;  <span class="keyword">const</span> <a class="code" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#aeb835a12e6f40b1a619afa8abd773b6d">EncodingType</a> <a class="code" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#acd93d52b48be7d87a0d3fd4500048f2e">encoding</a>()<span class="keyword"> const </span>{</div><div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;    <span class="keywordflow">return</span> encoding_;</div><div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;  }</div><div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;</div><div class="line"><a name="l00107"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#a00ef1e67c5fdd537d35f102748b1ad9d">  107</a></span>&#160;  <span class="keyword">const</span> <a class="code" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#af579406931a40daa5cb9e10603341a78">CompressionType</a> <a class="code" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#a00ef1e67c5fdd537d35f102748b1ad9d">compression</a>()<span class="keyword"> const </span>{</div><div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;    <span class="keywordflow">return</span> compression_;</div><div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;  }</div><div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;</div><div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;  std::string ToString() <span class="keyword">const</span>;</div><div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;</div><div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#aeb835a12e6f40b1a619afa8abd773b6d">EncodingType</a> encoding_;</div><div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#af579406931a40daa5cb9e10603341a78">CompressionType</a> compression_;</div><div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;  int32_t block_size_;</div><div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;};</div><div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;</div><div class="line"><a name="l00121"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduColumnSchema.html">  121</a></span>&#160;<span class="keyword">class </span>KUDU_EXPORT <a class="code" href="classkudu_1_1client_1_1KuduColumnSchema.html">KuduColumnSchema</a> {</div><div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00124"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduColumnSchema.html#aba69238e70af5c887a4fb11fa2a120c5">  124</a></span>&#160;  <span class="keyword">enum</span> <a class="code" href="classkudu_1_1client_1_1KuduColumnSchema.html#aba69238e70af5c887a4fb11fa2a120c5">DataType</a> {</div><div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;    INT8 = 0,</div><div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;    INT16 = 1,</div><div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;    INT32 = 2,</div><div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;    INT64 = 3,</div><div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;    STRING = 4,</div><div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;    BOOL = 5,</div><div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;    FLOAT = 6,</div><div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;    DOUBLE = 7,</div><div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;    BINARY = 8,</div><div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;    UNIXTIME_MICROS = 9,</div><div class="line"><a name="l00135"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduColumnSchema.html#aba69238e70af5c887a4fb11fa2a120c5a27d1b7aca7cf9a01d9258a41bbe3b505">  135</a></span>&#160;    TIMESTAMP = UNIXTIME_MICROS </div><div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;  };</div><div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;</div><div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;  <span class="keyword">static</span> std::string DataTypeToString(<a class="code" href="classkudu_1_1client_1_1KuduColumnSchema.html#aba69238e70af5c887a4fb11fa2a120c5">DataType</a> type);</div><div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;</div><div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduColumnSchema.html">KuduColumnSchema</a>(<span class="keyword">const</span> std::string &amp;name,</div><div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;                   <a class="code" href="classkudu_1_1client_1_1KuduColumnSchema.html#aba69238e70af5c887a4fb11fa2a120c5">DataType</a> type,</div><div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;                   <span class="keywordtype">bool</span> is_nullable = <span class="keyword">false</span>,</div><div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;                   <span class="keyword">const</span> <span class="keywordtype">void</span>* default_value = NULL,</div><div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;                   <a class="code" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html">KuduColumnStorageAttributes</a> attributes = <a class="code" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html">KuduColumnStorageAttributes</a>())</div><div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;      ATTRIBUTE_DEPRECATED(&quot;use <a class="code" href="classkudu_1_1client_1_1KuduSchemaBuilder.html">KuduSchemaBuilder</a> instead&quot;);</div><div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;</div><div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduColumnSchema.html">KuduColumnSchema</a>(const <a class="code" href="classkudu_1_1client_1_1KuduColumnSchema.html">KuduColumnSchema</a>&amp; other);</div><div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;  ~<a class="code" href="classkudu_1_1client_1_1KuduColumnSchema.html">KuduColumnSchema</a>();</div><div class="line"><a name="l00172"></a><span class="lineno">  172</span>&#160;</div><div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduColumnSchema.html">KuduColumnSchema</a>&amp; operator=(const <a class="code" href="classkudu_1_1client_1_1KuduColumnSchema.html">KuduColumnSchema</a>&amp; other);</div><div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160;</div><div class="line"><a name="l00184"></a><span class="lineno">  184</span>&#160;  <span class="keywordtype">void</span> CopyFrom(const <a class="code" href="classkudu_1_1client_1_1KuduColumnSchema.html">KuduColumnSchema</a>&amp; other);</div><div class="line"><a name="l00185"></a><span class="lineno">  185</span>&#160;</div><div class="line"><a name="l00191"></a><span class="lineno">  191</span>&#160;  <span class="keywordtype">bool</span> Equals(const <a class="code" href="classkudu_1_1client_1_1KuduColumnSchema.html">KuduColumnSchema</a>&amp; other) const;</div><div class="line"><a name="l00192"></a><span class="lineno">  192</span>&#160;</div><div class="line"><a name="l00199"></a><span class="lineno">  199</span>&#160;  const std::<span class="keywordtype">string</span>&amp; name() const;</div><div class="line"><a name="l00200"></a><span class="lineno">  200</span>&#160;</div><div class="line"><a name="l00202"></a><span class="lineno">  202</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduColumnSchema.html#aba69238e70af5c887a4fb11fa2a120c5">DataType</a> type() const;</div><div class="line"><a name="l00203"></a><span class="lineno">  203</span>&#160;</div><div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160;  <span class="keywordtype">bool</span> is_nullable() const;</div><div class="line"><a name="l00207"></a><span class="lineno">  207</span>&#160;</div><div class="line"><a name="l00208"></a><span class="lineno">  208</span>&#160; private:</div><div class="line"><a name="l00209"></a><span class="lineno">  209</span>&#160;  friend class <a class="code" href="classkudu_1_1client_1_1KuduColumnSpec.html">KuduColumnSpec</a>;</div><div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;  friend class <a class="code" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a>;</div><div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160;  friend class <a class="code" href="classkudu_1_1client_1_1KuduSchemaBuilder.html">KuduSchemaBuilder</a>;</div><div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160;  <span class="comment">// KuduTableAlterer::Data needs to be a friend. Friending the parent class</span></div><div class="line"><a name="l00213"></a><span class="lineno">  213</span>&#160;  <span class="comment">// is transitive to nested classes. See http://tiny.cloudera.com/jwtui</span></div><div class="line"><a name="l00214"></a><span class="lineno">  214</span>&#160;  friend class <a class="code" href="classkudu_1_1client_1_1KuduTableAlterer.html">KuduTableAlterer</a>;</div><div class="line"><a name="l00215"></a><span class="lineno">  215</span>&#160;</div><div class="line"><a name="l00216"></a><span class="lineno">  216</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduColumnSchema.html">KuduColumnSchema</a>();</div><div class="line"><a name="l00217"></a><span class="lineno">  217</span>&#160;</div><div class="line"><a name="l00218"></a><span class="lineno">  218</span>&#160;  <span class="comment">// Owned.</span></div><div class="line"><a name="l00219"></a><span class="lineno">  219</span>&#160;  ColumnSchema* col_;</div><div class="line"><a name="l00220"></a><span class="lineno">  220</span>&#160;};</div><div class="line"><a name="l00221"></a><span class="lineno">  221</span>&#160;</div><div class="line"><a name="l00230"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduColumnSpec.html">  230</a></span>&#160;class KUDU_EXPORT KuduColumnSpec {</div><div class="line"><a name="l00231"></a><span class="lineno">  231</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00243"></a><span class="lineno">  243</span>&#160;  KuduColumnSpec* Default(<a class="code" href="classkudu_1_1client_1_1KuduValue.html">KuduValue</a>* value);</div><div class="line"><a name="l00244"></a><span class="lineno">  244</span>&#160;</div><div class="line"><a name="l00250"></a><span class="lineno">  250</span>&#160;  KuduColumnSpec* Compression(<a class="code" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#af579406931a40daa5cb9e10603341a78">KuduColumnStorageAttributes::CompressionType</a> compression);</div><div class="line"><a name="l00251"></a><span class="lineno">  251</span>&#160;</div><div class="line"><a name="l00259"></a><span class="lineno">  259</span>&#160;  KuduColumnSpec* Encoding(<a class="code" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#aeb835a12e6f40b1a619afa8abd773b6d">KuduColumnStorageAttributes::EncodingType</a> encoding);</div><div class="line"><a name="l00260"></a><span class="lineno">  260</span>&#160;</div><div class="line"><a name="l00280"></a><span class="lineno">  280</span>&#160;  KuduColumnSpec* BlockSize(int32_t block_size);</div><div class="line"><a name="l00281"></a><span class="lineno">  281</span>&#160;</div><div class="line"><a name="l00294"></a><span class="lineno">  294</span>&#160;  KuduColumnSpec* PrimaryKey();</div><div class="line"><a name="l00295"></a><span class="lineno">  295</span>&#160;</div><div class="line"><a name="l00301"></a><span class="lineno">  301</span>&#160;  KuduColumnSpec* NotNull();</div><div class="line"><a name="l00302"></a><span class="lineno">  302</span>&#160;</div><div class="line"><a name="l00308"></a><span class="lineno">  308</span>&#160;  KuduColumnSpec* Nullable();</div><div class="line"><a name="l00309"></a><span class="lineno">  309</span>&#160;</div><div class="line"><a name="l00317"></a><span class="lineno">  317</span>&#160;  KuduColumnSpec* Type(<a class="code" href="classkudu_1_1client_1_1KuduColumnSchema.html#aba69238e70af5c887a4fb11fa2a120c5">KuduColumnSchema::DataType</a> type);</div><div class="line"><a name="l00319"></a><span class="lineno">  319</span>&#160;</div><div class="line"><a name="l00329"></a><span class="lineno">  329</span>&#160;  KuduColumnSpec* RemoveDefault();</div><div class="line"><a name="l00330"></a><span class="lineno">  330</span>&#160;</div><div class="line"><a name="l00336"></a><span class="lineno">  336</span>&#160;  KuduColumnSpec* RenameTo(<span class="keyword">const</span> std::string&amp; new_name);</div><div class="line"><a name="l00338"></a><span class="lineno">  338</span>&#160;</div><div class="line"><a name="l00339"></a><span class="lineno">  339</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00340"></a><span class="lineno">  340</span>&#160;  <span class="keyword">class </span>KUDU_NO_EXPORT Data;</div><div class="line"><a name="l00341"></a><span class="lineno">  341</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>KuduSchemaBuilder;</div><div class="line"><a name="l00342"></a><span class="lineno">  342</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>KuduTableAlterer;</div><div class="line"><a name="l00343"></a><span class="lineno">  343</span>&#160;</div><div class="line"><a name="l00344"></a><span class="lineno">  344</span>&#160;  <span class="comment">// This class should always be owned and deleted by one of its friends,</span></div><div class="line"><a name="l00345"></a><span class="lineno">  345</span>&#160;  <span class="comment">// not the user.</span></div><div class="line"><a name="l00346"></a><span class="lineno">  346</span>&#160;  ~KuduColumnSpec();</div><div class="line"><a name="l00347"></a><span class="lineno">  347</span>&#160;</div><div class="line"><a name="l00348"></a><span class="lineno">  348</span>&#160;  <span class="keyword">explicit</span> KuduColumnSpec(<span class="keyword">const</span> std::string&amp; col_name);</div><div class="line"><a name="l00349"></a><span class="lineno">  349</span>&#160;</div><div class="line"><a name="l00350"></a><span class="lineno">  350</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> ToColumnSchema(<a class="code" href="classkudu_1_1client_1_1KuduColumnSchema.html">KuduColumnSchema</a>* col) <span class="keyword">const</span>;</div><div class="line"><a name="l00351"></a><span class="lineno">  351</span>&#160;</div><div class="line"><a name="l00352"></a><span class="lineno">  352</span>&#160;  <span class="comment">// Owned.</span></div><div class="line"><a name="l00353"></a><span class="lineno">  353</span>&#160;  Data* data_;</div><div class="line"><a name="l00354"></a><span class="lineno">  354</span>&#160;};</div><div class="line"><a name="l00355"></a><span class="lineno">  355</span>&#160;</div><div class="line"><a name="l00377"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduSchemaBuilder.html">  377</a></span>&#160;<span class="keyword">class </span>KUDU_EXPORT <a class="code" href="classkudu_1_1client_1_1KuduSchemaBuilder.html">KuduSchemaBuilder</a> {</div><div class="line"><a name="l00378"></a><span class="lineno">  378</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00379"></a><span class="lineno">  379</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduSchemaBuilder.html">KuduSchemaBuilder</a>();</div><div class="line"><a name="l00380"></a><span class="lineno">  380</span>&#160;  ~<a class="code" href="classkudu_1_1client_1_1KuduSchemaBuilder.html">KuduSchemaBuilder</a>();</div><div class="line"><a name="l00381"></a><span class="lineno">  381</span>&#160;</div><div class="line"><a name="l00388"></a><span class="lineno">  388</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="l00389"></a><span class="lineno">  389</span>&#160;</div><div class="line"><a name="l00397"></a><span class="lineno">  397</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduSchemaBuilder.html">KuduSchemaBuilder</a>* SetPrimaryKey(<span class="keyword">const</span> std::vector&lt;std::string&gt;&amp; key_col_names);</div><div class="line"><a name="l00398"></a><span class="lineno">  398</span>&#160;</div><div class="line"><a name="l00408"></a><span class="lineno">  408</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> Build(<a class="code" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a>* schema);</div><div class="line"><a name="l00409"></a><span class="lineno">  409</span>&#160;</div><div class="line"><a name="l00410"></a><span class="lineno">  410</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00411"></a><span class="lineno">  411</span>&#160;  <span class="keyword">class </span>KUDU_NO_EXPORT Data;</div><div class="line"><a name="l00412"></a><span class="lineno">  412</span>&#160;  <span class="comment">// Owned.</span></div><div class="line"><a name="l00413"></a><span class="lineno">  413</span>&#160;  Data* data_;</div><div class="line"><a name="l00414"></a><span class="lineno">  414</span>&#160;};</div><div class="line"><a name="l00415"></a><span class="lineno">  415</span>&#160;</div><div class="line"><a name="l00417"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduSchema.html">  417</a></span>&#160;<span class="keyword">class </span>KUDU_EXPORT <a class="code" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a> {</div><div class="line"><a name="l00418"></a><span class="lineno">  418</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00419"></a><span class="lineno">  419</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a>();</div><div class="line"><a name="l00420"></a><span class="lineno">  420</span>&#160;</div><div class="line"><a name="l00425"></a><span class="lineno">  425</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a>(<span class="keyword">const</span> <a class="code" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a>&amp; other);</div><div class="line"><a name="l00426"></a><span class="lineno">  426</span>&#160;  ~<a class="code" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a>();</div><div class="line"><a name="l00427"></a><span class="lineno">  427</span>&#160;</div><div class="line"><a name="l00434"></a><span class="lineno">  434</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a>&amp; operator=(<span class="keyword">const</span> <a class="code" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a>&amp; other);</div><div class="line"><a name="l00435"></a><span class="lineno">  435</span>&#160;  <span class="keywordtype">void</span> CopyFrom(<span class="keyword">const</span> <a class="code" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a>&amp; other);</div><div class="line"><a name="l00437"></a><span class="lineno">  437</span>&#160;</div><div class="line"><a name="l00447"></a><span class="lineno">  447</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> Reset(<span class="keyword">const</span> std::vector&lt;KuduColumnSchema&gt;&amp; columns, <span class="keywordtype">int</span> key_columns)</div><div class="line"><a name="l00448"></a><span class="lineno">  448</span>&#160;      ATTRIBUTE_DEPRECATED(<span class="stringliteral">&quot;this method will be removed in a future release&quot;</span>)</div><div class="line"><a name="l00449"></a><span class="lineno">  449</span>&#160;      WARN_UNUSED_RESULT;</div><div class="line"><a name="l00450"></a><span class="lineno">  450</span>&#160;</div><div class="line"><a name="l00457"></a><span class="lineno">  457</span>&#160;  <span class="keywordtype">bool</span> Equals(<span class="keyword">const</span> <a class="code" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a>&amp; other) <span class="keyword">const</span>;</div><div class="line"><a name="l00458"></a><span class="lineno">  458</span>&#160;</div><div class="line"><a name="l00462"></a><span class="lineno">  462</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduColumnSchema.html">KuduColumnSchema</a> Column(<span class="keywordtype">size_t</span> idx) <span class="keyword">const</span>;</div><div class="line"><a name="l00463"></a><span class="lineno">  463</span>&#160;</div><div class="line"><a name="l00465"></a><span class="lineno">  465</span>&#160;  <span class="keywordtype">size_t</span> num_columns() <span class="keyword">const</span>;</div><div class="line"><a name="l00466"></a><span class="lineno">  466</span>&#160;</div><div class="line"><a name="l00475"></a><span class="lineno">  475</span>&#160;  <span class="keywordtype">void</span> GetPrimaryKeyColumnIndexes(std::vector&lt;int&gt;* indexes) <span class="keyword">const</span>;</div><div class="line"><a name="l00476"></a><span class="lineno">  476</span>&#160;</div><div class="line"><a name="l00484"></a><span class="lineno">  484</span>&#160;  <a class="code" href="classKuduPartialRow.html">KuduPartialRow</a>* NewRow() <span class="keyword">const</span>;</div><div class="line"><a name="l00485"></a><span class="lineno">  485</span>&#160;</div><div class="line"><a name="l00486"></a><span class="lineno">  486</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00487"></a><span class="lineno">  487</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="l00488"></a><span class="lineno">  488</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="l00489"></a><span class="lineno">  489</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="l00490"></a><span class="lineno">  490</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="l00491"></a><span class="lineno">  491</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classkudu_1_1client_1_1KuduSchemaBuilder.html">KuduSchemaBuilder</a>;</div><div class="line"><a name="l00492"></a><span class="lineno">  492</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="l00493"></a><span class="lineno">  493</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="l00494"></a><span class="lineno">  494</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classkudu_1_1client_1_1KuduWriteOperation.html">KuduWriteOperation</a>;</div><div class="line"><a name="l00495"></a><span class="lineno">  495</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>ScanConfiguration;</div><div class="line"><a name="l00496"></a><span class="lineno">  496</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>internal::GetTableSchemaRpc;</div><div class="line"><a name="l00497"></a><span class="lineno">  497</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>internal::LookupRpc;</div><div class="line"><a name="l00498"></a><span class="lineno">  498</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>internal::MetaCacheEntry;</div><div class="line"><a name="l00499"></a><span class="lineno">  499</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>internal::WriteRpc;</div><div class="line"><a name="l00500"></a><span class="lineno">  500</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>tools::RemoteKsckMaster;</div><div class="line"><a name="l00501"></a><span class="lineno">  501</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>tools::ReplicaDumper;</div><div class="line"><a name="l00502"></a><span class="lineno">  502</span>&#160;</div><div class="line"><a name="l00503"></a><span class="lineno">  503</span>&#160;  <span class="keyword">friend</span> <a class="code" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a> KuduSchemaFromSchema(<span class="keyword">const</span> Schema&amp; schema);</div><div class="line"><a name="l00504"></a><span class="lineno">  504</span>&#160;</div><div class="line"><a name="l00505"></a><span class="lineno">  505</span>&#160;</div><div class="line"><a name="l00506"></a><span class="lineno">  506</span>&#160;  <span class="comment">// For use by kudu tests.</span></div><div class="line"><a name="l00507"></a><span class="lineno">  507</span>&#160;  <span class="keyword">explicit</span> <a class="code" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a>(<span class="keyword">const</span> Schema&amp; schema);</div><div class="line"><a name="l00508"></a><span class="lineno">  508</span>&#160;</div><div class="line"><a name="l00509"></a><span class="lineno">  509</span>&#160;  <span class="comment">// Private since we don&#39;t want users to rely on the first N columns</span></div><div class="line"><a name="l00510"></a><span class="lineno">  510</span>&#160;  <span class="comment">// being the keys.</span></div><div class="line"><a name="l00511"></a><span class="lineno">  511</span>&#160;  <span class="keywordtype">size_t</span> num_key_columns() <span class="keyword">const</span>;</div><div class="line"><a name="l00512"></a><span class="lineno">  512</span>&#160;</div><div class="line"><a name="l00513"></a><span class="lineno">  513</span>&#160;  <span class="comment">// Owned.</span></div><div class="line"><a name="l00514"></a><span class="lineno">  514</span>&#160;  Schema* schema_;</div><div class="line"><a name="l00515"></a><span class="lineno">  515</span>&#160;};</div><div class="line"><a name="l00516"></a><span class="lineno">  516</span>&#160;</div><div class="line"><a name="l00517"></a><span class="lineno">  517</span>&#160;} <span class="comment">// namespace client</span></div><div class="line"><a name="l00518"></a><span class="lineno">  518</span>&#160;} <span class="comment">// namespace kudu</span></div><div class="line"><a name="l00519"></a><span class="lineno">  519</span>&#160;<span class="preprocessor">#endif // KUDU_CLIENT_SCHEMA_H</span></div><div class="ttc" id="classkudu_1_1client_1_1KuduSchema_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></div><div class="ttdoc">A representation of a table&amp;#39;s schema. </div><div class="ttdef"><b>Definition:</b> schema.h:417</div></div>
+<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="comment">//</span></div><div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="comment">// Licensed to the Apache Software Foundation (ASF) under one</span></div><div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="comment">// or more contributor license agreements.  See the NOTICE file</span></div><div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="comment">// distributed with this work for additional information</span></div><div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="comment">// regarding copyright ownership.  The ASF licenses this file</span></div><div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="comment">// to you under the Apache License, Version 2.0 (the</span></div><div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="comment">// &quot;License&quot;); you may not use this file except in compliance</span></div><div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="comment">// with the License.  You may obtain a copy of the License at</span></div><div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="comment">//</span></div><div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="comment">//   http://www.apache.org/licenses/LICENSE-2.0</span></div><div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="comment">//</span></div><div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="comment">// Unless required by applicable law or agreed to in writing,</span></div><div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="comment">// software distributed under the License is distributed on an</span></div><div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="comment">// &quot;AS IS&quot; BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY</span></div><div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="comment">// KIND, either express or implied.  See the License for the</span></div><div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="comment">// specific language governing permissions and limitations</span></div><div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="comment">// under the License.</span></div><div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#ifndef KUDU_CLIENT_SCHEMA_H</span></div><div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#define KUDU_CLIENT_SCHEMA_H</span></div><div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;</div><div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#include &lt;string&gt;</span></div><div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#include &lt;vector&gt;</span></div><div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;</div><div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#include &quot;kudu/client/value.h&quot;</span></div><div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="preprocessor">#include &quot;kudu/util/kudu_export.h&quot;</span></div><div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;</div><div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="keyword">namespace </span><a class="code" href="namespacekudu.html">kudu</a> {</div><div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;</div><div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;<span class="keyword">class </span>ColumnSchema;</div><div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;<span class="keyword">struct </span>ColumnSchemaDelta;</div><div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;<span class="keyword">class </span><a class="code" href="classKuduPartialRow.html">KuduPartialRow</a>;</div><div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;<span class="keyword">class </span>Schema;</div><div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;<span class="keyword">class </span>TestWorkload;</div><div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;</div><div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;<span class="keyword">namespace </span>tools {</div><div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;<span class="keyword">class </span>RemoteKsckMaster;</div><div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;<span class="keyword">class </span>ReplicaDumper;</div><div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;}</div><div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;</div><div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;<span class="keyword">namespace </span>client {</div><div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;<span class="keyword">class </span>ClientTest;</div><div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;</div><div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;<span class="keyword">namespace </span>internal {</div><div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;<span class="keyword">class </span>GetTableSchemaRpc;</div><div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;<span class="keyword">class </span>LookupRpc;</div><div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;<span class="keyword">class </span>MetaCacheEntry;</div><div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;<span class="keyword">class </span>WriteRpc;</div><div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;} <span class="comment">// namespace internal</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">class </span>KuduClient;</div><div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;<span class="keyword">class </span>KuduSchema;</div><div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;<span class="keyword">class </span>KuduSchemaBuilder;</div><div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;<span class="keyword">class </span>KuduWriteOperation;</div><div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;</div><div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html">   56</a></span>&#160;<span class="keyword">class </span>KUDU_EXPORT <a class="code" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html">KuduColumnStorageAttributes</a> {</div><div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#aeb835a12e6f40b1a619afa8abd773b6d">   59</a></span>&#160;  <span class="keyword">enum</span> <a class="code" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#aeb835a12e6f40b1a619afa8abd773b6d">EncodingType</a> {</div><div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;    AUTO_ENCODING = 0,</div><div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;    PLAIN_ENCODING = 1,</div><div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;    PREFIX_ENCODING = 2,</div><div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;    RLE = 4,</div><div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;    DICT_ENCODING = 5,</div><div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;    BIT_SHUFFLE = 6,</div><div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;</div><div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#aeb835a12e6f40b1a619afa8abd773b6da28c1ed31be30579070232164c24b4b82">   69</a></span>&#160;    GROUP_VARINT = 3</div><div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;  };</div><div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;</div><div class="line"><a name="l00073"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#af579406931a40daa5cb9e10603341a78">   73</a></span>&#160;  <span class="keyword">enum</span> <a class="code" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#af579406931a40daa5cb9e10603341a78">CompressionType</a> {</div><div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;    DEFAULT_COMPRESSION = 0,</div><div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;    NO_COMPRESSION = 1,</div><div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;    SNAPPY = 2,</div><div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;    LZ4 = 3,</div><div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;    ZLIB = 4,</div><div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;  };</div><div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;</div><div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;</div><div class="line"><a name="l00093"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#a2d6e5bec50a7305b3b4d75d21d000fab">   93</a></span>&#160;  <span class="keyword">explicit</span> <a class="code" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#a2d6e5bec50a7305b3b4d75d21d000fab">KuduColumnStorageAttributes</a>(</div><div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;      <a class="code" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#aeb835a12e6f40b1a619afa8abd773b6d">EncodingType</a> encoding = AUTO_ENCODING,</div><div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;      <a class="code" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#af579406931a40daa5cb9e10603341a78">CompressionType</a> compression = DEFAULT_COMPRESSION,</div><div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;      int32_t block_size = 0)</div><div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;      ATTRIBUTE_DEPRECATED(&quot;this constructor will be private in a future release&quot;)</div><div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;      : encoding_(encoding),</div><div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;        compression_(compression),</div><div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;        block_size_(block_size) {</div><div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;  }</div><div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;</div><div class="line"><a name="l00104"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#acd93d52b48be7d87a0d3fd4500048f2e">  104</a></span>&#160;  <span class="keyword">const</span> <a class="code" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#aeb835a12e6f40b1a619afa8abd773b6d">EncodingType</a> <a class="code" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#acd93d52b48be7d87a0d3fd4500048f2e">encoding</a>()<span class="keyword"> const </span>{</div><div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;    <span class="keywordflow">return</span> encoding_;</div><div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;  }</div><div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;</div><div class="line"><a name="l00109"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#a00ef1e67c5fdd537d35f102748b1ad9d">  109</a></span>&#160;  <span class="keyword">const</span> <a class="code" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#af579406931a40daa5cb9e10603341a78">CompressionType</a> <a class="code" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#a00ef1e67c5fdd537d35f102748b1ad9d">compression</a>()<span class="keyword"> const </span>{</div><div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;    <span class="keywordflow">return</span> compression_;</div><div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;  }</div><div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;</div><div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;  std::string ToString() <span class="keyword">const</span>;</div><div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;</div><div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#aeb835a12e6f40b1a619afa8abd773b6d">EncodingType</a> encoding_;</div><div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#af579406931a40daa5cb9e10603341a78">CompressionType</a> compression_;</div><div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;  int32_t block_size_;</div><div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;};</div><div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;</div><div class="line"><a name="l00123"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduColumnSchema.html">  123</a></span>&#160;<span class="keyword">class </span>KUDU_EXPORT <a class="code" href="classkudu_1_1client_1_1KuduColumnSchema.html">KuduColumnSchema</a> {</div><div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00126"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduColumnSchema.html#aba69238e70af5c887a4fb11fa2a120c5">  126</a></span>&#160;  <span class="keyword">enum</span> <a class="code" href="classkudu_1_1client_1_1KuduColumnSchema.html#aba69238e70af5c887a4fb11fa2a120c5">DataType</a> {</div><div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;    INT8 = 0,</div><div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;    INT16 = 1,</div><div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;    INT32 = 2,</div><div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;    INT64 = 3,</div><div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;    STRING = 4,</div><div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;    BOOL = 5,</div><div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;    FLOAT = 6,</div><div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;    DOUBLE = 7,</div><div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;    BINARY = 8,</div><div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;    UNIXTIME_MICROS = 9,</div><div class="line"><a name="l00137"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduColumnSchema.html#aba69238e70af5c887a4fb11fa2a120c5a27d1b7aca7cf9a01d9258a41bbe3b505">  137</a></span>&#160;    TIMESTAMP = UNIXTIME_MICROS </div><div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;  };</div><div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;</div><div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;  <span class="keyword">static</span> std::string DataTypeToString(<a class="code" href="classkudu_1_1client_1_1KuduColumnSchema.html#aba69238e70af5c887a4fb11fa2a120c5">DataType</a> type);</div><div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;</div><div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduColumnSchema.html">KuduColumnSchema</a>(<span class="keyword">const</span> std::string &amp;name,</div><div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;                   <a class="code" href="classkudu_1_1client_1_1KuduColumnSchema.html#aba69238e70af5c887a4fb11fa2a120c5">DataType</a> type,</div><div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;                   <span class="keywordtype">bool</span> is_nullable = <span class="keyword">false</span>,</div><div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;                   <span class="keyword">const</span> <span class="keywordtype">void</span>* default_value = NULL,</div><div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;                   <a class="code" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html">KuduColumnStorageAttributes</a> attributes = <a class="code" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html">KuduColumnStorageAttributes</a>())</div><div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;      ATTRIBUTE_DEPRECATED(&quot;use <a class="code" href="classkudu_1_1client_1_1KuduSchemaBuilder.html">KuduSchemaBuilder</a> instead&quot;);</div><div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;</div><div class="line"><a name="l00172"></a><span class="lineno">  172</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduColumnSchema.html">KuduColumnSchema</a>(const <a class="code" href="classkudu_1_1client_1_1KuduColumnSchema.html">KuduColumnSchema</a>&amp; other);</div><div class="line"><a name="l00173"></a><span class="lineno">  173</span>&#160;  ~<a class="code" href="classkudu_1_1client_1_1KuduColumnSchema.html">KuduColumnSchema</a>();</div><div class="line"><a name="l00174"></a><span class="lineno">  174</span>&#160;</div><div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduColumnSchema.html">KuduColumnSchema</a>&amp; operator=(const <a class="code" href="classkudu_1_1client_1_1KuduColumnSchema.html">KuduColumnSchema</a>&amp; other);</div><div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;</div><div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160;  <span class="keywordtype">void</span> CopyFrom(const <a class="code" href="classkudu_1_1client_1_1KuduColumnSchema.html">KuduColumnSchema</a>&amp; other);</div><div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160;</div><div class="line"><a name="l00193"></a><span class="lineno">  193</span>&#160;  <span class="keywordtype">bool</span> Equals(const <a class="code" href="classkudu_1_1client_1_1KuduColumnSchema.html">KuduColumnSchema</a>&amp; other) const;</div><div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160;</div><div class="line"><a name="l00201"></a><span class="lineno">  201</span>&#160;  const std::<span class="keywordtype">string</span>&amp; name() const;</div><div class="line"><a name="l00202"></a><span class="lineno">  202</span>&#160;</div><div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduColumnSchema.html#aba69238e70af5c887a4fb11fa2a120c5">DataType</a> type() const;</div><div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160;</div><div class="line"><a name="l00207"></a><span class="lineno">  207</span>&#160;  <span class="keywordtype">bool</span> is_nullable() const;</div><div class="line"><a name="l00209"></a><span class="lineno">  209</span>&#160;</div><div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160; private:</div><div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160;  friend class <a class="code" href="classkudu_1_1client_1_1KuduColumnSpec.html">KuduColumnSpec</a>;</div><div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160;  friend class <a class="code" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a>;</div><div class="line"><a name="l00213"></a><span class="lineno">  213</span>&#160;  friend class <a class="code" href="classkudu_1_1client_1_1KuduSchemaBuilder.html">KuduSchemaBuilder</a>;</div><div class="line"><a name="l00214"></a><span class="lineno">  214</span>&#160;  <span class="comment">// KuduTableAlterer::Data needs to be a friend. Friending the parent class</span></div><div class="line"><a name="l00215"></a><span class="lineno">  215</span>&#160;  <span class="comment">// is transitive to nested classes. See http://tiny.cloudera.com/jwtui</span></div><div class="line"><a name="l00216"></a><span class="lineno">  216</span>&#160;  friend class <a class="code" href="classkudu_1_1client_1_1KuduTableAlterer.html">KuduTableAlterer</a>;</div><div class="line"><a name="l00217"></a><span class="lineno">  217</span>&#160;</div><div class="line"><a name="l00218"></a><span class="lineno">  218</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduColumnSchema.html">KuduColumnSchema</a>();</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;  <span class="comment">// Owned.</span></div><div class="line"><a name="l00221"></a><span class="lineno">  221</span>&#160;  ColumnSchema* col_;</div><div class="line"><a name="l00222"></a><span class="lineno">  222</span>&#160;};</div><div class="line"><a name="l00223"></a><span class="lineno">  223</span>&#160;</div><div class="line"><a name="l00232"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduColumnSpec.html">  232</a></span>&#160;class KUDU_EXPORT KuduColumnSpec {</div><div class="line"><a name="l00233"></a><span class="lineno">  233</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00245"></a><span class="lineno">  245</span>&#160;  KuduColumnSpec* Default(<a class="code" href="classkudu_1_1client_1_1KuduValue.html">KuduValue</a>* value);</div><div class="line"><a name="l00246"></a><span class="lineno">  246</span>&#160;</div><div class="line"><a name="l00252"></a><span class="lineno">  252</span>&#160;  KuduColumnSpec* Compression(<a class="code" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#af579406931a40daa5cb9e10603341a78">KuduColumnStorageAttributes::CompressionType</a> compression);</div><div class="line"><a name="l00253"></a><span class="lineno">  253</span>&#160;</div><div class="line"><a name="l00261"></a><span class="lineno">  261</span>&#160;  KuduColumnSpec* Encoding(<a class="code" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#aeb835a12e6f40b1a619afa8abd773b6d">KuduColumnStorageAttributes::EncodingType</a> encoding);</div><div class="line"><a name="l00262"></a><span class="lineno">  262</span>&#160;</div><div class="line"><a name="l00282"></a><span class="lineno">  282</span>&#160;  KuduColumnSpec* BlockSize(int32_t block_size);</div><div class="line"><a name="l00283"></a><span class="lineno">  283</span>&#160;</div><div class="line"><a name="l00296"></a><span class="lineno">  296</span>&#160;  KuduColumnSpec* PrimaryKey();</div><div class="line"><a name="l00297"></a><span class="lineno">  297</span>&#160;</div><div class="line"><a name="l00303"></a><span class="lineno">  303</span>&#160;  KuduColumnSpec* NotNull();</div><div class="line"><a name="l00304"></a><span class="lineno">  304</span>&#160;</div><div class="line"><a name="l00310"></a><span class="lineno">  310</span>&#160;  KuduColumnSpec* Nullable();</div><div class="line"><a name="l00311"></a><span class="lineno">  311</span>&#160;</div><div class="line"><a name="l00319"></a><span class="lineno">  319</span>&#160;  KuduColumnSpec* Type(<a class="code" href="classkudu_1_1client_1_1KuduColumnSchema.html#aba69238e70af5c887a4fb11fa2a120c5">KuduColumnSchema::DataType</a> type);</div><div class="line"><a name="l00321"></a><span class="lineno">  321</span>&#160;</div><div class="line"><a name="l00331"></a><span class="lineno">  331</span>&#160;  KuduColumnSpec* RemoveDefault();</div><div class="line"><a name="l00332"></a><span class="lineno">  332</span>&#160;</div><div class="line"><a name="l00338"></a><span class="lineno">  338</span>&#160;  KuduColumnSpec* RenameTo(<span class="keyword">const</span> std::string&amp; new_name);</div><div class="line"><a name="l00340"></a><span class="lineno">  340</span>&#160;</div><div class="line"><a name="l00341"></a><span class="lineno">  341</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00342"></a><span class="lineno">  342</span>&#160;  <span class="keyword">class </span>KUDU_NO_EXPORT Data;</div><div class="line"><a name="l00343"></a><span class="lineno">  343</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>KuduSchemaBuilder;</div><div class="line"><a name="l00344"></a><span class="lineno">  344</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>KuduTableAlterer;</div><div class="line"><a name="l00345"></a><span class="lineno">  345</span>&#160;</div><div class="line"><a name="l00346"></a><span class="lineno">  346</span>&#160;  <span class="comment">// This class should always be owned and deleted by one of its friends,</span></div><div class="line"><a name="l00347"></a><span class="lineno">  347</span>&#160;  <span class="comment">// not the user.</span></div><div class="line"><a name="l00348"></a><span class="lineno">  348</span>&#160;  ~KuduColumnSpec();</div><div class="line"><a name="l00349"></a><span class="lineno">  349</span>&#160;</div><div class="line"><a name="l00350"></a><span class="lineno">  350</span>&#160;  <span class="keyword">explicit</span> KuduColumnSpec(<span class="keyword">const</span> std::string&amp; col_name);</div><div class="line"><a name="l00351"></a><span class="lineno">  351</span>&#160;</div><div class="line"><a name="l00352"></a><span class="lineno">  352</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> ToColumnSchema(<a class="code" href="classkudu_1_1client_1_1KuduColumnSchema.html">KuduColumnSchema</a>* col) <span class="keyword">const</span>;</div><div class="line"><a name="l00353"></a><span class="lineno">  353</span>&#160;</div><div class="line"><a name="l00354"></a><span class="lineno">  354</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> ToColumnSchemaDelta(ColumnSchemaDelta* col_delta) <span class="keyword">const</span>;</div><div class="line"><a name="l00355"></a><span class="lineno">  355</span>&#160;</div><div class="line"><a name="l00356"></a><span class="lineno">  356</span>&#160;  <a class="code" href="classkudu_1_1Slice.html">Slice</a> DefaultValueAsSlice() <span class="keyword">const</span>;</div><div class="line"><a name="l00357"></a><span class="lineno">  357</span>&#160;</div><div class="line"><a name="l00358"></a><span class="lineno">  358</span>&#160;  <span class="comment">// Owned.</span></div><div class="line"><a name="l00359"></a><span class="lineno">  359</span>&#160;  Data* data_;</div><div class="line"><a name="l00360"></a><span class="lineno">  360</span>&#160;};</div><div class="line"><a name="l00361"></a><span class="lineno">  361</span>&#160;</div><div class="line"><a name="l00383"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduSchemaBuilder.html">  383</a></span>&#160;<span class="keyword">class </span>KUDU_EXPORT <a class="code" href="classkudu_1_1client_1_1KuduSchemaBuilder.html">KuduSchemaBuilder</a> {</div><div class="line"><a name="l00384"></a><span class="lineno">  384</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00385"></a><span class="lineno">  385</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduSchemaBuilder.html">KuduSchemaBuilder</a>();</div><div class="line"><a name="l00386"></a><span class="lineno">  386</span>&#160;  ~<a class="code" href="classkudu_1_1client_1_1KuduSchemaBuilder.html">KuduSchemaBuilder</a>();</div><div class="line"><a name="l00387"></a><span class="lineno">  387</span>&#160;</div><div class="line"><a name="l00394"></a><span class="lineno">  394</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="l00395"></a><span class="lineno">  395</span>&#160;</div><div class="line"><a name="l00403"></a><span class="lineno">  403</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduSchemaBuilder.html">KuduSchemaBuilder</a>* SetPrimaryKey(<span class="keyword">const</span> std::vector&lt;std::string&gt;&amp; key_col_names);</div><div class="line"><a name="l00404"></a><span class="lineno">  404</span>&#160;</div><div class="line"><a name="l00414"></a><span class="lineno">  414</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> Build(<a class="code" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a>* schema);</div><div class="line"><a name="l00415"></a><span class="lineno">  415</span>&#160;</div><div class="line"><a name="l00416"></a><span class="lineno">  416</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00417"></a><span class="lineno">  417</span>&#160;  <span class="keyword">class </span>KUDU_NO_EXPORT Data;</div><div class="line"><a name="l00418"></a><span class="lineno">  418</span>&#160;  <span class="comment">// Owned.</span></div><div class="line"><a name="l00419"></a><span class="lineno">  419</span>&#160;  Data* data_;</div><div class="line"><a name="l00420"></a><span class="lineno">  420</span>&#160;};</div><div class="line"><a name="l00421"></a><span class="lineno">  421</span>&#160;</div><div class="line"><a name="l00423"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduSchema.html">  423</a></span>&#160;<span class="keyword">class </span>KUDU_EXPORT <a class="code" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a> {</div><div class="line"><a name="l00424"></a><span class="lineno">  424</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00425"></a><span class="lineno">  425</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a>();</div><div class="line"><a name="l00426"></a><span class="lineno">  426</span>&#160;</div><div class="line"><a name="l00431"></a><span class="lineno">  431</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a>(<span class="keyword">const</span> <a class="code" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a>&amp; other);</div><div class="line"><a name="l00432"></a><span class="lineno">  432</span>&#160;  ~<a class="code" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a>();</div><div class="line"><a name="l00433"></a><span class="lineno">  433</span>&#160;</div><div class="line"><a name="l00440"></a><span class="lineno">  440</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a>&amp; operator=(<span class="keyword">const</span> <a class="code" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a>&amp; other);</div><div class="line"><a name="l00441"></a><span class="lineno">  441</span>&#160;  <span class="keywordtype">void</span> CopyFrom(<span class="keyword">const</span> <a class="code" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a>&amp; other);</div><div class="line"><a name="l00443"></a><span class="lineno">  443</span>&#160;</div><div class="line"><a name="l00453"></a><span class="lineno">  453</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> Reset(<span class="keyword">const</span> std::vector&lt;KuduColumnSchema&gt;&amp; columns, <span class="keywordtype">int</span> key_columns)</div><div class="line"><a name="l00454"></a><span class="lineno">  454</span>&#160;      ATTRIBUTE_DEPRECATED(<span class="stringliteral">&quot;this method will be removed in a future release&quot;</span>)</div><div class="line"><a name="l00455"></a><span class="lineno">  455</span>&#160;      WARN_UNUSED_RESULT;</div><div class="line"><a name="l00456"></a><span class="lineno">  456</span>&#160;</div><div class="line"><a name="l00463"></a><span class="lineno">  463</span>&#160;  <span class="keywordtype">bool</span> Equals(<span class="keyword">const</span> <a class="code" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a>&amp; other) <span class="keyword">const</span>;</div><div class="line"><a name="l00464"></a><span class="lineno">  464</span>&#160;</div><div class="line"><a name="l00468"></a><span class="lineno">  468</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduColumnSchema.html">KuduColumnSchema</a> Column(<span class="keywordtype">size_t</span> idx) <span class="keyword">const</span>;</div><div class="line"><a name="l00469"></a><span class="lineno">  469</span>&#160;</div><div class="line"><a name="l00471"></a><span class="lineno">  471</span>&#160;  <span class="keywordtype">size_t</span> num_columns() <span class="keyword">const</span>;</div><div class="line"><a name="l00472"></a><span class="lineno">  472</span>&#160;</div><div class="line"><a name="l00481"></a><span class="lineno">  481</span>&#160;  <span class="keywordtype">void</span> GetPrimaryKeyColumnIndexes(std::vector&lt;int&gt;* indexes) <span class="keyword">const</span>;</div><div class="line"><a name="l00482"></a><span class="lineno">  482</span>&#160;</div><div class="line"><a name="l00490"></a><span class="lineno">  490</span>&#160;  <a class="code" href="classKuduPartialRow.html">KuduPartialRow</a>* NewRow() <span class="keyword">const</span>;</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; <span class="keyword">private</span>:</div><div class="line"><a name="l00493"></a><span class="lineno">  493</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>ClientTest;</div><div class="line"><a name="l00494"></a><span class="lineno">  494</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="l00495"></a><span class="lineno">  495</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="l00496"></a><span class="lineno">  496</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="l00497"></a><span class="lineno">  497</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="l00498"></a><span class="lineno">  498</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classkudu_1_1client_1_1KuduSchemaBuilder.html">KuduSchemaBuilder</a>;</div><div class="line"><a name="l00499"></a><span class="lineno">  499</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="l00500"></a><span class="lineno">  500</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="l00501"></a><span class="lineno">  501</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classkudu_1_1client_1_1KuduWriteOperation.html">KuduWriteOperation</a>;</div><div class="line"><a name="l00502"></a><span class="lineno">  502</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>ScanConfiguration;</div><div class="line"><a name="l00503"></a><span class="lineno">  503</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>internal::GetTableSchemaRpc;</div><div class="line"><a name="l00504"></a><span class="lineno">  504</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>internal::LookupRpc;</div><div class="line"><a name="l00505"></a><span class="lineno">  505</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>internal::MetaCacheEntry;</div><div class="line"><a name="l00506"></a><span class="lineno">  506</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>internal::WriteRpc;</div><div class="line"><a name="l00507"></a><span class="lineno">  507</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>tools::RemoteKsckMaster;</div><div class="line"><a name="l00508"></a><span class="lineno">  508</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>tools::ReplicaDumper;</div><div class="line"><a name="l00509"></a><span class="lineno">  509</span>&#160;</div><div class="line"><a name="l00510"></a><span class="lineno">  510</span>&#160;  <span class="keyword">friend</span> <a class="code" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a> KuduSchemaFromSchema(<span class="keyword">const</span> Schema&amp; schema);</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;</div><div class="line"><a name="l00513"></a><span class="lineno">  513</span>&#160;  <span class="comment">// For use by kudu tests.</span></div><div class="line"><a name="l00514"></a><span class="lineno">  514</span>&#160;  <span class="keyword">explicit</span> <a class="code" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a>(<span class="keyword">const</span> Schema&amp; schema);</div><div class="line"><a name="l00515"></a><span class="lineno">  515</span>&#160;</div><div class="line"><a name="l00516"></a><span class="lineno">  516</span>&#160;  <span class="comment">// Private since we don&#39;t want users to rely on the first N columns</span></div><div class="line"><a name="l00517"></a><span class="lineno">  517</span>&#160;  <span class="comment">// being the keys.</span></div><div class="line"><a name="l00518"></a><span class="lineno">  518</span>&#160;  <span class="keywordtype">size_t</span> num_key_columns() <span class="keyword">const</span>;</div><div class="line"><a name="l00519"></a><span class="lineno">  519</span>&#160;</div><div class="line"><a name="l00520"></a><span class="lineno">  520</span>&#160;  <span class="comment">// Owned.</span></div><div class="line"><a name="l00521"></a><span class="lineno">  521</span>&#160;  Schema* schema_;</div><div class="line"><a name="l00522"></a><span class="lineno">  522</span>&#160;};</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;} <span class="comment">// namespace client</span></div><div class="line"><a name="l00525"></a><span class="lineno">  525</span>&#160;} <span class="comment">// namespace kudu</span></div><div class="line"><a name="l00526"></a><span class="lineno">  526</span>&#160;<span class="preprocessor">#endif // KUDU_CLIENT_SCHEMA_H</span></div><div class="ttc" id="classkudu_1_1client_1_1KuduSchema_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></div><div class="ttdoc">A representation of a table&amp;#39;s schema. </div><div class="ttdef"><b>Definition:</b> schema.h:423</div></div>
 <div class="ttc" id="classkudu_1_1Status_html"><div class="ttname"><a href="classkudu_1_1Status.html">kudu::Status</a></div><div class="ttdoc">A representation of an operation&amp;#39;s outcome. </div><div class="ttdef"><b>Definition:</b> status.h:130</div></div>
 <div class="ttc" id="classkudu_1_1client_1_1KuduValue_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduValue.html">kudu::client::KuduValue</a></div><div class="ttdoc">A constant cell value with a specific type. </div><div class="ttdef"><b>Definition:</b> value.h:33</div></div>
 <div class="ttc" id="namespacekudu_html"><div class="ttname"><a href="namespacekudu.html">kudu</a></div><div class="ttdef"><b>Definition:</b> callbacks.h:28</div></div>
-<div class="ttc" id="classkudu_1_1client_1_1KuduColumnStorageAttributes_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html">kudu::client::KuduColumnStorageAttributes</a></div><div class="ttdoc">Representation of column storage attributes. </div><div class="ttdef"><b>Definition:</b> schema.h:54</div></div>
-<div class="ttc" id="classkudu_1_1client_1_1KuduColumnSpec_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduColumnSpec.html">kudu::client::KuduColumnSpec</a></div><div class="ttdoc">Builder API for specifying or altering a column within a table schema. </div><div class="ttdef"><b>Definition:</b> schema.h:230</div></div>
-<div class="ttc" id="classkudu_1_1client_1_1KuduColumnSchema_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduColumnSchema.html">kudu::client::KuduColumnSchema</a></div><div class="ttdoc">Representation of the column schema. </div><div class="ttdef"><b>Definition:</b> schema.h:121</div></div>
-<div class="ttc" id="classkudu_1_1client_1_1KuduColumnStorageAttributes_html_acd93d52b48be7d87a0d3fd4500048f2e"><div class="ttname"><a href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#acd93d52b48be7d87a0d3fd4500048f2e">kudu::client::KuduColumnStorageAttributes::encoding</a></div><div class="ttdeci">const EncodingType encoding() const </div><div class="ttdef"><b>Definition:</b> schema.h:102</div></div>
-<div class="ttc" id="classkudu_1_1client_1_1KuduScanTokenBuilder_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduScanTokenBuilder.html">kudu::client::KuduScanTokenBuilder</a></div><div class="ttdoc">Builds scan tokens for a table. </div><div class="ttdef"><b>Definition:</b> client.h:2118</div></div>
-<div class="ttc" id="classkudu_1_1client_1_1KuduTableAlterer_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduTableAlterer.html">kudu::client::KuduTableAlterer</a></div><div class="ttdoc">Alters an existing table based on the provided steps. </div><div class="ttdef"><b>Definition:</b> client.h:1005</div></div>
-<div class="ttc" id="classkudu_1_1client_1_1KuduColumnStorageAttributes_html_a2d6e5bec50a7305b3b4d75d21d000fab"><div class="ttname"><a href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#a2d6e5bec50a7305b3b4d75d21d000fab">kudu::client::KuduColumnStorageAttributes::KuduColumnStorageAttributes</a></div><div class="ttdeci">KuduColumnStorageAttributes(EncodingType encoding=AUTO_ENCODING, CompressionType compression=DEFAULT_COMPRESSION, int32_t block_size=0) ATTRIBUTE_DEPRECATED(&quot;this const ructor will be private in a future release&quot;)</div><div class="ttdef"><b>Definition:</b> schema.h:91</div></div>
-<div class="ttc" id="classkudu_1_1client_1_1KuduClient_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></div><div class="ttdoc">A handle for a connection to a cluster. </div><div class="ttdef"><b>Definition:</b> client.h:283</div></div>
-<div class="ttc" id="classkudu_1_1client_1_1KuduTable_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a></div><div class="ttdoc">A representation of a table on a particular cluster. </div><div class="ttdef"><b>Definition:</b> client.h:850</div></div>
-<div class="ttc" id="classkudu_1_1client_1_1KuduScanner_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></div><div class="ttdoc">This class is a representation of a single scan. </div><div class="ttdef"><b>Definition:</b> client.h:1682</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduColumnStorageAttributes_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html">kudu::client::KuduColumnStorageAttributes</a></div><div class="ttdoc">Representation of column storage attributes. </div><div class="ttdef"><b>Definition:</b> schema.h:56</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduColumnSpec_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduColumnSpec.html">kudu::client::KuduColumnSpec</a></div><div class="ttdoc">Builder API for specifying or altering a column within a table schema. </div><div class="ttdef"><b>Definition:</b> schema.h:232</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduColumnSchema_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduColumnSchema.html">kudu::client::KuduColumnSchema</a></div><div class="ttdoc">Representation of the column schema. </div><div class="ttdef"><b>Definition:</b> schema.h:123</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduColumnStorageAttributes_html_acd93d52b48be7d87a0d3fd4500048f2e"><div class="ttname"><a href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#acd93d52b48be7d87a0d3fd4500048f2e">kudu::client::KuduColumnStorageAttributes::encoding</a></div><div class="ttdeci">const EncodingType encoding() const </div><div class="ttdef"><b>Definition:</b> schema.h:104</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduScanTokenBuilder_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduScanTokenBuilder.html">kudu::client::KuduScanTokenBuilder</a></div><div class="ttdoc">Builds scan tokens for a table. </div><div class="ttdef"><b>Definition:</b> client.h:2173</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduTableAlterer_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduTableAlterer.html">kudu::client::KuduTableAlterer</a></div><div class="ttdoc">Alters an existing table based on the provided steps. </div><div class="ttdef"><b>Definition:</b> client.h:1018</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduColumnStorageAttributes_html_a2d6e5bec50a7305b3b4d75d21d000fab"><div class="ttname"><a href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#a2d6e5bec50a7305b3b4d75d21d000fab">kudu::client::KuduColumnStorageAttributes::KuduColumnStorageAttributes</a></div><div class="ttdeci">KuduColumnStorageAttributes(EncodingType encoding=AUTO_ENCODING, CompressionType compression=DEFAULT_COMPRESSION, int32_t block_size=0) ATTRIBUTE_DEPRECATED(&quot;this const ructor will be private in a future release&quot;)</div><div class="ttdef"><b>Definition:</b> schema.h:93</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduClient_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></div><div class="ttdoc">A handle for a connection to a cluster. </div><div class="ttdef"><b>Definition:</b> client.h:289</div></div>
+<div class="ttc" id="classkudu_1_1Slice_html"><div class="ttname"><a href="classkudu_1_1Slice.html">kudu::Slice</a></div><div class="ttdoc">A wrapper around externally allocated data. </div><div class="ttdef"><b>Definition:</b> slice.h:43</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduTable_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a></div><div class="ttdoc">A representation of a table on a particular cluster. </div><div class="ttdef"><b>Definition:</b> client.h:862</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduScanner_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></div><div class="ttdoc">This class is a representation of a single scan. </div><div class="ttdef"><b>Definition:</b> client.h:1695</div></div>
 <div class="ttc" id="classkudu_1_1client_1_1KuduWriteOperation_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a></div><div class="ttdoc">A single-row write operation to be sent to a Kudu table. </div><div class="ttdef"><b>Definition:</b> write_op.h:56</div></div>
-<div class="ttc" id="classkudu_1_1client_1_1KuduColumnStorageAttributes_html_af579406931a40daa5cb9e10603341a78"><div class="ttname"><a href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#af579406931a40daa5cb9e10603341a78">kudu::client::KuduColumnStorageAttributes::CompressionType</a></div><div class="ttdeci">CompressionType</div><div class="ttdoc">Column compression types. </div><div class="ttdef"><b>Definition:</b> schema.h:71</div></div>
-<div class="ttc" id="classkudu_1_1client_1_1KuduSchemaBuilder_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduSchemaBuilder.html">kudu::client::KuduSchemaBuilder</a></div><div class="ttdoc">Builder API for constructing a KuduSchema object. </div><div class="ttdef"><b>Definition:</b> schema.h:377</div></div>
-<div class="ttc" id="classkudu_1_1client_1_1KuduColumnSchema_html_aba69238e70af5c887a4fb11fa2a120c5"><div class="ttname"><a href="classkudu_1_1client_1_1KuduColumnSchema.html#aba69238e70af5c887a4fb11fa2a120c5">kudu::client::KuduColumnSchema::DataType</a></div><div class="ttdeci">DataType</div><div class="ttdoc">Supported data types for columns. </div><div class="ttdef"><b>Definition:</b> schema.h:124</div></div>
-<div class="ttc" id="classkudu_1_1client_1_1KuduScanToken_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduScanToken.html">kudu::client::KuduScanToken</a></div><div class="ttdoc">A scan descriptor limited to a single physical contiguous location. </div><div class="ttdef"><b>Definition:</b> client.h:2058</div></div>
-<div class="ttc" id="classkudu_1_1client_1_1KuduTableCreator_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduTableCreator.html">kudu::client::KuduTableCreator</a></div><div class="ttdoc">A helper class to create a new table with the desired options. </div><div class="ttdef"><b>Definition:</b> client.h:634</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduColumnStorageAttributes_html_af579406931a40daa5cb9e10603341a78"><div class="ttname"><a href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#af579406931a40daa5cb9e10603341a78">kudu::client::KuduColumnStorageAttributes::CompressionType</a></div><div class="ttdeci">CompressionType</div><div class="ttdoc">Column compression types. </div><div class="ttdef"><b>Definition:</b> schema.h:73</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduSchemaBuilder_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduSchemaBuilder.html">kudu::client::KuduSchemaBuilder</a></div><div class="ttdoc">Builder API for constructing a KuduSchema object. </div><div class="ttdef"><b>Definition:</b> schema.h:383</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduColumnSchema_html_aba69238e70af5c887a4fb11fa2a120c5"><div class="ttname"><a href="classkudu_1_1client_1_1KuduColumnSchema.html#aba69238e70af5c887a4fb11fa2a120c5">kudu::client::KuduColumnSchema::DataType</a></div><div class="ttdeci">DataType</div><div class="ttdoc">Supported data types for columns. </div><div class="ttdef"><b>Definition:</b> schema.h:126</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduScanToken_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduScanToken.html">kudu::client::KuduScanToken</a></div><div class="ttdoc">A scan descriptor limited to a single physical contiguous location. </div><div class="ttdef"><b>Definition:</b> client.h:2113</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduTableCreator_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduTableCreator.html">kudu::client::KuduTableCreator</a></div><div class="ttdoc">A helper class to create a new table with the desired options. </div><div class="ttdef"><b>Definition:</b> client.h:646</div></div>
 <div class="ttc" id="classKuduPartialRow_html"><div class="ttname"><a href="classKuduPartialRow.html">KuduPartialRow</a></div><div class="ttdoc">A row which may only contain values for a subset of the columns. </div><div class="ttdef"><b>Definition:</b> partial_row.h:61</div></div>
-<div class="ttc" id="classkudu_1_1client_1_1KuduColumnStorageAttributes_html_a00ef1e67c5fdd537d35f102748b1ad9d"><div class="ttname"><a href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#a00ef1e67c5fdd537d35f102748b1ad9d">kudu::client::KuduColumnStorageAttributes::compression</a></div><div class="ttdeci">const CompressionType compression() const </div><div class="ttdef"><b>Definition:</b> schema.h:107</div></div>
-<div class="ttc" id="classkudu_1_1client_1_1KuduColumnStorageAttributes_html_aeb835a12e6f40b1a619afa8abd773b6d"><div class="ttname"><a href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#aeb835a12e6f40b1a619afa8abd773b6d">kudu::client::KuduColumnStorageAttributes::EncodingType</a></div><div class="ttdeci">EncodingType</div><div class="ttdoc">Column encoding types. </div><div class="ttdef"><b>Definition:</b> schema.h:57</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduColumnStorageAttributes_html_a00ef1e67c5fdd537d35f102748b1ad9d"><div class="ttname"><a href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#a00ef1e67c5fdd537d35f102748b1ad9d">kudu::client::KuduColumnStorageAttributes::compression</a></div><div class="ttdeci">const CompressionType compression() const </div><div class="ttdef"><b>Definition:</b> schema.h:109</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduColumnStorageAttributes_html_aeb835a12e6f40b1a619afa8abd773b6d"><div class="ttname"><a href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#aeb835a12e6f40b1a619afa8abd773b6d">kudu::client::KuduColumnStorageAttributes::EncodingType</a></div><div class="ttdeci">EncodingType</div><div class="ttdoc">Column encoding types. </div><div class="ttdef"><b>Definition:</b> schema.h:59</div></div>
 </div><!-- fragment --></div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:02 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/search/all_1.js b/cpp-client-api/search/all_1.js
index 6385010..477ae88 100644
--- a/cpp-client-api/search/all_1.js
+++ b/cpp-client-api/search/all_1.js
@@ -2,5 +2,5 @@
 [
   ['begin',['begin',['../classkudu_1_1client_1_1KuduScanBatch.html#a30f55cf8f3c9d6fcb47537e586d82e9f',1,'kudu::client::KuduScanBatch']]],
   ['blocksize',['BlockSize',['../classkudu_1_1client_1_1KuduColumnSpec.html#a8502dd68c6743c7c66b2b6a02d41a4e6',1,'kudu::client::KuduColumnSpec']]],
-  ['build',['Build',['../classkudu_1_1client_1_1KuduClientBuilder.html#a1585dd6eff82519fe81088d1cfd35b77',1,'kudu::client::KuduClientBuilder::Build()'],['../classkudu_1_1client_1_1KuduScanTokenBuilder.html#acbc00b42db998f3342fa0ca7ab55dfdb',1,'kudu::client::KuduScanTokenBuilder::Build()'],['../classkudu_1_1client_1_1KuduSchemaBuilder.html#af117e347a7d0910dda2695997859db15',1,'kudu::client::KuduSchemaBuilder::Build()']]]
+  ['build',['Build',['../classkudu_1_1client_1_1KuduClientBuilder.html#a1585dd6eff82519fe81088d1cfd35b77',1,'kudu::client::KuduClientBuilder::Build()'],['../classkudu_1_1client_1_1KuduScanTokenBuilder.html#acbc00b42db998f3342fa0ca7ab55dfdb',1,'kudu::client::KuduScanTokenBuilder::Build()'],['../classkudu_1_1client_1_1KuduPartitionerBuilder.html#aa8859050484de2d367781ce6ec41d0ba',1,'kudu::client::KuduPartitionerBuilder::Build()'],['../classkudu_1_1client_1_1KuduSchemaBuilder.html#af117e347a7d0910dda2695997859db15',1,'kudu::client::KuduSchemaBuilder::Build()']]]
 ];
diff --git a/cpp-client-api/search/all_10.js b/cpp-client-api/search/all_10.js
index fdc3d15..a6848cb 100644
--- a/cpp-client-api/search/all_10.js
+++ b/cpp-client-api/search/all_10.js
@@ -4,6 +4,7 @@
   ['serialize',['Serialize',['../classkudu_1_1client_1_1KuduScanToken.html#a6eb749ddf0a1434596d86df88341a008',1,'kudu::client::KuduScanToken']]],
   ['set_5frange_5fpartition_5fcolumns',['set_range_partition_columns',['../classkudu_1_1client_1_1KuduTableCreator.html#a482701285b7a071dd56f04df480bc7c3',1,'kudu::client::KuduTableCreator']]],
   ['setbatchsizebytes',['SetBatchSizeBytes',['../classkudu_1_1client_1_1KuduScanner.html#af82c4ccb442c222033841dd65cf5a67c',1,'kudu::client::KuduScanner::SetBatchSizeBytes()'],['../classkudu_1_1client_1_1KuduScanTokenBuilder.html#a36523ca7f2f9a2b4e3c096cf6167643c',1,'kudu::client::KuduScanTokenBuilder::SetBatchSizeBytes()']]],
+  ['setbuildtimeout',['SetBuildTimeout',['../classkudu_1_1client_1_1KuduPartitionerBuilder.html#a11e28b7ad87a53a92d2ad5494f2c5f14',1,'kudu::client::KuduPartitionerBuilder']]],
   ['setcacheblocks',['SetCacheBlocks',['../classkudu_1_1client_1_1KuduScanner.html#a4a4a2e354b3113561758b9bf4095d310',1,'kudu::client::KuduScanner::SetCacheBlocks()'],['../classkudu_1_1client_1_1KuduScanTokenBuilder.html#a7ab7c9c1c4f4d3bbbc18b2b35d7d5475',1,'kudu::client::KuduScanTokenBuilder::SetCacheBlocks()']]],
   ['seterrorbufferspace',['SetErrorBufferSpace',['../classkudu_1_1client_1_1KuduSession.html#af1c5e5e8faba286cddc266057e9a82d5',1,'kudu::client::KuduSession']]],
   ['setexternalconsistencymode',['SetExternalConsistencyMode',['../classkudu_1_1client_1_1KuduSession.html#a56d1c7f47dfcaf5121b15a4435a8eeca',1,'kudu::client::KuduSession']]],
@@ -21,6 +22,7 @@
   ['setprojectedcolumnnames',['SetProjectedColumnNames',['../classkudu_1_1client_1_1KuduScanner.html#abb10b26056757bf81c410d3d5e6bcc01',1,'kudu::client::KuduScanner::SetProjectedColumnNames()'],['../classkudu_1_1client_1_1KuduScanTokenBuilder.html#a0dbb58301fc0e48ce44f41215d32f0ad',1,'kudu::client::KuduScanTokenBuilder::SetProjectedColumnNames()']]],
   ['setprojectedcolumns',['SetProjectedColumns',['../classkudu_1_1client_1_1KuduScanner.html#a68e2115cde71e113674e7a8b4df399ad',1,'kudu::client::KuduScanner']]],
   ['setreadmode',['SetReadMode',['../classkudu_1_1client_1_1KuduScanner.html#a248e0a05e7bfdc31b5b8d363a937e81e',1,'kudu::client::KuduScanner::SetReadMode()'],['../classkudu_1_1client_1_1KuduScanTokenBuilder.html#adb34f01a9bc52a9e23ce49124bab3892',1,'kudu::client::KuduScanTokenBuilder::SetReadMode()']]],
+  ['setrowformatflags',['SetRowFormatFlags',['../classkudu_1_1client_1_1KuduScanner.html#a3dbaf4c2db6a37517a242dcb8ee64c11',1,'kudu::client::KuduScanner']]],
   ['setselection',['SetSelection',['../classkudu_1_1client_1_1KuduScanner.html#af1db3f372fe3d0f30cd0b6a36b783cc8',1,'kudu::client::KuduScanner::SetSelection()'],['../classkudu_1_1client_1_1KuduScanTokenBuilder.html#a168bfed43dcd754a17d4c82293dade88',1,'kudu::client::KuduScanTokenBuilder::SetSelection()']]],
   ['setsnapshotmicros',['SetSnapshotMicros',['../classkudu_1_1client_1_1KuduScanner.html#a5b36a405daf09399438d5501b25b9f9f',1,'kudu::client::KuduScanner::SetSnapshotMicros()'],['../classkudu_1_1client_1_1KuduScanTokenBuilder.html#aa4c1cfa570edfaab818831a2330eece5',1,'kudu::client::KuduScanTokenBuilder::SetSnapshotMicros()']]],
   ['setsnapshotraw',['SetSnapshotRaw',['../classkudu_1_1client_1_1KuduScanner.html#ab13dbb301197b411dec4cd6870801bae',1,'kudu::client::KuduScanner::SetSnapshotRaw()'],['../classkudu_1_1client_1_1KuduScanTokenBuilder.html#a313e345dc6c1f9ccdad65df5af2cf4b7',1,'kudu::client::KuduScanTokenBuilder::SetSnapshotRaw()']]],
@@ -32,7 +34,7 @@
   ['slicemap',['SliceMap',['../structkudu_1_1SliceMap.html',1,'kudu']]],
   ['split_5frows',['split_rows',['../classkudu_1_1client_1_1KuduTableCreator.html#ae12cc7c72da40f25b079273a6169faf9',1,'kudu::client::KuduTableCreator']]],
   ['starts_5fwith',['starts_with',['../classkudu_1_1Slice.html#a3ad7697d76b8205099d43ca552c12b8d',1,'kudu::Slice']]],
-  ['status',['status',['../classkudu_1_1client_1_1KuduError.html#abd5c5cd46255c8587a5562aec197077c',1,'kudu::client::KuduError::status()'],['../classkudu_1_1Status.html#ad14eb530b3449967ee976aaa1c0bcde0',1,'kudu::Status::Status()'],['../classkudu_1_1Status.html#affca5639a3341212bb23ae7f5c701803',1,'kudu::Status::Status(const Status &amp;s)']]],
   ['status',['Status',['../classkudu_1_1Status.html',1,'kudu']]],
+  ['status',['status',['../classkudu_1_1client_1_1KuduError.html#abd5c5cd46255c8587a5562aec197077c',1,'kudu::client::KuduError::status()'],['../classkudu_1_1Status.html#ad14eb530b3449967ee976aaa1c0bcde0',1,'kudu::Status::Status()'],['../classkudu_1_1Status.html#affca5639a3341212bb23ae7f5c701803',1,'kudu::Status::Status(const Status &amp;s)']]],
   ['status_2eh',['status.h',['../status_8h.html',1,'']]]
 ];
diff --git a/cpp-client-api/search/all_11.js b/cpp-client-api/search/all_11.js
index c97cd0f..d31a51f 100644
--- a/cpp-client-api/search/all_11.js
+++ b/cpp-client-api/search/all_11.js
@@ -13,5 +13,5 @@
   ['totimeval',['ToTimeVal',['../classkudu_1_1MonoDelta.html#af154577344dbba2afa5438872fc3ebd6',1,'kudu::MonoDelta']]],
   ['truncate',['truncate',['../classkudu_1_1Slice.html#a20f1c8e91ff0209e5c8f86766ef63d44',1,'kudu::Slice']]],
   ['ts',['ts',['../classkudu_1_1client_1_1KuduReplica.html#ad7081012fda917ece3e149a20318288a',1,'kudu::client::KuduReplica']]],
-  ['type',['Type',['../classkudu_1_1client_1_1KuduWriteOperation.html#a87d94ee5801a6b16fc6d1f44ee2e4357',1,'kudu::client::KuduWriteOperation::Type()'],['../classkudu_1_1client_1_1KuduColumnSpec.html#a67e794a08387e17ba430d6942419a2c2',1,'kudu::client::KuduColumnSpec::Type()'],['../structkudu_1_1SliceMap.html#ac97e49d0aa50ae49f34ab3bbd95ea5e6',1,'kudu::SliceMap::type()'],['../classkudu_1_1client_1_1KuduColumnSchema.html#a138fb61c6f39afbd2696642216486e56',1,'kudu::client::KuduColumnSchema::type()']]]
+  ['type',['type',['../structkudu_1_1SliceMap.html#ac97e49d0aa50ae49f34ab3bbd95ea5e6',1,'kudu::SliceMap::type()'],['../classkudu_1_1client_1_1KuduColumnSchema.html#a138fb61c6f39afbd2696642216486e56',1,'kudu::client::KuduColumnSchema::type()'],['../classkudu_1_1client_1_1KuduWriteOperation.html#a87d94ee5801a6b16fc6d1f44ee2e4357',1,'kudu::client::KuduWriteOperation::Type()'],['../classkudu_1_1client_1_1KuduColumnSpec.html#a67e794a08387e17ba430d6942419a2c2',1,'kudu::client::KuduColumnSpec::Type()']]]
 ];
diff --git a/cpp-client-api/search/all_3.js b/cpp-client-api/search/all_3.js
index bdf3ac5..461af4e 100644
--- a/cpp-client-api/search/all_3.js
+++ b/cpp-client-api/search/all_3.js
@@ -9,6 +9,7 @@
   ['deletetable',['DeleteTable',['../classkudu_1_1client_1_1KuduClient.html#a9d7cbad036bc74c71873a428abce5c1d',1,'kudu::client::KuduClient']]],
   ['deprecated_20list',['Deprecated List',['../deprecated.html',1,'']]],
   ['deserializeintoscanner',['DeserializeIntoScanner',['../classkudu_1_1client_1_1KuduScanToken.html#ae90d9422476cf6eee5c33afb41d1f867',1,'kudu::client::KuduScanToken']]],
+  ['direct_5fdata',['direct_data',['../classkudu_1_1client_1_1KuduScanBatch.html#a1073a0c6517b126690d99527556dba51',1,'kudu::client::KuduScanBatch']]],
   ['dropcolumn',['DropColumn',['../classkudu_1_1client_1_1KuduTableAlterer.html#ac5a4ec376ec53ba912b85ea0057d10a7',1,'kudu::client::KuduTableAlterer']]],
   ['droprangepartition',['DropRangePartition',['../classkudu_1_1client_1_1KuduTableAlterer.html#ab0f8abf78d35725198876aaa04b737a7',1,'kudu::client::KuduTableAlterer']]]
 ];
diff --git a/cpp-client-api/search/all_8.js b/cpp-client-api/search/all_8.js
index b7ca0ce..7cd3456 100644
--- a/cpp-client-api/search/all_8.js
+++ b/cpp-client-api/search/all_8.js
@@ -4,6 +4,7 @@
   ['import_5fauthentication_5fcredentials',['import_authentication_credentials',['../classkudu_1_1client_1_1KuduClientBuilder.html#a5c411bc4638cbf77e5d318f5049b0b7e',1,'kudu::client::KuduClientBuilder']]],
   ['inclusive_5fbound',['INCLUSIVE_BOUND',['../classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343ba0f4899cc63fba167455e05b525f0b950',1,'kudu::client::KuduTableCreator']]],
   ['increment',['Increment',['../classkudu_1_1client_1_1ResourceMetrics.html#ae7b5f6021f63c25bbd087ba2cf48dc8a',1,'kudu::client::ResourceMetrics']]],
+  ['indirect_5fdata',['indirect_data',['../classkudu_1_1client_1_1KuduScanBatch.html#af41b26a5f137122454d6341a5b5c1a43',1,'kudu::client::KuduScanBatch']]],
   ['initialized',['Initialized',['../classkudu_1_1MonoDelta.html#aad3a0f1a1fc2e504ff137e55cfe068a3',1,'kudu::MonoDelta::Initialized()'],['../classkudu_1_1MonoTime.html#a4ba08bf71a2496672338522952301926',1,'kudu::MonoTime::Initialized()']]],
   ['intokuduscanner',['IntoKuduScanner',['../classkudu_1_1client_1_1KuduScanToken.html#adb95c9538bb1fc4c83963557ce487292',1,'kudu::client::KuduScanToken']]],
   ['is_5fleader',['is_leader',['../classkudu_1_1client_1_1KuduReplica.html#a5e380e1e7f2154b61269737d65dd2649',1,'kudu::client::KuduReplica']]],
diff --git a/cpp-client-api/search/all_9.js b/cpp-client-api/search/all_9.js
index b12f4e1..e61ff93 100644
--- a/cpp-client-api/search/all_9.js
+++ b/cpp-client-api/search/all_9.js
@@ -15,8 +15,8 @@
   ['kudu_5fwarn_5fnot_5fok',['KUDU_WARN_NOT_OK',['../status_8h.html#a1e64fec5ef85c0c738f6ac3f398f607e',1,'status.h']]],
   ['kuduclient',['KuduClient',['../classkudu_1_1client_1_1KuduClient.html',1,'kudu::client']]],
   ['kuduclientbuilder',['KuduClientBuilder',['../classkudu_1_1client_1_1KuduClientBuilder.html',1,'kudu::client']]],
-  ['kuducolumnschema',['KuduColumnSchema',['../classkudu_1_1client_1_1KuduColumnSchema.html',1,'kudu::client']]],
   ['kuducolumnschema',['KuduColumnSchema',['../classkudu_1_1client_1_1KuduColumnSchema.html#aaa771e9d224978f735b3aabb04bc129a',1,'kudu::client::KuduColumnSchema::KuduColumnSchema(const std::string &amp;name, DataType type, bool is_nullable=false, const void *default_value=NULL, KuduColumnStorageAttributes attributes=KuduColumnStorageAttributes()) ATTRIBUTE_DEPRECATED(&quot;use KuduSchemaBuilder instead&quot;)'],['../classkudu_1_1client_1_1KuduColumnSchema.html#afc82e98af83ba61079ba5d30401b5872',1,'kudu::client::KuduColumnSchema::KuduColumnSchema(const KuduColumnSchema &amp;other)']]],
+  ['kuducolumnschema',['KuduColumnSchema',['../classkudu_1_1client_1_1KuduColumnSchema.html',1,'kudu::client']]],
   ['kuducolumnspec',['KuduColumnSpec',['../classkudu_1_1client_1_1KuduColumnSpec.html',1,'kudu::client']]],
   ['kuducolumnstorageattributes',['KuduColumnStorageAttributes',['../classkudu_1_1client_1_1KuduColumnStorageAttributes.html#a2d6e5bec50a7305b3b4d75d21d000fab',1,'kudu::client::KuduColumnStorageAttributes']]],
   ['kuducolumnstorageattributes',['KuduColumnStorageAttributes',['../classkudu_1_1client_1_1KuduColumnStorageAttributes.html',1,'kudu::client']]],
@@ -24,11 +24,14 @@
   ['kuduerror',['KuduError',['../classkudu_1_1client_1_1KuduError.html',1,'kudu::client']]],
   ['kuduinsert',['KuduInsert',['../classkudu_1_1client_1_1KuduInsert.html',1,'kudu::client']]],
   ['kuduloggingcallback',['KuduLoggingCallback',['../classkudu_1_1client_1_1KuduLoggingCallback.html',1,'kudu::client']]],
-  ['kuduloggingfunctioncallback',['KuduLoggingFunctionCallback',['../classkudu_1_1client_1_1KuduLoggingFunctionCallback.html#a4263c504b21e0e5827f47a902e908a2c',1,'kudu::client::KuduLoggingFunctionCallback']]],
   ['kuduloggingfunctioncallback',['KuduLoggingFunctionCallback',['../classkudu_1_1client_1_1KuduLoggingFunctionCallback.html',1,'kudu::client']]],
+  ['kuduloggingfunctioncallback',['KuduLoggingFunctionCallback',['../classkudu_1_1client_1_1KuduLoggingFunctionCallback.html#a4263c504b21e0e5827f47a902e908a2c',1,'kudu::client::KuduLoggingFunctionCallback']]],
   ['kuduloggingmembercallback',['KuduLoggingMemberCallback',['../classkudu_1_1client_1_1KuduLoggingMemberCallback.html#aeda4119b1288db0d055c9800e3485fd8',1,'kudu::client::KuduLoggingMemberCallback']]],
   ['kuduloggingmembercallback',['KuduLoggingMemberCallback',['../classkudu_1_1client_1_1KuduLoggingMemberCallback.html',1,'kudu::client']]],
   ['kudupartialrow',['KuduPartialRow',['../classKuduPartialRow.html',1,'KuduPartialRow'],['../classKuduPartialRow.html#a9eb1cbd1b216f6313a03c82ab67112e4',1,'KuduPartialRow::KuduPartialRow(const Schema *schema)'],['../classKuduPartialRow.html#ab4ebb399982edbb3e877e38a74c700f1',1,'KuduPartialRow::KuduPartialRow(const KuduPartialRow &amp;other)']]],
+  ['kudupartitioner',['KuduPartitioner',['../classkudu_1_1client_1_1KuduPartitioner.html',1,'kudu::client']]],
+  ['kudupartitionerbuilder',['KuduPartitionerBuilder',['../classkudu_1_1client_1_1KuduPartitionerBuilder.html',1,'kudu::client']]],
+  ['kudupartitionerbuilder',['KuduPartitionerBuilder',['../classkudu_1_1client_1_1KuduPartitionerBuilder.html#a27d130235be1c2691779e1d97732a4ba',1,'kudu::client::KuduPartitionerBuilder']]],
   ['kudupredicate',['KuduPredicate',['../classkudu_1_1client_1_1KuduPredicate.html',1,'kudu::client']]],
   ['kudureplica',['KuduReplica',['../classkudu_1_1client_1_1KuduReplica.html',1,'kudu::client']]],
   ['kuduscanbatch',['KuduScanBatch',['../classkudu_1_1client_1_1KuduScanBatch.html',1,'kudu::client']]],
diff --git a/cpp-client-api/search/all_c.js b/cpp-client-api/search/all_c.js
index 2774749..c1f2616 100644
--- a/cpp-client-api/search/all_c.js
+++ b/cpp-client-api/search/all_c.js
@@ -15,11 +15,13 @@
   ['newupdate',['NewUpdate',['../classkudu_1_1client_1_1KuduTable.html#a7e95271452d608fc2b563f7b46ddcda8',1,'kudu::client::KuduTable']]],
   ['newupsert',['NewUpsert',['../classkudu_1_1client_1_1KuduTable.html#a19e92dbaeeff86c5d707b15b2a7051fc',1,'kudu::client::KuduTable']]],
   ['nextbatch',['NextBatch',['../classkudu_1_1client_1_1KuduScanner.html#af365f1d3b3b34aeb7d016727a9019067',1,'kudu::client::KuduScanner::NextBatch(std::vector&lt; KuduRowResult &gt; *rows) ATTRIBUTE_DEPRECATED(&quot;use NextBatch(KuduScanBatch*) instead&quot;)'],['../classkudu_1_1client_1_1KuduScanner.html#af1475d9a0667839c1ed9c3714b47d487',1,'kudu::client::KuduScanner::NextBatch(KuduScanBatch *batch)']]],
+  ['no_5fflags',['NO_FLAGS',['../classkudu_1_1client_1_1KuduScanner.html#a68345956f3f4c7fd5e1665fd292f6a85',1,'kudu::client::KuduScanner']]],
   ['notnull',['NotNull',['../classkudu_1_1client_1_1KuduColumnSpec.html#af8c64c5a8a7a93ec644d481f23d91cca',1,'kudu::client::KuduColumnSpec']]],
   ['now',['Now',['../classkudu_1_1MonoTime.html#a6c83d5c31e6ea5a869a655646f924783',1,'kudu::MonoTime']]],
   ['nullable',['Nullable',['../classkudu_1_1client_1_1KuduColumnSpec.html#aab05d7d45f4cd2dadb8e0c715d87e841',1,'kudu::client::KuduColumnSpec']]],
   ['nulllog',['NullLog',['../classkudu_1_1internal__logging_1_1NullLog.html',1,'kudu::internal_logging']]],
   ['num_5fcolumns',['num_columns',['../classkudu_1_1client_1_1KuduSchema.html#ac9e9f590006bd7ccfa44b87dec1b3c7a',1,'kudu::client::KuduSchema']]],
   ['num_5freplicas',['num_replicas',['../classkudu_1_1client_1_1KuduTableCreator.html#a9dd4673755ba242eab3f06b19182d139',1,'kudu::client::KuduTableCreator::num_replicas()'],['../classkudu_1_1client_1_1KuduTable.html#a147bdffbd798161916471b721d63128f',1,'kudu::client::KuduTable::num_replicas()']]],
+  ['numpartitions',['NumPartitions',['../classkudu_1_1client_1_1KuduPartitioner.html#af692612faaccb259bf3d15f2bf5b246d',1,'kudu::client::KuduPartitioner']]],
   ['numrows',['NumRows',['../classkudu_1_1client_1_1KuduScanBatch.html#a16e45694c5932eb3decc2184c3834157',1,'kudu::client::KuduScanBatch']]]
 ];
diff --git a/cpp-client-api/search/all_d.js b/cpp-client-api/search/all_d.js
index fef97c5..3ba77eb 100644
--- a/cpp-client-api/search/all_d.js
+++ b/cpp-client-api/search/all_d.js
@@ -1,6 +1,6 @@
 var searchData=
 [
-  ['ok',['ok',['../classkudu_1_1Status.html#abf6454dcb72bfa92189a0595b5a858a7',1,'kudu::Status::ok() const '],['../classkudu_1_1Status.html#adaff3248b2f66041d0a7dd59f118b7ac',1,'kudu::Status::OK()']]],
+  ['ok',['OK',['../classkudu_1_1Status.html#adaff3248b2f66041d0a7dd59f118b7ac',1,'kudu::Status::OK()'],['../classkudu_1_1Status.html#abf6454dcb72bfa92189a0595b5a858a7',1,'kudu::Status::ok() const ']]],
   ['open',['Open',['../classkudu_1_1client_1_1KuduScanner.html#aa1ff3c11d9ac9f8183189ea5ac1ed9f1',1,'kudu::client::KuduScanner']]],
   ['opentable',['OpenTable',['../classkudu_1_1client_1_1KuduClient.html#aa82a09718ffe68d3255195e736aec8d7',1,'kudu::client::KuduClient']]],
   ['operator_21_3d',['operator!=',['../classkudu_1_1client_1_1KuduScanBatch.html#afd2b2c4cb038cbd366c2af8cf09a3a68',1,'kudu::client::KuduScanBatch']]],
@@ -9,7 +9,7 @@
   ['operator_2b_2b',['operator++',['../classkudu_1_1client_1_1KuduScanBatch.html#ad5df483ed3172caab5a8d6a72abfad0c',1,'kudu::client::KuduScanBatch::operator++()'],['../classkudu_1_1client_1_1KuduScanBatch.html#a4b1ad47fd7d429859b6181825a063c48',1,'kudu::client::KuduScanBatch::operator++(int)']]],
   ['operator_2d_3d',['operator-=',['../classkudu_1_1MonoTime.html#a2264cf528d0a346e60e0921022333bf8',1,'kudu::MonoTime']]],
   ['operator_3c_3c',['operator&lt;&lt;',['../classkudu_1_1internal__logging_1_1NullLog.html#abe50abde8e4af12413c99f437094dc8a',1,'kudu::internal_logging::NullLog::operator&lt;&lt;()'],['../classkudu_1_1internal__logging_1_1CerrLog.html#a9febb74005a76f9b203e9718275ab724',1,'kudu::internal_logging::CerrLog::operator&lt;&lt;()']]],
-  ['operator_3d',['operator=',['../classkudu_1_1client_1_1KuduColumnSchema.html#a4b58da787c8e7dc14987aa74a54f199e',1,'kudu::client::KuduColumnSchema::operator=()'],['../classKuduPartialRow.html#a03cab3e1aa0bef19c14f94181934181f',1,'KuduPartialRow::operator=()'],['../classkudu_1_1Status.html#ae63eecd6e48fa007b2334b6459972c39',1,'kudu::Status::operator=()']]],
+  ['operator_3d',['operator=',['../classkudu_1_1client_1_1KuduColumnSchema.html#a4b58da787c8e7dc14987aa74a54f199e',1,'kudu::client::KuduColumnSchema::operator=()'],['../classKuduPartialRow.html#a03cab3e1aa0bef19c14f94181934181f',1,'KuduPartialRow::operator=()'],['../classkudu_1_1Status.html#aa387797d8a80892563d56244a2351a88',1,'kudu::Status::operator=()']]],
   ['operator_3d_3d',['operator==',['../classkudu_1_1client_1_1KuduScanBatch.html#a378a5844a4b4774056b26f0003c15048',1,'kudu::client::KuduScanBatch::operator==()'],['../classkudu_1_1Slice.html#a1323493265790d022203af0d8b31fd9c',1,'kudu::Slice::operator==()']]],
   ['operator_5b_5d',['operator[]',['../classkudu_1_1Slice.html#a5ff06bc0fd9734536a464e604ec226f2',1,'kudu::Slice']]],
   ['ordered',['ORDERED',['../classkudu_1_1client_1_1KuduScanner.html#a3d6c79325c9da9741d0accf1b43bf7f9a4395ad2ec57ce53e30d8b5748fa2c63a',1,'kudu::client::KuduScanner']]],
diff --git a/cpp-client-api/search/all_e.js b/cpp-client-api/search/all_e.js
index 7de35ce..399ceaf 100644
--- a/cpp-client-api/search/all_e.js
+++ b/cpp-client-api/search/all_e.js
@@ -1,6 +1,8 @@
 var searchData=
 [
+  ['pad_5funixtime_5fmicros_5fto_5f16_5fbytes',['PAD_UNIXTIME_MICROS_TO_16_BYTES',['../classkudu_1_1client_1_1KuduScanner.html#a63cd270f3bc72f4197d2581ec8f8fc44',1,'kudu::client::KuduScanner']]],
   ['partition_5fschema',['partition_schema',['../classkudu_1_1client_1_1KuduTable.html#af1125879ce34fa6c994a70fe1803a808',1,'kudu::client::KuduTable']]],
+  ['partitionrow',['PartitionRow',['../classkudu_1_1client_1_1KuduPartitioner.html#a05d816ba08d85d5c0c95025e12d2e369',1,'kudu::client::KuduPartitioner']]],
   ['port',['port',['../classkudu_1_1client_1_1KuduTabletServer.html#ab4715d71c64dad1059698f2bb9ef192d',1,'kudu::client::KuduTabletServer']]],
   ['posix_5fcode',['posix_code',['../classkudu_1_1Status.html#a20d5b34e3507a5dd326029a87df641dc',1,'kudu::Status']]],
   ['projection_5fschema',['projection_schema',['../classkudu_1_1client_1_1KuduScanBatch.html#a3b58e77f53beea357fbb8bcddaab3137',1,'kudu::client::KuduScanBatch']]]
diff --git a/cpp-client-api/search/all_f.js b/cpp-client-api/search/all_f.js
index 69178e7..be64085 100644
--- a/cpp-client-api/search/all_f.js
+++ b/cpp-client-api/search/all_f.js
@@ -12,7 +12,7 @@
   ['replicaselection',['ReplicaSelection',['../classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11a',1,'kudu::client::KuduClient']]],
   ['reset',['Reset',['../classkudu_1_1client_1_1KuduSchema.html#a3f51ccf1a7e6f4a4fe4958073305dbab',1,'kudu::client::KuduSchema']]],
   ['resourcemetrics',['ResourceMetrics',['../classkudu_1_1client_1_1ResourceMetrics.html',1,'kudu::client']]],
-  ['row',['Row',['../classkudu_1_1client_1_1KuduScanBatch.html#a93c2f0914140dd405a51d57e2f75014a',1,'kudu::client::KuduScanBatch::Row()'],['../classkudu_1_1client_1_1KuduWriteOperation.html#a973b342ced786b23754b57fd83b34aa3',1,'kudu::client::KuduWriteOperation::row()']]],
+  ['row',['row',['../classkudu_1_1client_1_1KuduWriteOperation.html#a973b342ced786b23754b57fd83b34aa3',1,'kudu::client::KuduWriteOperation::row()'],['../classkudu_1_1client_1_1KuduScanBatch.html#a93c2f0914140dd405a51d57e2f75014a',1,'kudu::client::KuduScanBatch::Row()']]],
   ['rowptr',['RowPtr',['../classkudu_1_1client_1_1KuduScanBatch.html#a92bbfa48e9b503181c2dfb5f11f14e4e',1,'kudu::client::KuduScanBatch']]],
   ['run',['Run',['../classkudu_1_1client_1_1KuduLoggingCallback.html#ad9d5ac9b45246c5a4304d53ee86102eb',1,'kudu::client::KuduLoggingCallback::Run()'],['../classkudu_1_1client_1_1KuduLoggingMemberCallback.html#a3d75e43bb4af846af66735fabe642a88',1,'kudu::client::KuduLoggingMemberCallback::Run()'],['../classkudu_1_1client_1_1KuduLoggingFunctionCallback.html#ab5119cbc60675f3ca77e08c1e87ec215',1,'kudu::client::KuduLoggingFunctionCallback::Run()'],['../classkudu_1_1client_1_1KuduStatusCallback.html#a2333beedb1d0c08a8c127b4552fbeb07',1,'kudu::client::KuduStatusCallback::Run()'],['../classkudu_1_1client_1_1KuduStatusMemberCallback.html#a94bde1bdcb3cde6f78b11d822be19232',1,'kudu::client::KuduStatusMemberCallback::Run()'],['../classkudu_1_1client_1_1KuduStatusFunctionCallback.html#af4c3e7fbd4fed52bcba220f95a27f70a',1,'kudu::client::KuduStatusFunctionCallback::Run()']]]
 ];
diff --git a/cpp-client-api/search/classes_1.js b/cpp-client-api/search/classes_1.js
index d8c25e4..d7eacc2 100644
--- a/cpp-client-api/search/classes_1.js
+++ b/cpp-client-api/search/classes_1.js
@@ -12,6 +12,8 @@
   ['kuduloggingfunctioncallback',['KuduLoggingFunctionCallback',['../classkudu_1_1client_1_1KuduLoggingFunctionCallback.html',1,'kudu::client']]],
   ['kuduloggingmembercallback',['KuduLoggingMemberCallback',['../classkudu_1_1client_1_1KuduLoggingMemberCallback.html',1,'kudu::client']]],
   ['kudupartialrow',['KuduPartialRow',['../classKuduPartialRow.html',1,'']]],
+  ['kudupartitioner',['KuduPartitioner',['../classkudu_1_1client_1_1KuduPartitioner.html',1,'kudu::client']]],
+  ['kudupartitionerbuilder',['KuduPartitionerBuilder',['../classkudu_1_1client_1_1KuduPartitionerBuilder.html',1,'kudu::client']]],
   ['kudupredicate',['KuduPredicate',['../classkudu_1_1client_1_1KuduPredicate.html',1,'kudu::client']]],
   ['kudureplica',['KuduReplica',['../classkudu_1_1client_1_1KuduReplica.html',1,'kudu::client']]],
   ['kuduscanbatch',['KuduScanBatch',['../classkudu_1_1client_1_1KuduScanBatch.html',1,'kudu::client']]],
diff --git a/cpp-client-api/search/functions_1.js b/cpp-client-api/search/functions_1.js
index 6385010..477ae88 100644
--- a/cpp-client-api/search/functions_1.js
+++ b/cpp-client-api/search/functions_1.js
@@ -2,5 +2,5 @@
 [
   ['begin',['begin',['../classkudu_1_1client_1_1KuduScanBatch.html#a30f55cf8f3c9d6fcb47537e586d82e9f',1,'kudu::client::KuduScanBatch']]],
   ['blocksize',['BlockSize',['../classkudu_1_1client_1_1KuduColumnSpec.html#a8502dd68c6743c7c66b2b6a02d41a4e6',1,'kudu::client::KuduColumnSpec']]],
-  ['build',['Build',['../classkudu_1_1client_1_1KuduClientBuilder.html#a1585dd6eff82519fe81088d1cfd35b77',1,'kudu::client::KuduClientBuilder::Build()'],['../classkudu_1_1client_1_1KuduScanTokenBuilder.html#acbc00b42db998f3342fa0ca7ab55dfdb',1,'kudu::client::KuduScanTokenBuilder::Build()'],['../classkudu_1_1client_1_1KuduSchemaBuilder.html#af117e347a7d0910dda2695997859db15',1,'kudu::client::KuduSchemaBuilder::Build()']]]
+  ['build',['Build',['../classkudu_1_1client_1_1KuduClientBuilder.html#a1585dd6eff82519fe81088d1cfd35b77',1,'kudu::client::KuduClientBuilder::Build()'],['../classkudu_1_1client_1_1KuduScanTokenBuilder.html#acbc00b42db998f3342fa0ca7ab55dfdb',1,'kudu::client::KuduScanTokenBuilder::Build()'],['../classkudu_1_1client_1_1KuduPartitionerBuilder.html#aa8859050484de2d367781ce6ec41d0ba',1,'kudu::client::KuduPartitionerBuilder::Build()'],['../classkudu_1_1client_1_1KuduSchemaBuilder.html#af117e347a7d0910dda2695997859db15',1,'kudu::client::KuduSchemaBuilder::Build()']]]
 ];
diff --git a/cpp-client-api/search/functions_10.js b/cpp-client-api/search/functions_10.js
index 68e66ad..1be0e26 100644
--- a/cpp-client-api/search/functions_10.js
+++ b/cpp-client-api/search/functions_10.js
@@ -4,6 +4,7 @@
   ['serialize',['Serialize',['../classkudu_1_1client_1_1KuduScanToken.html#a6eb749ddf0a1434596d86df88341a008',1,'kudu::client::KuduScanToken']]],
   ['set_5frange_5fpartition_5fcolumns',['set_range_partition_columns',['../classkudu_1_1client_1_1KuduTableCreator.html#a482701285b7a071dd56f04df480bc7c3',1,'kudu::client::KuduTableCreator']]],
   ['setbatchsizebytes',['SetBatchSizeBytes',['../classkudu_1_1client_1_1KuduScanner.html#af82c4ccb442c222033841dd65cf5a67c',1,'kudu::client::KuduScanner::SetBatchSizeBytes()'],['../classkudu_1_1client_1_1KuduScanTokenBuilder.html#a36523ca7f2f9a2b4e3c096cf6167643c',1,'kudu::client::KuduScanTokenBuilder::SetBatchSizeBytes()']]],
+  ['setbuildtimeout',['SetBuildTimeout',['../classkudu_1_1client_1_1KuduPartitionerBuilder.html#a11e28b7ad87a53a92d2ad5494f2c5f14',1,'kudu::client::KuduPartitionerBuilder']]],
   ['setcacheblocks',['SetCacheBlocks',['../classkudu_1_1client_1_1KuduScanner.html#a4a4a2e354b3113561758b9bf4095d310',1,'kudu::client::KuduScanner::SetCacheBlocks()'],['../classkudu_1_1client_1_1KuduScanTokenBuilder.html#a7ab7c9c1c4f4d3bbbc18b2b35d7d5475',1,'kudu::client::KuduScanTokenBuilder::SetCacheBlocks()']]],
   ['seterrorbufferspace',['SetErrorBufferSpace',['../classkudu_1_1client_1_1KuduSession.html#af1c5e5e8faba286cddc266057e9a82d5',1,'kudu::client::KuduSession']]],
   ['setexternalconsistencymode',['SetExternalConsistencyMode',['../classkudu_1_1client_1_1KuduSession.html#a56d1c7f47dfcaf5121b15a4435a8eeca',1,'kudu::client::KuduSession']]],
@@ -21,6 +22,7 @@
   ['setprojectedcolumnnames',['SetProjectedColumnNames',['../classkudu_1_1client_1_1KuduScanner.html#abb10b26056757bf81c410d3d5e6bcc01',1,'kudu::client::KuduScanner::SetProjectedColumnNames()'],['../classkudu_1_1client_1_1KuduScanTokenBuilder.html#a0dbb58301fc0e48ce44f41215d32f0ad',1,'kudu::client::KuduScanTokenBuilder::SetProjectedColumnNames()']]],
   ['setprojectedcolumns',['SetProjectedColumns',['../classkudu_1_1client_1_1KuduScanner.html#a68e2115cde71e113674e7a8b4df399ad',1,'kudu::client::KuduScanner']]],
   ['setreadmode',['SetReadMode',['../classkudu_1_1client_1_1KuduScanner.html#a248e0a05e7bfdc31b5b8d363a937e81e',1,'kudu::client::KuduScanner::SetReadMode()'],['../classkudu_1_1client_1_1KuduScanTokenBuilder.html#adb34f01a9bc52a9e23ce49124bab3892',1,'kudu::client::KuduScanTokenBuilder::SetReadMode()']]],
+  ['setrowformatflags',['SetRowFormatFlags',['../classkudu_1_1client_1_1KuduScanner.html#a3dbaf4c2db6a37517a242dcb8ee64c11',1,'kudu::client::KuduScanner']]],
   ['setselection',['SetSelection',['../classkudu_1_1client_1_1KuduScanner.html#af1db3f372fe3d0f30cd0b6a36b783cc8',1,'kudu::client::KuduScanner::SetSelection()'],['../classkudu_1_1client_1_1KuduScanTokenBuilder.html#a168bfed43dcd754a17d4c82293dade88',1,'kudu::client::KuduScanTokenBuilder::SetSelection()']]],
   ['setsnapshotmicros',['SetSnapshotMicros',['../classkudu_1_1client_1_1KuduScanner.html#a5b36a405daf09399438d5501b25b9f9f',1,'kudu::client::KuduScanner::SetSnapshotMicros()'],['../classkudu_1_1client_1_1KuduScanTokenBuilder.html#aa4c1cfa570edfaab818831a2330eece5',1,'kudu::client::KuduScanTokenBuilder::SetSnapshotMicros()']]],
   ['setsnapshotraw',['SetSnapshotRaw',['../classkudu_1_1client_1_1KuduScanner.html#ab13dbb301197b411dec4cd6870801bae',1,'kudu::client::KuduScanner::SetSnapshotRaw()'],['../classkudu_1_1client_1_1KuduScanTokenBuilder.html#a313e345dc6c1f9ccdad65df5af2cf4b7',1,'kudu::client::KuduScanTokenBuilder::SetSnapshotRaw()']]],
diff --git a/cpp-client-api/search/functions_11.js b/cpp-client-api/search/functions_11.js
index 795c444..cff5ec1 100644
--- a/cpp-client-api/search/functions_11.js
+++ b/cpp-client-api/search/functions_11.js
@@ -11,5 +11,5 @@
   ['totimeval',['ToTimeVal',['../classkudu_1_1MonoDelta.html#af154577344dbba2afa5438872fc3ebd6',1,'kudu::MonoDelta']]],
   ['truncate',['truncate',['../classkudu_1_1Slice.html#a20f1c8e91ff0209e5c8f86766ef63d44',1,'kudu::Slice']]],
   ['ts',['ts',['../classkudu_1_1client_1_1KuduReplica.html#ad7081012fda917ece3e149a20318288a',1,'kudu::client::KuduReplica']]],
-  ['type',['Type',['../classkudu_1_1client_1_1KuduColumnSpec.html#a67e794a08387e17ba430d6942419a2c2',1,'kudu::client::KuduColumnSpec::Type()'],['../classkudu_1_1client_1_1KuduColumnSchema.html#a138fb61c6f39afbd2696642216486e56',1,'kudu::client::KuduColumnSchema::type()']]]
+  ['type',['type',['../classkudu_1_1client_1_1KuduColumnSchema.html#a138fb61c6f39afbd2696642216486e56',1,'kudu::client::KuduColumnSchema::type()'],['../classkudu_1_1client_1_1KuduColumnSpec.html#a67e794a08387e17ba430d6942419a2c2',1,'kudu::client::KuduColumnSpec::Type()']]]
 ];
diff --git a/cpp-client-api/search/functions_3.js b/cpp-client-api/search/functions_3.js
index 72176ff..233927c 100644
--- a/cpp-client-api/search/functions_3.js
+++ b/cpp-client-api/search/functions_3.js
@@ -7,6 +7,7 @@
   ['default_5frpc_5ftimeout',['default_rpc_timeout',['../classkudu_1_1client_1_1KuduClientBuilder.html#a1813e8c8d24e92a0a710724000e2b3df',1,'kudu::client::KuduClientBuilder::default_rpc_timeout()'],['../classkudu_1_1client_1_1KuduClient.html#a2d0e8397e979e651a23eb240513a5556',1,'kudu::client::KuduClient::default_rpc_timeout()']]],
   ['deletetable',['DeleteTable',['../classkudu_1_1client_1_1KuduClient.html#a9d7cbad036bc74c71873a428abce5c1d',1,'kudu::client::KuduClient']]],
   ['deserializeintoscanner',['DeserializeIntoScanner',['../classkudu_1_1client_1_1KuduScanToken.html#ae90d9422476cf6eee5c33afb41d1f867',1,'kudu::client::KuduScanToken']]],
+  ['direct_5fdata',['direct_data',['../classkudu_1_1client_1_1KuduScanBatch.html#a1073a0c6517b126690d99527556dba51',1,'kudu::client::KuduScanBatch']]],
   ['dropcolumn',['DropColumn',['../classkudu_1_1client_1_1KuduTableAlterer.html#ac5a4ec376ec53ba912b85ea0057d10a7',1,'kudu::client::KuduTableAlterer']]],
   ['droprangepartition',['DropRangePartition',['../classkudu_1_1client_1_1KuduTableAlterer.html#ab0f8abf78d35725198876aaa04b737a7',1,'kudu::client::KuduTableAlterer']]]
 ];
diff --git a/cpp-client-api/search/functions_8.js b/cpp-client-api/search/functions_8.js
index fb9e423..5462f1a 100644
--- a/cpp-client-api/search/functions_8.js
+++ b/cpp-client-api/search/functions_8.js
@@ -3,6 +3,7 @@
   ['id',['id',['../classkudu_1_1client_1_1KuduTablet.html#ae1fc886aa1c72ba64e6ecd05e04a0e31',1,'kudu::client::KuduTablet::id()'],['../classkudu_1_1client_1_1KuduTable.html#a185ff8f18b9bea6b41d6f4cf8dfa1377',1,'kudu::client::KuduTable::id()']]],
   ['import_5fauthentication_5fcredentials',['import_authentication_credentials',['../classkudu_1_1client_1_1KuduClientBuilder.html#a5c411bc4638cbf77e5d318f5049b0b7e',1,'kudu::client::KuduClientBuilder']]],
   ['increment',['Increment',['../classkudu_1_1client_1_1ResourceMetrics.html#ae7b5f6021f63c25bbd087ba2cf48dc8a',1,'kudu::client::ResourceMetrics']]],
+  ['indirect_5fdata',['indirect_data',['../classkudu_1_1client_1_1KuduScanBatch.html#af41b26a5f137122454d6341a5b5c1a43',1,'kudu::client::KuduScanBatch']]],
   ['initialized',['Initialized',['../classkudu_1_1MonoDelta.html#aad3a0f1a1fc2e504ff137e55cfe068a3',1,'kudu::MonoDelta::Initialized()'],['../classkudu_1_1MonoTime.html#a4ba08bf71a2496672338522952301926',1,'kudu::MonoTime::Initialized()']]],
   ['intokuduscanner',['IntoKuduScanner',['../classkudu_1_1client_1_1KuduScanToken.html#adb95c9538bb1fc4c83963557ce487292',1,'kudu::client::KuduScanToken']]],
   ['is_5fleader',['is_leader',['../classkudu_1_1client_1_1KuduReplica.html#a5e380e1e7f2154b61269737d65dd2649',1,'kudu::client::KuduReplica']]],
diff --git a/cpp-client-api/search/functions_9.js b/cpp-client-api/search/functions_9.js
index 6068053..69a9cfa 100644
--- a/cpp-client-api/search/functions_9.js
+++ b/cpp-client-api/search/functions_9.js
@@ -6,6 +6,7 @@
   ['kuduloggingfunctioncallback',['KuduLoggingFunctionCallback',['../classkudu_1_1client_1_1KuduLoggingFunctionCallback.html#a4263c504b21e0e5827f47a902e908a2c',1,'kudu::client::KuduLoggingFunctionCallback']]],
   ['kuduloggingmembercallback',['KuduLoggingMemberCallback',['../classkudu_1_1client_1_1KuduLoggingMemberCallback.html#aeda4119b1288db0d055c9800e3485fd8',1,'kudu::client::KuduLoggingMemberCallback']]],
   ['kudupartialrow',['KuduPartialRow',['../classKuduPartialRow.html#a9eb1cbd1b216f6313a03c82ab67112e4',1,'KuduPartialRow::KuduPartialRow(const Schema *schema)'],['../classKuduPartialRow.html#ab4ebb399982edbb3e877e38a74c700f1',1,'KuduPartialRow::KuduPartialRow(const KuduPartialRow &amp;other)']]],
+  ['kudupartitionerbuilder',['KuduPartitionerBuilder',['../classkudu_1_1client_1_1KuduPartitionerBuilder.html#a27d130235be1c2691779e1d97732a4ba',1,'kudu::client::KuduPartitionerBuilder']]],
   ['kuduscanner',['KuduScanner',['../classkudu_1_1client_1_1KuduScanner.html#a2c621f778072a02f4092e96a0baf8180',1,'kudu::client::KuduScanner']]],
   ['kuduscantokenbuilder',['KuduScanTokenBuilder',['../classkudu_1_1client_1_1KuduScanTokenBuilder.html#aa8d300b560d419030abd503b66812484',1,'kudu::client::KuduScanTokenBuilder']]],
   ['kuduschema',['KuduSchema',['../classkudu_1_1client_1_1KuduSchema.html#a41a683f3d93357fe68531bf71df39d02',1,'kudu::client::KuduSchema']]],
diff --git a/cpp-client-api/search/functions_c.js b/cpp-client-api/search/functions_c.js
index 4647539..9971a2b 100644
--- a/cpp-client-api/search/functions_c.js
+++ b/cpp-client-api/search/functions_c.js
@@ -20,5 +20,6 @@
   ['nullable',['Nullable',['../classkudu_1_1client_1_1KuduColumnSpec.html#aab05d7d45f4cd2dadb8e0c715d87e841',1,'kudu::client::KuduColumnSpec']]],
   ['num_5fcolumns',['num_columns',['../classkudu_1_1client_1_1KuduSchema.html#ac9e9f590006bd7ccfa44b87dec1b3c7a',1,'kudu::client::KuduSchema']]],
   ['num_5freplicas',['num_replicas',['../classkudu_1_1client_1_1KuduTableCreator.html#a9dd4673755ba242eab3f06b19182d139',1,'kudu::client::KuduTableCreator::num_replicas()'],['../classkudu_1_1client_1_1KuduTable.html#a147bdffbd798161916471b721d63128f',1,'kudu::client::KuduTable::num_replicas()']]],
+  ['numpartitions',['NumPartitions',['../classkudu_1_1client_1_1KuduPartitioner.html#af692612faaccb259bf3d15f2bf5b246d',1,'kudu::client::KuduPartitioner']]],
   ['numrows',['NumRows',['../classkudu_1_1client_1_1KuduScanBatch.html#a16e45694c5932eb3decc2184c3834157',1,'kudu::client::KuduScanBatch']]]
 ];
diff --git a/cpp-client-api/search/functions_d.js b/cpp-client-api/search/functions_d.js
index 620a44e..b9da996 100644
--- a/cpp-client-api/search/functions_d.js
+++ b/cpp-client-api/search/functions_d.js
@@ -1,6 +1,6 @@
 var searchData=
 [
-  ['ok',['ok',['../classkudu_1_1Status.html#abf6454dcb72bfa92189a0595b5a858a7',1,'kudu::Status::ok() const '],['../classkudu_1_1Status.html#adaff3248b2f66041d0a7dd59f118b7ac',1,'kudu::Status::OK()']]],
+  ['ok',['OK',['../classkudu_1_1Status.html#adaff3248b2f66041d0a7dd59f118b7ac',1,'kudu::Status::OK()'],['../classkudu_1_1Status.html#abf6454dcb72bfa92189a0595b5a858a7',1,'kudu::Status::ok() const ']]],
   ['open',['Open',['../classkudu_1_1client_1_1KuduScanner.html#aa1ff3c11d9ac9f8183189ea5ac1ed9f1',1,'kudu::client::KuduScanner']]],
   ['opentable',['OpenTable',['../classkudu_1_1client_1_1KuduClient.html#aa82a09718ffe68d3255195e736aec8d7',1,'kudu::client::KuduClient']]],
   ['operator_21_3d',['operator!=',['../classkudu_1_1client_1_1KuduScanBatch.html#afd2b2c4cb038cbd366c2af8cf09a3a68',1,'kudu::client::KuduScanBatch']]],
@@ -9,7 +9,7 @@
   ['operator_2b_2b',['operator++',['../classkudu_1_1client_1_1KuduScanBatch.html#ad5df483ed3172caab5a8d6a72abfad0c',1,'kudu::client::KuduScanBatch::operator++()'],['../classkudu_1_1client_1_1KuduScanBatch.html#a4b1ad47fd7d429859b6181825a063c48',1,'kudu::client::KuduScanBatch::operator++(int)']]],
   ['operator_2d_3d',['operator-=',['../classkudu_1_1MonoTime.html#a2264cf528d0a346e60e0921022333bf8',1,'kudu::MonoTime']]],
   ['operator_3c_3c',['operator&lt;&lt;',['../classkudu_1_1internal__logging_1_1NullLog.html#abe50abde8e4af12413c99f437094dc8a',1,'kudu::internal_logging::NullLog::operator&lt;&lt;()'],['../classkudu_1_1internal__logging_1_1CerrLog.html#a9febb74005a76f9b203e9718275ab724',1,'kudu::internal_logging::CerrLog::operator&lt;&lt;()']]],
-  ['operator_3d',['operator=',['../classkudu_1_1client_1_1KuduColumnSchema.html#a4b58da787c8e7dc14987aa74a54f199e',1,'kudu::client::KuduColumnSchema::operator=()'],['../classKuduPartialRow.html#a03cab3e1aa0bef19c14f94181934181f',1,'KuduPartialRow::operator=()'],['../classkudu_1_1Status.html#ae63eecd6e48fa007b2334b6459972c39',1,'kudu::Status::operator=()']]],
+  ['operator_3d',['operator=',['../classkudu_1_1client_1_1KuduColumnSchema.html#a4b58da787c8e7dc14987aa74a54f199e',1,'kudu::client::KuduColumnSchema::operator=()'],['../classKuduPartialRow.html#a03cab3e1aa0bef19c14f94181934181f',1,'KuduPartialRow::operator=()'],['../classkudu_1_1Status.html#aa387797d8a80892563d56244a2351a88',1,'kudu::Status::operator=()']]],
   ['operator_3d_3d',['operator==',['../classkudu_1_1client_1_1KuduScanBatch.html#a378a5844a4b4774056b26f0003c15048',1,'kudu::client::KuduScanBatch']]],
   ['operator_5b_5d',['operator[]',['../classkudu_1_1Slice.html#a5ff06bc0fd9734536a464e604ec226f2',1,'kudu::Slice']]]
 ];
diff --git a/cpp-client-api/search/functions_e.js b/cpp-client-api/search/functions_e.js
index 7de35ce..1fcca57 100644
--- a/cpp-client-api/search/functions_e.js
+++ b/cpp-client-api/search/functions_e.js
@@ -1,6 +1,7 @@
 var searchData=
 [
   ['partition_5fschema',['partition_schema',['../classkudu_1_1client_1_1KuduTable.html#af1125879ce34fa6c994a70fe1803a808',1,'kudu::client::KuduTable']]],
+  ['partitionrow',['PartitionRow',['../classkudu_1_1client_1_1KuduPartitioner.html#a05d816ba08d85d5c0c95025e12d2e369',1,'kudu::client::KuduPartitioner']]],
   ['port',['port',['../classkudu_1_1client_1_1KuduTabletServer.html#ab4715d71c64dad1059698f2bb9ef192d',1,'kudu::client::KuduTabletServer']]],
   ['posix_5fcode',['posix_code',['../classkudu_1_1Status.html#a20d5b34e3507a5dd326029a87df641dc',1,'kudu::Status']]],
   ['projection_5fschema',['projection_schema',['../classkudu_1_1client_1_1KuduScanBatch.html#a3b58e77f53beea357fbb8bcddaab3137',1,'kudu::client::KuduScanBatch']]]
diff --git a/cpp-client-api/search/functions_f.js b/cpp-client-api/search/functions_f.js
index 975175b..2065d59 100644
--- a/cpp-client-api/search/functions_f.js
+++ b/cpp-client-api/search/functions_f.js
@@ -6,7 +6,7 @@
   ['renameto',['RenameTo',['../classkudu_1_1client_1_1KuduTableAlterer.html#aca8ea8d7b65e6952c76fd97f12d5b324',1,'kudu::client::KuduTableAlterer::RenameTo()'],['../classkudu_1_1client_1_1KuduColumnSpec.html#abeb2cbbaa01253165202574db03872f4',1,'kudu::client::KuduColumnSpec::RenameTo()']]],
   ['replicas',['replicas',['../classkudu_1_1client_1_1KuduTablet.html#a7816ea063549347b676fc18dfa297619',1,'kudu::client::KuduTablet']]],
   ['reset',['Reset',['../classkudu_1_1client_1_1KuduSchema.html#a3f51ccf1a7e6f4a4fe4958073305dbab',1,'kudu::client::KuduSchema']]],
-  ['row',['Row',['../classkudu_1_1client_1_1KuduScanBatch.html#a93c2f0914140dd405a51d57e2f75014a',1,'kudu::client::KuduScanBatch::Row()'],['../classkudu_1_1client_1_1KuduWriteOperation.html#a973b342ced786b23754b57fd83b34aa3',1,'kudu::client::KuduWriteOperation::row()']]],
+  ['row',['row',['../classkudu_1_1client_1_1KuduWriteOperation.html#a973b342ced786b23754b57fd83b34aa3',1,'kudu::client::KuduWriteOperation::row()'],['../classkudu_1_1client_1_1KuduScanBatch.html#a93c2f0914140dd405a51d57e2f75014a',1,'kudu::client::KuduScanBatch::Row()']]],
   ['rowptr',['RowPtr',['../classkudu_1_1client_1_1KuduScanBatch.html#a92bbfa48e9b503181c2dfb5f11f14e4e',1,'kudu::client::KuduScanBatch']]],
   ['run',['Run',['../classkudu_1_1client_1_1KuduLoggingCallback.html#ad9d5ac9b45246c5a4304d53ee86102eb',1,'kudu::client::KuduLoggingCallback::Run()'],['../classkudu_1_1client_1_1KuduLoggingMemberCallback.html#a3d75e43bb4af846af66735fabe642a88',1,'kudu::client::KuduLoggingMemberCallback::Run()'],['../classkudu_1_1client_1_1KuduLoggingFunctionCallback.html#ab5119cbc60675f3ca77e08c1e87ec215',1,'kudu::client::KuduLoggingFunctionCallback::Run()'],['../classkudu_1_1client_1_1KuduStatusCallback.html#a2333beedb1d0c08a8c127b4552fbeb07',1,'kudu::client::KuduStatusCallback::Run()'],['../classkudu_1_1client_1_1KuduStatusMemberCallback.html#a94bde1bdcb3cde6f78b11d822be19232',1,'kudu::client::KuduStatusMemberCallback::Run()'],['../classkudu_1_1client_1_1KuduStatusFunctionCallback.html#af4c3e7fbd4fed52bcba220f95a27f70a',1,'kudu::client::KuduStatusFunctionCallback::Run()']]]
 ];
diff --git a/cpp-client-api/search/searchdata.js b/cpp-client-api/search/searchdata.js
index 99c442b..be535e6 100644
--- a/cpp-client-api/search/searchdata.js
+++ b/cpp-client-api/search/searchdata.js
@@ -4,7 +4,7 @@
   1: "ckmnrs",
   2: "s",
   3: "abcdefghiklmnoprstuw",
-  4: "dk",
+  4: "dknp",
   5: "fmtv",
   6: "cdefort",
   7: "acefgilmortu",
diff --git a/cpp-client-api/shared__ptr_8h.html b/cpp-client-api/shared__ptr_8h.html
index 18a0c2f..b604724 100644
--- a/cpp-client-api/shared__ptr_8h.html
+++ b/cpp-client-api/shared__ptr_8h.html
@@ -98,6 +98,8 @@
 Include dependency graph for shared_ptr.h:</div>
 <div class="dyncontent">
 <div class="center"><img src="shared__ptr_8h__incl.png" border="0" usemap="#include_2kudu_2client_2shared__ptr_8h" alt=""/></div>
+<map name="include_2kudu_2client_2shared__ptr_8h" id="include_2kudu_2client_2shared__ptr_8h">
+</map>
 </div>
 </div><div class="textblock"><div class="dynheader">
 This graph shows which files directly or indirectly include this file:</div>
@@ -119,7 +121,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:02 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/shared__ptr_8h_source.html b/cpp-client-api/shared__ptr_8h_source.html
index 10f62cf..c40db36 100644
--- a/cpp-client-api/shared__ptr_8h_source.html
+++ b/cpp-client-api/shared__ptr_8h_source.html
@@ -94,7 +94,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:02 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/slice_8h_source.html b/cpp-client-api/slice_8h_source.html
index 78d30a6..0bb93b1 100644
--- a/cpp-client-api/slice_8h_source.html
+++ b/cpp-client-api/slice_8h_source.html
@@ -117,7 +117,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:02 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/status_8h.html b/cpp-client-api/status_8h.html
index 26a96a1..9817702 100644
--- a/cpp-client-api/status_8h.html
+++ b/cpp-client-api/status_8h.html
@@ -390,7 +390,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:02 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/status_8h_source.html b/cpp-client-api/status_8h_source.html
index e51d4ac..2401667 100644
--- a/cpp-client-api/status_8h_source.html
+++ b/cpp-client-api/status_8h_source.html
@@ -89,36 +89,36 @@
 <div class="title">status.h</div>  </div>
 </div><!--header-->
 <div class="contents">
-<a href="status_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="comment">// Copyright (c) 2011 The LevelDB Authors. All rights reserved.</span></div><div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="comment">// Use of this source code is governed by a BSD-style license that can be</span></div><div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="comment">// found in the LICENSE file. See the AUTHORS file for names of contributors.</span></div><div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="comment">//</span></div><div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="comment">// A Status encapsulates the result of an operation.  It may indicate success,</span></div><div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="comment">// or it may indicate an error with an associated error message.</span></div><div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="comment">//</span></div><div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="comment">// Multiple threads can invoke const methods on a Status without</span></div><div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="comment">// external synchronization, but if any of the threads may call a</span></div><div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="comment">// non-const method, all threads accessing the same Status must use</span></div><div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="comment">// external synchronization.</span></div><div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;</div><div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="preprocessor">#ifndef KUDU_UTIL_STATUS_H_</span></div><div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="preprocessor">#define KUDU_UTIL_STATUS_H_</span></div><div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;</div><div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="preprocessor">#include &lt;stdint.h&gt;</span></div><div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="preprocessor">#include &lt;string&gt;</span></div><div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;</div><div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#ifdef KUDU_HEADERS_NO_STUBS</span></div><div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#include &quot;kudu/gutil/macros.h&quot;</span></div><div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#include &quot;kudu/gutil/port.h&quot;</span></div><div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#include &quot;kudu/client/stubs.h&quot;</span></div><div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;</div><div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="preprocessor">#include &quot;kudu/util/kudu_export.h&quot;</span></div><div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="preprocessor">#include &quot;kudu/util/slice.h&quot;</span></div><div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;</div><div class="line"><a name="l00030"></a><span class="lineno"><a class="line" href="status_8h.html#a0de56a3f0e9d83b8ffdd63eac83c54ab">   30</a></span>&#160;<span class="preprocessor">#define KUDU_RETURN_NOT_OK(s) do { \</span></div><div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;<span class="preprocessor">    const ::kudu::Status&amp; _s = (s);             \</span></div><div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;<span class="preprocessor">    if (PREDICT_FALSE(!_s.ok())) return _s;     \</span></div><div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;<span class="preprocessor">  } while (0);</span></div><div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;</div><div class="line"><a name="l00037"></a><span class="lineno"><a class="line" href="status_8h.html#af66b8458f1d3f1264c1da86744e29e46">   37</a></span>&#160;<span class="preprocessor">#define KUDU_RETURN_NOT_OK_PREPEND(s, msg) do { \</span></div><div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;<span class="preprocessor">    const ::kudu::Status&amp; _s = (s);                              \</span></div><div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;<span class="preprocessor">    if (PREDICT_FALSE(!_s.ok())) return _s.CloneAndPrepend(msg); \</span></div><div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;<span class="preprocessor">  } while (0);</span></div><div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;</div><div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="status_8h.html#a58d31c81bf1101a3ead737e9a4a4f223">   45</a></span>&#160;<span class="preprocessor">#define KUDU_RETURN_NOT_OK_RET(to_call, to_return) do { \</span></div><div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;<span class="preprocessor">    const ::kudu::Status&amp; s = (to_call);                \</span></div><div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;<span class="preprocessor">    if (PREDICT_FALSE(!s.ok())) return (to_return);  \</span></div><div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;<span class="preprocessor">  } while (0);</span></div><div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;</div><div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="status_8h.html#a1e64fec5ef85c0c738f6ac3f398f607e">   51</a></span>&#160;<span class="preprocessor">#define KUDU_WARN_NOT_OK(to_call, warning_prefix) do { \</span></div><div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;<span class="preprocessor">    const ::kudu::Status&amp; _s = (to_call);              \</span></div><div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;<span class="preprocessor">    if (PREDICT_FALSE(!_s.ok())) { \</span></div><div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;<span class="preprocessor">      KUDU_LOG(WARNING) &lt;&lt; (warning_prefix) &lt;&lt; &quot;: &quot; &lt;&lt; _s.ToString();  \</span></div><div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;<span class="preprocessor">    } \</span></div><div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;<span class="preprocessor">  } while (0);</span></div><div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;</div><div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="status_8h.html#abbd85cc2c5535627091bb06a21918150">   59</a></span>&#160;<span class="preprocessor">#define KUDU_LOG_AND_RETURN(level, status) do { \</span></div><div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;<span class="preprocessor">    const ::kudu::Status&amp; _s = (status);        \</span></div><div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;<span class="preprocessor">    KUDU_LOG(level) &lt;&lt; _s.ToString(); \</span></div><div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;<span class="preprocessor">    return _s; \</span></div><div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;<span class="preprocessor">  } while (0);</span></div><div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;</div><div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="status_8h.html#af09a6a2eca53c9424d74c7fd9f39c5ce">   66</a></span>&#160;<span class="preprocessor">#define KUDU_RETURN_NOT_OK_LOG(s, level, msg) do { \</span></div><div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;<span class="preprocessor">    const ::kudu::Status&amp; _s = (s);             \</span></div><div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;<span class="preprocessor">    if (PREDICT_FALSE(!_s.ok())) { \</span></div><div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;<span class="preprocessor">      KUDU_LOG(level) &lt;&lt; &quot;Status: &quot; &lt;&lt; _s.ToString() &lt;&lt; &quot; &quot; &lt;&lt; (msg); \</span></div><div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;<span class="preprocessor">      return _s;     \</span></div><div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;<span class="preprocessor">    } \</span></div><div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;<span class="preprocessor">  } while (0);</span></div><div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;</div><div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="status_8h.html#a706c9f6ef1715b8f7a9185fb3c247d3f">   76</a></span>&#160;<span class="preprocessor">#define KUDU_CHECK_OK_PREPEND(to_call, msg) do { \</span></div><div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;<span class="preprocessor">    const ::kudu::Status&amp; _s = (to_call);                   \</span></div><div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;<span class="preprocessor">    KUDU_CHECK(_s.ok()) &lt;&lt; (msg) &lt;&lt; &quot;: &quot; &lt;&lt; _s.ToString();  \</span></div><div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;<span class="preprocessor">  } while (0);</span></div><div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;</div><div class="line"><a name="l00083"></a><span class="lineno"><a class="line" href="status_8h.html#ac503ba85e942147294cdc82087da60f6">   83</a></span>&#160;<span class="preprocessor">#define KUDU_CHECK_OK(s) KUDU_CHECK_OK_PREPEND(s, &quot;Bad status&quot;)</span></div><div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;</div><div class="line"><a name="l00087"></a><span class="lineno"><a class="line" href="status_8h.html#a2b360b53025724bb97d1dc21e25e26cc">   87</a></span>&#160;<span class="preprocessor">#define KUDU_DCHECK_OK_PREPEND(to_call, msg) do { \</span></div><div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;<span class="preprocessor">    const ::kudu::Status&amp; _s = (to_call);                   \</span></div><div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;<span class="preprocessor">    KUDU_DCHECK(_s.ok()) &lt;&lt; (msg) &lt;&lt; &quot;: &quot; &lt;&lt; _s.ToString();  \</span></div><div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;<span class="preprocessor">  } while (0);</span></div><div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;</div><div class="line"><a name="l00094"></a><span class="lineno"><a class="line" href="status_8h.html#a99332afa18f00de3c7fcf3e76949df9d">   94</a></span>&#160;<span class="preprocessor">#define KUDU_DCHECK_OK(s) KUDU_DCHECK_OK_PREPEND(s, &quot;Bad status&quot;)</span></div><div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;</div><div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;<span class="preprocessor">#ifdef KUDU_HEADERS_USE_SHORT_STATUS_MACROS</span></div><div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;<span class="preprocessor">#define RETURN_NOT_OK         KUDU_RETURN_NOT_OK</span></div><div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;<span class="preprocessor">#define RETURN_NOT_OK_PREPEND KUDU_RETURN_NOT_OK_PREPEND</span></div><div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;<span class="preprocessor">#define RETURN_NOT_OK_RET     KUDU_RETURN_NOT_OK_RET</span></div><div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;<span class="preprocessor">#define WARN_NOT_OK           KUDU_WARN_NOT_OK</span></div><div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;<span class="preprocessor">#define LOG_AND_RETURN        KUDU_LOG_AND_RETURN</span></div><div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;<span class="preprocessor">#define RETURN_NOT_OK_LOG     KUDU_RETURN_NOT_OK_LOG</span></div><div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;<span class="preprocessor">#define CHECK_OK_PREPEND      KUDU_CHECK_OK_PREPEND</span></div><div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;<span class="preprocessor">#define CHECK_OK              KUDU_CHECK_OK</span></div><div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;<span class="preprocessor">#define DCHECK_OK_PREPEND     KUDU_DCHECK_OK_PREPEND</span></div><div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;<span class="preprocessor">#define DCHECK_OK             KUDU_DCHECK_OK</span></div><div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;</div><div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;<span class="comment">// These are standard glog macros.</span></div><div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;<span class="preprocessor">#define KUDU_LOG              LOG</span></div><div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;<span class="preprocessor">#define KUDU_CHECK            CHECK</span></div><div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;<span class="preprocessor">#define KUDU_DCHECK           DCHECK</span></div><div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;</div><div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;<span class="keyword">namespace </span><a class="code" href="namespacekudu.html">kudu</a> {</div><div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;</div><div class="line"><a name="l00130"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html">  130</a></span>&#160;<span class="keyword">class </span>KUDU_EXPORT <a class="code" href="classkudu_1_1Status.html">Status</a> {</div><div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00133"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#ad14eb530b3449967ee976aaa1c0bcde0">  133</a></span>&#160;  <a class="code" href="classkudu_1_1Status.html#ad14eb530b3449967ee976aaa1c0bcde0">Status</a>() : state_(NULL) { }</div><div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;</div><div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;  ~<a class="code" href="classkudu_1_1Status.html">Status</a>() { <span class="keyword">delete</span>[] state_; }</div><div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;</div><div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a>(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Status.html">Status</a>&amp; s);</div><div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;</div><div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;  <span class="keywordtype">void</span> operator=(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Status.html">Status</a>&amp; s);</div><div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;</div><div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;<span class="preprocessor">#if __cplusplus &gt;= 201103L</span></div><div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a>(<a class="code" href="classkudu_1_1Status.html">Status</a>&amp;&amp; s);</div><div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;</div><div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;  <span class="keywordtype">void</span> operator=(<a class="code" href="classkudu_1_1Status.html">Status</a>&amp;&amp; s);</div><div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;</div><div class="line"><a name="l00164"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#adaff3248b2f66041d0a7dd59f118b7ac">  164</a></span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1Status.html">Status</a> <a class="code" href="classkudu_1_1Status.html#adaff3248b2f66041d0a7dd59f118b7ac">OK</a>() { <span class="keywordflow">return</span> <a class="code" href="classkudu_1_1Status.html">Status</a>(); }</div><div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;</div><div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;</div><div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1Status.html">Status</a> NotFound(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg2 = <a class="code" href="classkudu_1_1Slice.html">Slice</a>(),</div><div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160;                         int16_t posix_code = -1) {</div><div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classkudu_1_1Status.html">Status</a>(kNotFound, msg, msg2, posix_code);</div><div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;  }</div><div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1Status.html">Status</a> Corruption(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg2 = <a class="code" href="classkudu_1_1Slice.html">Slice</a>(),</div><div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160;                         int16_t posix_code = -1) {</div><div class="line"><a name="l00184"></a><span class="lineno">  184</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classkudu_1_1Status.html">Status</a>(kCorruption, msg, msg2, posix_code);</div><div class="line"><a name="l00185"></a><span class="lineno">  185</span>&#160;  }</div><div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1Status.html">Status</a> NotSupported(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg2 = <a class="code" href="classkudu_1_1Slice.html">Slice</a>(),</div><div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160;                         int16_t posix_code = -1) {</div><div class="line"><a name="l00188"></a><span class="lineno">  188</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classkudu_1_1Status.html">Status</a>(kNotSupported, msg, msg2, posix_code);</div><div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160;  }</div><div class="line"><a name="l00190"></a><span class="lineno">  190</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1Status.html">Status</a> InvalidArgument(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg2 = <a class="code" href="classkudu_1_1Slice.html">Slice</a>(),</div><div class="line"><a name="l00191"></a><span class="lineno">  191</span>&#160;                         int16_t posix_code = -1) {</div><div class="line"><a name="l00192"></a><span class="lineno">  192</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classkudu_1_1Status.html">Status</a>(kInvalidArgument, msg, msg2, posix_code);</div><div class="line"><a name="l00193"></a><span class="lineno">  193</span>&#160;  }</div><div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1Status.html">Status</a> IOError(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg2 = <a class="code" href="classkudu_1_1Slice.html">Slice</a>(),</div><div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160;                         int16_t posix_code = -1) {</div><div class="line"><a name="l00196"></a><span class="lineno">  196</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classkudu_1_1Status.html">Status</a>(kIOError, msg, msg2, posix_code);</div><div class="line"><a name="l00197"></a><span class="lineno">  197</span>&#160;  }</div><div class="line"><a name="l00198"></a><span class="lineno">  198</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1Status.html">Status</a> AlreadyPresent(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg2 = <a class="code" href="classkudu_1_1Slice.html">Slice</a>(),</div><div class="line"><a name="l00199"></a><span class="lineno">  199</span>&#160;                         int16_t posix_code = -1) {</div><div class="line"><a name="l00200"></a><span class="lineno">  200</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classkudu_1_1Status.html">Status</a>(kAlreadyPresent, msg, msg2, posix_code);</div><div class="line"><a name="l00201"></a><span class="lineno">  201</span>&#160;  }</div><div class="line"><a name="l00202"></a><span class="lineno">  202</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1Status.html">Status</a> RuntimeError(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg2 = <a class="code" href="classkudu_1_1Slice.html">Slice</a>(),</div><div class="line"><a name="l00203"></a><span class="lineno">  203</span>&#160;                         int16_t posix_code = -1) {</div><div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classkudu_1_1Status.html">Status</a>(kRuntimeError, msg, msg2, posix_code);</div><div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160;  }</div><div class="line"><a name="l00206"></a><span class="lineno">  206</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1Status.html">Status</a> NetworkError(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg2 = <a class="code" href="classkudu_1_1Slice.html">Slice</a>(),</div><div class="line"><a name="l00207"></a><span class="lineno">  207</span>&#160;                         int16_t posix_code = -1) {</div><div class="line"><a name="l00208"></a><span class="lineno">  208</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classkudu_1_1Status.html">Status</a>(kNetworkError, msg, msg2, posix_code);</div><div class="line"><a name="l00209"></a><span class="lineno">  209</span>&#160;  }</div><div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1Status.html">Status</a> IllegalState(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg2 = <a class="code" href="classkudu_1_1Slice.html">Slice</a>(),</div><div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160;                         int16_t posix_code = -1) {</div><div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classkudu_1_1Status.html">Status</a>(kIllegalState, msg, msg2, posix_code);</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">static</span> <a class="code" href="classkudu_1_1Status.html">Status</a> NotAuthorized(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg2 = <a class="code" href="classkudu_1_1Slice.html">Slice</a>(),</div><div class="line"><a name="l00215"></a><span class="lineno">  215</span>&#160;                         int16_t posix_code = -1) {</div><div class="line"><a name="l00216"></a><span class="lineno">  216</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classkudu_1_1Status.html">Status</a>(kNotAuthorized, msg, msg2, posix_code);</div><div class="line"><a name="l00217"></a><span class="lineno">  217</span>&#160;  }</div><div class="line"><a name="l00218"></a><span class="lineno">  218</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1Status.html">Status</a> Aborted(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg2 = <a class="code" href="classkudu_1_1Slice.html">Slice</a>(),</div><div class="line"><a name="l00219"></a><span class="lineno">  219</span>&#160;                         int16_t posix_code = -1) {</div><div class="line"><a name="l00220"></a><span class="lineno">  220</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classkudu_1_1Status.html">Status</a>(kAborted, msg, msg2, posix_code);</div><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;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1Status.html">Status</a> RemoteError(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg2 = <a class="code" href="classkudu_1_1Slice.html">Slice</a>(),</div><div class="line"><a name="l00223"></a><span class="lineno">  223</span>&#160;                         int16_t posix_code = -1) {</div><div class="line"><a name="l00224"></a><span class="lineno">  224</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classkudu_1_1Status.html">Status</a>(kRemoteError, msg, msg2, posix_code);</div><div class="line"><a name="l00225"></a><span class="lineno">  225</span>&#160;  }</div><div class="line"><a name="l00226"></a><span class="lineno">  226</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1Status.html">Status</a> ServiceUnavailable(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg2 = <a class="code" href="classkudu_1_1Slice.html">Slice</a>(),</div><div class="line"><a name="l00227"></a><span class="lineno">  227</span>&#160;                         int16_t posix_code = -1) {</div><div class="line"><a name="l00228"></a><span class="lineno">  228</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classkudu_1_1Status.html">Status</a>(kServiceUnavailable, msg, msg2, posix_code);</div><div class="line"><a name="l00229"></a><span class="lineno">  229</span>&#160;  }</div><div class="line"><a name="l00230"></a><span class="lineno">  230</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1Status.html">Status</a> TimedOut(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg2 = <a class="code" href="classkudu_1_1Slice.html">Slice</a>(),</div><div class="line"><a name="l00231"></a><span class="lineno">  231</span>&#160;                         int16_t posix_code = -1) {</div><div class="line"><a name="l00232"></a><span class="lineno">  232</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classkudu_1_1Status.html">Status</a>(kTimedOut, msg, msg2, posix_code);</div><div class="line"><a name="l00233"></a><span class="lineno">  233</span>&#160;  }</div><div class="line"><a name="l00234"></a><span class="lineno">  234</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1Status.html">Status</a> Uninitialized(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg2 = <a class="code" href="classkudu_1_1Slice.html">Slice</a>(),</div><div class="line"><a name="l00235"></a><span class="lineno">  235</span>&#160;                              int16_t posix_code = -1) {</div><div class="line"><a name="l00236"></a><span class="lineno">  236</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classkudu_1_1Status.html">Status</a>(kUninitialized, msg, msg2, posix_code);</div><div class="line"><a name="l00237"></a><span class="lineno">  237</span>&#160;  }</div><div class="line"><a name="l00238"></a><span class="lineno">  238</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1Status.html">Status</a> ConfigurationError(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg2 = <a class="code" href="classkudu_1_1Slice.html">Slice</a>(),</div><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;                                   int16_t posix_code = -1) {</div><div class="line"><a name="l00240"></a><span class="lineno">  240</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classkudu_1_1Status.html">Status</a>(kConfigurationError, msg, msg2, posix_code);</div><div class="line"><a name="l00241"></a><span class="lineno">  241</span>&#160;  }</div><div class="line"><a name="l00242"></a><span class="lineno">  242</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1Status.html">Status</a> Incomplete(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg2 = <a class="code" href="classkudu_1_1Slice.html">Slice</a>(),</div><div class="line"><a name="l00243"></a><span class="lineno">  243</span>&#160;                           int64_t posix_code = -1) {</div><div class="line"><a name="l00244"></a><span class="lineno">  244</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classkudu_1_1Status.html">Status</a>(kIncomplete, msg, msg2, posix_code);</div><div class="line"><a name="l00245"></a><span class="lineno">  245</span>&#160;  }</div><div class="line"><a name="l00246"></a><span class="lineno">  246</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1Status.html">Status</a> EndOfFile(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg2 = <a class="code" href="classkudu_1_1Slice.html">Slice</a>(),</div><div class="line"><a name="l00247"></a><span class="lineno">  247</span>&#160;                          int64_t posix_code = -1) {</div><div class="line"><a name="l00248"></a><span class="lineno">  248</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classkudu_1_1Status.html">Status</a>(kEndOfFile, msg, msg2, posix_code);</div><div class="line"><a name="l00249"></a><span class="lineno">  249</span>&#160;  }</div><div class="line"><a name="l00251"></a><span class="lineno">  251</span>&#160;</div><div class="line"><a name="l00253"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#abf6454dcb72bfa92189a0595b5a858a7">  253</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classkudu_1_1Status.html#abf6454dcb72bfa92189a0595b5a858a7">ok</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> (state_ == NULL); }</div><div class="line"><a name="l00254"></a><span class="lineno">  254</span>&#160;</div><div class="line"><a name="l00256"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#a38e1a8eb7b23092569cb61983ebb671d">  256</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classkudu_1_1Status.html#a38e1a8eb7b23092569cb61983ebb671d">IsNotFound</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> code() == kNotFound; }</div><div class="line"><a name="l00257"></a><span class="lineno">  257</span>&#160;</div><div class="line"><a name="l00259"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#a36fa7d6fc0cd9ab1f9ad48e4a7614bc9">  259</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classkudu_1_1Status.html#a36fa7d6fc0cd9ab1f9ad48e4a7614bc9">IsCorruption</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> code() == kCorruption; }</div><div class="line"><a name="l00260"></a><span class="lineno">  260</span>&#160;</div><div class="line"><a name="l00262"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#a2b1672aba7ec84133cd086186b27821b">  262</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classkudu_1_1Status.html#a2b1672aba7ec84133cd086186b27821b">IsNotSupported</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> code() == kNotSupported; }</div><div class="line"><a name="l00263"></a><span class="lineno">  263</span>&#160;</div><div class="line"><a name="l00265"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#a991a91d7c07ffa41e6802a12f34d1acf">  265</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classkudu_1_1Status.html#a991a91d7c07ffa41e6802a12f34d1acf">IsIOError</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> code() == kIOError; }</div><div class="line"><a name="l00266"></a><span class="lineno">  266</span>&#160;</div><div class="line"><a name="l00268"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#a56e991c78f5a4aed32b97fbeccf13c2c">  268</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classkudu_1_1Status.html#a56e991c78f5a4aed32b97fbeccf13c2c">IsInvalidArgument</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> code() == kInvalidArgument; }</div><div class="line"><a name="l00269"></a><span class="lineno">  269</span>&#160;</div><div class="line"><a name="l00271"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#ab9e4ddf4c48889f365c6d359ae560e1c">  271</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classkudu_1_1Status.html#ab9e4ddf4c48889f365c6d359ae560e1c">IsAlreadyPresent</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> code() == kAlreadyPresent; }</div><div class="line"><a name="l00272"></a><span class="lineno">  272</span>&#160;</div><div class="line"><a name="l00274"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#abc68e44f825df4e221e9fcce419a90cf">  274</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classkudu_1_1Status.html#abc68e44f825df4e221e9fcce419a90cf">IsRuntimeError</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> code() == kRuntimeError; }</div><div class="line"><a name="l00275"></a><span class="lineno">  275</span>&#160;</div><div class="line"><a name="l00277"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#a70c83ddb5b234e814db84dfbbb751d0c">  277</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classkudu_1_1Status.html#a70c83ddb5b234e814db84dfbbb751d0c">IsNetworkError</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> code() == kNetworkError; }</div><div class="line"><a name="l00278"></a><span class="lineno">  278</span>&#160;</div><div class="line"><a name="l00280"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#a75e5cf90718eea9654c7e58546ea1aa2">  280</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classkudu_1_1Status.html#a75e5cf90718eea9654c7e58546ea1aa2">IsIllegalState</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> code() == kIllegalState; }</div><div class="line"><a name="l00281"></a><span class="lineno">  281</span>&#160;</div><div class="line"><a name="l00283"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#aef9c22bc13669be3e2289844ec916244">  283</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classkudu_1_1Status.html#aef9c22bc13669be3e2289844ec916244">IsNotAuthorized</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> code() == kNotAuthorized; }</div><div class="line"><a name="l00284"></a><span class="lineno">  284</span>&#160;</div><div class="line"><a name="l00286"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#ad4fe06882fdfb2a040e4d7d10363ca0a">  286</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classkudu_1_1Status.html#ad4fe06882fdfb2a040e4d7d10363ca0a">IsAborted</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> code() == kAborted; }</div><div class="line"><a name="l00287"></a><span class="lineno">  287</span>&#160;</div><div class="line"><a name="l00289"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#a96a35401df4ecd6420c86c65bc3e05f9">  289</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classkudu_1_1Status.html#a96a35401df4ecd6420c86c65bc3e05f9">IsRemoteError</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> code() == kRemoteError; }</div><div class="line"><a name="l00290"></a><span class="lineno">  290</span>&#160;</div><div class="line"><a name="l00292"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#a7bce15fc7b4d95b0bdffce963972cce8">  292</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classkudu_1_1Status.html#a7bce15fc7b4d95b0bdffce963972cce8">IsServiceUnavailable</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> code() == kServiceUnavailable; }</div><div class="line"><a name="l00293"></a><span class="lineno">  293</span>&#160;</div><div class="line"><a name="l00295"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#a80fe0286d8e3ac011a611afbac4edb11">  295</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classkudu_1_1Status.html#a80fe0286d8e3ac011a611afbac4edb11">IsTimedOut</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> code() == kTimedOut; }</div><div class="line"><a name="l00296"></a><span class="lineno">  296</span>&#160;</div><div class="line"><a name="l00298"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#a325666f396d7f9900403765cecbaecbf">  298</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classkudu_1_1Status.html#a325666f396d7f9900403765cecbaecbf">IsUninitialized</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> code() == kUninitialized; }</div><div class="line"><a name="l00299"></a><span class="lineno">  299</span>&#160;</div><div class="line"><a name="l00301"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#a8d31d26943101023125666bbbea002e3">  301</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classkudu_1_1Status.html#a8d31d26943101023125666bbbea002e3">IsConfigurationError</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> code() == kConfigurationError; }</div><div class="line"><a name="l00302"></a><span class="lineno">  302</span>&#160;</div><div class="line"><a name="l00304"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#af68a02f8069b1a8670fcc1b7acd869b9">  304</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classkudu_1_1Status.html#af68a02f8069b1a8670fcc1b7acd869b9">IsIncomplete</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> code() == kIncomplete; }</div><div class="line"><a name="l00305"></a><span class="lineno">  305</span>&#160;</div><div class="line"><a name="l00307"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#adead843ea27f50252f561c995c97b2e6">  307</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classkudu_1_1Status.html#adead843ea27f50252f561c995c97b2e6">IsEndOfFile</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> code() == kEndOfFile; }</div><div class="line"><a name="l00308"></a><span class="lineno">  308</span>&#160;</div><div class="line"><a name="l00311"></a><span class="lineno">  311</span>&#160;  std::string ToString() <span class="keyword">const</span>;</div><div class="line"><a name="l00312"></a><span class="lineno">  312</span>&#160;</div><div class="line"><a name="l00315"></a><span class="lineno">  315</span>&#160;  std::string CodeAsString() <span class="keyword">const</span>;</div><div class="line"><a name="l00316"></a><span class="lineno">  316</span>&#160;</div><div class="line"><a name="l00325"></a><span class="lineno">  325</span>&#160;  <a class="code" href="classkudu_1_1Slice.html">Slice</a> message() <span class="keyword">const</span>;</div><div class="line"><a name="l00326"></a><span class="lineno">  326</span>&#160;</div><div class="line"><a name="l00329"></a><span class="lineno">  329</span>&#160;  int16_t posix_code() <span class="keyword">const</span>;</div><div class="line"><a name="l00330"></a><span class="lineno">  330</span>&#160;</div><div class="line"><a name="l00337"></a><span class="lineno">  337</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> CloneAndPrepend(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg) <span class="keyword">const</span>;</div><div class="line"><a name="l00338"></a><span class="lineno">  338</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> CloneAndAppend(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg) <span class="keyword">const</span>;</div><div class="line"><a name="l00346"></a><span class="lineno">  346</span>&#160;</div><div class="line"><a name="l00349"></a><span class="lineno">  349</span>&#160;  <span class="keywordtype">size_t</span> memory_footprint_excluding_this() <span class="keyword">const</span>;</div><div class="line"><a name="l00350"></a><span class="lineno">  350</span>&#160;</div><div class="line"><a name="l00353"></a><span class="lineno">  353</span>&#160;  <span class="keywordtype">size_t</span> memory_footprint_including_this() <span class="keyword">const</span>;</div><div class="line"><a name="l00354"></a><span class="lineno">  354</span>&#160;</div><div class="line"><a name="l00355"></a><span class="lineno">  355</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00356"></a><span class="lineno">  356</span>&#160;  <span class="comment">// OK status has a NULL state_.  Otherwise, state_ is a new[] array</span></div><div class="line"><a name="l00357"></a><span class="lineno">  357</span>&#160;  <span class="comment">// of the following form:</span></div><div class="line"><a name="l00358"></a><span class="lineno">  358</span>&#160;  <span class="comment">//    state_[0..3] == length of message</span></div><div class="line"><a name="l00359"></a><span class="lineno">  359</span>&#160;  <span class="comment">//    state_[4]    == code</span></div><div class="line"><a name="l00360"></a><span class="lineno">  360</span>&#160;  <span class="comment">//    state_[5..6] == posix_code</span></div><div class="line"><a name="l00361"></a><span class="lineno">  361</span>&#160;  <span class="comment">//    state_[7..]  == message</span></div><div class="line"><a name="l00362"></a><span class="lineno">  362</span>&#160;  <span class="keyword">const</span> <span class="keywordtype">char</span>* state_;</div><div class="line"><a name="l00363"></a><span class="lineno">  363</span>&#160;</div><div class="line"><a name="l00364"></a><span class="lineno">  364</span>&#160;  <span class="keyword">enum</span> Code {</div><div class="line"><a name="l00365"></a><span class="lineno">  365</span>&#160;    kOk = 0,</div><div class="line"><a name="l00366"></a><span class="lineno">  366</span>&#160;    kNotFound = 1,</div><div class="line"><a name="l00367"></a><span class="lineno">  367</span>&#160;    kCorruption = 2,</div><div class="line"><a name="l00368"></a><span class="lineno">  368</span>&#160;    kNotSupported = 3,</div><div class="line"><a name="l00369"></a><span class="lineno">  369</span>&#160;    kInvalidArgument = 4,</div><div class="line"><a name="l00370"></a><span class="lineno">  370</span>&#160;    kIOError = 5,</div><div class="line"><a name="l00371"></a><span class="lineno">  371</span>&#160;    kAlreadyPresent = 6,</div><div class="line"><a name="l00372"></a><span class="lineno">  372</span>&#160;    kRuntimeError = 7,</div><div class="line"><a name="l00373"></a><span class="lineno">  373</span>&#160;    kNetworkError = 8,</div><div class="line"><a name="l00374"></a><span class="lineno">  374</span>&#160;    kIllegalState = 9,</div><div class="line"><a name="l00375"></a><span class="lineno">  375</span>&#160;    kNotAuthorized = 10,</div><div class="line"><a name="l00376"></a><span class="lineno">  376</span>&#160;    kAborted = 11,</div><div class="line"><a name="l00377"></a><span class="lineno">  377</span>&#160;    kRemoteError = 12,</div><div class="line"><a name="l00378"></a><span class="lineno">  378</span>&#160;    kServiceUnavailable = 13,</div><div class="line"><a name="l00379"></a><span class="lineno">  379</span>&#160;    kTimedOut = 14,</div><div class="line"><a name="l00380"></a><span class="lineno">  380</span>&#160;    kUninitialized = 15,</div><div class="line"><a name="l00381"></a><span class="lineno">  381</span>&#160;    kConfigurationError = 16,</div><div class="line"><a name="l00382"></a><span class="lineno">  382</span>&#160;    kIncomplete = 17,</div><div class="line"><a name="l00383"></a><span class="lineno">  383</span>&#160;    kEndOfFile = 18,</div><div class="line"><a name="l00384"></a><span class="lineno">  384</span>&#160;    <span class="comment">// NOTE: Remember to duplicate these constants into wire_protocol.proto and</span></div><div class="line"><a name="l00385"></a><span class="lineno">  385</span>&#160;    <span class="comment">// and to add StatusTo/FromPB ser/deser cases in wire_protocol.cc !</span></div><div class="line"><a name="l00386"></a><span class="lineno">  386</span>&#160;    <span class="comment">// Also remember to make the same changes to the java client in Status.java.</span></div><div class="line"><a name="l00387"></a><span class="lineno">  387</span>&#160;    <span class="comment">//</span></div><div class="line"><a name="l00388"></a><span class="lineno">  388</span>&#160;    <span class="comment">// TODO: Move error codes into an error_code.proto or something similar.</span></div><div class="line"><a name="l00389"></a><span class="lineno">  389</span>&#160;  };</div><div class="line"><a name="l00390"></a><span class="lineno">  390</span>&#160;  COMPILE_ASSERT(<span class="keyword">sizeof</span>(Code) == 4, code_enum_size_is_part_of_abi);</div><div class="line"><a name="l00391"></a><span class="lineno">  391</span>&#160;</div><div class="line"><a name="l00392"></a><span class="lineno">  392</span>&#160;  Code code()<span class="keyword"> const </span>{</div><div class="line"><a name="l00393"></a><span class="lineno">  393</span>&#160;    <span class="keywordflow">return</span> (state_ == NULL) ? kOk : <span class="keyword">static_cast&lt;</span>Code<span class="keyword">&gt;</span>(state_[4]);</div><div class="line"><a name="l00394"></a><span class="lineno">  394</span>&#160;  }</div><div class="line"><a name="l00395"></a><span class="lineno">  395</span>&#160;</div><div class="line"><a name="l00396"></a><span class="lineno">  396</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a>(Code code, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg2, int16_t posix_code);</div><div class="line"><a name="l00397"></a><span class="lineno">  397</span>&#160;  <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* CopyState(<span class="keyword">const</span> <span class="keywordtype">char</span>* s);</div><div class="line"><a name="l00398"></a><span class="lineno">  398</span>&#160;};</div><div class="line"><a name="l00399"></a><span class="lineno">  399</span>&#160;</div><div class="line"><a name="l00400"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#affca5639a3341212bb23ae7f5c701803">  400</a></span>&#160;<span class="keyword">inline</span> <a class="code" href="classkudu_1_1Status.html#ad14eb530b3449967ee976aaa1c0bcde0">Status::Status</a>(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Status.html">Status</a>&amp; s) {</div><div class="line"><a name="l00401"></a><span class="lineno">  401</span>&#160;  state_ = (s.state_ == NULL) ? NULL : CopyState(s.state_);</div><div class="line"><a name="l00402"></a><span class="lineno">  402</span>&#160;}</div><div class="line"><a name="l00403"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#ae63eecd6e48fa007b2334b6459972c39">  403</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classkudu_1_1Status.html#ae63eecd6e48fa007b2334b6459972c39">Status::operator=</a>(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Status.html">Status</a>&amp; s) {</div><div class="line"><a name="l00404"></a><span class="lineno">  404</span>&#160;  <span class="comment">// The following condition catches both aliasing (when this == &amp;s),</span></div><div class="line"><a name="l00405"></a><span class="lineno">  405</span>&#160;  <span class="comment">// and the common case where both s and *this are OK.</span></div><div class="line"><a name="l00406"></a><span class="lineno">  406</span>&#160;  <span class="keywordflow">if</span> (state_ != s.state_) {</div><div class="line"><a name="l00407"></a><span class="lineno">  407</span>&#160;    <span class="keyword">delete</span>[] state_;</div><div class="line"><a name="l00408"></a><span class="lineno">  408</span>&#160;    state_ = (s.state_ == NULL) ? NULL : CopyState(s.state_);</div><div class="line"><a name="l00409"></a><span class="lineno">  409</span>&#160;  }</div><div class="line"><a name="l00410"></a><span class="lineno">  410</span>&#160;}</div><div class="line"><a name="l00411"></a><span class="lineno">  411</span>&#160;</div><div class="line"><a name="l00412"></a><span class="lineno">  412</span>&#160;<span class="preprocessor">#if __cplusplus &gt;= 201103L</span></div><div class="line"><a name="l00413"></a><span class="lineno">  413</span>&#160;<span class="keyword">inline</span> <a class="code" href="classkudu_1_1Status.html#ad14eb530b3449967ee976aaa1c0bcde0">Status::Status</a>(<a class="code" href="classkudu_1_1Status.html">Status</a>&amp;&amp; s) : state_(s.state_) {</div><div class="line"><a name="l00414"></a><span class="lineno">  414</span>&#160;  s.state_ = <span class="keyword">nullptr</span>;</div><div class="line"><a name="l00415"></a><span class="lineno">  415</span>&#160;}</div><div class="line"><a name="l00416"></a><span class="lineno">  416</span>&#160;</div><div class="line"><a name="l00417"></a><span class="lineno">  417</span>&#160;<span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classkudu_1_1Status.html#ae63eecd6e48fa007b2334b6459972c39">Status::operator=</a>(<a class="code" href="classkudu_1_1Status.html">Status</a>&amp;&amp; s) {</div><div class="line"><a name="l00418"></a><span class="lineno">  418</span>&#160;  <span class="keywordflow">if</span> (state_ != s.state_) {</div><div class="line"><a name="l00419"></a><span class="lineno">  419</span>&#160;    <span class="keyword">delete</span>[] state_;</div><div class="line"><a name="l00420"></a><span class="lineno">  420</span>&#160;    state_ = s.state_;</div><div class="line"><a name="l00421"></a><span class="lineno">  421</span>&#160;    s.state_ = <span class="keyword">nullptr</span>;</div><div class="line"><a name="l00422"></a><span class="lineno">  422</span>&#160;  }</div><div class="line"><a name="l00423"></a><span class="lineno">  423</span>&#160;}</div><div class="line"><a name="l00424"></a><span class="lineno">  424</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00425"></a><span class="lineno">  425</span>&#160;</div><div class="line"><a name="l00426"></a><span class="lineno">  426</span>&#160;}  <span class="comment">// namespace kudu</span></div><div class="line"><a name="l00427"></a><span class="lineno">  427</span>&#160;</div><div class="line"><a name="l00428"></a><span class="lineno">  428</span>&#160;<span class="preprocessor">#endif  // KUDU_UTIL_STATUS_H_</span></div><div class="ttc" id="classkudu_1_1Status_html_ad14eb530b3449967ee976aaa1c0bcde0"><div class="ttname"><a href="classkudu_1_1Status.html#ad14eb530b3449967ee976aaa1c0bcde0">kudu::Status::Status</a></div><div class="ttdeci">Status()</div><div class="ttdoc">Create an object representing success status. </div><div class="ttdef"><b>Definition:</b> status.h:133</div></div>
-<div class="ttc" id="classkudu_1_1Status_html_aef9c22bc13669be3e2289844ec916244"><div class="ttname"><a href="classkudu_1_1Status.html#aef9c22bc13669be3e2289844ec916244">kudu::Status::IsNotAuthorized</a></div><div class="ttdeci">bool IsNotAuthorized() const </div><div class="ttdef"><b>Definition:</b> status.h:283</div></div>
+<a href="status_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="comment">// Copyright (c) 2011 The LevelDB Authors. All rights reserved.</span></div><div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="comment">// Use of this source code is governed by a BSD-style license that can be</span></div><div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="comment">// found in the LICENSE file. See the AUTHORS file for names of contributors.</span></div><div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="comment">//</span></div><div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="comment">// A Status encapsulates the result of an operation.  It may indicate success,</span></div><div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="comment">// or it may indicate an error with an associated error message.</span></div><div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="comment">//</span></div><div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="comment">// Multiple threads can invoke const methods on a Status without</span></div><div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="comment">// external synchronization, but if any of the threads may call a</span></div><div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="comment">// non-const method, all threads accessing the same Status must use</span></div><div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="comment">// external synchronization.</span></div><div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;</div><div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="preprocessor">#ifndef KUDU_UTIL_STATUS_H_</span></div><div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="preprocessor">#define KUDU_UTIL_STATUS_H_</span></div><div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;</div><div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="preprocessor">#include &lt;stdint.h&gt;</span></div><div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="preprocessor">#include &lt;string&gt;</span></div><div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;</div><div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#ifdef KUDU_HEADERS_NO_STUBS</span></div><div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#include &quot;kudu/gutil/macros.h&quot;</span></div><div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#include &quot;kudu/gutil/port.h&quot;</span></div><div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#include &quot;kudu/client/stubs.h&quot;</span></div><div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;</div><div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="preprocessor">#include &quot;kudu/util/kudu_export.h&quot;</span></div><div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="preprocessor">#include &quot;kudu/util/slice.h&quot;</span></div><div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;</div><div class="line"><a name="l00030"></a><span class="lineno"><a class="line" href="status_8h.html#a0de56a3f0e9d83b8ffdd63eac83c54ab">   30</a></span>&#160;<span class="preprocessor">#define KUDU_RETURN_NOT_OK(s) do { \</span></div><div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;<span class="preprocessor">    const ::kudu::Status&amp; _s = (s);             \</span></div><div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;<span class="preprocessor">    if (PREDICT_FALSE(!_s.ok())) return _s;     \</span></div><div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;<span class="preprocessor">  } while (0);</span></div><div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;</div><div class="line"><a name="l00037"></a><span class="lineno"><a class="line" href="status_8h.html#af66b8458f1d3f1264c1da86744e29e46">   37</a></span>&#160;<span class="preprocessor">#define KUDU_RETURN_NOT_OK_PREPEND(s, msg) do { \</span></div><div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;<span class="preprocessor">    const ::kudu::Status&amp; _s = (s);                              \</span></div><div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;<span class="preprocessor">    if (PREDICT_FALSE(!_s.ok())) return _s.CloneAndPrepend(msg); \</span></div><div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;<span class="preprocessor">  } while (0);</span></div><div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;</div><div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="status_8h.html#a58d31c81bf1101a3ead737e9a4a4f223">   45</a></span>&#160;<span class="preprocessor">#define KUDU_RETURN_NOT_OK_RET(to_call, to_return) do { \</span></div><div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;<span class="preprocessor">    const ::kudu::Status&amp; s = (to_call);                \</span></div><div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;<span class="preprocessor">    if (PREDICT_FALSE(!s.ok())) return (to_return);  \</span></div><div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;<span class="preprocessor">  } while (0);</span></div><div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;</div><div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="status_8h.html#a1e64fec5ef85c0c738f6ac3f398f607e">   51</a></span>&#160;<span class="preprocessor">#define KUDU_WARN_NOT_OK(to_call, warning_prefix) do { \</span></div><div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;<span class="preprocessor">    const ::kudu::Status&amp; _s = (to_call);              \</span></div><div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;<span class="preprocessor">    if (PREDICT_FALSE(!_s.ok())) { \</span></div><div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;<span class="preprocessor">      KUDU_LOG(WARNING) &lt;&lt; (warning_prefix) &lt;&lt; &quot;: &quot; &lt;&lt; _s.ToString();  \</span></div><div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;<span class="preprocessor">    } \</span></div><div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;<span class="preprocessor">  } while (0);</span></div><div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;</div><div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="status_8h.html#abbd85cc2c5535627091bb06a21918150">   59</a></span>&#160;<span class="preprocessor">#define KUDU_LOG_AND_RETURN(level, status) do { \</span></div><div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;<span class="preprocessor">    const ::kudu::Status&amp; _s = (status);        \</span></div><div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;<span class="preprocessor">    KUDU_LOG(level) &lt;&lt; _s.ToString(); \</span></div><div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;<span class="preprocessor">    return _s; \</span></div><div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;<span class="preprocessor">  } while (0);</span></div><div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;</div><div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="status_8h.html#af09a6a2eca53c9424d74c7fd9f39c5ce">   66</a></span>&#160;<span class="preprocessor">#define KUDU_RETURN_NOT_OK_LOG(s, level, msg) do { \</span></div><div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;<span class="preprocessor">    const ::kudu::Status&amp; _s = (s);             \</span></div><div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;<span class="preprocessor">    if (PREDICT_FALSE(!_s.ok())) { \</span></div><div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;<span class="preprocessor">      KUDU_LOG(level) &lt;&lt; &quot;Status: &quot; &lt;&lt; _s.ToString() &lt;&lt; &quot; &quot; &lt;&lt; (msg); \</span></div><div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;<span class="preprocessor">      return _s;     \</span></div><div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;<span class="preprocessor">    } \</span></div><div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;<span class="preprocessor">  } while (0);</span></div><div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;</div><div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="status_8h.html#a706c9f6ef1715b8f7a9185fb3c247d3f">   76</a></span>&#160;<span class="preprocessor">#define KUDU_CHECK_OK_PREPEND(to_call, msg) do { \</span></div><div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;<span class="preprocessor">    const ::kudu::Status&amp; _s = (to_call);                   \</span></div><div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;<span class="preprocessor">    KUDU_CHECK(_s.ok()) &lt;&lt; (msg) &lt;&lt; &quot;: &quot; &lt;&lt; _s.ToString();  \</span></div><div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;<span class="preprocessor">  } while (0);</span></div><div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;</div><div class="line"><a name="l00083"></a><span class="lineno"><a class="line" href="status_8h.html#ac503ba85e942147294cdc82087da60f6">   83</a></span>&#160;<span class="preprocessor">#define KUDU_CHECK_OK(s) KUDU_CHECK_OK_PREPEND(s, &quot;Bad status&quot;)</span></div><div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;</div><div class="line"><a name="l00087"></a><span class="lineno"><a class="line" href="status_8h.html#a2b360b53025724bb97d1dc21e25e26cc">   87</a></span>&#160;<span class="preprocessor">#define KUDU_DCHECK_OK_PREPEND(to_call, msg) do { \</span></div><div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;<span class="preprocessor">    const ::kudu::Status&amp; _s = (to_call);                   \</span></div><div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;<span class="preprocessor">    KUDU_DCHECK(_s.ok()) &lt;&lt; (msg) &lt;&lt; &quot;: &quot; &lt;&lt; _s.ToString();  \</span></div><div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;<span class="preprocessor">  } while (0);</span></div><div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;</div><div class="line"><a name="l00094"></a><span class="lineno"><a class="line" href="status_8h.html#a99332afa18f00de3c7fcf3e76949df9d">   94</a></span>&#160;<span class="preprocessor">#define KUDU_DCHECK_OK(s) KUDU_DCHECK_OK_PREPEND(s, &quot;Bad status&quot;)</span></div><div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;</div><div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;<span class="preprocessor">#ifdef KUDU_HEADERS_USE_SHORT_STATUS_MACROS</span></div><div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;<span class="preprocessor">#define RETURN_NOT_OK         KUDU_RETURN_NOT_OK</span></div><div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;<span class="preprocessor">#define RETURN_NOT_OK_PREPEND KUDU_RETURN_NOT_OK_PREPEND</span></div><div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;<span class="preprocessor">#define RETURN_NOT_OK_RET     KUDU_RETURN_NOT_OK_RET</span></div><div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;<span class="preprocessor">#define WARN_NOT_OK           KUDU_WARN_NOT_OK</span></div><div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;<span class="preprocessor">#define LOG_AND_RETURN        KUDU_LOG_AND_RETURN</span></div><div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;<span class="preprocessor">#define RETURN_NOT_OK_LOG     KUDU_RETURN_NOT_OK_LOG</span></div><div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;<span class="preprocessor">#define CHECK_OK_PREPEND      KUDU_CHECK_OK_PREPEND</span></div><div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;<span class="preprocessor">#define CHECK_OK              KUDU_CHECK_OK</span></div><div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;<span class="preprocessor">#define DCHECK_OK_PREPEND     KUDU_DCHECK_OK_PREPEND</span></div><div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;<span class="preprocessor">#define DCHECK_OK             KUDU_DCHECK_OK</span></div><div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;</div><div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;<span class="comment">// These are standard glog macros.</span></div><div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;<span class="preprocessor">#define KUDU_LOG              LOG</span></div><div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;<span class="preprocessor">#define KUDU_CHECK            CHECK</span></div><div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;<span class="preprocessor">#define KUDU_DCHECK           DCHECK</span></div><div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;</div><div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;<span class="keyword">namespace </span><a class="code" href="namespacekudu.html">kudu</a> {</div><div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;</div><div class="line"><a name="l00130"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html">  130</a></span>&#160;<span class="keyword">class </span>KUDU_EXPORT <a class="code" href="classkudu_1_1Status.html">Status</a> {</div><div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00133"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#ad14eb530b3449967ee976aaa1c0bcde0">  133</a></span>&#160;  <a class="code" href="classkudu_1_1Status.html#ad14eb530b3449967ee976aaa1c0bcde0">Status</a>() : state_(NULL) { }</div><div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;</div><div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;  ~<a class="code" href="classkudu_1_1Status.html">Status</a>() { <span class="keyword">delete</span>[] state_; }</div><div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;</div><div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a>(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Status.html">Status</a>&amp; s);</div><div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;</div><div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a>&amp; operator=(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Status.html">Status</a>&amp; s);</div><div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;</div><div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;<span class="preprocessor">#if __cplusplus &gt;= 201103L</span></div><div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a>(<a class="code" href="classkudu_1_1Status.html">Status</a>&amp;&amp; s);</div><div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;</div><div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a>&amp; operator=(<a class="code" href="classkudu_1_1Status.html">Status</a>&amp;&amp; s);</div><div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;</div><div class="line"><a name="l00166"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#adaff3248b2f66041d0a7dd59f118b7ac">  166</a></span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1Status.html">Status</a> <a class="code" href="classkudu_1_1Status.html#adaff3248b2f66041d0a7dd59f118b7ac">OK</a>() { <span class="keywordflow">return</span> <a class="code" href="classkudu_1_1Status.html">Status</a>(); }</div><div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;</div><div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;</div><div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1Status.html">Status</a> NotFound(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg2 = <a class="code" href="classkudu_1_1Slice.html">Slice</a>(),</div><div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;                         int16_t posix_code = -1) {</div><div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classkudu_1_1Status.html">Status</a>(kNotFound, msg, msg2, posix_code);</div><div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160;  }</div><div class="line"><a name="l00184"></a><span class="lineno">  184</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1Status.html">Status</a> Corruption(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg2 = <a class="code" href="classkudu_1_1Slice.html">Slice</a>(),</div><div class="line"><a name="l00185"></a><span class="lineno">  185</span>&#160;                         int16_t posix_code = -1) {</div><div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classkudu_1_1Status.html">Status</a>(kCorruption, msg, msg2, posix_code);</div><div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160;  }</div><div class="line"><a name="l00188"></a><span class="lineno">  188</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1Status.html">Status</a> NotSupported(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg2 = <a class="code" href="classkudu_1_1Slice.html">Slice</a>(),</div><div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160;                         int16_t posix_code = -1) {</div><div class="line"><a name="l00190"></a><span class="lineno">  190</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classkudu_1_1Status.html">Status</a>(kNotSupported, msg, msg2, posix_code);</div><div class="line"><a name="l00191"></a><span class="lineno">  191</span>&#160;  }</div><div class="line"><a name="l00192"></a><span class="lineno">  192</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1Status.html">Status</a> InvalidArgument(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg2 = <a class="code" href="classkudu_1_1Slice.html">Slice</a>(),</div><div class="line"><a name="l00193"></a><span class="lineno">  193</span>&#160;                         int16_t posix_code = -1) {</div><div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classkudu_1_1Status.html">Status</a>(kInvalidArgument, msg, msg2, posix_code);</div><div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160;  }</div><div class="line"><a name="l00196"></a><span class="lineno">  196</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1Status.html">Status</a> IOError(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg2 = <a class="code" href="classkudu_1_1Slice.html">Slice</a>(),</div><div class="line"><a name="l00197"></a><span class="lineno">  197</span>&#160;                         int16_t posix_code = -1) {</div><div class="line"><a name="l00198"></a><span class="lineno">  198</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classkudu_1_1Status.html">Status</a>(kIOError, msg, msg2, posix_code);</div><div class="line"><a name="l00199"></a><span class="lineno">  199</span>&#160;  }</div><div class="line"><a name="l00200"></a><span class="lineno">  200</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1Status.html">Status</a> AlreadyPresent(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg2 = <a class="code" href="classkudu_1_1Slice.html">Slice</a>(),</div><div class="line"><a name="l00201"></a><span class="lineno">  201</span>&#160;                         int16_t posix_code = -1) {</div><div class="line"><a name="l00202"></a><span class="lineno">  202</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classkudu_1_1Status.html">Status</a>(kAlreadyPresent, msg, msg2, posix_code);</div><div class="line"><a name="l00203"></a><span class="lineno">  203</span>&#160;  }</div><div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1Status.html">Status</a> RuntimeError(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg2 = <a class="code" href="classkudu_1_1Slice.html">Slice</a>(),</div><div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160;                         int16_t posix_code = -1) {</div><div class="line"><a name="l00206"></a><span class="lineno">  206</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classkudu_1_1Status.html">Status</a>(kRuntimeError, msg, msg2, posix_code);</div><div class="line"><a name="l00207"></a><span class="lineno">  207</span>&#160;  }</div><div class="line"><a name="l00208"></a><span class="lineno">  208</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1Status.html">Status</a> NetworkError(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg2 = <a class="code" href="classkudu_1_1Slice.html">Slice</a>(),</div><div class="line"><a name="l00209"></a><span class="lineno">  209</span>&#160;                         int16_t posix_code = -1) {</div><div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classkudu_1_1Status.html">Status</a>(kNetworkError, msg, msg2, posix_code);</div><div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160;  }</div><div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1Status.html">Status</a> IllegalState(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg2 = <a class="code" href="classkudu_1_1Slice.html">Slice</a>(),</div><div class="line"><a name="l00213"></a><span class="lineno">  213</span>&#160;                         int16_t posix_code = -1) {</div><div class="line"><a name="l00214"></a><span class="lineno">  214</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classkudu_1_1Status.html">Status</a>(kIllegalState, msg, msg2, posix_code);</div><div class="line"><a name="l00215"></a><span class="lineno">  215</span>&#160;  }</div><div class="line"><a name="l00216"></a><span class="lineno">  216</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1Status.html">Status</a> NotAuthorized(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg2 = <a class="code" href="classkudu_1_1Slice.html">Slice</a>(),</div><div class="line"><a name="l00217"></a><span class="lineno">  217</span>&#160;                         int16_t posix_code = -1) {</div><div class="line"><a name="l00218"></a><span class="lineno">  218</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classkudu_1_1Status.html">Status</a>(kNotAuthorized, msg, msg2, posix_code);</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;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1Status.html">Status</a> Aborted(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg2 = <a class="code" href="classkudu_1_1Slice.html">Slice</a>(),</div><div class="line"><a name="l00221"></a><span class="lineno">  221</span>&#160;                         int16_t posix_code = -1) {</div><div class="line"><a name="l00222"></a><span class="lineno">  222</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classkudu_1_1Status.html">Status</a>(kAborted, msg, msg2, posix_code);</div><div class="line"><a name="l00223"></a><span class="lineno">  223</span>&#160;  }</div><div class="line"><a name="l00224"></a><span class="lineno">  224</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1Status.html">Status</a> RemoteError(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg2 = <a class="code" href="classkudu_1_1Slice.html">Slice</a>(),</div><div class="line"><a name="l00225"></a><span class="lineno">  225</span>&#160;                         int16_t posix_code = -1) {</div><div class="line"><a name="l00226"></a><span class="lineno">  226</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classkudu_1_1Status.html">Status</a>(kRemoteError, msg, msg2, posix_code);</div><div class="line"><a name="l00227"></a><span class="lineno">  227</span>&#160;  }</div><div class="line"><a name="l00228"></a><span class="lineno">  228</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1Status.html">Status</a> ServiceUnavailable(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg2 = <a class="code" href="classkudu_1_1Slice.html">Slice</a>(),</div><div class="line"><a name="l00229"></a><span class="lineno">  229</span>&#160;                         int16_t posix_code = -1) {</div><div class="line"><a name="l00230"></a><span class="lineno">  230</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classkudu_1_1Status.html">Status</a>(kServiceUnavailable, msg, msg2, posix_code);</div><div class="line"><a name="l00231"></a><span class="lineno">  231</span>&#160;  }</div><div class="line"><a name="l00232"></a><span class="lineno">  232</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1Status.html">Status</a> TimedOut(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg2 = <a class="code" href="classkudu_1_1Slice.html">Slice</a>(),</div><div class="line"><a name="l00233"></a><span class="lineno">  233</span>&#160;                         int16_t posix_code = -1) {</div><div class="line"><a name="l00234"></a><span class="lineno">  234</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classkudu_1_1Status.html">Status</a>(kTimedOut, msg, msg2, posix_code);</div><div class="line"><a name="l00235"></a><span class="lineno">  235</span>&#160;  }</div><div class="line"><a name="l00236"></a><span class="lineno">  236</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1Status.html">Status</a> Uninitialized(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg2 = <a class="code" href="classkudu_1_1Slice.html">Slice</a>(),</div><div class="line"><a name="l00237"></a><span class="lineno">  237</span>&#160;                              int16_t posix_code = -1) {</div><div class="line"><a name="l00238"></a><span class="lineno">  238</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classkudu_1_1Status.html">Status</a>(kUninitialized, msg, msg2, posix_code);</div><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;  }</div><div class="line"><a name="l00240"></a><span class="lineno">  240</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1Status.html">Status</a> ConfigurationError(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg2 = <a class="code" href="classkudu_1_1Slice.html">Slice</a>(),</div><div class="line"><a name="l00241"></a><span class="lineno">  241</span>&#160;                                   int16_t posix_code = -1) {</div><div class="line"><a name="l00242"></a><span class="lineno">  242</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classkudu_1_1Status.html">Status</a>(kConfigurationError, msg, msg2, posix_code);</div><div class="line"><a name="l00243"></a><span class="lineno">  243</span>&#160;  }</div><div class="line"><a name="l00244"></a><span class="lineno">  244</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1Status.html">Status</a> Incomplete(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg2 = <a class="code" href="classkudu_1_1Slice.html">Slice</a>(),</div><div class="line"><a name="l00245"></a><span class="lineno">  245</span>&#160;                           int64_t posix_code = -1) {</div><div class="line"><a name="l00246"></a><span class="lineno">  246</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classkudu_1_1Status.html">Status</a>(kIncomplete, msg, msg2, posix_code);</div><div class="line"><a name="l00247"></a><span class="lineno">  247</span>&#160;  }</div><div class="line"><a name="l00248"></a><span class="lineno">  248</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1Status.html">Status</a> EndOfFile(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg2 = <a class="code" href="classkudu_1_1Slice.html">Slice</a>(),</div><div class="line"><a name="l00249"></a><span class="lineno">  249</span>&#160;                          int64_t posix_code = -1) {</div><div class="line"><a name="l00250"></a><span class="lineno">  250</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classkudu_1_1Status.html">Status</a>(kEndOfFile, msg, msg2, posix_code);</div><div class="line"><a name="l00251"></a><span class="lineno">  251</span>&#160;  }</div><div class="line"><a name="l00253"></a><span class="lineno">  253</span>&#160;</div><div class="line"><a name="l00255"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#abf6454dcb72bfa92189a0595b5a858a7">  255</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classkudu_1_1Status.html#abf6454dcb72bfa92189a0595b5a858a7">ok</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> (state_ == NULL); }</div><div class="line"><a name="l00256"></a><span class="lineno">  256</span>&#160;</div><div class="line"><a name="l00258"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#a38e1a8eb7b23092569cb61983ebb671d">  258</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classkudu_1_1Status.html#a38e1a8eb7b23092569cb61983ebb671d">IsNotFound</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> code() == kNotFound; }</div><div class="line"><a name="l00259"></a><span class="lineno">  259</span>&#160;</div><div class="line"><a name="l00261"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#a36fa7d6fc0cd9ab1f9ad48e4a7614bc9">  261</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classkudu_1_1Status.html#a36fa7d6fc0cd9ab1f9ad48e4a7614bc9">IsCorruption</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> code() == kCorruption; }</div><div class="line"><a name="l00262"></a><span class="lineno">  262</span>&#160;</div><div class="line"><a name="l00264"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#a2b1672aba7ec84133cd086186b27821b">  264</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classkudu_1_1Status.html#a2b1672aba7ec84133cd086186b27821b">IsNotSupported</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> code() == kNotSupported; }</div><div class="line"><a name="l00265"></a><span class="lineno">  265</span>&#160;</div><div class="line"><a name="l00267"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#a991a91d7c07ffa41e6802a12f34d1acf">  267</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classkudu_1_1Status.html#a991a91d7c07ffa41e6802a12f34d1acf">IsIOError</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> code() == kIOError; }</div><div class="line"><a name="l00268"></a><span class="lineno">  268</span>&#160;</div><div class="line"><a name="l00270"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#a56e991c78f5a4aed32b97fbeccf13c2c">  270</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classkudu_1_1Status.html#a56e991c78f5a4aed32b97fbeccf13c2c">IsInvalidArgument</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> code() == kInvalidArgument; }</div><div class="line"><a name="l00271"></a><span class="lineno">  271</span>&#160;</div><div class="line"><a name="l00273"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#ab9e4ddf4c48889f365c6d359ae560e1c">  273</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classkudu_1_1Status.html#ab9e4ddf4c48889f365c6d359ae560e1c">IsAlreadyPresent</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> code() == kAlreadyPresent; }</div><div class="line"><a name="l00274"></a><span class="lineno">  274</span>&#160;</div><div class="line"><a name="l00276"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#abc68e44f825df4e221e9fcce419a90cf">  276</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classkudu_1_1Status.html#abc68e44f825df4e221e9fcce419a90cf">IsRuntimeError</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> code() == kRuntimeError; }</div><div class="line"><a name="l00277"></a><span class="lineno">  277</span>&#160;</div><div class="line"><a name="l00279"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#a70c83ddb5b234e814db84dfbbb751d0c">  279</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classkudu_1_1Status.html#a70c83ddb5b234e814db84dfbbb751d0c">IsNetworkError</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> code() == kNetworkError; }</div><div class="line"><a name="l00280"></a><span class="lineno">  280</span>&#160;</div><div class="line"><a name="l00282"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#a75e5cf90718eea9654c7e58546ea1aa2">  282</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classkudu_1_1Status.html#a75e5cf90718eea9654c7e58546ea1aa2">IsIllegalState</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> code() == kIllegalState; }</div><div class="line"><a name="l00283"></a><span class="lineno">  283</span>&#160;</div><div class="line"><a name="l00285"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#aef9c22bc13669be3e2289844ec916244">  285</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classkudu_1_1Status.html#aef9c22bc13669be3e2289844ec916244">IsNotAuthorized</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> code() == kNotAuthorized; }</div><div class="line"><a name="l00286"></a><span class="lineno">  286</span>&#160;</div><div class="line"><a name="l00288"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#ad4fe06882fdfb2a040e4d7d10363ca0a">  288</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classkudu_1_1Status.html#ad4fe06882fdfb2a040e4d7d10363ca0a">IsAborted</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> code() == kAborted; }</div><div class="line"><a name="l00289"></a><span class="lineno">  289</span>&#160;</div><div class="line"><a name="l00291"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#a96a35401df4ecd6420c86c65bc3e05f9">  291</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classkudu_1_1Status.html#a96a35401df4ecd6420c86c65bc3e05f9">IsRemoteError</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> code() == kRemoteError; }</div><div class="line"><a name="l00292"></a><span class="lineno">  292</span>&#160;</div><div class="line"><a name="l00294"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#a7bce15fc7b4d95b0bdffce963972cce8">  294</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classkudu_1_1Status.html#a7bce15fc7b4d95b0bdffce963972cce8">IsServiceUnavailable</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> code() == kServiceUnavailable; }</div><div class="line"><a name="l00295"></a><span class="lineno">  295</span>&#160;</div><div class="line"><a name="l00297"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#a80fe0286d8e3ac011a611afbac4edb11">  297</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classkudu_1_1Status.html#a80fe0286d8e3ac011a611afbac4edb11">IsTimedOut</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> code() == kTimedOut; }</div><div class="line"><a name="l00298"></a><span class="lineno">  298</span>&#160;</div><div class="line"><a name="l00300"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#a325666f396d7f9900403765cecbaecbf">  300</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classkudu_1_1Status.html#a325666f396d7f9900403765cecbaecbf">IsUninitialized</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> code() == kUninitialized; }</div><div class="line"><a name="l00301"></a><span class="lineno">  301</span>&#160;</div><div class="line"><a name="l00303"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#a8d31d26943101023125666bbbea002e3">  303</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classkudu_1_1Status.html#a8d31d26943101023125666bbbea002e3">IsConfigurationError</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> code() == kConfigurationError; }</div><div class="line"><a name="l00304"></a><span class="lineno">  304</span>&#160;</div><div class="line"><a name="l00306"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#af68a02f8069b1a8670fcc1b7acd869b9">  306</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classkudu_1_1Status.html#af68a02f8069b1a8670fcc1b7acd869b9">IsIncomplete</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> code() == kIncomplete; }</div><div class="line"><a name="l00307"></a><span class="lineno">  307</span>&#160;</div><div class="line"><a name="l00309"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#adead843ea27f50252f561c995c97b2e6">  309</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classkudu_1_1Status.html#adead843ea27f50252f561c995c97b2e6">IsEndOfFile</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> code() == kEndOfFile; }</div><div class="line"><a name="l00310"></a><span class="lineno">  310</span>&#160;</div><div class="line"><a name="l00313"></a><span class="lineno">  313</span>&#160;  std::string ToString() <span class="keyword">const</span>;</div><div class="line"><a name="l00314"></a><span class="lineno">  314</span>&#160;</div><div class="line"><a name="l00317"></a><span class="lineno">  317</span>&#160;  std::string CodeAsString() <span class="keyword">const</span>;</div><div class="line"><a name="l00318"></a><span class="lineno">  318</span>&#160;</div><div class="line"><a name="l00327"></a><span class="lineno">  327</span>&#160;  <a class="code" href="classkudu_1_1Slice.html">Slice</a> message() <span class="keyword">const</span>;</div><div class="line"><a name="l00328"></a><span class="lineno">  328</span>&#160;</div><div class="line"><a name="l00331"></a><span class="lineno">  331</span>&#160;  int16_t posix_code() <span class="keyword">const</span>;</div><div class="line"><a name="l00332"></a><span class="lineno">  332</span>&#160;</div><div class="line"><a name="l00339"></a><span class="lineno">  339</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> CloneAndPrepend(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg) <span class="keyword">const</span>;</div><div class="line"><a name="l00340"></a><span class="lineno">  340</span>&#160;</div><div class="line"><a name="l00347"></a><span class="lineno">  347</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> CloneAndAppend(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg) <span class="keyword">const</span>;</div><div class="line"><a name="l00348"></a><span class="lineno">  348</span>&#160;</div><div class="line"><a name="l00351"></a><span class="lineno">  351</span>&#160;  <span class="keywordtype">size_t</span> memory_footprint_excluding_this() <span class="keyword">const</span>;</div><div class="line"><a name="l00352"></a><span class="lineno">  352</span>&#160;</div><div class="line"><a name="l00355"></a><span class="lineno">  355</span>&#160;  <span class="keywordtype">size_t</span> memory_footprint_including_this() <span class="keyword">const</span>;</div><div class="line"><a name="l00356"></a><span class="lineno">  356</span>&#160;</div><div class="line"><a name="l00357"></a><span class="lineno">  357</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00358"></a><span class="lineno">  358</span>&#160;  <span class="comment">// OK status has a NULL state_.  Otherwise, state_ is a new[] array</span></div><div class="line"><a name="l00359"></a><span class="lineno">  359</span>&#160;  <span class="comment">// of the following form:</span></div><div class="line"><a name="l00360"></a><span class="lineno">  360</span>&#160;  <span class="comment">//    state_[0..3] == length of message</span></div><div class="line"><a name="l00361"></a><span class="lineno">  361</span>&#160;  <span class="comment">//    state_[4]    == code</span></div><div class="line"><a name="l00362"></a><span class="lineno">  362</span>&#160;  <span class="comment">//    state_[5..6] == posix_code</span></div><div class="line"><a name="l00363"></a><span class="lineno">  363</span>&#160;  <span class="comment">//    state_[7..]  == message</span></div><div class="line"><a name="l00364"></a><span class="lineno">  364</span>&#160;  <span class="keyword">const</span> <span class="keywordtype">char</span>* state_;</div><div class="line"><a name="l00365"></a><span class="lineno">  365</span>&#160;</div><div class="line"><a name="l00366"></a><span class="lineno">  366</span>&#160;  <span class="keyword">enum</span> Code {</div><div class="line"><a name="l00367"></a><span class="lineno">  367</span>&#160;    kOk = 0,</div><div class="line"><a name="l00368"></a><span class="lineno">  368</span>&#160;    kNotFound = 1,</div><div class="line"><a name="l00369"></a><span class="lineno">  369</span>&#160;    kCorruption = 2,</div><div class="line"><a name="l00370"></a><span class="lineno">  370</span>&#160;    kNotSupported = 3,</div><div class="line"><a name="l00371"></a><span class="lineno">  371</span>&#160;    kInvalidArgument = 4,</div><div class="line"><a name="l00372"></a><span class="lineno">  372</span>&#160;    kIOError = 5,</div><div class="line"><a name="l00373"></a><span class="lineno">  373</span>&#160;    kAlreadyPresent = 6,</div><div class="line"><a name="l00374"></a><span class="lineno">  374</span>&#160;    kRuntimeError = 7,</div><div class="line"><a name="l00375"></a><span class="lineno">  375</span>&#160;    kNetworkError = 8,</div><div class="line"><a name="l00376"></a><span class="lineno">  376</span>&#160;    kIllegalState = 9,</div><div class="line"><a name="l00377"></a><span class="lineno">  377</span>&#160;    kNotAuthorized = 10,</div><div class="line"><a name="l00378"></a><span class="lineno">  378</span>&#160;    kAborted = 11,</div><div class="line"><a name="l00379"></a><span class="lineno">  379</span>&#160;    kRemoteError = 12,</div><div class="line"><a name="l00380"></a><span class="lineno">  380</span>&#160;    kServiceUnavailable = 13,</div><div class="line"><a name="l00381"></a><span class="lineno">  381</span>&#160;    kTimedOut = 14,</div><div class="line"><a name="l00382"></a><span class="lineno">  382</span>&#160;    kUninitialized = 15,</div><div class="line"><a name="l00383"></a><span class="lineno">  383</span>&#160;    kConfigurationError = 16,</div><div class="line"><a name="l00384"></a><span class="lineno">  384</span>&#160;    kIncomplete = 17,</div><div class="line"><a name="l00385"></a><span class="lineno">  385</span>&#160;    kEndOfFile = 18,</div><div class="line"><a name="l00386"></a><span class="lineno">  386</span>&#160;    <span class="comment">// NOTE: Remember to duplicate these constants into wire_protocol.proto and</span></div><div class="line"><a name="l00387"></a><span class="lineno">  387</span>&#160;    <span class="comment">// and to add StatusTo/FromPB ser/deser cases in wire_protocol.cc !</span></div><div class="line"><a name="l00388"></a><span class="lineno">  388</span>&#160;    <span class="comment">// Also remember to make the same changes to the java client in Status.java.</span></div><div class="line"><a name="l00389"></a><span class="lineno">  389</span>&#160;    <span class="comment">//</span></div><div class="line"><a name="l00390"></a><span class="lineno">  390</span>&#160;    <span class="comment">// TODO: Move error codes into an error_code.proto or something similar.</span></div><div class="line"><a name="l00391"></a><span class="lineno">  391</span>&#160;  };</div><div class="line"><a name="l00392"></a><span class="lineno">  392</span>&#160;  COMPILE_ASSERT(<span class="keyword">sizeof</span>(Code) == 4, code_enum_size_is_part_of_abi);</div><div class="line"><a name="l00393"></a><span class="lineno">  393</span>&#160;</div><div class="line"><a name="l00394"></a><span class="lineno">  394</span>&#160;  Code code()<span class="keyword"> const </span>{</div><div class="line"><a name="l00395"></a><span class="lineno">  395</span>&#160;    <span class="keywordflow">return</span> (state_ == NULL) ? kOk : <span class="keyword">static_cast&lt;</span>Code<span class="keyword">&gt;</span>(state_[4]);</div><div class="line"><a name="l00396"></a><span class="lineno">  396</span>&#160;  }</div><div class="line"><a name="l00397"></a><span class="lineno">  397</span>&#160;</div><div class="line"><a name="l00398"></a><span class="lineno">  398</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a>(Code code, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg2, int16_t posix_code);</div><div class="line"><a name="l00399"></a><span class="lineno">  399</span>&#160;  <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* CopyState(<span class="keyword">const</span> <span class="keywordtype">char</span>* s);</div><div class="line"><a name="l00400"></a><span class="lineno">  400</span>&#160;};</div><div class="line"><a name="l00401"></a><span class="lineno">  401</span>&#160;</div><div class="line"><a name="l00402"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#affca5639a3341212bb23ae7f5c701803">  402</a></span>&#160;<span class="keyword">inline</span> <a class="code" href="classkudu_1_1Status.html#ad14eb530b3449967ee976aaa1c0bcde0">Status::Status</a>(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Status.html">Status</a>&amp; s) {</div><div class="line"><a name="l00403"></a><span class="lineno">  403</span>&#160;  state_ = (s.state_ == NULL) ? NULL : CopyState(s.state_);</div><div class="line"><a name="l00404"></a><span class="lineno">  404</span>&#160;}</div><div class="line"><a name="l00405"></a><span class="lineno">  405</span>&#160;</div><div class="line"><a name="l00406"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#aa387797d8a80892563d56244a2351a88">  406</a></span>&#160;<span class="keyword">inline</span> <a class="code" href="classkudu_1_1Status.html">Status</a>&amp; <a class="code" href="classkudu_1_1Status.html#aa387797d8a80892563d56244a2351a88">Status::operator=</a>(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Status.html">Status</a>&amp; s) {</div><div class="line"><a name="l00407"></a><span class="lineno">  407</span>&#160;  <span class="comment">// The following condition catches both aliasing (when this == &amp;s),</span></div><div class="line"><a name="l00408"></a><span class="lineno">  408</span>&#160;  <span class="comment">// and the common case where both s and *this are OK.</span></div><div class="line"><a name="l00409"></a><span class="lineno">  409</span>&#160;  <span class="keywordflow">if</span> (state_ != s.state_) {</div><div class="line"><a name="l00410"></a><span class="lineno">  410</span>&#160;    <span class="keyword">delete</span>[] state_;</div><div class="line"><a name="l00411"></a><span class="lineno">  411</span>&#160;    state_ = (s.state_ == NULL) ? NULL : CopyState(s.state_);</div><div class="line"><a name="l00412"></a><span class="lineno">  412</span>&#160;  }</div><div class="line"><a name="l00413"></a><span class="lineno">  413</span>&#160;  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div><div class="line"><a name="l00414"></a><span class="lineno">  414</span>&#160;}</div><div class="line"><a name="l00415"></a><span class="lineno">  415</span>&#160;</div><div class="line"><a name="l00416"></a><span class="lineno">  416</span>&#160;<span class="preprocessor">#if __cplusplus &gt;= 201103L</span></div><div class="line"><a name="l00417"></a><span class="lineno">  417</span>&#160;<span class="keyword">inline</span> <a class="code" href="classkudu_1_1Status.html#ad14eb530b3449967ee976aaa1c0bcde0">Status::Status</a>(<a class="code" href="classkudu_1_1Status.html">Status</a>&amp;&amp; s) : state_(s.state_) {</div><div class="line"><a name="l00418"></a><span class="lineno">  418</span>&#160;  s.state_ = <span class="keyword">nullptr</span>;</div><div class="line"><a name="l00419"></a><span class="lineno">  419</span>&#160;}</div><div class="line"><a name="l00420"></a><span class="lineno">  420</span>&#160;</div><div class="line"><a name="l00421"></a><span class="lineno">  421</span>&#160;<span class="keyword">inline</span> <a class="code" href="classkudu_1_1Status.html">Status</a>&amp; <a class="code" href="classkudu_1_1Status.html#aa387797d8a80892563d56244a2351a88">Status::operator=</a>(<a class="code" href="classkudu_1_1Status.html">Status</a>&amp;&amp; s) {</div><div class="line"><a name="l00422"></a><span class="lineno">  422</span>&#160;  <span class="keywordflow">if</span> (state_ != s.state_) {</div><div class="line"><a name="l00423"></a><span class="lineno">  423</span>&#160;    <span class="keyword">delete</span>[] state_;</div><div class="line"><a name="l00424"></a><span class="lineno">  424</span>&#160;    state_ = s.state_;</div><div class="line"><a name="l00425"></a><span class="lineno">  425</span>&#160;    s.state_ = <span class="keyword">nullptr</span>;</div><div class="line"><a name="l00426"></a><span class="lineno">  426</span>&#160;  }</div><div class="line"><a name="l00427"></a><span class="lineno">  427</span>&#160;  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div><div class="line"><a name="l00428"></a><span class="lineno">  428</span>&#160;}</div><div class="line"><a name="l00429"></a><span class="lineno">  429</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00430"></a><span class="lineno">  430</span>&#160;</div><div class="line"><a name="l00431"></a><span class="lineno">  431</span>&#160;}  <span class="comment">// namespace kudu</span></div><div class="line"><a name="l00432"></a><span class="lineno">  432</span>&#160;</div><div class="line"><a name="l00433"></a><span class="lineno">  433</span>&#160;<span class="preprocessor">#endif  // KUDU_UTIL_STATUS_H_</span></div><div class="ttc" id="classkudu_1_1Status_html_ad14eb530b3449967ee976aaa1c0bcde0"><div class="ttname"><a href="classkudu_1_1Status.html#ad14eb530b3449967ee976aaa1c0bcde0">kudu::Status::Status</a></div><div class="ttdeci">Status()</div><div class="ttdoc">Create an object representing success status. </div><div class="ttdef"><b>Definition:</b> status.h:133</div></div>
+<div class="ttc" id="classkudu_1_1Status_html_aef9c22bc13669be3e2289844ec916244"><div class="ttname"><a href="classkudu_1_1Status.html#aef9c22bc13669be3e2289844ec916244">kudu::Status::IsNotAuthorized</a></div><div class="ttdeci">bool IsNotAuthorized() const </div><div class="ttdef"><b>Definition:</b> status.h:285</div></div>
 <div class="ttc" id="classkudu_1_1Status_html"><div class="ttname"><a href="classkudu_1_1Status.html">kudu::Status</a></div><div class="ttdoc">A representation of an operation&amp;#39;s outcome. </div><div class="ttdef"><b>Definition:</b> status.h:130</div></div>
-<div class="ttc" id="classkudu_1_1Status_html_a75e5cf90718eea9654c7e58546ea1aa2"><div class="ttname"><a href="classkudu_1_1Status.html#a75e5cf90718eea9654c7e58546ea1aa2">kudu::Status::IsIllegalState</a></div><div class="ttdeci">bool IsIllegalState() const </div><div class="ttdef"><b>Definition:</b> status.h:280</div></div>
+<div class="ttc" id="classkudu_1_1Status_html_a75e5cf90718eea9654c7e58546ea1aa2"><div class="ttname"><a href="classkudu_1_1Status.html#a75e5cf90718eea9654c7e58546ea1aa2">kudu::Status::IsIllegalState</a></div><div class="ttdeci">bool IsIllegalState() const </div><div class="ttdef"><b>Definition:</b> status.h:282</div></div>
 <div class="ttc" id="namespacekudu_html"><div class="ttname"><a href="namespacekudu.html">kudu</a></div><div class="ttdef"><b>Definition:</b> callbacks.h:28</div></div>
-<div class="ttc" id="classkudu_1_1Status_html_abf6454dcb72bfa92189a0595b5a858a7"><div class="ttname"><a href="classkudu_1_1Status.html#abf6454dcb72bfa92189a0595b5a858a7">kudu::Status::ok</a></div><div class="ttdeci">bool ok() const </div><div class="ttdef"><b>Definition:</b> status.h:253</div></div>
-<div class="ttc" id="classkudu_1_1Status_html_a80fe0286d8e3ac011a611afbac4edb11"><div class="ttname"><a href="classkudu_1_1Status.html#a80fe0286d8e3ac011a611afbac4edb11">kudu::Status::IsTimedOut</a></div><div class="ttdeci">bool IsTimedOut() const </div><div class="ttdef"><b>Definition:</b> status.h:295</div></div>
-<div class="ttc" id="classkudu_1_1Status_html_a96a35401df4ecd6420c86c65bc3e05f9"><div class="ttname"><a href="classkudu_1_1Status.html#a96a35401df4ecd6420c86c65bc3e05f9">kudu::Status::IsRemoteError</a></div><div class="ttdeci">bool IsRemoteError() const </div><div class="ttdef"><b>Definition:</b> status.h:289</div></div>
-<div class="ttc" id="classkudu_1_1Status_html_a7bce15fc7b4d95b0bdffce963972cce8"><div class="ttname"><a href="classkudu_1_1Status.html#a7bce15fc7b4d95b0bdffce963972cce8">kudu::Status::IsServiceUnavailable</a></div><div class="ttdeci">bool IsServiceUnavailable() const </div><div class="ttdef"><b>Definition:</b> status.h:292</div></div>
-<div class="ttc" id="classkudu_1_1Status_html_ad4fe06882fdfb2a040e4d7d10363ca0a"><div class="ttname"><a href="classkudu_1_1Status.html#ad4fe06882fdfb2a040e4d7d10363ca0a">kudu::Status::IsAborted</a></div><div class="ttdeci">bool IsAborted() const </div><div class="ttdef"><b>Definition:</b> status.h:286</div></div>
-<div class="ttc" id="classkudu_1_1Status_html_a325666f396d7f9900403765cecbaecbf"><div class="ttname"><a href="classkudu_1_1Status.html#a325666f396d7f9900403765cecbaecbf">kudu::Status::IsUninitialized</a></div><div class="ttdeci">bool IsUninitialized() const </div><div class="ttdef"><b>Definition:</b> status.h:298</div></div>
-<div class="ttc" id="classkudu_1_1Status_html_abc68e44f825df4e221e9fcce419a90cf"><div class="ttname"><a href="classkudu_1_1Status.html#abc68e44f825df4e221e9fcce419a90cf">kudu::Status::IsRuntimeError</a></div><div class="ttdeci">bool IsRuntimeError() const </div><div class="ttdef"><b>Definition:</b> status.h:274</div></div>
-<div class="ttc" id="classkudu_1_1Status_html_ab9e4ddf4c48889f365c6d359ae560e1c"><div class="ttname"><a href="classkudu_1_1Status.html#ab9e4ddf4c48889f365c6d359ae560e1c">kudu::Status::IsAlreadyPresent</a></div><div class="ttdeci">bool IsAlreadyPresent() const </div><div class="ttdef"><b>Definition:</b> status.h:271</div></div>
-<div class="ttc" id="classkudu_1_1Status_html_a991a91d7c07ffa41e6802a12f34d1acf"><div class="ttname"><a href="classkudu_1_1Status.html#a991a91d7c07ffa41e6802a12f34d1acf">kudu::Status::IsIOError</a></div><div class="ttdeci">bool IsIOError() const </div><div class="ttdef"><b>Definition:</b> status.h:265</div></div>
-<div class="ttc" id="classkudu_1_1Status_html_adaff3248b2f66041d0a7dd59f118b7ac"><div class="ttname"><a href="classkudu_1_1Status.html#adaff3248b2f66041d0a7dd59f118b7ac">kudu::Status::OK</a></div><div class="ttdeci">static Status OK()</div><div class="ttdef"><b>Definition:</b> status.h:164</div></div>
+<div class="ttc" id="classkudu_1_1Status_html_abf6454dcb72bfa92189a0595b5a858a7"><div class="ttname"><a href="classkudu_1_1Status.html#abf6454dcb72bfa92189a0595b5a858a7">kudu::Status::ok</a></div><div class="ttdeci">bool ok() const </div><div class="ttdef"><b>Definition:</b> status.h:255</div></div>
+<div class="ttc" id="classkudu_1_1Status_html_a80fe0286d8e3ac011a611afbac4edb11"><div class="ttname"><a href="classkudu_1_1Status.html#a80fe0286d8e3ac011a611afbac4edb11">kudu::Status::IsTimedOut</a></div><div class="ttdeci">bool IsTimedOut() const </div><div class="ttdef"><b>Definition:</b> status.h:297</div></div>
+<div class="ttc" id="classkudu_1_1Status_html_a96a35401df4ecd6420c86c65bc3e05f9"><div class="ttname"><a href="classkudu_1_1Status.html#a96a35401df4ecd6420c86c65bc3e05f9">kudu::Status::IsRemoteError</a></div><div class="ttdeci">bool IsRemoteError() const </div><div class="ttdef"><b>Definition:</b> status.h:291</div></div>
+<div class="ttc" id="classkudu_1_1Status_html_a7bce15fc7b4d95b0bdffce963972cce8"><div class="ttname"><a href="classkudu_1_1Status.html#a7bce15fc7b4d95b0bdffce963972cce8">kudu::Status::IsServiceUnavailable</a></div><div class="ttdeci">bool IsServiceUnavailable() const </div><div class="ttdef"><b>Definition:</b> status.h:294</div></div>
+<div class="ttc" id="classkudu_1_1Status_html_ad4fe06882fdfb2a040e4d7d10363ca0a"><div class="ttname"><a href="classkudu_1_1Status.html#ad4fe06882fdfb2a040e4d7d10363ca0a">kudu::Status::IsAborted</a></div><div class="ttdeci">bool IsAborted() const </div><div class="ttdef"><b>Definition:</b> status.h:288</div></div>
+<div class="ttc" id="classkudu_1_1Status_html_a325666f396d7f9900403765cecbaecbf"><div class="ttname"><a href="classkudu_1_1Status.html#a325666f396d7f9900403765cecbaecbf">kudu::Status::IsUninitialized</a></div><div class="ttdeci">bool IsUninitialized() const </div><div class="ttdef"><b>Definition:</b> status.h:300</div></div>
+<div class="ttc" id="classkudu_1_1Status_html_abc68e44f825df4e221e9fcce419a90cf"><div class="ttname"><a href="classkudu_1_1Status.html#abc68e44f825df4e221e9fcce419a90cf">kudu::Status::IsRuntimeError</a></div><div class="ttdeci">bool IsRuntimeError() const </div><div class="ttdef"><b>Definition:</b> status.h:276</div></div>
+<div class="ttc" id="classkudu_1_1Status_html_ab9e4ddf4c48889f365c6d359ae560e1c"><div class="ttname"><a href="classkudu_1_1Status.html#ab9e4ddf4c48889f365c6d359ae560e1c">kudu::Status::IsAlreadyPresent</a></div><div class="ttdeci">bool IsAlreadyPresent() const </div><div class="ttdef"><b>Definition:</b> status.h:273</div></div>
+<div class="ttc" id="classkudu_1_1Status_html_a991a91d7c07ffa41e6802a12f34d1acf"><div class="ttname"><a href="classkudu_1_1Status.html#a991a91d7c07ffa41e6802a12f34d1acf">kudu::Status::IsIOError</a></div><div class="ttdeci">bool IsIOError() const </div><div class="ttdef"><b>Definition:</b> status.h:267</div></div>
+<div class="ttc" id="classkudu_1_1Status_html_adaff3248b2f66041d0a7dd59f118b7ac"><div class="ttname"><a href="classkudu_1_1Status.html#adaff3248b2f66041d0a7dd59f118b7ac">kudu::Status::OK</a></div><div class="ttdeci">static Status OK()</div><div class="ttdef"><b>Definition:</b> status.h:166</div></div>
 <div class="ttc" id="classkudu_1_1Slice_html"><div class="ttname"><a href="classkudu_1_1Slice.html">kudu::Slice</a></div><div class="ttdoc">A wrapper around externally allocated data. </div><div class="ttdef"><b>Definition:</b> slice.h:43</div></div>
-<div class="ttc" id="classkudu_1_1Status_html_a8d31d26943101023125666bbbea002e3"><div class="ttname"><a href="classkudu_1_1Status.html#a8d31d26943101023125666bbbea002e3">kudu::Status::IsConfigurationError</a></div><div class="ttdeci">bool IsConfigurationError() const </div><div class="ttdef"><b>Definition:</b> status.h:301</div></div>
-<div class="ttc" id="classkudu_1_1Status_html_a56e991c78f5a4aed32b97fbeccf13c2c"><div class="ttname"><a href="classkudu_1_1Status.html#a56e991c78f5a4aed32b97fbeccf13c2c">kudu::Status::IsInvalidArgument</a></div><div class="ttdeci">bool IsInvalidArgument() const </div><div class="ttdef"><b>Definition:</b> status.h:268</div></div>
-<div class="ttc" id="classkudu_1_1Status_html_a36fa7d6fc0cd9ab1f9ad48e4a7614bc9"><div class="ttname"><a href="classkudu_1_1Status.html#a36fa7d6fc0cd9ab1f9ad48e4a7614bc9">kudu::Status::IsCorruption</a></div><div class="ttdeci">bool IsCorruption() const </div><div class="ttdef"><b>Definition:</b> status.h:259</div></div>
-<div class="ttc" id="classkudu_1_1Status_html_ae63eecd6e48fa007b2334b6459972c39"><div class="ttname"><a href="classkudu_1_1Status.html#ae63eecd6e48fa007b2334b6459972c39">kudu::Status::operator=</a></div><div class="ttdeci">void operator=(const Status &amp;s)</div><div class="ttdef"><b>Definition:</b> status.h:403</div></div>
-<div class="ttc" id="classkudu_1_1Status_html_adead843ea27f50252f561c995c97b2e6"><div class="ttname"><a href="classkudu_1_1Status.html#adead843ea27f50252f561c995c97b2e6">kudu::Status::IsEndOfFile</a></div><div class="ttdeci">bool IsEndOfFile() const </div><div class="ttdef"><b>Definition:</b> status.h:307</div></div>
-<div class="ttc" id="classkudu_1_1Status_html_a2b1672aba7ec84133cd086186b27821b"><div class="ttname"><a href="classkudu_1_1Status.html#a2b1672aba7ec84133cd086186b27821b">kudu::Status::IsNotSupported</a></div><div class="ttdeci">bool IsNotSupported() const </div><div class="ttdef"><b>Definition:</b> status.h:262</div></div>
-<div class="ttc" id="classkudu_1_1Status_html_a70c83ddb5b234e814db84dfbbb751d0c"><div class="ttname"><a href="classkudu_1_1Status.html#a70c83ddb5b234e814db84dfbbb751d0c">kudu::Status::IsNetworkError</a></div><div class="ttdeci">bool IsNetworkError() const </div><div class="ttdef"><b>Definition:</b> status.h:277</div></div>
-<div class="ttc" id="classkudu_1_1Status_html_af68a02f8069b1a8670fcc1b7acd869b9"><div class="ttname"><a href="classkudu_1_1Status.html#af68a02f8069b1a8670fcc1b7acd869b9">kudu::Status::IsIncomplete</a></div><div class="ttdeci">bool IsIncomplete() const </div><div class="ttdef"><b>Definition:</b> status.h:304</div></div>
-<div class="ttc" id="classkudu_1_1Status_html_a38e1a8eb7b23092569cb61983ebb671d"><div class="ttname"><a href="classkudu_1_1Status.html#a38e1a8eb7b23092569cb61983ebb671d">kudu::Status::IsNotFound</a></div><div class="ttdeci">bool IsNotFound() const </div><div class="ttdef"><b>Definition:</b> status.h:256</div></div>
+<div class="ttc" id="classkudu_1_1Status_html_aa387797d8a80892563d56244a2351a88"><div class="ttname"><a href="classkudu_1_1Status.html#aa387797d8a80892563d56244a2351a88">kudu::Status::operator=</a></div><div class="ttdeci">Status &amp; operator=(const Status &amp;s)</div><div class="ttdef"><b>Definition:</b> status.h:406</div></div>
+<div class="ttc" id="classkudu_1_1Status_html_a8d31d26943101023125666bbbea002e3"><div class="ttname"><a href="classkudu_1_1Status.html#a8d31d26943101023125666bbbea002e3">kudu::Status::IsConfigurationError</a></div><div class="ttdeci">bool IsConfigurationError() const </div><div class="ttdef"><b>Definition:</b> status.h:303</div></div>
+<div class="ttc" id="classkudu_1_1Status_html_a56e991c78f5a4aed32b97fbeccf13c2c"><div class="ttname"><a href="classkudu_1_1Status.html#a56e991c78f5a4aed32b97fbeccf13c2c">kudu::Status::IsInvalidArgument</a></div><div class="ttdeci">bool IsInvalidArgument() const </div><div class="ttdef"><b>Definition:</b> status.h:270</div></div>
+<div class="ttc" id="classkudu_1_1Status_html_a36fa7d6fc0cd9ab1f9ad48e4a7614bc9"><div class="ttname"><a href="classkudu_1_1Status.html#a36fa7d6fc0cd9ab1f9ad48e4a7614bc9">kudu::Status::IsCorruption</a></div><div class="ttdeci">bool IsCorruption() const </div><div class="ttdef"><b>Definition:</b> status.h:261</div></div>
+<div class="ttc" id="classkudu_1_1Status_html_adead843ea27f50252f561c995c97b2e6"><div class="ttname"><a href="classkudu_1_1Status.html#adead843ea27f50252f561c995c97b2e6">kudu::Status::IsEndOfFile</a></div><div class="ttdeci">bool IsEndOfFile() const </div><div class="ttdef"><b>Definition:</b> status.h:309</div></div>
+<div class="ttc" id="classkudu_1_1Status_html_a2b1672aba7ec84133cd086186b27821b"><div class="ttname"><a href="classkudu_1_1Status.html#a2b1672aba7ec84133cd086186b27821b">kudu::Status::IsNotSupported</a></div><div class="ttdeci">bool IsNotSupported() const </div><div class="ttdef"><b>Definition:</b> status.h:264</div></div>
+<div class="ttc" id="classkudu_1_1Status_html_a70c83ddb5b234e814db84dfbbb751d0c"><div class="ttname"><a href="classkudu_1_1Status.html#a70c83ddb5b234e814db84dfbbb751d0c">kudu::Status::IsNetworkError</a></div><div class="ttdeci">bool IsNetworkError() const </div><div class="ttdef"><b>Definition:</b> status.h:279</div></div>
+<div class="ttc" id="classkudu_1_1Status_html_af68a02f8069b1a8670fcc1b7acd869b9"><div class="ttname"><a href="classkudu_1_1Status.html#af68a02f8069b1a8670fcc1b7acd869b9">kudu::Status::IsIncomplete</a></div><div class="ttdeci">bool IsIncomplete() const </div><div class="ttdef"><b>Definition:</b> status.h:306</div></div>
+<div class="ttc" id="classkudu_1_1Status_html_a38e1a8eb7b23092569cb61983ebb671d"><div class="ttname"><a href="classkudu_1_1Status.html#a38e1a8eb7b23092569cb61983ebb671d">kudu::Status::IsNotFound</a></div><div class="ttdeci">bool IsNotFound() const </div><div class="ttdef"><b>Definition:</b> status.h:258</div></div>
 </div><!-- fragment --></div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:02 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/structkudu_1_1SliceMap-members.html b/cpp-client-api/structkudu_1_1SliceMap-members.html
index 280c6bf..2f6e3ab 100644
--- a/cpp-client-api/structkudu_1_1SliceMap-members.html
+++ b/cpp-client-api/structkudu_1_1SliceMap-members.html
@@ -99,7 +99,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/structkudu_1_1SliceMap.html b/cpp-client-api/structkudu_1_1SliceMap.html
index d57dc29..788d4bf 100644
--- a/cpp-client-api/structkudu_1_1SliceMap.html
+++ b/cpp-client-api/structkudu_1_1SliceMap.html
@@ -119,7 +119,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/structkudu_1_1Slice_1_1Comparator-members.html b/cpp-client-api/structkudu_1_1Slice_1_1Comparator-members.html
index 5c16823..c2374d9 100644
--- a/cpp-client-api/structkudu_1_1Slice_1_1Comparator-members.html
+++ b/cpp-client-api/structkudu_1_1Slice_1_1Comparator-members.html
@@ -99,7 +99,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:02 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/structkudu_1_1Slice_1_1Comparator.html b/cpp-client-api/structkudu_1_1Slice_1_1Comparator.html
index da73c51..7c36aa2 100644
--- a/cpp-client-api/structkudu_1_1Slice_1_1Comparator.html
+++ b/cpp-client-api/structkudu_1_1Slice_1_1Comparator.html
@@ -158,7 +158,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:02 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/stubs_8h_source.html b/cpp-client-api/stubs_8h_source.html
index 8f92a3e..20e073f 100644
--- a/cpp-client-api/stubs_8h_source.html
+++ b/cpp-client-api/stubs_8h_source.html
@@ -99,7 +99,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:02 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/todo.html b/cpp-client-api/todo.html
index 5a754a0..6d1b971 100644
--- a/cpp-client-api/todo.html
+++ b/cpp-client-api/todo.html
@@ -115,7 +115,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:02 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/value_8h_source.html b/cpp-client-api/value_8h_source.html
index bdcaa6b..2c33639 100644
--- a/cpp-client-api/value_8h_source.html
+++ b/cpp-client-api/value_8h_source.html
@@ -91,13 +91,13 @@
 <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&quot;); 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;<span class="preprocessor">#ifndef KUDU_CLIENT_VALUE_H</span></div><div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#define KUDU_CLIENT_VALUE_H</span></div><div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;</div><div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#ifdef KUDU_HEADERS_NO_STUBS</span></div><div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#include &quot;kudu/gutil/macros.h&quot;</span></div><div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#include &quot;kudu/gutil/port.h&quot;</span></div><div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#include &quot;kudu/client/stubs.h&quot;</span></div><div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="preprocessor">#include &quot;kudu/util/slice.h&quot;</span></div><div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="preprocessor">#include &quot;kudu/util/kudu_export.h&quot;</span></div><div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;</div><div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;<span class="keyword">namespace </span><a class="code" href="namespacekudu.html">kudu</a> {</div><div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;<span class="keyword">namespace </span>client {</div><div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;</div><div class="line"><a name="l00033"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduValue.html">   33</a></span>&#160;<span class="keyword">class </span>KUDU_EXPORT <a class="code" href="classkudu_1_1client_1_1KuduValue.html">KuduValue</a> {</div><div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduValue.html">KuduValue</a>* Clone() <span class="keyword">const</span>;</div><div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;</div><div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1client_1_1KuduValue.html">KuduValue</a>* FromInt(int64_t val);</div><div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1client_1_1KuduValue.html">KuduValue</a>* FromFloat(<span class="keywordtype">float</span> f);</div><div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1client_1_1KuduValue.html">KuduValue</a>* FromDouble(<span class="keywordtype">double</span> d);</div><div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1client_1_1KuduValue.html">KuduValue</a>* FromBool(<span class="keywordtype">bool</span> b);</div><div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;</div><div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1client_1_1KuduValue.html">KuduValue</a>* CopyString(<a class="code" href="classkudu_1_1Slice.html">Slice</a> s);</div><div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;</div><div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;  ~<a class="code" href="classkudu_1_1client_1_1KuduValue.html">KuduValue</a>();</div><div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>ComparisonPredicateData;</div><div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>InListPredicateData;</div><div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classkudu_1_1client_1_1KuduColumnSpec.html">KuduColumnSpec</a>;</div><div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;</div><div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;  <span class="keyword">class </span>KUDU_NO_EXPORT Data;</div><div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;  <span class="keyword">explicit</span> <a class="code" href="classkudu_1_1client_1_1KuduValue.html">KuduValue</a>(Data* d);</div><div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;</div><div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;  <span class="comment">// Owned.</span></div><div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;  Data* data_;</div><div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;</div><div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;  DISALLOW_COPY_AND_ASSIGN(KuduValue);</div><div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;};</div><div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;</div><div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;} <span class="comment">// namespace client</span></div><div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;} <span class="comment">// namespace kudu</span></div><div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* KUDU_CLIENT_VALUE_H */</span><span class="preprocessor"></span></div><div class="ttc" id="classkudu_1_1client_1_1KuduValue_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduValue.html">kudu::client::KuduValue</a></div><div class="ttdoc">A constant cell value with a specific type. </div><div class="ttdef"><b>Definition:</b> value.h:33</div></div>
 <div class="ttc" id="namespacekudu_html"><div class="ttname"><a href="namespacekudu.html">kudu</a></div><div class="ttdef"><b>Definition:</b> callbacks.h:28</div></div>
-<div class="ttc" id="classkudu_1_1client_1_1KuduColumnSpec_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduColumnSpec.html">kudu::client::KuduColumnSpec</a></div><div class="ttdoc">Builder API for specifying or altering a column within a table schema. </div><div class="ttdef"><b>Definition:</b> schema.h:230</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduColumnSpec_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduColumnSpec.html">kudu::client::KuduColumnSpec</a></div><div class="ttdoc">Builder API for specifying or altering a column within a table schema. </div><div class="ttdef"><b>Definition:</b> schema.h:232</div></div>
 <div class="ttc" id="classkudu_1_1Slice_html"><div class="ttname"><a href="classkudu_1_1Slice.html">kudu::Slice</a></div><div class="ttdoc">A wrapper around externally allocated data. </div><div class="ttdef"><b>Definition:</b> slice.h:43</div></div>
 </div><!-- fragment --></div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:02 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/cpp-client-api/write__op_8h_source.html b/cpp-client-api/write__op_8h_source.html
index 4e3711b..6f57b26 100644
--- a/cpp-client-api/write__op_8h_source.html
+++ b/cpp-client-api/write__op_8h_source.html
@@ -99,7 +99,7 @@
 <div class="ttc" id="classkudu_1_1client_1_1KuduUpsert_html_a0608280ef5b4eb2a53c0b303db7401c8"><div class="ttname"><a href="classkudu_1_1client_1_1KuduUpsert.html#a0608280ef5b4eb2a53c0b303db7401c8">kudu::client::KuduUpsert::ToString</a></div><div class="ttdeci">virtual std::string ToString() const OVERRIDE</div><div class="ttdef"><b>Definition:</b> write_op.h:162</div></div>
 <div class="ttc" id="classkudu_1_1client_1_1KuduDelete_html_a586dc46e1d10118465e3b834ac578de0"><div class="ttname"><a href="classkudu_1_1client_1_1KuduDelete.html#a586dc46e1d10118465e3b834ac578de0">kudu::client::KuduDelete::ToString</a></div><div class="ttdeci">virtual std::string ToString() const OVERRIDE</div><div class="ttdef"><b>Definition:</b> write_op.h:216</div></div>
 <div class="ttc" id="classkudu_1_1client_1_1KuduWriteOperation_html_a973b342ced786b23754b57fd83b34aa3"><div class="ttname"><a href="classkudu_1_1client_1_1KuduWriteOperation.html#a973b342ced786b23754b57fd83b34aa3">kudu::client::KuduWriteOperation::row</a></div><div class="ttdeci">const KuduPartialRow &amp; row() const </div><div class="ttdef"><b>Definition:</b> write_op.h:70</div></div>
-<div class="ttc" id="classkudu_1_1client_1_1KuduTable_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a></div><div class="ttdoc">A representation of a table on a particular cluster. </div><div class="ttdef"><b>Definition:</b> client.h:850</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduTable_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a></div><div class="ttdoc">A representation of a table on a particular cluster. </div><div class="ttdef"><b>Definition:</b> client.h:862</div></div>
 <div class="ttc" id="classkudu_1_1client_1_1KuduWriteOperation_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a></div><div class="ttdoc">A single-row write operation to be sent to a Kudu table. </div><div class="ttdef"><b>Definition:</b> write_op.h:56</div></div>
 <div class="ttc" id="classkudu_1_1client_1_1KuduWriteOperation_html_a8889770ce62e2ca0ce5d55c9c90af6bc"><div class="ttname"><a href="classkudu_1_1client_1_1KuduWriteOperation.html#a8889770ce62e2ca0ce5d55c9c90af6bc">kudu::client::KuduWriteOperation::mutable_row</a></div><div class="ttdeci">KuduPartialRow * mutable_row()</div><div class="ttdef"><b>Definition:</b> write_op.h:75</div></div>
 <div class="ttc" id="classkudu_1_1client_1_1KuduWriteOperation_html_a87d94ee5801a6b16fc6d1f44ee2e4357"><div class="ttname"><a href="classkudu_1_1client_1_1KuduWriteOperation.html#a87d94ee5801a6b16fc6d1f44ee2e4357">kudu::client::KuduWriteOperation::Type</a></div><div class="ttdeci">Type</div><div class="ttdoc">Write operation types. </div><div class="ttdef"><b>Definition:</b> write_op.h:59</div></div>
@@ -109,7 +109,7 @@
 <!-- start footer part -->
 <hr class="footer"/>
 <address class="footer">
-  <small>Generated for Kudu version 1.3.2-SNAPSHOT on Mon May 15 2017 12:45:56 by Doxygen 1.8.11</small>
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:02 by Doxygen 1.8.11</small>
   <br>
   <small>Copyright © 2017 The Apache Software Foundation.</small>
 </address>
diff --git a/docs/administration.html b/docs/administration.html
index 876b00a..2528033 100644
--- a/docs/administration.html
+++ b/docs/administration.html
@@ -1312,7 +1312,7 @@
 </div>
       <footer class="footer">
         <p class="small">
-        Copyright &copy; 2016 The Apache Software Foundation.  Last updated 2017-05-15 12:38:07 PDT 
+        Copyright &copy; 2016 The Apache Software Foundation.  Last updated 2017-05-15 17:12:37 PDT 
         </p>
       </footer>
     </div>
diff --git a/docs/background_tasks.html b/docs/background_tasks.html
index 9d665a5..56aed14 100644
--- a/docs/background_tasks.html
+++ b/docs/background_tasks.html
@@ -313,7 +313,7 @@
 </div>
       <footer class="footer">
         <p class="small">
-        Copyright &copy; 2016 The Apache Software Foundation.  Last updated 2017-05-04 13:08:22 PDT 
+        Copyright &copy; 2016 The Apache Software Foundation.  Last updated 2017-05-15 17:12:37 PDT 
         </p>
       </footer>
     </div>
diff --git a/docs/command_line_tools.html b/docs/command_line_tools.html
index 7b53372..4fc155a 100644
--- a/docs/command_line_tools.html
+++ b/docs/command_line_tools.html
@@ -124,6 +124,9 @@
 <div class="ulist">
 <ul>
 <li>
+<p><a href="#fs-check">check</a></p>
+</li>
+<li>
 <p><a href="#fs-format">format</a></p>
 </li>
 <li>
@@ -206,6 +209,9 @@
 <li>
 <p><a href="#master-timestamp">timestamp</a></p>
 </li>
+<li>
+<p><a href="#master-list">list</a></p>
+</li>
 </ul>
 </div>
 </li>
@@ -238,6 +244,9 @@
 <li>
 <p><a href="#remote_replica-list">list</a></p>
 </li>
+<li>
+<p><a href="#remote_replica-unsafe_change_config">unsafe_change_config</a></p>
+</li>
 </ul>
 </div>
 </li>
@@ -303,6 +312,9 @@
 <li>
 <p><a href="#tserver-timestamp">timestamp</a></p>
 </li>
+<li>
+<p><a href="#tserver-list">list</a></p>
+</li>
 </ul>
 </div>
 </li>
@@ -332,7 +344,7 @@
 <div class="paragraph">
 <p>By default, ksck checks that master and tablet server processes are running, and that table metadata is consistent. Use the 'checksum' flag to check that tablet data is consistent (also see the 'tables' and 'tablets' flags). Use the 'checksum_snapshot' along with 'checksum' if the table or tablets are actively receiving inserts or updates.<br>
 <strong>Usage:</strong><br>
-<code>kudu cluster ksck &lt;master_addresses&gt; [-checksum_cache_blocks] [-checksum_scan] [-checksum_scan_concurrency=&lt;concurrency&gt;] [-nochecksum_snapshot] [-color=&lt;color&gt;] [-tables=&lt;tables&gt;] [-tablets=&lt;tablets&gt;]</code>
+<code>kudu cluster ksck &lt;master_addresses&gt; [-checksum_cache_blocks] [-checksum_scan] [-checksum_scan_concurrency=&lt;concurrency&gt;] [-nochecksum_snapshot] [-color=&lt;color&gt;] [-noconsensus] [-tables=&lt;tables&gt;] [-tablets=&lt;tablets&gt;]</code>
 <br>
 <strong>Arguments:</strong></p>
 </div>
@@ -389,6 +401,12 @@
 <td class="tableblock halign-left valign-top"><p class="tableblock"><code>auto</code></p></td>
 </tr>
 <tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">consensus (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Whether to check the consensus state from each tablet against the master.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
 <td class="tableblock halign-left valign-top"><p class="tableblock">tables (optional)</p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Tables to check (comma-separated list of names). If not specified, checks all tables.</p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
@@ -415,6 +433,54 @@
 <p><br></p>
 </div>
 <div class="sect2">
+<h3 id="fs-check"><a class="link" href="#fs-check"><code>check</code>: Check a Kudu filesystem for inconsistencies&#160;</a></h3>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu fs check [-fs_wal_dir=&lt;dir&gt;] [-fs_data_dirs=&lt;dirs&gt;] [-repair]</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">fs_wal_dir (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with write-ahead logs. If this is not specified, the program will not start. May be the same as fs_data_dirs</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">fs_data_dirs (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of directories with data blocks. If this is not specified, fs_wal_dir will be used as the sole data block directory.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">repair (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Repair any inconsistencies in the filesystem.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+<div class="sect2">
 <h3 id="fs-format"><a class="link" href="#fs-format"><code>format</code>: Format a new Kudu filesystem&#160;</a></h3>
 <div class="paragraph">
 <p><strong>Usage:</strong><br>
@@ -1262,6 +1328,62 @@
 <p><br></p>
 </div>
 </div>
+<div class="sect2">
+<h3 id="master-list"><a class="link" href="#master-list"><code>list</code>: List masters in a Kudu cluster&#160;</a></h3>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu master list &lt;master_addresses&gt; [-columns=&lt;columns&gt;] [-format=&lt;format&gt;] [-timeout_ms=&lt;ms&gt;]</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">master_addresses</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of Kudu Master addresses where each address is of form 'hostname:port'</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">columns (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of master info fields to include in output.
+Possible values: uuid, rpc-addresses, http-addresses, version, and seqno</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>uuid,rpc-addresses</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">format (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Format to use for printing list output tables.
+Possible values: pretty, space, tsv, csv, and json</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>pretty</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">timeout_ms (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">RPC timeout in milliseconds</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>60000</code></p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
 </div>
 </div>
 <div class="sect1">
@@ -1536,6 +1658,55 @@
 <p><br></p>
 </div>
 </div>
+<div class="sect2">
+<h3 id="remote_replica-unsafe_change_config"><a class="link" href="#remote_replica-unsafe_change_config"><code>unsafe_change_config</code>: Force the specified replica to adopt a new Raft config&#160;</a></h3>
+<div class="paragraph">
+<p>The members of the new Raft config must be a subset of (or the same as) the members of the existing committed Raft config on that replica.<br>
+<strong>Usage:</strong><br>
+<code>kudu remote_replica unsafe_change_config &lt;tserver_address&gt; &lt;tablet_id&gt; &lt;peer uuids&gt;&#8230;&#8203;</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">tserver_address</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Address of a Kudu Tablet Server of form 'hostname:port'. Port may be omitted if the Tablet Server is bound to the default port.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">tablet_id</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Tablet Identifier</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">peer uuids&#8230;&#8203;</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">List of peer uuids to be part of new config</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
 </div>
 </div>
 <div class="sect1">
@@ -2115,6 +2286,62 @@
 <p><br></p>
 </div>
 </div>
+<div class="sect2">
+<h3 id="tserver-list"><a class="link" href="#tserver-list"><code>list</code>: List tablet servers in a Kudu cluster&#160;</a></h3>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu tserver list &lt;master_addresses&gt; [-columns=&lt;columns&gt;] [-format=&lt;format&gt;] [-timeout_ms=&lt;ms&gt;]</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">master_addresses</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of Kudu Master addresses where each address is of form 'hostname:port'</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">columns (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of tserver info fields to include in output.
+Possible values: uuid, rpc-addresses, http-addresses, version, seqno, and heartbeat</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>uuid,rpc-addresses</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">format (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Format to use for printing list output tables.
+Possible values: pretty, space, tsv, csv, and json</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>pretty</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">timeout_ms (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">RPC timeout in milliseconds</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>60000</code></p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
 </div>
 </div>
 <div class="sect1">
@@ -2268,7 +2495,7 @@
 </div>
       <footer class="footer">
         <p class="small">
-        Copyright &copy; 2016 The Apache Software Foundation.  Last updated 2017-05-15 12:46:02 PDT 
+        Copyright &copy; 2016 The Apache Software Foundation.  Last updated 2017-06-13 10:50:35 PDT 
         </p>
       </footer>
     </div>
diff --git a/docs/command_line_tools_reference.html b/docs/command_line_tools_reference.html
index 060f5dd..2006ac1 100644
--- a/docs/command_line_tools_reference.html
+++ b/docs/command_line_tools_reference.html
@@ -135,6 +135,9 @@
 <div class="ulist">
 <ul>
 <li>
+<p><a href="#fs-check">check</a></p>
+</li>
+<li>
 <p><a href="#fs-format">format</a></p>
 </li>
 <li>
@@ -217,6 +220,9 @@
 <li>
 <p><a href="#master-timestamp">timestamp</a></p>
 </li>
+<li>
+<p><a href="#master-list">list</a></p>
+</li>
 </ul>
 </div>
 </li>
@@ -249,6 +255,9 @@
 <li>
 <p><a href="#remote_replica-list">list</a></p>
 </li>
+<li>
+<p><a href="#remote_replica-unsafe_change_config">unsafe_change_config</a></p>
+</li>
 </ul>
 </div>
 </li>
@@ -314,6 +323,9 @@
 <li>
 <p><a href="#tserver-timestamp">timestamp</a></p>
 </li>
+<li>
+<p><a href="#tserver-list">list</a></p>
+</li>
 </ul>
 </div>
 </li>
@@ -344,7 +356,7 @@
 <div class="paragraph">
 <p>By default, ksck checks that master and tablet server processes are running, and that table metadata is consistent. Use the 'checksum' flag to check that tablet data is consistent (also see the 'tables' and 'tablets' flags). Use the 'checksum_snapshot' along with 'checksum' if the table or tablets are actively receiving inserts or updates.<br>
 <strong>Usage:</strong><br>
-<code>kudu cluster ksck &lt;master_addresses&gt; [-checksum_cache_blocks] [-checksum_scan] [-checksum_scan_concurrency=&lt;concurrency&gt;] [-nochecksum_snapshot] [-color=&lt;color&gt;] [-tables=&lt;tables&gt;] [-tablets=&lt;tablets&gt;]</code>
+<code>kudu cluster ksck &lt;master_addresses&gt; [-checksum_cache_blocks] [-checksum_scan] [-checksum_scan_concurrency=&lt;concurrency&gt;] [-nochecksum_snapshot] [-color=&lt;color&gt;] [-noconsensus] [-tables=&lt;tables&gt;] [-tablets=&lt;tablets&gt;]</code>
 <br>
 <strong>Arguments:</strong></p>
 </div>
@@ -401,6 +413,12 @@
 <td class="tableblock halign-left valign-top"><p class="tableblock"><code>auto</code></p></td>
 </tr>
 <tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">consensus (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Whether to check the consensus state from each tablet against the master.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
 <td class="tableblock halign-left valign-top"><p class="tableblock">tables (optional)</p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">Tables to check (comma-separated list of names). If not specified, checks all tables.</p></td>
 <td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
@@ -425,6 +443,54 @@
 <p><br></p>
 </div>
 <div class="sect3">
+<h4 id="fs-check"><a class="link" href="#fs-check"><code>check</code>: Check a Kudu filesystem for inconsistencies&#160;</a></h4>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu fs check [-fs_wal_dir=&lt;dir&gt;] [-fs_data_dirs=&lt;dirs&gt;] [-repair]</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">fs_wal_dir (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with write-ahead logs. If this is not specified, the program will not start. May be the same as fs_data_dirs</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">fs_data_dirs (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of directories with data blocks. If this is not specified, fs_wal_dir will be used as the sole data block directory.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">repair (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Repair any inconsistencies in the filesystem.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+<div class="sect3">
 <h4 id="fs-format"><a class="link" href="#fs-format"><code>format</code>: Format a new Kudu filesystem&#160;</a></h4>
 <div class="paragraph">
 <p><strong>Usage:</strong><br>
@@ -1268,6 +1334,62 @@
 <p><br></p>
 </div>
 </div>
+<div class="sect3">
+<h4 id="master-list"><a class="link" href="#master-list"><code>list</code>: List masters in a Kudu cluster&#160;</a></h4>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu master list &lt;master_addresses&gt; [-columns=&lt;columns&gt;] [-format=&lt;format&gt;] [-timeout_ms=&lt;ms&gt;]</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">master_addresses</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of Kudu Master addresses where each address is of form 'hostname:port'</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">columns (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of master info fields to include in output.
+Possible values: uuid, rpc-addresses, http-addresses, version, and seqno</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>uuid,rpc-addresses</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">format (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Format to use for printing list output tables.
+Possible values: pretty, space, tsv, csv, and json</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>pretty</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">timeout_ms (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">RPC timeout in milliseconds</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>60000</code></p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
 </div>
 <div class="sect2">
 <h3 id="pbc"><a class="link" href="#pbc"><code>pbc</code>: Operate on PBC (protobuf container) files</a></h3>
@@ -1538,6 +1660,55 @@
 <p><br></p>
 </div>
 </div>
+<div class="sect3">
+<h4 id="remote_replica-unsafe_change_config"><a class="link" href="#remote_replica-unsafe_change_config"><code>unsafe_change_config</code>: Force the specified replica to adopt a new Raft config&#160;</a></h4>
+<div class="paragraph">
+<p>The members of the new Raft config must be a subset of (or the same as) the members of the existing committed Raft config on that replica.<br>
+<strong>Usage:</strong><br>
+<code>kudu remote_replica unsafe_change_config &lt;tserver_address&gt; &lt;tablet_id&gt; &lt;peer uuids&gt;&#8230;&#8203;</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">tserver_address</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Address of a Kudu Tablet Server of form 'hostname:port'. Port may be omitted if the Tablet Server is bound to the default port.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">tablet_id</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Tablet Identifier</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">peer uuids&#8230;&#8203;</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">List of peer uuids to be part of new config</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
 </div>
 <div class="sect2">
 <h3 id="table"><a class="link" href="#table"><code>table</code>: Operate on Kudu tables</a></h3>
@@ -2109,6 +2280,62 @@
 <p><br></p>
 </div>
 </div>
+<div class="sect3">
+<h4 id="tserver-list"><a class="link" href="#tserver-list"><code>list</code>: List tablet servers in a Kudu cluster&#160;</a></h4>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu tserver list &lt;master_addresses&gt; [-columns=&lt;columns&gt;] [-format=&lt;format&gt;] [-timeout_ms=&lt;ms&gt;]</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">master_addresses</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of Kudu Master addresses where each address is of form 'hostname:port'</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">columns (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of tserver info fields to include in output.
+Possible values: uuid, rpc-addresses, http-addresses, version, seqno, and heartbeat</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>uuid,rpc-addresses</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">format (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Format to use for printing list output tables.
+Possible values: pretty, space, tsv, csv, and json</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>pretty</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">timeout_ms (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">RPC timeout in milliseconds</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>60000</code></p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
 </div>
 <div class="sect2">
 <h3 id="wal"><a class="link" href="#wal"><code>wal</code>: Operate on WAL (write-ahead log) files</a></h3>
@@ -2264,7 +2491,7 @@
 </div>
       <footer class="footer">
         <p class="small">
-        Copyright &copy; 2016 The Apache Software Foundation.  Last updated 2017-05-15 12:46:02 PDT 
+        Copyright &copy; 2016 The Apache Software Foundation.  Last updated 2017-06-13 10:50:35 PDT 
         </p>
       </footer>
     </div>
diff --git a/docs/configuration_reference.html b/docs/configuration_reference.html
index d7e6e92..6ac763c 100644
--- a/docs/configuration_reference.html
+++ b/docs/configuration_reference.html
@@ -1387,6 +1387,35 @@
 being changed or removed without notice.</p>
 </div>
 <div class="sect3">
+<h4 id="kudu-master_cfile_verify_checksums"><a class="link" href="#kudu-master_cfile_verify_checksums"><code>--cfile_verify_checksums</code></a></h4>
+<div class="paragraph">
+<p>Verify the checksum for each block on read if one exists</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
 <h4 id="kudu-master_cfile_default_block_size"><a class="link" href="#kudu-master_cfile_default_block_size"><code>--cfile_default_block_size</code></a></h4>
 <div class="paragraph">
 <p>The default block size to use in cfiles</p>
@@ -1445,9 +1474,9 @@
 </div>
 </div>
 <div class="sect3">
-<h4 id="kudu-master_fault_crash_after_leader_request_fraction"><a class="link" href="#kudu-master_fault_crash_after_leader_request_fraction"><code>--fault_crash_after_leader_request_fraction</code></a></h4>
+<h4 id="kudu-master_cfile_write_checksums"><a class="link" href="#kudu-master_cfile_write_checksums"><code>--cfile_write_checksums</code></a></h4>
 <div class="paragraph">
-<p>Fraction of the time when the leader will crash on getting a response for an UpdateConsensus RPC. (For testing only!)</p>
+<p>Write CRC32 checksums for each block</p>
 </div>
 <table class="tableblock frame-all grid-all" style="width: 50%;">
 <colgroup>
@@ -1457,15 +1486,15 @@
 <tbody>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
-<td class="tableblock halign-left valign-top"></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving</p></td>
 </tr>
 </tbody>
 </table>
@@ -1474,9 +1503,9 @@
 </div>
 </div>
 <div class="sect3">
-<h4 id="kudu-master_raft_get_node_instance_timeout_ms"><a class="link" href="#kudu-master_raft_get_node_instance_timeout_ms"><code>--raft_get_node_instance_timeout_ms</code></a></h4>
+<h4 id="kudu-master_consensus_rpc_timeout_ms"><a class="link" href="#kudu-master_consensus_rpc_timeout_ms"><code>--consensus_rpc_timeout_ms</code></a></h4>
 <div class="paragraph">
-<p>Timeout for retrieving node instance data over RPC.</p>
+<p>Timeout used for all consensus internal RPC communications.</p>
 </div>
 <table class="tableblock frame-all grid-all" style="width: 50%;">
 <colgroup>
@@ -1490,11 +1519,11 @@
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>30000</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1000</code></p></td>
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
-<td class="tableblock halign-left valign-top"></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
 </tr>
 </tbody>
 </table>
@@ -1635,7 +1664,7 @@
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>2</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1</code></p></td>
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
@@ -1766,7 +1795,7 @@
 <div class="sect3">
 <h4 id="kudu-master_log_segment_size_mb"><a class="link" href="#kudu-master_log_segment_size_mb"><code>--log_segment_size_mb</code></a></h4>
 <div class="paragraph">
-<p>The default segment size for log roll-overs, in MB</p>
+<p>The default size for log segments, in MB</p>
 </div>
 <table class="tableblock frame-all grid-all" style="width: 50%;">
 <colgroup>
@@ -1780,7 +1809,7 @@
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>64</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>8</code></p></td>
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
@@ -1911,7 +1940,7 @@
 <div class="sect3">
 <h4 id="kudu-master_block_manager_max_open_files"><a class="link" href="#kudu-master_block_manager_max_open_files"><code>--block_manager_max_open_files</code></a></h4>
 <div class="paragraph">
-<p>Maximum number of open file descriptors to be used for data blocks. If 0, there is no limit. If -1, Kudu will use 40% of its resource limit as per getrlimit(). This is a soft limit.</p>
+<p>Maximum number of open file descriptors to be used for data blocks. If -1, Kudu will use 40% of its resource limit as per getrlimit(). This is a soft limit. It is an error to use a value of 0.</p>
 </div>
 <table class="tableblock frame-all grid-all" style="width: 50%;">
 <colgroup>
@@ -2025,6 +2054,35 @@
 </div>
 </div>
 <div class="sect3">
+<h4 id="kudu-master_log_container_excess_space_before_cleanup_fraction"><a class="link" href="#kudu-master_log_container_excess_space_before_cleanup_fraction"><code>--log_container_excess_space_before_cleanup_fraction</code></a></h4>
+<div class="paragraph">
+<p>Additional fraction of a log container&#8217;s calculated size that must be consumed on disk before the container is considered to be inconsistent and subject to excess space cleanup at block manager startup.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0.10000000000000001</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
 <h4 id="kudu-master_log_container_max_blocks"><a class="link" href="#kudu-master_log_container_max_blocks"><code>--log_container_max_blocks</code></a></h4>
 <div class="paragraph">
 <p>Maximum number of blocks (soft) of a log container. Use 0 for no limit. Use -1 for no limit except in the case of a kernel bug with hole punching on ext4 (see KUDU-1508 for details).</p>
@@ -2534,7 +2592,7 @@
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>15000</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>3000</code></p></td>
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
@@ -2634,6 +2692,35 @@
 </div>
 </div>
 <div class="sect3">
+<h4 id="kudu-master_trusted_subnets"><a class="link" href="#kudu-master_trusted_subnets"><code>--trusted_subnets</code></a></h4>
+<div class="paragraph">
+<p>A trusted subnet whitelist. If set explicitly, all unauthenticated or unencrypted connections are prohibited except the ones from the specified address blocks. Otherwise, private network (127.0.0.0/8, etc.) and local subnets of all local network interfaces will be used. Set it to '0.0.0.0/0' to allow unauthenticated/unencrypted connections from all remote IP addresses. However, if network access is not otherwise restricted by a firewall, malicious users may be able to gain unauthorized access.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>127.0.0.0/8,10.0.0.0/8,172.16.0.0/12,192.168.0.0/16,169.254.0.0/16</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
 <h4 id="kudu-master_rpc_max_message_size"><a class="link" href="#kudu-master_rpc_max_message_size"><code>--rpc_max_message_size</code></a></h4>
 <div class="paragraph">
 <p>The maximum size of a message that any RPC that the server will accept. Must be at least 1MB.</p>
@@ -2779,6 +2866,35 @@
 </div>
 </div>
 <div class="sect3">
+<h4 id="kudu-master_rpc_advertised_addresses"><a class="link" href="#kudu-master_rpc_advertised_addresses"><code>--rpc_advertised_addresses</code></a></h4>
+<div class="paragraph">
+<p>Comma-separated list of addresses to advertise externally for RPC connections. Ephemeral ports (i.e. port 0) are not allowed. This should be configured when the locally bound RPC addresses specified in --rpc_bind_addresses are not externally resolvable, for example, if Kudu is deployed in a container.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
 <h4 id="kudu-master_rpc_num_acceptors_per_address"><a class="link" href="#kudu-master_rpc_num_acceptors_per_address"><code>--rpc_num_acceptors_per_address</code></a></h4>
 <div class="paragraph">
 <p>Number of RPC acceptor threads for each bound address</p>
@@ -3069,6 +3185,35 @@
 </div>
 </div>
 <div class="sect3">
+<h4 id="kudu-master_webserver_advertised_addresses"><a class="link" href="#kudu-master_webserver_advertised_addresses"><code>--webserver_advertised_addresses</code></a></h4>
+<div class="paragraph">
+<p>Comma-separated list of addresses to advertise externally for HTTP(S) connections. Ephemeral ports (i.e. port 0) are not allowed. This should be configured when the locally bound webserver address specified in --webserver_interface and --webserver_port are not externally resolvable, for example, if Kudu is deployed in a container.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
 <h4 id="kudu-master_webserver_authentication_domain"><a class="link" href="#kudu-master_webserver_authentication_domain"><code>--webserver_authentication_domain</code></a></h4>
 <div class="paragraph">
 <p>Domain used for debug webserver authentication</p>
@@ -3825,7 +3970,7 @@
 <div class="sect3">
 <h4 id="kudu-master_redact"><a class="link" href="#kudu-master_redact"><code>--redact</code></a></h4>
 <div class="paragraph">
-<p>Comma-separated list of redactions. Supported redactions are 'flag', 'log' and 'all'. If 'flag' is specified, configuration flags which may include sensitive data will be redacted whenever server configuration is emitted. If 'log' is specified, row data will be redacted from log and error messages. If 'all' is specified, all of above will be redacted.</p>
+<p>Comma-separated list of redactions. Supported options are 'flag', 'log', 'all', and 'none'. If 'flag' is specified, configuration flags which may include sensitive data will be redacted whenever server configuration is emitted. If 'log' is specified, row data will be redacted from log and error messages. If 'all' is specified, all of above will be redacted. If 'none' is specified, no redaction will occur.</p>
 </div>
 <table class="tableblock frame-all grid-all" style="width: 50%;">
 <colgroup>
@@ -3881,93 +4026,6 @@
 </div>
 </div>
 <div class="sect3">
-<h4 id="kudu-master_memory_limit_soft_percentage"><a class="link" href="#kudu-master_memory_limit_soft_percentage"><code>--memory_limit_soft_percentage</code></a></h4>
-<div class="paragraph">
-<p>Percentage of the hard memory limit that this daemon may consume before memory throttling of writes begins. The greater the excess, the higher the chance of throttling. In general, a lower soft limit leads to smoother write latencies but decreased throughput, and vice versa for a higher soft limit.</p>
-</div>
-<table class="tableblock frame-all grid-all" style="width: 50%;">
-<colgroup>
-<col style="width: 25%;">
-<col style="width: 75%;">
-</colgroup>
-<tbody>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>60</code></p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
-</tr>
-</tbody>
-</table>
-<div class="paragraph">
-<p>&#160;</p>
-</div>
-</div>
-<div class="sect3">
-<h4 id="kudu-master_memory_limit_warn_threshold_percentage"><a class="link" href="#kudu-master_memory_limit_warn_threshold_percentage"><code>--memory_limit_warn_threshold_percentage</code></a></h4>
-<div class="paragraph">
-<p>Percentage of the hard memory limit that this daemon may consume before WARNING level messages are periodically logged.</p>
-</div>
-<table class="tableblock frame-all grid-all" style="width: 50%;">
-<colgroup>
-<col style="width: 25%;">
-<col style="width: 75%;">
-</colgroup>
-<tbody>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>98</code></p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
-</tr>
-</tbody>
-</table>
-<div class="paragraph">
-<p>&#160;</p>
-</div>
-</div>
-<div class="sect3">
-<h4 id="kudu-master_tcmalloc_max_free_bytes_percentage"><a class="link" href="#kudu-master_tcmalloc_max_free_bytes_percentage"><code>--tcmalloc_max_free_bytes_percentage</code></a></h4>
-<div class="paragraph">
-<p>Maximum percentage of the RSS that tcmalloc is allowed to use for reserved but unallocated memory.</p>
-</div>
-<table class="tableblock frame-all grid-all" style="width: 50%;">
-<colgroup>
-<col style="width: 25%;">
-<col style="width: 75%;">
-</colgroup>
-<tbody>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
-</tr>
-</tbody>
-</table>
-<div class="paragraph">
-<p>&#160;</p>
-</div>
-</div>
-<div class="sect3">
 <h4 id="kudu-master_metrics_retirement_age_ms"><a class="link" href="#kudu-master_metrics_retirement_age_ms"><code>--metrics_retirement_age_ms</code></a></h4>
 <div class="paragraph">
 <p>The minimum number of milliseconds a metric will be kept for after it is no longer active. (Advanced option)</p>
@@ -4113,6 +4171,122 @@
 </div>
 </div>
 <div class="sect3">
+<h4 id="kudu-master_memory_limit_soft_percentage"><a class="link" href="#kudu-master_memory_limit_soft_percentage"><code>--memory_limit_soft_percentage</code></a></h4>
+<div class="paragraph">
+<p>Percentage of the hard memory limit that this daemon may consume before memory throttling of writes begins. The greater the excess, the higher the chance of throttling. In general, a lower soft limit leads to smoother write latencies but decreased throughput, and vice versa for a higher soft limit.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>80</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_memory_limit_warn_threshold_percentage"><a class="link" href="#kudu-master_memory_limit_warn_threshold_percentage"><code>--memory_limit_warn_threshold_percentage</code></a></h4>
+<div class="paragraph">
+<p>Percentage of the hard memory limit that this daemon may consume before WARNING level messages are periodically logged.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>98</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_memory_pressure_percentage"><a class="link" href="#kudu-master_memory_pressure_percentage"><code>--memory_pressure_percentage</code></a></h4>
+<div class="paragraph">
+<p>Percentage of the hard memory limit that this daemon may consume before flushing of in-memory data becomes prioritized.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>60</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_tcmalloc_max_free_bytes_percentage"><a class="link" href="#kudu-master_tcmalloc_max_free_bytes_percentage"><code>--tcmalloc_max_free_bytes_percentage</code></a></h4>
+<div class="paragraph">
+<p>Maximum percentage of the RSS that tcmalloc is allowed to use for reserved but unallocated memory.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
 <h4 id="kudu-master_drop_log_memory"><a class="link" href="#kudu-master_drop_log_memory"><code>--drop_log_memory</code></a></h4>
 <div class="paragraph">
 <p>Drop in-memory buffers of log contents. Logs can grow very quickly and they are rarely read before they need to be evicted from memory. Instead, drop them from memory as soon as they are flushed to disk.</p>
@@ -4216,7 +4390,7 @@
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>30</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>5</code></p></td>
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
@@ -4227,6 +4401,35 @@
 <div class="paragraph">
 <p>&#160;</p>
 </div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_logfile_mode"><a class="link" href="#kudu-master_logfile_mode"><code>--logfile_mode</code></a></h4>
+<div class="paragraph">
+<p>Log file mode/permissions.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>436</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
 <hr>
 </div>
 </div>
@@ -5504,6 +5707,35 @@
 being changed or removed without notice.</p>
 </div>
 <div class="sect3">
+<h4 id="kudu-tserver_cfile_verify_checksums"><a class="link" href="#kudu-tserver_cfile_verify_checksums"><code>--cfile_verify_checksums</code></a></h4>
+<div class="paragraph">
+<p>Verify the checksum for each block on read if one exists</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
 <h4 id="kudu-tserver_cfile_default_block_size"><a class="link" href="#kudu-tserver_cfile_default_block_size"><code>--cfile_default_block_size</code></a></h4>
 <div class="paragraph">
 <p>The default block size to use in cfiles</p>
@@ -5562,9 +5794,9 @@
 </div>
 </div>
 <div class="sect3">
-<h4 id="kudu-tserver_fault_crash_after_leader_request_fraction"><a class="link" href="#kudu-tserver_fault_crash_after_leader_request_fraction"><code>--fault_crash_after_leader_request_fraction</code></a></h4>
+<h4 id="kudu-tserver_cfile_write_checksums"><a class="link" href="#kudu-tserver_cfile_write_checksums"><code>--cfile_write_checksums</code></a></h4>
 <div class="paragraph">
-<p>Fraction of the time when the leader will crash on getting a response for an UpdateConsensus RPC. (For testing only!)</p>
+<p>Write CRC32 checksums for each block</p>
 </div>
 <table class="tableblock frame-all grid-all" style="width: 50%;">
 <colgroup>
@@ -5574,15 +5806,15 @@
 <tbody>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
-<td class="tableblock halign-left valign-top"></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving</p></td>
 </tr>
 </tbody>
 </table>
@@ -5591,9 +5823,9 @@
 </div>
 </div>
 <div class="sect3">
-<h4 id="kudu-tserver_raft_get_node_instance_timeout_ms"><a class="link" href="#kudu-tserver_raft_get_node_instance_timeout_ms"><code>--raft_get_node_instance_timeout_ms</code></a></h4>
+<h4 id="kudu-tserver_consensus_rpc_timeout_ms"><a class="link" href="#kudu-tserver_consensus_rpc_timeout_ms"><code>--consensus_rpc_timeout_ms</code></a></h4>
 <div class="paragraph">
-<p>Timeout for retrieving node instance data over RPC.</p>
+<p>Timeout used for all consensus internal RPC communications.</p>
 </div>
 <table class="tableblock frame-all grid-all" style="width: 50%;">
 <colgroup>
@@ -5607,11 +5839,11 @@
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>30000</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1000</code></p></td>
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
-<td class="tableblock halign-left valign-top"></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
 </tr>
 </tbody>
 </table>
@@ -5752,7 +5984,7 @@
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>2</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1</code></p></td>
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
@@ -5883,7 +6115,7 @@
 <div class="sect3">
 <h4 id="kudu-tserver_log_segment_size_mb"><a class="link" href="#kudu-tserver_log_segment_size_mb"><code>--log_segment_size_mb</code></a></h4>
 <div class="paragraph">
-<p>The default segment size for log roll-overs, in MB</p>
+<p>The default size for log segments, in MB</p>
 </div>
 <table class="tableblock frame-all grid-all" style="width: 50%;">
 <colgroup>
@@ -5897,7 +6129,7 @@
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>64</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>8</code></p></td>
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
@@ -6028,7 +6260,7 @@
 <div class="sect3">
 <h4 id="kudu-tserver_block_manager_max_open_files"><a class="link" href="#kudu-tserver_block_manager_max_open_files"><code>--block_manager_max_open_files</code></a></h4>
 <div class="paragraph">
-<p>Maximum number of open file descriptors to be used for data blocks. If 0, there is no limit. If -1, Kudu will use 40% of its resource limit as per getrlimit(). This is a soft limit.</p>
+<p>Maximum number of open file descriptors to be used for data blocks. If -1, Kudu will use 40% of its resource limit as per getrlimit(). This is a soft limit. It is an error to use a value of 0.</p>
 </div>
 <table class="tableblock frame-all grid-all" style="width: 50%;">
 <colgroup>
@@ -6142,6 +6374,35 @@
 </div>
 </div>
 <div class="sect3">
+<h4 id="kudu-tserver_log_container_excess_space_before_cleanup_fraction"><a class="link" href="#kudu-tserver_log_container_excess_space_before_cleanup_fraction"><code>--log_container_excess_space_before_cleanup_fraction</code></a></h4>
+<div class="paragraph">
+<p>Additional fraction of a log container&#8217;s calculated size that must be consumed on disk before the container is considered to be inconsistent and subject to excess space cleanup at block manager startup.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0.10000000000000001</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
 <h4 id="kudu-tserver_log_container_max_blocks"><a class="link" href="#kudu-tserver_log_container_max_blocks"><code>--log_container_max_blocks</code></a></h4>
 <div class="paragraph">
 <p>Maximum number of blocks (soft) of a log container. Use 0 for no limit. Use -1 for no limit except in the case of a kernel bug with hole punching on ext4 (see KUDU-1508 for details).</p>
@@ -6419,7 +6680,7 @@
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>15000</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>3000</code></p></td>
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
@@ -6519,6 +6780,35 @@
 </div>
 </div>
 <div class="sect3">
+<h4 id="kudu-tserver_trusted_subnets"><a class="link" href="#kudu-tserver_trusted_subnets"><code>--trusted_subnets</code></a></h4>
+<div class="paragraph">
+<p>A trusted subnet whitelist. If set explicitly, all unauthenticated or unencrypted connections are prohibited except the ones from the specified address blocks. Otherwise, private network (127.0.0.0/8, etc.) and local subnets of all local network interfaces will be used. Set it to '0.0.0.0/0' to allow unauthenticated/unencrypted connections from all remote IP addresses. However, if network access is not otherwise restricted by a firewall, malicious users may be able to gain unauthorized access.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>127.0.0.0/8,10.0.0.0/8,172.16.0.0/12,192.168.0.0/16,169.254.0.0/16</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
 <h4 id="kudu-tserver_rpc_max_message_size"><a class="link" href="#kudu-tserver_rpc_max_message_size"><code>--rpc_max_message_size</code></a></h4>
 <div class="paragraph">
 <p>The maximum size of a message that any RPC that the server will accept. Must be at least 1MB.</p>
@@ -6664,6 +6954,35 @@
 </div>
 </div>
 <div class="sect3">
+<h4 id="kudu-tserver_rpc_advertised_addresses"><a class="link" href="#kudu-tserver_rpc_advertised_addresses"><code>--rpc_advertised_addresses</code></a></h4>
+<div class="paragraph">
+<p>Comma-separated list of addresses to advertise externally for RPC connections. Ephemeral ports (i.e. port 0) are not allowed. This should be configured when the locally bound RPC addresses specified in --rpc_bind_addresses are not externally resolvable, for example, if Kudu is deployed in a container.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
 <h4 id="kudu-tserver_rpc_num_acceptors_per_address"><a class="link" href="#kudu-tserver_rpc_num_acceptors_per_address"><code>--rpc_num_acceptors_per_address</code></a></h4>
 <div class="paragraph">
 <p>Number of RPC acceptor threads for each bound address</p>
@@ -6954,6 +7273,35 @@
 </div>
 </div>
 <div class="sect3">
+<h4 id="kudu-tserver_webserver_advertised_addresses"><a class="link" href="#kudu-tserver_webserver_advertised_addresses"><code>--webserver_advertised_addresses</code></a></h4>
+<div class="paragraph">
+<p>Comma-separated list of addresses to advertise externally for HTTP(S) connections. Ephemeral ports (i.e. port 0) are not allowed. This should be configured when the locally bound webserver address specified in --webserver_interface and --webserver_port are not externally resolvable, for example, if Kudu is deployed in a container.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
 <h4 id="kudu-tserver_webserver_authentication_domain"><a class="link" href="#kudu-tserver_webserver_authentication_domain"><code>--webserver_authentication_domain</code></a></h4>
 <div class="paragraph">
 <p>Domain used for debug webserver authentication</p>
@@ -7710,7 +8058,7 @@
 <div class="sect3">
 <h4 id="kudu-tserver_redact"><a class="link" href="#kudu-tserver_redact"><code>--redact</code></a></h4>
 <div class="paragraph">
-<p>Comma-separated list of redactions. Supported redactions are 'flag', 'log' and 'all'. If 'flag' is specified, configuration flags which may include sensitive data will be redacted whenever server configuration is emitted. If 'log' is specified, row data will be redacted from log and error messages. If 'all' is specified, all of above will be redacted.</p>
+<p>Comma-separated list of redactions. Supported options are 'flag', 'log', 'all', and 'none'. If 'flag' is specified, configuration flags which may include sensitive data will be redacted whenever server configuration is emitted. If 'log' is specified, row data will be redacted from log and error messages. If 'all' is specified, all of above will be redacted. If 'none' is specified, no redaction will occur.</p>
 </div>
 <table class="tableblock frame-all grid-all" style="width: 50%;">
 <colgroup>
@@ -7766,93 +8114,6 @@
 </div>
 </div>
 <div class="sect3">
-<h4 id="kudu-tserver_memory_limit_soft_percentage"><a class="link" href="#kudu-tserver_memory_limit_soft_percentage"><code>--memory_limit_soft_percentage</code></a></h4>
-<div class="paragraph">
-<p>Percentage of the hard memory limit that this daemon may consume before memory throttling of writes begins. The greater the excess, the higher the chance of throttling. In general, a lower soft limit leads to smoother write latencies but decreased throughput, and vice versa for a higher soft limit.</p>
-</div>
-<table class="tableblock frame-all grid-all" style="width: 50%;">
-<colgroup>
-<col style="width: 25%;">
-<col style="width: 75%;">
-</colgroup>
-<tbody>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>60</code></p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
-</tr>
-</tbody>
-</table>
-<div class="paragraph">
-<p>&#160;</p>
-</div>
-</div>
-<div class="sect3">
-<h4 id="kudu-tserver_memory_limit_warn_threshold_percentage"><a class="link" href="#kudu-tserver_memory_limit_warn_threshold_percentage"><code>--memory_limit_warn_threshold_percentage</code></a></h4>
-<div class="paragraph">
-<p>Percentage of the hard memory limit that this daemon may consume before WARNING level messages are periodically logged.</p>
-</div>
-<table class="tableblock frame-all grid-all" style="width: 50%;">
-<colgroup>
-<col style="width: 25%;">
-<col style="width: 75%;">
-</colgroup>
-<tbody>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>98</code></p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
-</tr>
-</tbody>
-</table>
-<div class="paragraph">
-<p>&#160;</p>
-</div>
-</div>
-<div class="sect3">
-<h4 id="kudu-tserver_tcmalloc_max_free_bytes_percentage"><a class="link" href="#kudu-tserver_tcmalloc_max_free_bytes_percentage"><code>--tcmalloc_max_free_bytes_percentage</code></a></h4>
-<div class="paragraph">
-<p>Maximum percentage of the RSS that tcmalloc is allowed to use for reserved but unallocated memory.</p>
-</div>
-<table class="tableblock frame-all grid-all" style="width: 50%;">
-<colgroup>
-<col style="width: 25%;">
-<col style="width: 75%;">
-</colgroup>
-<tbody>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
-</tr>
-</tbody>
-</table>
-<div class="paragraph">
-<p>&#160;</p>
-</div>
-</div>
-<div class="sect3">
 <h4 id="kudu-tserver_metrics_retirement_age_ms"><a class="link" href="#kudu-tserver_metrics_retirement_age_ms"><code>--metrics_retirement_age_ms</code></a></h4>
 <div class="paragraph">
 <p>The minimum number of milliseconds a metric will be kept for after it is no longer active. (Advanced option)</p>
@@ -7998,6 +8259,122 @@
 </div>
 </div>
 <div class="sect3">
+<h4 id="kudu-tserver_memory_limit_soft_percentage"><a class="link" href="#kudu-tserver_memory_limit_soft_percentage"><code>--memory_limit_soft_percentage</code></a></h4>
+<div class="paragraph">
+<p>Percentage of the hard memory limit that this daemon may consume before memory throttling of writes begins. The greater the excess, the higher the chance of throttling. In general, a lower soft limit leads to smoother write latencies but decreased throughput, and vice versa for a higher soft limit.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>80</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_memory_limit_warn_threshold_percentage"><a class="link" href="#kudu-tserver_memory_limit_warn_threshold_percentage"><code>--memory_limit_warn_threshold_percentage</code></a></h4>
+<div class="paragraph">
+<p>Percentage of the hard memory limit that this daemon may consume before WARNING level messages are periodically logged.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>98</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_memory_pressure_percentage"><a class="link" href="#kudu-tserver_memory_pressure_percentage"><code>--memory_pressure_percentage</code></a></h4>
+<div class="paragraph">
+<p>Percentage of the hard memory limit that this daemon may consume before flushing of in-memory data becomes prioritized.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>60</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_tcmalloc_max_free_bytes_percentage"><a class="link" href="#kudu-tserver_tcmalloc_max_free_bytes_percentage"><code>--tcmalloc_max_free_bytes_percentage</code></a></h4>
+<div class="paragraph">
+<p>Maximum percentage of the RSS that tcmalloc is allowed to use for reserved but unallocated memory.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
 <h4 id="kudu-tserver_drop_log_memory"><a class="link" href="#kudu-tserver_drop_log_memory"><code>--drop_log_memory</code></a></h4>
 <div class="paragraph">
 <p>Drop in-memory buffers of log contents. Logs can grow very quickly and they are rarely read before they need to be evicted from memory. Instead, drop them from memory as soon as they are flushed to disk.</p>
@@ -8101,7 +8478,7 @@
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>30</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>5</code></p></td>
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
@@ -8112,6 +8489,35 @@
 <div class="paragraph">
 <p>&#160;</p>
 </div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_logfile_mode"><a class="link" href="#kudu-tserver_logfile_mode"><code>--logfile_mode</code></a></h4>
+<div class="paragraph">
+<p>Log file mode/permissions.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>436</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
 <hr>
 </div>
 </div>
@@ -8375,35 +8781,9 @@
 </table>
 </div>
 <div class="sect3">
-<h4 id="kudu-master_fault_crash_after_leader_request_fraction"><a class="link" href="#kudu-master_fault_crash_after_leader_request_fraction"><code>--fault_crash_after_leader_request_fraction</code></a></h4>
+<h4 id="kudu-master_consensus_rpc_timeout_ms"><a class="link" href="#kudu-master_consensus_rpc_timeout_ms"><code>--consensus_rpc_timeout_ms</code></a></h4>
 <div class="paragraph">
-<p>Fraction of the time when the leader will crash on getting a response for an UpdateConsensus RPC. (For testing only!)</p>
-</div>
-<table class="tableblock frame-all grid-all" style="width: 50%;">
-<colgroup>
-<col style="width: 25%;">
-<col style="width: 75%;">
-</colgroup>
-<tbody>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
-<td class="tableblock halign-left valign-top"></td>
-</tr>
-</tbody>
-</table>
-</div>
-<div class="sect3">
-<h4 id="kudu-master_raft_get_node_instance_timeout_ms"><a class="link" href="#kudu-master_raft_get_node_instance_timeout_ms"><code>--raft_get_node_instance_timeout_ms</code></a></h4>
-<div class="paragraph">
-<p>Timeout for retrieving node instance data over RPC.</p>
+<p>Timeout used for all consensus internal RPC communications.</p>
 </div>
 <table class="tableblock frame-all grid-all" style="width: 50%;">
 <colgroup>
@@ -8417,11 +8797,11 @@
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>30000</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1000</code></p></td>
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
-<td class="tableblock halign-left valign-top"></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
 </tr>
 </tbody>
 </table>
@@ -8547,7 +8927,7 @@
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>80</code></p></td>
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
@@ -8573,7 +8953,7 @@
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>2</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1</code></p></td>
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
@@ -8689,7 +9069,7 @@
 <div class="sect3">
 <h4 id="kudu-master_log_segment_size_mb"><a class="link" href="#kudu-master_log_segment_size_mb"><code>--log_segment_size_mb</code></a></h4>
 <div class="paragraph">
-<p>The default segment size for log roll-overs, in MB</p>
+<p>The default size for log segments, in MB</p>
 </div>
 <table class="tableblock frame-all grid-all" style="width: 50%;">
 <colgroup>
@@ -8703,7 +9083,7 @@
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>64</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>8</code></p></td>
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
@@ -9025,6 +9405,58 @@
 </table>
 </div>
 <div class="sect3">
+<h4 id="kudu-master_log_container_excess_space_before_cleanup_fraction"><a class="link" href="#kudu-master_log_container_excess_space_before_cleanup_fraction"><code>--log_container_excess_space_before_cleanup_fraction</code></a></h4>
+<div class="paragraph">
+<p>Additional fraction of a log container&#8217;s calculated size that must be consumed on disk before the container is considered to be inconsistent and subject to excess space cleanup at block manager startup.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0.10000000000000001</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_log_container_live_metadata_before_compact_ratio"><a class="link" href="#kudu-master_log_container_live_metadata_before_compact_ratio"><code>--log_container_live_metadata_before_compact_ratio</code></a></h4>
+<div class="paragraph">
+<p>Desired ratio of live block metadata in log containers. If a container&#8217;s live to total block ratio dips below this value, the container&#8217;s metadata file will be compacted at startup.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0.5</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
 <h4 id="kudu-master_log_container_max_blocks"><a class="link" href="#kudu-master_log_container_max_blocks"><code>--log_container_max_blocks</code></a></h4>
 <div class="paragraph">
 <p>Maximum number of blocks (soft) of a log container. Use 0 for no limit. Use -1 for no limit except in the case of a kernel bug with hole punching on ext4 (see KUDU-1508 for details).</p>
@@ -9717,7 +10149,7 @@
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>15000</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>3000</code></p></td>
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
@@ -9987,6 +10419,32 @@
 </table>
 </div>
 <div class="sect3">
+<h4 id="kudu-master_rpc_advertised_addresses"><a class="link" href="#kudu-master_rpc_advertised_addresses"><code>--rpc_advertised_addresses</code></a></h4>
+<div class="paragraph">
+<p>Comma-separated list of addresses to advertise externally for RPC connections. Ephemeral ports (i.e. port 0) are not allowed. This should be configured when the locally bound RPC addresses specified in --rpc_bind_addresses are not externally resolvable, for example, if Kudu is deployed in a container.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
 <h4 id="kudu-master_rpc_num_acceptors_per_address"><a class="link" href="#kudu-master_rpc_num_acceptors_per_address"><code>--rpc_num_acceptors_per_address</code></a></h4>
 <div class="paragraph">
 <p>Number of RPC acceptor threads for each bound address</p>
@@ -10247,6 +10705,32 @@
 </table>
 </div>
 <div class="sect3">
+<h4 id="kudu-master_webserver_advertised_addresses"><a class="link" href="#kudu-master_webserver_advertised_addresses"><code>--webserver_advertised_addresses</code></a></h4>
+<div class="paragraph">
+<p>Comma-separated list of addresses to advertise externally for HTTP(S) connections. Ephemeral ports (i.e. port 0) are not allowed. This should be configured when the locally bound webserver address specified in --webserver_interface and --webserver_port are not externally resolvable, for example, if Kudu is deployed in a container.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
 <h4 id="kudu-master_webserver_authentication_domain"><a class="link" href="#kudu-master_webserver_authentication_domain"><code>--webserver_authentication_domain</code></a></h4>
 <div class="paragraph">
 <p>Domain used for debug webserver authentication</p>
@@ -11313,84 +11797,6 @@
 </table>
 </div>
 <div class="sect3">
-<h4 id="kudu-master_memory_limit_soft_percentage"><a class="link" href="#kudu-master_memory_limit_soft_percentage"><code>--memory_limit_soft_percentage</code></a></h4>
-<div class="paragraph">
-<p>Percentage of the hard memory limit that this daemon may consume before memory throttling of writes begins. The greater the excess, the higher the chance of throttling. In general, a lower soft limit leads to smoother write latencies but decreased throughput, and vice versa for a higher soft limit.</p>
-</div>
-<table class="tableblock frame-all grid-all" style="width: 50%;">
-<colgroup>
-<col style="width: 25%;">
-<col style="width: 75%;">
-</colgroup>
-<tbody>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>60</code></p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
-</tr>
-</tbody>
-</table>
-</div>
-<div class="sect3">
-<h4 id="kudu-master_memory_limit_warn_threshold_percentage"><a class="link" href="#kudu-master_memory_limit_warn_threshold_percentage"><code>--memory_limit_warn_threshold_percentage</code></a></h4>
-<div class="paragraph">
-<p>Percentage of the hard memory limit that this daemon may consume before WARNING level messages are periodically logged.</p>
-</div>
-<table class="tableblock frame-all grid-all" style="width: 50%;">
-<colgroup>
-<col style="width: 25%;">
-<col style="width: 75%;">
-</colgroup>
-<tbody>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>98</code></p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
-</tr>
-</tbody>
-</table>
-</div>
-<div class="sect3">
-<h4 id="kudu-master_tcmalloc_max_free_bytes_percentage"><a class="link" href="#kudu-master_tcmalloc_max_free_bytes_percentage"><code>--tcmalloc_max_free_bytes_percentage</code></a></h4>
-<div class="paragraph">
-<p>Maximum percentage of the RSS that tcmalloc is allowed to use for reserved but unallocated memory.</p>
-</div>
-<table class="tableblock frame-all grid-all" style="width: 50%;">
-<colgroup>
-<col style="width: 25%;">
-<col style="width: 75%;">
-</colgroup>
-<tbody>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
-</tr>
-</tbody>
-</table>
-</div>
-<div class="sect3">
 <h4 id="kudu-master_metrics_retirement_age_ms"><a class="link" href="#kudu-master_metrics_retirement_age_ms"><code>--metrics_retirement_age_ms</code></a></h4>
 <div class="paragraph">
 <p>The minimum number of milliseconds a metric will be kept for after it is no longer active. (Advanced option)</p>
@@ -11495,6 +11901,110 @@
 </table>
 </div>
 <div class="sect3">
+<h4 id="kudu-master_memory_limit_soft_percentage"><a class="link" href="#kudu-master_memory_limit_soft_percentage"><code>--memory_limit_soft_percentage</code></a></h4>
+<div class="paragraph">
+<p>Percentage of the hard memory limit that this daemon may consume before memory throttling of writes begins. The greater the excess, the higher the chance of throttling. In general, a lower soft limit leads to smoother write latencies but decreased throughput, and vice versa for a higher soft limit.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>80</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_memory_limit_warn_threshold_percentage"><a class="link" href="#kudu-master_memory_limit_warn_threshold_percentage"><code>--memory_limit_warn_threshold_percentage</code></a></h4>
+<div class="paragraph">
+<p>Percentage of the hard memory limit that this daemon may consume before WARNING level messages are periodically logged.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>98</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_memory_pressure_percentage"><a class="link" href="#kudu-master_memory_pressure_percentage"><code>--memory_pressure_percentage</code></a></h4>
+<div class="paragraph">
+<p>Percentage of the hard memory limit that this daemon may consume before flushing of in-memory data becomes prioritized.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>60</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_tcmalloc_max_free_bytes_percentage"><a class="link" href="#kudu-master_tcmalloc_max_free_bytes_percentage"><code>--tcmalloc_max_free_bytes_percentage</code></a></h4>
+<div class="paragraph">
+<p>Maximum percentage of the RSS that tcmalloc is allowed to use for reserved but unallocated memory.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
 <h4 id="kudu-master_drop_log_memory"><a class="link" href="#kudu-master_drop_log_memory"><code>--drop_log_memory</code></a></h4>
 <div class="paragraph">
 <p>Drop in-memory buffers of log contents. Logs can grow very quickly and they are rarely read before they need to be evicted from memory. Instead, drop them from memory as soon as they are flushed to disk.</p>
@@ -11589,7 +12099,7 @@
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>30</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>5</code></p></td>
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
@@ -11597,6 +12107,32 @@
 </tr>
 </tbody>
 </table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_logfile_mode"><a class="link" href="#kudu-master_logfile_mode"><code>--logfile_mode</code></a></h4>
+<div class="paragraph">
+<p>Log file mode/permissions.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>436</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"></td>
+</tr>
+</tbody>
+</table>
 <hr>
 </div>
 </div>
@@ -11842,35 +12378,9 @@
 </table>
 </div>
 <div class="sect3">
-<h4 id="kudu-tserver_fault_crash_after_leader_request_fraction"><a class="link" href="#kudu-tserver_fault_crash_after_leader_request_fraction"><code>--fault_crash_after_leader_request_fraction</code></a></h4>
+<h4 id="kudu-tserver_consensus_rpc_timeout_ms"><a class="link" href="#kudu-tserver_consensus_rpc_timeout_ms"><code>--consensus_rpc_timeout_ms</code></a></h4>
 <div class="paragraph">
-<p>Fraction of the time when the leader will crash on getting a response for an UpdateConsensus RPC. (For testing only!)</p>
-</div>
-<table class="tableblock frame-all grid-all" style="width: 50%;">
-<colgroup>
-<col style="width: 25%;">
-<col style="width: 75%;">
-</colgroup>
-<tbody>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
-<td class="tableblock halign-left valign-top"></td>
-</tr>
-</tbody>
-</table>
-</div>
-<div class="sect3">
-<h4 id="kudu-tserver_raft_get_node_instance_timeout_ms"><a class="link" href="#kudu-tserver_raft_get_node_instance_timeout_ms"><code>--raft_get_node_instance_timeout_ms</code></a></h4>
-<div class="paragraph">
-<p>Timeout for retrieving node instance data over RPC.</p>
+<p>Timeout used for all consensus internal RPC communications.</p>
 </div>
 <table class="tableblock frame-all grid-all" style="width: 50%;">
 <colgroup>
@@ -11884,11 +12394,11 @@
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>30000</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1000</code></p></td>
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
-<td class="tableblock halign-left valign-top"></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
 </tr>
 </tbody>
 </table>
@@ -12014,7 +12524,7 @@
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>80</code></p></td>
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
@@ -12040,7 +12550,7 @@
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>2</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1</code></p></td>
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
@@ -12156,7 +12666,7 @@
 <div class="sect3">
 <h4 id="kudu-tserver_log_segment_size_mb"><a class="link" href="#kudu-tserver_log_segment_size_mb"><code>--log_segment_size_mb</code></a></h4>
 <div class="paragraph">
-<p>The default segment size for log roll-overs, in MB</p>
+<p>The default size for log segments, in MB</p>
 </div>
 <table class="tableblock frame-all grid-all" style="width: 50%;">
 <colgroup>
@@ -12170,7 +12680,7 @@
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>64</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>8</code></p></td>
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
@@ -12492,6 +13002,58 @@
 </table>
 </div>
 <div class="sect3">
+<h4 id="kudu-tserver_log_container_excess_space_before_cleanup_fraction"><a class="link" href="#kudu-tserver_log_container_excess_space_before_cleanup_fraction"><code>--log_container_excess_space_before_cleanup_fraction</code></a></h4>
+<div class="paragraph">
+<p>Additional fraction of a log container&#8217;s calculated size that must be consumed on disk before the container is considered to be inconsistent and subject to excess space cleanup at block manager startup.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0.10000000000000001</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_log_container_live_metadata_before_compact_ratio"><a class="link" href="#kudu-tserver_log_container_live_metadata_before_compact_ratio"><code>--log_container_live_metadata_before_compact_ratio</code></a></h4>
+<div class="paragraph">
+<p>Desired ratio of live block metadata in log containers. If a container&#8217;s live to total block ratio dips below this value, the container&#8217;s metadata file will be compacted at startup.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0.5</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
 <h4 id="kudu-tserver_log_container_max_blocks"><a class="link" href="#kudu-tserver_log_container_max_blocks"><code>--log_container_max_blocks</code></a></h4>
 <div class="paragraph">
 <p>Maximum number of blocks (soft) of a log container. Use 0 for no limit. Use -1 for no limit except in the case of a kernel bug with hole punching on ext4 (see KUDU-1508 for details).</p>
@@ -12794,7 +13356,7 @@
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>15000</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>3000</code></p></td>
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
@@ -13038,6 +13600,32 @@
 </table>
 </div>
 <div class="sect3">
+<h4 id="kudu-tserver_rpc_advertised_addresses"><a class="link" href="#kudu-tserver_rpc_advertised_addresses"><code>--rpc_advertised_addresses</code></a></h4>
+<div class="paragraph">
+<p>Comma-separated list of addresses to advertise externally for RPC connections. Ephemeral ports (i.e. port 0) are not allowed. This should be configured when the locally bound RPC addresses specified in --rpc_bind_addresses are not externally resolvable, for example, if Kudu is deployed in a container.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
 <h4 id="kudu-tserver_rpc_num_acceptors_per_address"><a class="link" href="#kudu-tserver_rpc_num_acceptors_per_address"><code>--rpc_num_acceptors_per_address</code></a></h4>
 <div class="paragraph">
 <p>Number of RPC acceptor threads for each bound address</p>
@@ -13298,6 +13886,32 @@
 </table>
 </div>
 <div class="sect3">
+<h4 id="kudu-tserver_webserver_advertised_addresses"><a class="link" href="#kudu-tserver_webserver_advertised_addresses"><code>--webserver_advertised_addresses</code></a></h4>
+<div class="paragraph">
+<p>Comma-separated list of addresses to advertise externally for HTTP(S) connections. Ephemeral ports (i.e. port 0) are not allowed. This should be configured when the locally bound webserver address specified in --webserver_interface and --webserver_port are not externally resolvable, for example, if Kudu is deployed in a container.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
 <h4 id="kudu-tserver_webserver_authentication_domain"><a class="link" href="#kudu-tserver_webserver_authentication_domain"><code>--webserver_authentication_domain</code></a></h4>
 <div class="paragraph">
 <p>Domain used for debug webserver authentication</p>
@@ -14364,84 +14978,6 @@
 </table>
 </div>
 <div class="sect3">
-<h4 id="kudu-tserver_memory_limit_soft_percentage"><a class="link" href="#kudu-tserver_memory_limit_soft_percentage"><code>--memory_limit_soft_percentage</code></a></h4>
-<div class="paragraph">
-<p>Percentage of the hard memory limit that this daemon may consume before memory throttling of writes begins. The greater the excess, the higher the chance of throttling. In general, a lower soft limit leads to smoother write latencies but decreased throughput, and vice versa for a higher soft limit.</p>
-</div>
-<table class="tableblock frame-all grid-all" style="width: 50%;">
-<colgroup>
-<col style="width: 25%;">
-<col style="width: 75%;">
-</colgroup>
-<tbody>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>60</code></p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
-</tr>
-</tbody>
-</table>
-</div>
-<div class="sect3">
-<h4 id="kudu-tserver_memory_limit_warn_threshold_percentage"><a class="link" href="#kudu-tserver_memory_limit_warn_threshold_percentage"><code>--memory_limit_warn_threshold_percentage</code></a></h4>
-<div class="paragraph">
-<p>Percentage of the hard memory limit that this daemon may consume before WARNING level messages are periodically logged.</p>
-</div>
-<table class="tableblock frame-all grid-all" style="width: 50%;">
-<colgroup>
-<col style="width: 25%;">
-<col style="width: 75%;">
-</colgroup>
-<tbody>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>98</code></p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
-</tr>
-</tbody>
-</table>
-</div>
-<div class="sect3">
-<h4 id="kudu-tserver_tcmalloc_max_free_bytes_percentage"><a class="link" href="#kudu-tserver_tcmalloc_max_free_bytes_percentage"><code>--tcmalloc_max_free_bytes_percentage</code></a></h4>
-<div class="paragraph">
-<p>Maximum percentage of the RSS that tcmalloc is allowed to use for reserved but unallocated memory.</p>
-</div>
-<table class="tableblock frame-all grid-all" style="width: 50%;">
-<colgroup>
-<col style="width: 25%;">
-<col style="width: 75%;">
-</colgroup>
-<tbody>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
-</tr>
-</tbody>
-</table>
-</div>
-<div class="sect3">
 <h4 id="kudu-tserver_metrics_retirement_age_ms"><a class="link" href="#kudu-tserver_metrics_retirement_age_ms"><code>--metrics_retirement_age_ms</code></a></h4>
 <div class="paragraph">
 <p>The minimum number of milliseconds a metric will be kept for after it is no longer active. (Advanced option)</p>
@@ -14546,6 +15082,110 @@
 </table>
 </div>
 <div class="sect3">
+<h4 id="kudu-tserver_memory_limit_soft_percentage"><a class="link" href="#kudu-tserver_memory_limit_soft_percentage"><code>--memory_limit_soft_percentage</code></a></h4>
+<div class="paragraph">
+<p>Percentage of the hard memory limit that this daemon may consume before memory throttling of writes begins. The greater the excess, the higher the chance of throttling. In general, a lower soft limit leads to smoother write latencies but decreased throughput, and vice versa for a higher soft limit.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>80</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_memory_limit_warn_threshold_percentage"><a class="link" href="#kudu-tserver_memory_limit_warn_threshold_percentage"><code>--memory_limit_warn_threshold_percentage</code></a></h4>
+<div class="paragraph">
+<p>Percentage of the hard memory limit that this daemon may consume before WARNING level messages are periodically logged.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>98</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_memory_pressure_percentage"><a class="link" href="#kudu-tserver_memory_pressure_percentage"><code>--memory_pressure_percentage</code></a></h4>
+<div class="paragraph">
+<p>Percentage of the hard memory limit that this daemon may consume before flushing of in-memory data becomes prioritized.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>60</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_tcmalloc_max_free_bytes_percentage"><a class="link" href="#kudu-tserver_tcmalloc_max_free_bytes_percentage"><code>--tcmalloc_max_free_bytes_percentage</code></a></h4>
+<div class="paragraph">
+<p>Maximum percentage of the RSS that tcmalloc is allowed to use for reserved but unallocated memory.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
 <h4 id="kudu-tserver_drop_log_memory"><a class="link" href="#kudu-tserver_drop_log_memory"><code>--drop_log_memory</code></a></h4>
 <div class="paragraph">
 <p>Drop in-memory buffers of log contents. Logs can grow very quickly and they are rarely read before they need to be evicted from memory. Instead, drop them from memory as soon as they are flushed to disk.</p>
@@ -14640,7 +15280,7 @@
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>30</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>5</code></p></td>
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
@@ -14648,6 +15288,32 @@
 </tr>
 </tbody>
 </table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_logfile_mode"><a class="link" href="#kudu-tserver_logfile_mode"><code>--logfile_mode</code></a></h4>
+<div class="paragraph">
+<p>Log file mode/permissions.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>436</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"></td>
+</tr>
+</tbody>
+</table>
 <hr>
 </div>
 </div>
@@ -14759,7 +15425,7 @@
 </div>
       <footer class="footer">
         <p class="small">
-        Copyright &copy; 2016 The Apache Software Foundation.  Last updated 2017-05-15 12:46:02 PDT 
+        Copyright &copy; 2016 The Apache Software Foundation.  Last updated 2017-06-13 10:50:35 PDT 
         </p>
       </footer>
     </div>
diff --git a/docs/configuration_reference_unsupported.html b/docs/configuration_reference_unsupported.html
index 96e9379..2d6b0cc 100644
--- a/docs/configuration_reference_unsupported.html
+++ b/docs/configuration_reference_unsupported.html
@@ -375,35 +375,9 @@
 </table>
 </div>
 <div class="sect2">
-<h3 id="kudu-master_fault_crash_after_leader_request_fraction"><a class="link" href="#kudu-master_fault_crash_after_leader_request_fraction"><code>--fault_crash_after_leader_request_fraction</code></a></h3>
+<h3 id="kudu-master_consensus_rpc_timeout_ms"><a class="link" href="#kudu-master_consensus_rpc_timeout_ms"><code>--consensus_rpc_timeout_ms</code></a></h3>
 <div class="paragraph">
-<p>Fraction of the time when the leader will crash on getting a response for an UpdateConsensus RPC. (For testing only!)</p>
-</div>
-<table class="tableblock frame-all grid-all" style="width: 50%;">
-<colgroup>
-<col style="width: 25%;">
-<col style="width: 75%;">
-</colgroup>
-<tbody>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
-<td class="tableblock halign-left valign-top"></td>
-</tr>
-</tbody>
-</table>
-</div>
-<div class="sect2">
-<h3 id="kudu-master_raft_get_node_instance_timeout_ms"><a class="link" href="#kudu-master_raft_get_node_instance_timeout_ms"><code>--raft_get_node_instance_timeout_ms</code></a></h3>
-<div class="paragraph">
-<p>Timeout for retrieving node instance data over RPC.</p>
+<p>Timeout used for all consensus internal RPC communications.</p>
 </div>
 <table class="tableblock frame-all grid-all" style="width: 50%;">
 <colgroup>
@@ -417,11 +391,11 @@
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>30000</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1000</code></p></td>
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
-<td class="tableblock halign-left valign-top"></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
 </tr>
 </tbody>
 </table>
@@ -547,7 +521,7 @@
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>80</code></p></td>
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
@@ -573,7 +547,7 @@
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>2</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1</code></p></td>
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
@@ -689,7 +663,7 @@
 <div class="sect2">
 <h3 id="kudu-master_log_segment_size_mb"><a class="link" href="#kudu-master_log_segment_size_mb"><code>--log_segment_size_mb</code></a></h3>
 <div class="paragraph">
-<p>The default segment size for log roll-overs, in MB</p>
+<p>The default size for log segments, in MB</p>
 </div>
 <table class="tableblock frame-all grid-all" style="width: 50%;">
 <colgroup>
@@ -703,7 +677,7 @@
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>64</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>8</code></p></td>
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
@@ -1025,6 +999,58 @@
 </table>
 </div>
 <div class="sect2">
+<h3 id="kudu-master_log_container_excess_space_before_cleanup_fraction"><a class="link" href="#kudu-master_log_container_excess_space_before_cleanup_fraction"><code>--log_container_excess_space_before_cleanup_fraction</code></a></h3>
+<div class="paragraph">
+<p>Additional fraction of a log container&#8217;s calculated size that must be consumed on disk before the container is considered to be inconsistent and subject to excess space cleanup at block manager startup.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0.10000000000000001</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_log_container_live_metadata_before_compact_ratio"><a class="link" href="#kudu-master_log_container_live_metadata_before_compact_ratio"><code>--log_container_live_metadata_before_compact_ratio</code></a></h3>
+<div class="paragraph">
+<p>Desired ratio of live block metadata in log containers. If a container&#8217;s live to total block ratio dips below this value, the container&#8217;s metadata file will be compacted at startup.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0.5</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
 <h3 id="kudu-master_log_container_max_blocks"><a class="link" href="#kudu-master_log_container_max_blocks"><code>--log_container_max_blocks</code></a></h3>
 <div class="paragraph">
 <p>Maximum number of blocks (soft) of a log container. Use 0 for no limit. Use -1 for no limit except in the case of a kernel bug with hole punching on ext4 (see KUDU-1508 for details).</p>
@@ -1717,7 +1743,7 @@
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>15000</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>3000</code></p></td>
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
@@ -1987,6 +2013,32 @@
 </table>
 </div>
 <div class="sect2">
+<h3 id="kudu-master_rpc_advertised_addresses"><a class="link" href="#kudu-master_rpc_advertised_addresses"><code>--rpc_advertised_addresses</code></a></h3>
+<div class="paragraph">
+<p>Comma-separated list of addresses to advertise externally for RPC connections. Ephemeral ports (i.e. port 0) are not allowed. This should be configured when the locally bound RPC addresses specified in --rpc_bind_addresses are not externally resolvable, for example, if Kudu is deployed in a container.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
 <h3 id="kudu-master_rpc_num_acceptors_per_address"><a class="link" href="#kudu-master_rpc_num_acceptors_per_address"><code>--rpc_num_acceptors_per_address</code></a></h3>
 <div class="paragraph">
 <p>Number of RPC acceptor threads for each bound address</p>
@@ -2247,6 +2299,32 @@
 </table>
 </div>
 <div class="sect2">
+<h3 id="kudu-master_webserver_advertised_addresses"><a class="link" href="#kudu-master_webserver_advertised_addresses"><code>--webserver_advertised_addresses</code></a></h3>
+<div class="paragraph">
+<p>Comma-separated list of addresses to advertise externally for HTTP(S) connections. Ephemeral ports (i.e. port 0) are not allowed. This should be configured when the locally bound webserver address specified in --webserver_interface and --webserver_port are not externally resolvable, for example, if Kudu is deployed in a container.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
 <h3 id="kudu-master_webserver_authentication_domain"><a class="link" href="#kudu-master_webserver_authentication_domain"><code>--webserver_authentication_domain</code></a></h3>
 <div class="paragraph">
 <p>Domain used for debug webserver authentication</p>
@@ -3313,84 +3391,6 @@
 </table>
 </div>
 <div class="sect2">
-<h3 id="kudu-master_memory_limit_soft_percentage"><a class="link" href="#kudu-master_memory_limit_soft_percentage"><code>--memory_limit_soft_percentage</code></a></h3>
-<div class="paragraph">
-<p>Percentage of the hard memory limit that this daemon may consume before memory throttling of writes begins. The greater the excess, the higher the chance of throttling. In general, a lower soft limit leads to smoother write latencies but decreased throughput, and vice versa for a higher soft limit.</p>
-</div>
-<table class="tableblock frame-all grid-all" style="width: 50%;">
-<colgroup>
-<col style="width: 25%;">
-<col style="width: 75%;">
-</colgroup>
-<tbody>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>60</code></p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
-</tr>
-</tbody>
-</table>
-</div>
-<div class="sect2">
-<h3 id="kudu-master_memory_limit_warn_threshold_percentage"><a class="link" href="#kudu-master_memory_limit_warn_threshold_percentage"><code>--memory_limit_warn_threshold_percentage</code></a></h3>
-<div class="paragraph">
-<p>Percentage of the hard memory limit that this daemon may consume before WARNING level messages are periodically logged.</p>
-</div>
-<table class="tableblock frame-all grid-all" style="width: 50%;">
-<colgroup>
-<col style="width: 25%;">
-<col style="width: 75%;">
-</colgroup>
-<tbody>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>98</code></p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
-</tr>
-</tbody>
-</table>
-</div>
-<div class="sect2">
-<h3 id="kudu-master_tcmalloc_max_free_bytes_percentage"><a class="link" href="#kudu-master_tcmalloc_max_free_bytes_percentage"><code>--tcmalloc_max_free_bytes_percentage</code></a></h3>
-<div class="paragraph">
-<p>Maximum percentage of the RSS that tcmalloc is allowed to use for reserved but unallocated memory.</p>
-</div>
-<table class="tableblock frame-all grid-all" style="width: 50%;">
-<colgroup>
-<col style="width: 25%;">
-<col style="width: 75%;">
-</colgroup>
-<tbody>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
-</tr>
-</tbody>
-</table>
-</div>
-<div class="sect2">
 <h3 id="kudu-master_metrics_retirement_age_ms"><a class="link" href="#kudu-master_metrics_retirement_age_ms"><code>--metrics_retirement_age_ms</code></a></h3>
 <div class="paragraph">
 <p>The minimum number of milliseconds a metric will be kept for after it is no longer active. (Advanced option)</p>
@@ -3495,6 +3495,110 @@
 </table>
 </div>
 <div class="sect2">
+<h3 id="kudu-master_memory_limit_soft_percentage"><a class="link" href="#kudu-master_memory_limit_soft_percentage"><code>--memory_limit_soft_percentage</code></a></h3>
+<div class="paragraph">
+<p>Percentage of the hard memory limit that this daemon may consume before memory throttling of writes begins. The greater the excess, the higher the chance of throttling. In general, a lower soft limit leads to smoother write latencies but decreased throughput, and vice versa for a higher soft limit.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>80</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_memory_limit_warn_threshold_percentage"><a class="link" href="#kudu-master_memory_limit_warn_threshold_percentage"><code>--memory_limit_warn_threshold_percentage</code></a></h3>
+<div class="paragraph">
+<p>Percentage of the hard memory limit that this daemon may consume before WARNING level messages are periodically logged.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>98</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_memory_pressure_percentage"><a class="link" href="#kudu-master_memory_pressure_percentage"><code>--memory_pressure_percentage</code></a></h3>
+<div class="paragraph">
+<p>Percentage of the hard memory limit that this daemon may consume before flushing of in-memory data becomes prioritized.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>60</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_tcmalloc_max_free_bytes_percentage"><a class="link" href="#kudu-master_tcmalloc_max_free_bytes_percentage"><code>--tcmalloc_max_free_bytes_percentage</code></a></h3>
+<div class="paragraph">
+<p>Maximum percentage of the RSS that tcmalloc is allowed to use for reserved but unallocated memory.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
 <h3 id="kudu-master_drop_log_memory"><a class="link" href="#kudu-master_drop_log_memory"><code>--drop_log_memory</code></a></h3>
 <div class="paragraph">
 <p>Drop in-memory buffers of log contents. Logs can grow very quickly and they are rarely read before they need to be evicted from memory. Instead, drop them from memory as soon as they are flushed to disk.</p>
@@ -3589,7 +3693,7 @@
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>30</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>5</code></p></td>
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
@@ -3597,6 +3701,32 @@
 </tr>
 </tbody>
 </table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_logfile_mode"><a class="link" href="#kudu-master_logfile_mode"><code>--logfile_mode</code></a></h3>
+<div class="paragraph">
+<p>Log file mode/permissions.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>436</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"></td>
+</tr>
+</tbody>
+</table>
 <hr>
 </div>
 </div>
@@ -3844,35 +3974,9 @@
 </table>
 </div>
 <div class="sect2">
-<h3 id="kudu-tserver_fault_crash_after_leader_request_fraction"><a class="link" href="#kudu-tserver_fault_crash_after_leader_request_fraction"><code>--fault_crash_after_leader_request_fraction</code></a></h3>
+<h3 id="kudu-tserver_consensus_rpc_timeout_ms"><a class="link" href="#kudu-tserver_consensus_rpc_timeout_ms"><code>--consensus_rpc_timeout_ms</code></a></h3>
 <div class="paragraph">
-<p>Fraction of the time when the leader will crash on getting a response for an UpdateConsensus RPC. (For testing only!)</p>
-</div>
-<table class="tableblock frame-all grid-all" style="width: 50%;">
-<colgroup>
-<col style="width: 25%;">
-<col style="width: 75%;">
-</colgroup>
-<tbody>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
-<td class="tableblock halign-left valign-top"></td>
-</tr>
-</tbody>
-</table>
-</div>
-<div class="sect2">
-<h3 id="kudu-tserver_raft_get_node_instance_timeout_ms"><a class="link" href="#kudu-tserver_raft_get_node_instance_timeout_ms"><code>--raft_get_node_instance_timeout_ms</code></a></h3>
-<div class="paragraph">
-<p>Timeout for retrieving node instance data over RPC.</p>
+<p>Timeout used for all consensus internal RPC communications.</p>
 </div>
 <table class="tableblock frame-all grid-all" style="width: 50%;">
 <colgroup>
@@ -3886,11 +3990,11 @@
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>30000</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1000</code></p></td>
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
-<td class="tableblock halign-left valign-top"></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
 </tr>
 </tbody>
 </table>
@@ -4016,7 +4120,7 @@
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>80</code></p></td>
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
@@ -4042,7 +4146,7 @@
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>2</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1</code></p></td>
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
@@ -4158,7 +4262,7 @@
 <div class="sect2">
 <h3 id="kudu-tserver_log_segment_size_mb"><a class="link" href="#kudu-tserver_log_segment_size_mb"><code>--log_segment_size_mb</code></a></h3>
 <div class="paragraph">
-<p>The default segment size for log roll-overs, in MB</p>
+<p>The default size for log segments, in MB</p>
 </div>
 <table class="tableblock frame-all grid-all" style="width: 50%;">
 <colgroup>
@@ -4172,7 +4276,7 @@
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>64</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>8</code></p></td>
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
@@ -4494,6 +4598,58 @@
 </table>
 </div>
 <div class="sect2">
+<h3 id="kudu-tserver_log_container_excess_space_before_cleanup_fraction"><a class="link" href="#kudu-tserver_log_container_excess_space_before_cleanup_fraction"><code>--log_container_excess_space_before_cleanup_fraction</code></a></h3>
+<div class="paragraph">
+<p>Additional fraction of a log container&#8217;s calculated size that must be consumed on disk before the container is considered to be inconsistent and subject to excess space cleanup at block manager startup.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0.10000000000000001</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_log_container_live_metadata_before_compact_ratio"><a class="link" href="#kudu-tserver_log_container_live_metadata_before_compact_ratio"><code>--log_container_live_metadata_before_compact_ratio</code></a></h3>
+<div class="paragraph">
+<p>Desired ratio of live block metadata in log containers. If a container&#8217;s live to total block ratio dips below this value, the container&#8217;s metadata file will be compacted at startup.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0.5</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
 <h3 id="kudu-tserver_log_container_max_blocks"><a class="link" href="#kudu-tserver_log_container_max_blocks"><code>--log_container_max_blocks</code></a></h3>
 <div class="paragraph">
 <p>Maximum number of blocks (soft) of a log container. Use 0 for no limit. Use -1 for no limit except in the case of a kernel bug with hole punching on ext4 (see KUDU-1508 for details).</p>
@@ -4796,7 +4952,7 @@
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>15000</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>3000</code></p></td>
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
@@ -5040,6 +5196,32 @@
 </table>
 </div>
 <div class="sect2">
+<h3 id="kudu-tserver_rpc_advertised_addresses"><a class="link" href="#kudu-tserver_rpc_advertised_addresses"><code>--rpc_advertised_addresses</code></a></h3>
+<div class="paragraph">
+<p>Comma-separated list of addresses to advertise externally for RPC connections. Ephemeral ports (i.e. port 0) are not allowed. This should be configured when the locally bound RPC addresses specified in --rpc_bind_addresses are not externally resolvable, for example, if Kudu is deployed in a container.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
 <h3 id="kudu-tserver_rpc_num_acceptors_per_address"><a class="link" href="#kudu-tserver_rpc_num_acceptors_per_address"><code>--rpc_num_acceptors_per_address</code></a></h3>
 <div class="paragraph">
 <p>Number of RPC acceptor threads for each bound address</p>
@@ -5300,6 +5482,32 @@
 </table>
 </div>
 <div class="sect2">
+<h3 id="kudu-tserver_webserver_advertised_addresses"><a class="link" href="#kudu-tserver_webserver_advertised_addresses"><code>--webserver_advertised_addresses</code></a></h3>
+<div class="paragraph">
+<p>Comma-separated list of addresses to advertise externally for HTTP(S) connections. Ephemeral ports (i.e. port 0) are not allowed. This should be configured when the locally bound webserver address specified in --webserver_interface and --webserver_port are not externally resolvable, for example, if Kudu is deployed in a container.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
 <h3 id="kudu-tserver_webserver_authentication_domain"><a class="link" href="#kudu-tserver_webserver_authentication_domain"><code>--webserver_authentication_domain</code></a></h3>
 <div class="paragraph">
 <p>Domain used for debug webserver authentication</p>
@@ -6366,84 +6574,6 @@
 </table>
 </div>
 <div class="sect2">
-<h3 id="kudu-tserver_memory_limit_soft_percentage"><a class="link" href="#kudu-tserver_memory_limit_soft_percentage"><code>--memory_limit_soft_percentage</code></a></h3>
-<div class="paragraph">
-<p>Percentage of the hard memory limit that this daemon may consume before memory throttling of writes begins. The greater the excess, the higher the chance of throttling. In general, a lower soft limit leads to smoother write latencies but decreased throughput, and vice versa for a higher soft limit.</p>
-</div>
-<table class="tableblock frame-all grid-all" style="width: 50%;">
-<colgroup>
-<col style="width: 25%;">
-<col style="width: 75%;">
-</colgroup>
-<tbody>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>60</code></p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
-</tr>
-</tbody>
-</table>
-</div>
-<div class="sect2">
-<h3 id="kudu-tserver_memory_limit_warn_threshold_percentage"><a class="link" href="#kudu-tserver_memory_limit_warn_threshold_percentage"><code>--memory_limit_warn_threshold_percentage</code></a></h3>
-<div class="paragraph">
-<p>Percentage of the hard memory limit that this daemon may consume before WARNING level messages are periodically logged.</p>
-</div>
-<table class="tableblock frame-all grid-all" style="width: 50%;">
-<colgroup>
-<col style="width: 25%;">
-<col style="width: 75%;">
-</colgroup>
-<tbody>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>98</code></p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
-</tr>
-</tbody>
-</table>
-</div>
-<div class="sect2">
-<h3 id="kudu-tserver_tcmalloc_max_free_bytes_percentage"><a class="link" href="#kudu-tserver_tcmalloc_max_free_bytes_percentage"><code>--tcmalloc_max_free_bytes_percentage</code></a></h3>
-<div class="paragraph">
-<p>Maximum percentage of the RSS that tcmalloc is allowed to use for reserved but unallocated memory.</p>
-</div>
-<table class="tableblock frame-all grid-all" style="width: 50%;">
-<colgroup>
-<col style="width: 25%;">
-<col style="width: 75%;">
-</colgroup>
-<tbody>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
-</tr>
-</tbody>
-</table>
-</div>
-<div class="sect2">
 <h3 id="kudu-tserver_metrics_retirement_age_ms"><a class="link" href="#kudu-tserver_metrics_retirement_age_ms"><code>--metrics_retirement_age_ms</code></a></h3>
 <div class="paragraph">
 <p>The minimum number of milliseconds a metric will be kept for after it is no longer active. (Advanced option)</p>
@@ -6548,6 +6678,110 @@
 </table>
 </div>
 <div class="sect2">
+<h3 id="kudu-tserver_memory_limit_soft_percentage"><a class="link" href="#kudu-tserver_memory_limit_soft_percentage"><code>--memory_limit_soft_percentage</code></a></h3>
+<div class="paragraph">
+<p>Percentage of the hard memory limit that this daemon may consume before memory throttling of writes begins. The greater the excess, the higher the chance of throttling. In general, a lower soft limit leads to smoother write latencies but decreased throughput, and vice versa for a higher soft limit.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>80</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_memory_limit_warn_threshold_percentage"><a class="link" href="#kudu-tserver_memory_limit_warn_threshold_percentage"><code>--memory_limit_warn_threshold_percentage</code></a></h3>
+<div class="paragraph">
+<p>Percentage of the hard memory limit that this daemon may consume before WARNING level messages are periodically logged.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>98</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_memory_pressure_percentage"><a class="link" href="#kudu-tserver_memory_pressure_percentage"><code>--memory_pressure_percentage</code></a></h3>
+<div class="paragraph">
+<p>Percentage of the hard memory limit that this daemon may consume before flushing of in-memory data becomes prioritized.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>60</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_tcmalloc_max_free_bytes_percentage"><a class="link" href="#kudu-tserver_tcmalloc_max_free_bytes_percentage"><code>--tcmalloc_max_free_bytes_percentage</code></a></h3>
+<div class="paragraph">
+<p>Maximum percentage of the RSS that tcmalloc is allowed to use for reserved but unallocated memory.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
 <h3 id="kudu-tserver_drop_log_memory"><a class="link" href="#kudu-tserver_drop_log_memory"><code>--drop_log_memory</code></a></h3>
 <div class="paragraph">
 <p>Drop in-memory buffers of log contents. Logs can grow very quickly and they are rarely read before they need to be evicted from memory. Instead, drop them from memory as soon as they are flushed to disk.</p>
@@ -6642,7 +6876,7 @@
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>30</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>5</code></p></td>
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
@@ -6650,6 +6884,32 @@
 </tr>
 </tbody>
 </table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_logfile_mode"><a class="link" href="#kudu-tserver_logfile_mode"><code>--logfile_mode</code></a></h3>
+<div class="paragraph">
+<p>Log file mode/permissions.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>436</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"></td>
+</tr>
+</tbody>
+</table>
 <hr>
 </div>
 </div>
@@ -6739,7 +6999,7 @@
 </div>
       <footer class="footer">
         <p class="small">
-        Copyright &copy; 2016 The Apache Software Foundation.  Last updated 2017-05-15 12:46:02 PDT 
+        Copyright &copy; 2016 The Apache Software Foundation.  Last updated 2017-06-13 10:50:35 PDT 
         </p>
       </footer>
     </div>
diff --git a/docs/contributing.html b/docs/contributing.html
index f52d9d5..a9e17e3 100644
--- a/docs/contributing.html
+++ b/docs/contributing.html
@@ -822,7 +822,7 @@
 </div>
       <footer class="footer">
         <p class="small">
-        Copyright &copy; 2016 The Apache Software Foundation.  Last updated 2017-05-04 13:08:22 PDT 
+        Copyright &copy; 2016 The Apache Software Foundation.  Last updated 2017-05-15 17:12:37 PDT 
         </p>
       </footer>
     </div>
diff --git a/docs/developing.html b/docs/developing.html
index 20cf2e7..94bc845 100644
--- a/docs/developing.html
+++ b/docs/developing.html
@@ -337,8 +337,8 @@
 </li>
 <li>
 <p>Kudu tables with a column name containing upper case or non-ascii characters
-may not be used with SparkSQL. Non-primary key columns may be renamed in Kudu
-to work around this issue.</p>
+may not be used with SparkSQL. Columns may be renamed in Kudu to work around
+this issue.</p>
 </li>
 <li>
 <p><code>&lt;&gt;</code> and <code>OR</code> predicates are not pushed to Kudu, and instead will be evaluated
@@ -539,7 +539,7 @@
 </div>
       <footer class="footer">
         <p class="small">
-        Copyright &copy; 2016 The Apache Software Foundation.  Last updated 2017-05-15 12:38:07 PDT 
+        Copyright &copy; 2016 The Apache Software Foundation.  Last updated 2017-05-18 13:38:03 PDT 
         </p>
       </footer>
     </div>
diff --git a/docs/installation.html b/docs/installation.html
index 48b47a5..bc46482 100644
--- a/docs/installation.html
+++ b/docs/installation.html
@@ -1038,18 +1038,8 @@
 <li>
 <p>Apache Maven 3.x</p>
 </li>
-<li>
-<p><code>protoc</code> 2.6 or newer installed in your path, or built from the <code>thirdparty/</code> directory.
-You can run the following commands to build <code>protoc</code> from the third-party dependencies:</p>
-</li>
 </ul>
 </div>
-<div class="listingblock">
-<div class="content">
-<pre>$ thirdparty/download-thirdparty.sh
-$ thirdparty/build-thirdparty.sh protobuf</pre>
-</div>
-</div>
 <div class="paragraph">
 <p>To build the Java client, clone the Kudu Git
 repository, change to the <code>java</code> directory, and issue the following command:</p>
@@ -1108,20 +1098,18 @@
 the version of Kudu that you are about to install. Pay close attention to the
 incompatibilities, upgrade, and downgrade notes that are documented there.</p>
 </div>
-<div class="paragraph">
-<p>Additionally, during the beta period:</p>
-</div>
-<div class="ulist">
-<ul>
-<li>
-<p>Upgrades are only supported when going from the previous latest version to
-the newest released version.</p>
-</li>
-<li>
-<p>Rolling upgrades are not supported. Please shut down all Kudu services before
-upgrading the software.</p>
-</li>
-</ul>
+<div class="admonitionblock note">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-note" title="Note"></i>
+</td>
+<td class="content">
+Currently rolling upgrades are not supported. Please shut down all Kudu services before
+  upgrading the software.
+</td>
+</tr>
+</table>
 </div>
 <div class="sect2">
 <h3 id="upgrade_procedure"><a class="link" href="#upgrade_procedure">Upgrade Procedure</a></h3>
@@ -1312,7 +1300,7 @@
 </div>
       <footer class="footer">
         <p class="small">
-        Copyright &copy; 2016 The Apache Software Foundation.  Last updated 2017-05-15 12:38:07 PDT 
+        Copyright &copy; 2016 The Apache Software Foundation.  Last updated 2017-05-18 13:38:03 PDT 
         </p>
       </footer>
     </div>
diff --git a/docs/known_issues.html b/docs/known_issues.html
index 7066545..38e7edc 100644
--- a/docs/known_issues.html
+++ b/docs/known_issues.html
@@ -123,10 +123,8 @@
 <div class="ulist">
 <ul>
 <li>
-<p>Columns that are part of the primary key cannot be renamed.
-The primary key may not be changed after the table is created.
-You must drop and recreate a table to select a new primary key
-or rename key columns.</p>
+<p>The primary key may not be changed after the table is created.
+You must drop and recreate a table to select a new primary key.</p>
 </li>
 <li>
 <p>The columns which make up the primary key must be listed first in the schema.</p>
@@ -156,10 +154,10 @@
 <div class="ulist">
 <ul>
 <li>
-<p>TIMESTAMP, DECIMAL, CHAR, VARCHAR, DATE, and complex types like ARRAY are not supported.</p>
+<p>DECIMAL, CHAR, VARCHAR, DATE, and complex types like ARRAY are not supported.</p>
 </li>
 <li>
-<p>Type, nullability, compression, and encoding of existing columns cannot be changed by altering the table.</p>
+<p>Type and nullability of existing columns cannot be changed by altering the table.</p>
 </li>
 <li>
 <p>Tables can have a maximum of 300 columns.</p>
@@ -185,7 +183,7 @@
 <div class="ulist">
 <ul>
 <li>
-<p>Cells cannot be larger than 64KB.</p>
+<p>Cells cannot be larger than 64KB before encoding or compression.</p>
 </li>
 </ul>
 </div>
@@ -370,7 +368,7 @@
 <li>
 <p>Kudu client instances retrieve authentication tokens upon first contact with the
 cluster. These tokens expire after one week. Use of a single Kudu client instance
-for more than one week is not supported.</p>
+for more than one week is only supported by the C++ client but not by the Java client.</p>
 </li>
 </ul>
 </div>
@@ -396,6 +394,14 @@
 Consider this limitation when pre-splitting your tables. If you notice slow start-up times,
 you can monitor the number of tablets per server in the web UI.</p>
 </li>
+<li>
+<p>Kerberos authentication does not function correctly on hosts which contain
+capital letters in their hostname.</p>
+</li>
+<li>
+<p>Kerberos authentication does not function correctly if <code>rdns = false</code> is configured
+in <code>krb5.conf</code>.</p>
+</li>
 </ul>
 </div>
 </div>
@@ -502,7 +508,7 @@
 </div>
       <footer class="footer">
         <p class="small">
-        Copyright &copy; 2016 The Apache Software Foundation.  Last updated 2017-05-15 12:38:07 PDT 
+        Copyright &copy; 2016 The Apache Software Foundation.  Last updated 2017-06-08 18:46:50 PDT 
         </p>
       </footer>
     </div>
diff --git a/docs/kudu-master_configuration_reference.html b/docs/kudu-master_configuration_reference.html
index 1bdf713..f8bee71 100644
--- a/docs/kudu-master_configuration_reference.html
+++ b/docs/kudu-master_configuration_reference.html
@@ -1389,6 +1389,35 @@
 being changed or removed without notice.</p>
 </div>
 <div class="sect2">
+<h3 id="kudu-master_cfile_verify_checksums"><a class="link" href="#kudu-master_cfile_verify_checksums"><code>--cfile_verify_checksums</code></a></h3>
+<div class="paragraph">
+<p>Verify the checksum for each block on read if one exists</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
 <h3 id="kudu-master_cfile_default_block_size"><a class="link" href="#kudu-master_cfile_default_block_size"><code>--cfile_default_block_size</code></a></h3>
 <div class="paragraph">
 <p>The default block size to use in cfiles</p>
@@ -1447,9 +1476,9 @@
 </div>
 </div>
 <div class="sect2">
-<h3 id="kudu-master_fault_crash_after_leader_request_fraction"><a class="link" href="#kudu-master_fault_crash_after_leader_request_fraction"><code>--fault_crash_after_leader_request_fraction</code></a></h3>
+<h3 id="kudu-master_cfile_write_checksums"><a class="link" href="#kudu-master_cfile_write_checksums"><code>--cfile_write_checksums</code></a></h3>
 <div class="paragraph">
-<p>Fraction of the time when the leader will crash on getting a response for an UpdateConsensus RPC. (For testing only!)</p>
+<p>Write CRC32 checksums for each block</p>
 </div>
 <table class="tableblock frame-all grid-all" style="width: 50%;">
 <colgroup>
@@ -1459,15 +1488,15 @@
 <tbody>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
-<td class="tableblock halign-left valign-top"></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving</p></td>
 </tr>
 </tbody>
 </table>
@@ -1476,9 +1505,9 @@
 </div>
 </div>
 <div class="sect2">
-<h3 id="kudu-master_raft_get_node_instance_timeout_ms"><a class="link" href="#kudu-master_raft_get_node_instance_timeout_ms"><code>--raft_get_node_instance_timeout_ms</code></a></h3>
+<h3 id="kudu-master_consensus_rpc_timeout_ms"><a class="link" href="#kudu-master_consensus_rpc_timeout_ms"><code>--consensus_rpc_timeout_ms</code></a></h3>
 <div class="paragraph">
-<p>Timeout for retrieving node instance data over RPC.</p>
+<p>Timeout used for all consensus internal RPC communications.</p>
 </div>
 <table class="tableblock frame-all grid-all" style="width: 50%;">
 <colgroup>
@@ -1492,11 +1521,11 @@
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>30000</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1000</code></p></td>
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
-<td class="tableblock halign-left valign-top"></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
 </tr>
 </tbody>
 </table>
@@ -1637,7 +1666,7 @@
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>2</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1</code></p></td>
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
@@ -1768,7 +1797,7 @@
 <div class="sect2">
 <h3 id="kudu-master_log_segment_size_mb"><a class="link" href="#kudu-master_log_segment_size_mb"><code>--log_segment_size_mb</code></a></h3>
 <div class="paragraph">
-<p>The default segment size for log roll-overs, in MB</p>
+<p>The default size for log segments, in MB</p>
 </div>
 <table class="tableblock frame-all grid-all" style="width: 50%;">
 <colgroup>
@@ -1782,7 +1811,7 @@
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>64</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>8</code></p></td>
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
@@ -1913,7 +1942,7 @@
 <div class="sect2">
 <h3 id="kudu-master_block_manager_max_open_files"><a class="link" href="#kudu-master_block_manager_max_open_files"><code>--block_manager_max_open_files</code></a></h3>
 <div class="paragraph">
-<p>Maximum number of open file descriptors to be used for data blocks. If 0, there is no limit. If -1, Kudu will use 40% of its resource limit as per getrlimit(). This is a soft limit.</p>
+<p>Maximum number of open file descriptors to be used for data blocks. If -1, Kudu will use 40% of its resource limit as per getrlimit(). This is a soft limit. It is an error to use a value of 0.</p>
 </div>
 <table class="tableblock frame-all grid-all" style="width: 50%;">
 <colgroup>
@@ -2027,6 +2056,35 @@
 </div>
 </div>
 <div class="sect2">
+<h3 id="kudu-master_log_container_excess_space_before_cleanup_fraction"><a class="link" href="#kudu-master_log_container_excess_space_before_cleanup_fraction"><code>--log_container_excess_space_before_cleanup_fraction</code></a></h3>
+<div class="paragraph">
+<p>Additional fraction of a log container&#8217;s calculated size that must be consumed on disk before the container is considered to be inconsistent and subject to excess space cleanup at block manager startup.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0.10000000000000001</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
 <h3 id="kudu-master_log_container_max_blocks"><a class="link" href="#kudu-master_log_container_max_blocks"><code>--log_container_max_blocks</code></a></h3>
 <div class="paragraph">
 <p>Maximum number of blocks (soft) of a log container. Use 0 for no limit. Use -1 for no limit except in the case of a kernel bug with hole punching on ext4 (see KUDU-1508 for details).</p>
@@ -2536,7 +2594,7 @@
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>15000</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>3000</code></p></td>
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
@@ -2636,6 +2694,35 @@
 </div>
 </div>
 <div class="sect2">
+<h3 id="kudu-master_trusted_subnets"><a class="link" href="#kudu-master_trusted_subnets"><code>--trusted_subnets</code></a></h3>
+<div class="paragraph">
+<p>A trusted subnet whitelist. If set explicitly, all unauthenticated or unencrypted connections are prohibited except the ones from the specified address blocks. Otherwise, private network (127.0.0.0/8, etc.) and local subnets of all local network interfaces will be used. Set it to '0.0.0.0/0' to allow unauthenticated/unencrypted connections from all remote IP addresses. However, if network access is not otherwise restricted by a firewall, malicious users may be able to gain unauthorized access.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>127.0.0.0/8,10.0.0.0/8,172.16.0.0/12,192.168.0.0/16,169.254.0.0/16</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
 <h3 id="kudu-master_rpc_max_message_size"><a class="link" href="#kudu-master_rpc_max_message_size"><code>--rpc_max_message_size</code></a></h3>
 <div class="paragraph">
 <p>The maximum size of a message that any RPC that the server will accept. Must be at least 1MB.</p>
@@ -2781,6 +2868,35 @@
 </div>
 </div>
 <div class="sect2">
+<h3 id="kudu-master_rpc_advertised_addresses"><a class="link" href="#kudu-master_rpc_advertised_addresses"><code>--rpc_advertised_addresses</code></a></h3>
+<div class="paragraph">
+<p>Comma-separated list of addresses to advertise externally for RPC connections. Ephemeral ports (i.e. port 0) are not allowed. This should be configured when the locally bound RPC addresses specified in --rpc_bind_addresses are not externally resolvable, for example, if Kudu is deployed in a container.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
 <h3 id="kudu-master_rpc_num_acceptors_per_address"><a class="link" href="#kudu-master_rpc_num_acceptors_per_address"><code>--rpc_num_acceptors_per_address</code></a></h3>
 <div class="paragraph">
 <p>Number of RPC acceptor threads for each bound address</p>
@@ -3071,6 +3187,35 @@
 </div>
 </div>
 <div class="sect2">
+<h3 id="kudu-master_webserver_advertised_addresses"><a class="link" href="#kudu-master_webserver_advertised_addresses"><code>--webserver_advertised_addresses</code></a></h3>
+<div class="paragraph">
+<p>Comma-separated list of addresses to advertise externally for HTTP(S) connections. Ephemeral ports (i.e. port 0) are not allowed. This should be configured when the locally bound webserver address specified in --webserver_interface and --webserver_port are not externally resolvable, for example, if Kudu is deployed in a container.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
 <h3 id="kudu-master_webserver_authentication_domain"><a class="link" href="#kudu-master_webserver_authentication_domain"><code>--webserver_authentication_domain</code></a></h3>
 <div class="paragraph">
 <p>Domain used for debug webserver authentication</p>
@@ -3827,7 +3972,7 @@
 <div class="sect2">
 <h3 id="kudu-master_redact"><a class="link" href="#kudu-master_redact"><code>--redact</code></a></h3>
 <div class="paragraph">
-<p>Comma-separated list of redactions. Supported redactions are 'flag', 'log' and 'all'. If 'flag' is specified, configuration flags which may include sensitive data will be redacted whenever server configuration is emitted. If 'log' is specified, row data will be redacted from log and error messages. If 'all' is specified, all of above will be redacted.</p>
+<p>Comma-separated list of redactions. Supported options are 'flag', 'log', 'all', and 'none'. If 'flag' is specified, configuration flags which may include sensitive data will be redacted whenever server configuration is emitted. If 'log' is specified, row data will be redacted from log and error messages. If 'all' is specified, all of above will be redacted. If 'none' is specified, no redaction will occur.</p>
 </div>
 <table class="tableblock frame-all grid-all" style="width: 50%;">
 <colgroup>
@@ -3883,93 +4028,6 @@
 </div>
 </div>
 <div class="sect2">
-<h3 id="kudu-master_memory_limit_soft_percentage"><a class="link" href="#kudu-master_memory_limit_soft_percentage"><code>--memory_limit_soft_percentage</code></a></h3>
-<div class="paragraph">
-<p>Percentage of the hard memory limit that this daemon may consume before memory throttling of writes begins. The greater the excess, the higher the chance of throttling. In general, a lower soft limit leads to smoother write latencies but decreased throughput, and vice versa for a higher soft limit.</p>
-</div>
-<table class="tableblock frame-all grid-all" style="width: 50%;">
-<colgroup>
-<col style="width: 25%;">
-<col style="width: 75%;">
-</colgroup>
-<tbody>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>60</code></p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
-</tr>
-</tbody>
-</table>
-<div class="paragraph">
-<p>&#160;</p>
-</div>
-</div>
-<div class="sect2">
-<h3 id="kudu-master_memory_limit_warn_threshold_percentage"><a class="link" href="#kudu-master_memory_limit_warn_threshold_percentage"><code>--memory_limit_warn_threshold_percentage</code></a></h3>
-<div class="paragraph">
-<p>Percentage of the hard memory limit that this daemon may consume before WARNING level messages are periodically logged.</p>
-</div>
-<table class="tableblock frame-all grid-all" style="width: 50%;">
-<colgroup>
-<col style="width: 25%;">
-<col style="width: 75%;">
-</colgroup>
-<tbody>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>98</code></p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
-</tr>
-</tbody>
-</table>
-<div class="paragraph">
-<p>&#160;</p>
-</div>
-</div>
-<div class="sect2">
-<h3 id="kudu-master_tcmalloc_max_free_bytes_percentage"><a class="link" href="#kudu-master_tcmalloc_max_free_bytes_percentage"><code>--tcmalloc_max_free_bytes_percentage</code></a></h3>
-<div class="paragraph">
-<p>Maximum percentage of the RSS that tcmalloc is allowed to use for reserved but unallocated memory.</p>
-</div>
-<table class="tableblock frame-all grid-all" style="width: 50%;">
-<colgroup>
-<col style="width: 25%;">
-<col style="width: 75%;">
-</colgroup>
-<tbody>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
-</tr>
-</tbody>
-</table>
-<div class="paragraph">
-<p>&#160;</p>
-</div>
-</div>
-<div class="sect2">
 <h3 id="kudu-master_metrics_retirement_age_ms"><a class="link" href="#kudu-master_metrics_retirement_age_ms"><code>--metrics_retirement_age_ms</code></a></h3>
 <div class="paragraph">
 <p>The minimum number of milliseconds a metric will be kept for after it is no longer active. (Advanced option)</p>
@@ -4115,6 +4173,122 @@
 </div>
 </div>
 <div class="sect2">
+<h3 id="kudu-master_memory_limit_soft_percentage"><a class="link" href="#kudu-master_memory_limit_soft_percentage"><code>--memory_limit_soft_percentage</code></a></h3>
+<div class="paragraph">
+<p>Percentage of the hard memory limit that this daemon may consume before memory throttling of writes begins. The greater the excess, the higher the chance of throttling. In general, a lower soft limit leads to smoother write latencies but decreased throughput, and vice versa for a higher soft limit.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>80</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_memory_limit_warn_threshold_percentage"><a class="link" href="#kudu-master_memory_limit_warn_threshold_percentage"><code>--memory_limit_warn_threshold_percentage</code></a></h3>
+<div class="paragraph">
+<p>Percentage of the hard memory limit that this daemon may consume before WARNING level messages are periodically logged.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>98</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_memory_pressure_percentage"><a class="link" href="#kudu-master_memory_pressure_percentage"><code>--memory_pressure_percentage</code></a></h3>
+<div class="paragraph">
+<p>Percentage of the hard memory limit that this daemon may consume before flushing of in-memory data becomes prioritized.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>60</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_tcmalloc_max_free_bytes_percentage"><a class="link" href="#kudu-master_tcmalloc_max_free_bytes_percentage"><code>--tcmalloc_max_free_bytes_percentage</code></a></h3>
+<div class="paragraph">
+<p>Maximum percentage of the RSS that tcmalloc is allowed to use for reserved but unallocated memory.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
 <h3 id="kudu-master_drop_log_memory"><a class="link" href="#kudu-master_drop_log_memory"><code>--drop_log_memory</code></a></h3>
 <div class="paragraph">
 <p>Drop in-memory buffers of log contents. Logs can grow very quickly and they are rarely read before they need to be evicted from memory. Instead, drop them from memory as soon as they are flushed to disk.</p>
@@ -4218,7 +4392,7 @@
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>30</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>5</code></p></td>
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
@@ -4229,6 +4403,35 @@
 <div class="paragraph">
 <p>&#160;</p>
 </div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_logfile_mode"><a class="link" href="#kudu-master_logfile_mode"><code>--logfile_mode</code></a></h3>
+<div class="paragraph">
+<p>Log file mode/permissions.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>436</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
 <hr>
 </div>
 </div>
@@ -4318,7 +4521,7 @@
 </div>
       <footer class="footer">
         <p class="small">
-        Copyright &copy; 2016 The Apache Software Foundation.  Last updated 2017-05-15 12:46:02 PDT 
+        Copyright &copy; 2016 The Apache Software Foundation.  Last updated 2017-06-13 10:50:35 PDT 
         </p>
       </footer>
     </div>
diff --git a/docs/kudu-master_configuration_reference_unsupported.html b/docs/kudu-master_configuration_reference_unsupported.html
index 4ce0691..6ff88b5 100644
--- a/docs/kudu-master_configuration_reference_unsupported.html
+++ b/docs/kudu-master_configuration_reference_unsupported.html
@@ -377,38 +377,10 @@
 </div>
 </div>
 <div class="sect1">
-<h2 id="kudu-master_fault_crash_after_leader_request_fraction"><a class="link" href="#kudu-master_fault_crash_after_leader_request_fraction"><code>--fault_crash_after_leader_request_fraction</code></a></h2>
+<h2 id="kudu-master_consensus_rpc_timeout_ms"><a class="link" href="#kudu-master_consensus_rpc_timeout_ms"><code>--consensus_rpc_timeout_ms</code></a></h2>
 <div class="sectionbody">
 <div class="paragraph">
-<p>Fraction of the time when the leader will crash on getting a response for an UpdateConsensus RPC. (For testing only!)</p>
-</div>
-<table class="tableblock frame-all grid-all" style="width: 50%;">
-<colgroup>
-<col style="width: 25%;">
-<col style="width: 75%;">
-</colgroup>
-<tbody>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
-<td class="tableblock halign-left valign-top"></td>
-</tr>
-</tbody>
-</table>
-</div>
-</div>
-<div class="sect1">
-<h2 id="kudu-master_raft_get_node_instance_timeout_ms"><a class="link" href="#kudu-master_raft_get_node_instance_timeout_ms"><code>--raft_get_node_instance_timeout_ms</code></a></h2>
-<div class="sectionbody">
-<div class="paragraph">
-<p>Timeout for retrieving node instance data over RPC.</p>
+<p>Timeout used for all consensus internal RPC communications.</p>
 </div>
 <table class="tableblock frame-all grid-all" style="width: 50%;">
 <colgroup>
@@ -422,11 +394,11 @@
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>30000</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1000</code></p></td>
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
-<td class="tableblock halign-left valign-top"></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
 </tr>
 </tbody>
 </table>
@@ -562,7 +534,7 @@
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>80</code></p></td>
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
@@ -590,7 +562,7 @@
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>2</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1</code></p></td>
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
@@ -716,7 +688,7 @@
 <h2 id="kudu-master_log_segment_size_mb"><a class="link" href="#kudu-master_log_segment_size_mb"><code>--log_segment_size_mb</code></a></h2>
 <div class="sectionbody">
 <div class="paragraph">
-<p>The default segment size for log roll-overs, in MB</p>
+<p>The default size for log segments, in MB</p>
 </div>
 <table class="tableblock frame-all grid-all" style="width: 50%;">
 <colgroup>
@@ -730,7 +702,7 @@
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>64</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>8</code></p></td>
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
@@ -1077,6 +1049,62 @@
 </div>
 </div>
 <div class="sect1">
+<h2 id="kudu-master_log_container_excess_space_before_cleanup_fraction"><a class="link" href="#kudu-master_log_container_excess_space_before_cleanup_fraction"><code>--log_container_excess_space_before_cleanup_fraction</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Additional fraction of a log container&#8217;s calculated size that must be consumed on disk before the container is considered to be inconsistent and subject to excess space cleanup at block manager startup.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0.10000000000000001</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_log_container_live_metadata_before_compact_ratio"><a class="link" href="#kudu-master_log_container_live_metadata_before_compact_ratio"><code>--log_container_live_metadata_before_compact_ratio</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Desired ratio of live block metadata in log containers. If a container&#8217;s live to total block ratio dips below this value, the container&#8217;s metadata file will be compacted at startup.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0.5</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
 <h2 id="kudu-master_log_container_max_blocks"><a class="link" href="#kudu-master_log_container_max_blocks"><code>--log_container_max_blocks</code></a></h2>
 <div class="sectionbody">
 <div class="paragraph">
@@ -1822,7 +1850,7 @@
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>15000</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>3000</code></p></td>
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
@@ -2113,6 +2141,34 @@
 </div>
 </div>
 <div class="sect1">
+<h2 id="kudu-master_rpc_advertised_addresses"><a class="link" href="#kudu-master_rpc_advertised_addresses"><code>--rpc_advertised_addresses</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Comma-separated list of addresses to advertise externally for RPC connections. Ephemeral ports (i.e. port 0) are not allowed. This should be configured when the locally bound RPC addresses specified in --rpc_bind_addresses are not externally resolvable, for example, if Kudu is deployed in a container.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
 <h2 id="kudu-master_rpc_num_acceptors_per_address"><a class="link" href="#kudu-master_rpc_num_acceptors_per_address"><code>--rpc_num_acceptors_per_address</code></a></h2>
 <div class="sectionbody">
 <div class="paragraph">
@@ -2393,6 +2449,34 @@
 </div>
 </div>
 <div class="sect1">
+<h2 id="kudu-master_webserver_advertised_addresses"><a class="link" href="#kudu-master_webserver_advertised_addresses"><code>--webserver_advertised_addresses</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Comma-separated list of addresses to advertise externally for HTTP(S) connections. Ephemeral ports (i.e. port 0) are not allowed. This should be configured when the locally bound webserver address specified in --webserver_interface and --webserver_port are not externally resolvable, for example, if Kudu is deployed in a container.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
 <h2 id="kudu-master_webserver_authentication_domain"><a class="link" href="#kudu-master_webserver_authentication_domain"><code>--webserver_authentication_domain</code></a></h2>
 <div class="sectionbody">
 <div class="paragraph">
@@ -3541,90 +3625,6 @@
 </div>
 </div>
 <div class="sect1">
-<h2 id="kudu-master_memory_limit_soft_percentage"><a class="link" href="#kudu-master_memory_limit_soft_percentage"><code>--memory_limit_soft_percentage</code></a></h2>
-<div class="sectionbody">
-<div class="paragraph">
-<p>Percentage of the hard memory limit that this daemon may consume before memory throttling of writes begins. The greater the excess, the higher the chance of throttling. In general, a lower soft limit leads to smoother write latencies but decreased throughput, and vice versa for a higher soft limit.</p>
-</div>
-<table class="tableblock frame-all grid-all" style="width: 50%;">
-<colgroup>
-<col style="width: 25%;">
-<col style="width: 75%;">
-</colgroup>
-<tbody>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>60</code></p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
-</tr>
-</tbody>
-</table>
-</div>
-</div>
-<div class="sect1">
-<h2 id="kudu-master_memory_limit_warn_threshold_percentage"><a class="link" href="#kudu-master_memory_limit_warn_threshold_percentage"><code>--memory_limit_warn_threshold_percentage</code></a></h2>
-<div class="sectionbody">
-<div class="paragraph">
-<p>Percentage of the hard memory limit that this daemon may consume before WARNING level messages are periodically logged.</p>
-</div>
-<table class="tableblock frame-all grid-all" style="width: 50%;">
-<colgroup>
-<col style="width: 25%;">
-<col style="width: 75%;">
-</colgroup>
-<tbody>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>98</code></p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
-</tr>
-</tbody>
-</table>
-</div>
-</div>
-<div class="sect1">
-<h2 id="kudu-master_tcmalloc_max_free_bytes_percentage"><a class="link" href="#kudu-master_tcmalloc_max_free_bytes_percentage"><code>--tcmalloc_max_free_bytes_percentage</code></a></h2>
-<div class="sectionbody">
-<div class="paragraph">
-<p>Maximum percentage of the RSS that tcmalloc is allowed to use for reserved but unallocated memory.</p>
-</div>
-<table class="tableblock frame-all grid-all" style="width: 50%;">
-<colgroup>
-<col style="width: 25%;">
-<col style="width: 75%;">
-</colgroup>
-<tbody>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
-</tr>
-</tbody>
-</table>
-</div>
-</div>
-<div class="sect1">
 <h2 id="kudu-master_metrics_retirement_age_ms"><a class="link" href="#kudu-master_metrics_retirement_age_ms"><code>--metrics_retirement_age_ms</code></a></h2>
 <div class="sectionbody">
 <div class="paragraph">
@@ -3737,6 +3737,118 @@
 </div>
 </div>
 <div class="sect1">
+<h2 id="kudu-master_memory_limit_soft_percentage"><a class="link" href="#kudu-master_memory_limit_soft_percentage"><code>--memory_limit_soft_percentage</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Percentage of the hard memory limit that this daemon may consume before memory throttling of writes begins. The greater the excess, the higher the chance of throttling. In general, a lower soft limit leads to smoother write latencies but decreased throughput, and vice versa for a higher soft limit.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>80</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_memory_limit_warn_threshold_percentage"><a class="link" href="#kudu-master_memory_limit_warn_threshold_percentage"><code>--memory_limit_warn_threshold_percentage</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Percentage of the hard memory limit that this daemon may consume before WARNING level messages are periodically logged.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>98</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_memory_pressure_percentage"><a class="link" href="#kudu-master_memory_pressure_percentage"><code>--memory_pressure_percentage</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Percentage of the hard memory limit that this daemon may consume before flushing of in-memory data becomes prioritized.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>60</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_tcmalloc_max_free_bytes_percentage"><a class="link" href="#kudu-master_tcmalloc_max_free_bytes_percentage"><code>--tcmalloc_max_free_bytes_percentage</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Maximum percentage of the RSS that tcmalloc is allowed to use for reserved but unallocated memory.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
 <h2 id="kudu-master_drop_log_memory"><a class="link" href="#kudu-master_drop_log_memory"><code>--drop_log_memory</code></a></h2>
 <div class="sectionbody">
 <div class="paragraph">
@@ -3838,7 +3950,7 @@
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>30</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>5</code></p></td>
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
@@ -3846,6 +3958,34 @@
 </tr>
 </tbody>
 </table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_logfile_mode"><a class="link" href="#kudu-master_logfile_mode"><code>--logfile_mode</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Log file mode/permissions.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>436</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"></td>
+</tr>
+</tbody>
+</table>
 <hr>
 </div>
 </div>
@@ -3934,7 +4074,7 @@
 </div>
       <footer class="footer">
         <p class="small">
-        Copyright &copy; 2016 The Apache Software Foundation.  Last updated 2017-05-15 12:46:02 PDT 
+        Copyright &copy; 2016 The Apache Software Foundation.  Last updated 2017-06-13 10:50:35 PDT 
         </p>
       </footer>
     </div>
diff --git a/docs/kudu-tserver_configuration_reference.html b/docs/kudu-tserver_configuration_reference.html
index 74d8f25..6771814 100644
--- a/docs/kudu-tserver_configuration_reference.html
+++ b/docs/kudu-tserver_configuration_reference.html
@@ -1389,6 +1389,35 @@
 being changed or removed without notice.</p>
 </div>
 <div class="sect2">
+<h3 id="kudu-tserver_cfile_verify_checksums"><a class="link" href="#kudu-tserver_cfile_verify_checksums"><code>--cfile_verify_checksums</code></a></h3>
+<div class="paragraph">
+<p>Verify the checksum for each block on read if one exists</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
 <h3 id="kudu-tserver_cfile_default_block_size"><a class="link" href="#kudu-tserver_cfile_default_block_size"><code>--cfile_default_block_size</code></a></h3>
 <div class="paragraph">
 <p>The default block size to use in cfiles</p>
@@ -1447,9 +1476,9 @@
 </div>
 </div>
 <div class="sect2">
-<h3 id="kudu-tserver_fault_crash_after_leader_request_fraction"><a class="link" href="#kudu-tserver_fault_crash_after_leader_request_fraction"><code>--fault_crash_after_leader_request_fraction</code></a></h3>
+<h3 id="kudu-tserver_cfile_write_checksums"><a class="link" href="#kudu-tserver_cfile_write_checksums"><code>--cfile_write_checksums</code></a></h3>
 <div class="paragraph">
-<p>Fraction of the time when the leader will crash on getting a response for an UpdateConsensus RPC. (For testing only!)</p>
+<p>Write CRC32 checksums for each block</p>
 </div>
 <table class="tableblock frame-all grid-all" style="width: 50%;">
 <colgroup>
@@ -1459,15 +1488,15 @@
 <tbody>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
-<td class="tableblock halign-left valign-top"></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving</p></td>
 </tr>
 </tbody>
 </table>
@@ -1476,9 +1505,9 @@
 </div>
 </div>
 <div class="sect2">
-<h3 id="kudu-tserver_raft_get_node_instance_timeout_ms"><a class="link" href="#kudu-tserver_raft_get_node_instance_timeout_ms"><code>--raft_get_node_instance_timeout_ms</code></a></h3>
+<h3 id="kudu-tserver_consensus_rpc_timeout_ms"><a class="link" href="#kudu-tserver_consensus_rpc_timeout_ms"><code>--consensus_rpc_timeout_ms</code></a></h3>
 <div class="paragraph">
-<p>Timeout for retrieving node instance data over RPC.</p>
+<p>Timeout used for all consensus internal RPC communications.</p>
 </div>
 <table class="tableblock frame-all grid-all" style="width: 50%;">
 <colgroup>
@@ -1492,11 +1521,11 @@
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>30000</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1000</code></p></td>
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
-<td class="tableblock halign-left valign-top"></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
 </tr>
 </tbody>
 </table>
@@ -1637,7 +1666,7 @@
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>2</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1</code></p></td>
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
@@ -1768,7 +1797,7 @@
 <div class="sect2">
 <h3 id="kudu-tserver_log_segment_size_mb"><a class="link" href="#kudu-tserver_log_segment_size_mb"><code>--log_segment_size_mb</code></a></h3>
 <div class="paragraph">
-<p>The default segment size for log roll-overs, in MB</p>
+<p>The default size for log segments, in MB</p>
 </div>
 <table class="tableblock frame-all grid-all" style="width: 50%;">
 <colgroup>
@@ -1782,7 +1811,7 @@
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>64</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>8</code></p></td>
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
@@ -1913,7 +1942,7 @@
 <div class="sect2">
 <h3 id="kudu-tserver_block_manager_max_open_files"><a class="link" href="#kudu-tserver_block_manager_max_open_files"><code>--block_manager_max_open_files</code></a></h3>
 <div class="paragraph">
-<p>Maximum number of open file descriptors to be used for data blocks. If 0, there is no limit. If -1, Kudu will use 40% of its resource limit as per getrlimit(). This is a soft limit.</p>
+<p>Maximum number of open file descriptors to be used for data blocks. If -1, Kudu will use 40% of its resource limit as per getrlimit(). This is a soft limit. It is an error to use a value of 0.</p>
 </div>
 <table class="tableblock frame-all grid-all" style="width: 50%;">
 <colgroup>
@@ -2027,6 +2056,35 @@
 </div>
 </div>
 <div class="sect2">
+<h3 id="kudu-tserver_log_container_excess_space_before_cleanup_fraction"><a class="link" href="#kudu-tserver_log_container_excess_space_before_cleanup_fraction"><code>--log_container_excess_space_before_cleanup_fraction</code></a></h3>
+<div class="paragraph">
+<p>Additional fraction of a log container&#8217;s calculated size that must be consumed on disk before the container is considered to be inconsistent and subject to excess space cleanup at block manager startup.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0.10000000000000001</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
 <h3 id="kudu-tserver_log_container_max_blocks"><a class="link" href="#kudu-tserver_log_container_max_blocks"><code>--log_container_max_blocks</code></a></h3>
 <div class="paragraph">
 <p>Maximum number of blocks (soft) of a log container. Use 0 for no limit. Use -1 for no limit except in the case of a kernel bug with hole punching on ext4 (see KUDU-1508 for details).</p>
@@ -2304,7 +2362,7 @@
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>15000</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>3000</code></p></td>
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
@@ -2404,6 +2462,35 @@
 </div>
 </div>
 <div class="sect2">
+<h3 id="kudu-tserver_trusted_subnets"><a class="link" href="#kudu-tserver_trusted_subnets"><code>--trusted_subnets</code></a></h3>
+<div class="paragraph">
+<p>A trusted subnet whitelist. If set explicitly, all unauthenticated or unencrypted connections are prohibited except the ones from the specified address blocks. Otherwise, private network (127.0.0.0/8, etc.) and local subnets of all local network interfaces will be used. Set it to '0.0.0.0/0' to allow unauthenticated/unencrypted connections from all remote IP addresses. However, if network access is not otherwise restricted by a firewall, malicious users may be able to gain unauthorized access.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>127.0.0.0/8,10.0.0.0/8,172.16.0.0/12,192.168.0.0/16,169.254.0.0/16</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
 <h3 id="kudu-tserver_rpc_max_message_size"><a class="link" href="#kudu-tserver_rpc_max_message_size"><code>--rpc_max_message_size</code></a></h3>
 <div class="paragraph">
 <p>The maximum size of a message that any RPC that the server will accept. Must be at least 1MB.</p>
@@ -2549,6 +2636,35 @@
 </div>
 </div>
 <div class="sect2">
+<h3 id="kudu-tserver_rpc_advertised_addresses"><a class="link" href="#kudu-tserver_rpc_advertised_addresses"><code>--rpc_advertised_addresses</code></a></h3>
+<div class="paragraph">
+<p>Comma-separated list of addresses to advertise externally for RPC connections. Ephemeral ports (i.e. port 0) are not allowed. This should be configured when the locally bound RPC addresses specified in --rpc_bind_addresses are not externally resolvable, for example, if Kudu is deployed in a container.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
 <h3 id="kudu-tserver_rpc_num_acceptors_per_address"><a class="link" href="#kudu-tserver_rpc_num_acceptors_per_address"><code>--rpc_num_acceptors_per_address</code></a></h3>
 <div class="paragraph">
 <p>Number of RPC acceptor threads for each bound address</p>
@@ -2839,6 +2955,35 @@
 </div>
 </div>
 <div class="sect2">
+<h3 id="kudu-tserver_webserver_advertised_addresses"><a class="link" href="#kudu-tserver_webserver_advertised_addresses"><code>--webserver_advertised_addresses</code></a></h3>
+<div class="paragraph">
+<p>Comma-separated list of addresses to advertise externally for HTTP(S) connections. Ephemeral ports (i.e. port 0) are not allowed. This should be configured when the locally bound webserver address specified in --webserver_interface and --webserver_port are not externally resolvable, for example, if Kudu is deployed in a container.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
 <h3 id="kudu-tserver_webserver_authentication_domain"><a class="link" href="#kudu-tserver_webserver_authentication_domain"><code>--webserver_authentication_domain</code></a></h3>
 <div class="paragraph">
 <p>Domain used for debug webserver authentication</p>
@@ -3595,7 +3740,7 @@
 <div class="sect2">
 <h3 id="kudu-tserver_redact"><a class="link" href="#kudu-tserver_redact"><code>--redact</code></a></h3>
 <div class="paragraph">
-<p>Comma-separated list of redactions. Supported redactions are 'flag', 'log' and 'all'. If 'flag' is specified, configuration flags which may include sensitive data will be redacted whenever server configuration is emitted. If 'log' is specified, row data will be redacted from log and error messages. If 'all' is specified, all of above will be redacted.</p>
+<p>Comma-separated list of redactions. Supported options are 'flag', 'log', 'all', and 'none'. If 'flag' is specified, configuration flags which may include sensitive data will be redacted whenever server configuration is emitted. If 'log' is specified, row data will be redacted from log and error messages. If 'all' is specified, all of above will be redacted. If 'none' is specified, no redaction will occur.</p>
 </div>
 <table class="tableblock frame-all grid-all" style="width: 50%;">
 <colgroup>
@@ -3651,93 +3796,6 @@
 </div>
 </div>
 <div class="sect2">
-<h3 id="kudu-tserver_memory_limit_soft_percentage"><a class="link" href="#kudu-tserver_memory_limit_soft_percentage"><code>--memory_limit_soft_percentage</code></a></h3>
-<div class="paragraph">
-<p>Percentage of the hard memory limit that this daemon may consume before memory throttling of writes begins. The greater the excess, the higher the chance of throttling. In general, a lower soft limit leads to smoother write latencies but decreased throughput, and vice versa for a higher soft limit.</p>
-</div>
-<table class="tableblock frame-all grid-all" style="width: 50%;">
-<colgroup>
-<col style="width: 25%;">
-<col style="width: 75%;">
-</colgroup>
-<tbody>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>60</code></p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
-</tr>
-</tbody>
-</table>
-<div class="paragraph">
-<p>&#160;</p>
-</div>
-</div>
-<div class="sect2">
-<h3 id="kudu-tserver_memory_limit_warn_threshold_percentage"><a class="link" href="#kudu-tserver_memory_limit_warn_threshold_percentage"><code>--memory_limit_warn_threshold_percentage</code></a></h3>
-<div class="paragraph">
-<p>Percentage of the hard memory limit that this daemon may consume before WARNING level messages are periodically logged.</p>
-</div>
-<table class="tableblock frame-all grid-all" style="width: 50%;">
-<colgroup>
-<col style="width: 25%;">
-<col style="width: 75%;">
-</colgroup>
-<tbody>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>98</code></p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
-</tr>
-</tbody>
-</table>
-<div class="paragraph">
-<p>&#160;</p>
-</div>
-</div>
-<div class="sect2">
-<h3 id="kudu-tserver_tcmalloc_max_free_bytes_percentage"><a class="link" href="#kudu-tserver_tcmalloc_max_free_bytes_percentage"><code>--tcmalloc_max_free_bytes_percentage</code></a></h3>
-<div class="paragraph">
-<p>Maximum percentage of the RSS that tcmalloc is allowed to use for reserved but unallocated memory.</p>
-</div>
-<table class="tableblock frame-all grid-all" style="width: 50%;">
-<colgroup>
-<col style="width: 25%;">
-<col style="width: 75%;">
-</colgroup>
-<tbody>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
-</tr>
-</tbody>
-</table>
-<div class="paragraph">
-<p>&#160;</p>
-</div>
-</div>
-<div class="sect2">
 <h3 id="kudu-tserver_metrics_retirement_age_ms"><a class="link" href="#kudu-tserver_metrics_retirement_age_ms"><code>--metrics_retirement_age_ms</code></a></h3>
 <div class="paragraph">
 <p>The minimum number of milliseconds a metric will be kept for after it is no longer active. (Advanced option)</p>
@@ -3883,6 +3941,122 @@
 </div>
 </div>
 <div class="sect2">
+<h3 id="kudu-tserver_memory_limit_soft_percentage"><a class="link" href="#kudu-tserver_memory_limit_soft_percentage"><code>--memory_limit_soft_percentage</code></a></h3>
+<div class="paragraph">
+<p>Percentage of the hard memory limit that this daemon may consume before memory throttling of writes begins. The greater the excess, the higher the chance of throttling. In general, a lower soft limit leads to smoother write latencies but decreased throughput, and vice versa for a higher soft limit.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>80</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_memory_limit_warn_threshold_percentage"><a class="link" href="#kudu-tserver_memory_limit_warn_threshold_percentage"><code>--memory_limit_warn_threshold_percentage</code></a></h3>
+<div class="paragraph">
+<p>Percentage of the hard memory limit that this daemon may consume before WARNING level messages are periodically logged.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>98</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_memory_pressure_percentage"><a class="link" href="#kudu-tserver_memory_pressure_percentage"><code>--memory_pressure_percentage</code></a></h3>
+<div class="paragraph">
+<p>Percentage of the hard memory limit that this daemon may consume before flushing of in-memory data becomes prioritized.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>60</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_tcmalloc_max_free_bytes_percentage"><a class="link" href="#kudu-tserver_tcmalloc_max_free_bytes_percentage"><code>--tcmalloc_max_free_bytes_percentage</code></a></h3>
+<div class="paragraph">
+<p>Maximum percentage of the RSS that tcmalloc is allowed to use for reserved but unallocated memory.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
 <h3 id="kudu-tserver_drop_log_memory"><a class="link" href="#kudu-tserver_drop_log_memory"><code>--drop_log_memory</code></a></h3>
 <div class="paragraph">
 <p>Drop in-memory buffers of log contents. Logs can grow very quickly and they are rarely read before they need to be evicted from memory. Instead, drop them from memory as soon as they are flushed to disk.</p>
@@ -3986,7 +4160,7 @@
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>30</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>5</code></p></td>
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
@@ -3997,6 +4171,35 @@
 <div class="paragraph">
 <p>&#160;</p>
 </div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_logfile_mode"><a class="link" href="#kudu-tserver_logfile_mode"><code>--logfile_mode</code></a></h3>
+<div class="paragraph">
+<p>Log file mode/permissions.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>436</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
 <hr>
 </div>
 </div>
@@ -4086,7 +4289,7 @@
 </div>
       <footer class="footer">
         <p class="small">
-        Copyright &copy; 2016 The Apache Software Foundation.  Last updated 2017-05-15 12:46:02 PDT 
+        Copyright &copy; 2016 The Apache Software Foundation.  Last updated 2017-06-13 10:50:35 PDT 
         </p>
       </footer>
     </div>
diff --git a/docs/kudu-tserver_configuration_reference_unsupported.html b/docs/kudu-tserver_configuration_reference_unsupported.html
index 4d99490..8c0c058 100644
--- a/docs/kudu-tserver_configuration_reference_unsupported.html
+++ b/docs/kudu-tserver_configuration_reference_unsupported.html
@@ -377,38 +377,10 @@
 </div>
 </div>
 <div class="sect1">
-<h2 id="kudu-tserver_fault_crash_after_leader_request_fraction"><a class="link" href="#kudu-tserver_fault_crash_after_leader_request_fraction"><code>--fault_crash_after_leader_request_fraction</code></a></h2>
+<h2 id="kudu-tserver_consensus_rpc_timeout_ms"><a class="link" href="#kudu-tserver_consensus_rpc_timeout_ms"><code>--consensus_rpc_timeout_ms</code></a></h2>
 <div class="sectionbody">
 <div class="paragraph">
-<p>Fraction of the time when the leader will crash on getting a response for an UpdateConsensus RPC. (For testing only!)</p>
-</div>
-<table class="tableblock frame-all grid-all" style="width: 50%;">
-<colgroup>
-<col style="width: 25%;">
-<col style="width: 75%;">
-</colgroup>
-<tbody>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
-<td class="tableblock halign-left valign-top"></td>
-</tr>
-</tbody>
-</table>
-</div>
-</div>
-<div class="sect1">
-<h2 id="kudu-tserver_raft_get_node_instance_timeout_ms"><a class="link" href="#kudu-tserver_raft_get_node_instance_timeout_ms"><code>--raft_get_node_instance_timeout_ms</code></a></h2>
-<div class="sectionbody">
-<div class="paragraph">
-<p>Timeout for retrieving node instance data over RPC.</p>
+<p>Timeout used for all consensus internal RPC communications.</p>
 </div>
 <table class="tableblock frame-all grid-all" style="width: 50%;">
 <colgroup>
@@ -422,11 +394,11 @@
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>30000</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1000</code></p></td>
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
-<td class="tableblock halign-left valign-top"></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
 </tr>
 </tbody>
 </table>
@@ -562,7 +534,7 @@
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>80</code></p></td>
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
@@ -590,7 +562,7 @@
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>2</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1</code></p></td>
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
@@ -716,7 +688,7 @@
 <h2 id="kudu-tserver_log_segment_size_mb"><a class="link" href="#kudu-tserver_log_segment_size_mb"><code>--log_segment_size_mb</code></a></h2>
 <div class="sectionbody">
 <div class="paragraph">
-<p>The default segment size for log roll-overs, in MB</p>
+<p>The default size for log segments, in MB</p>
 </div>
 <table class="tableblock frame-all grid-all" style="width: 50%;">
 <colgroup>
@@ -730,7 +702,7 @@
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>64</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>8</code></p></td>
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
@@ -1077,6 +1049,62 @@
 </div>
 </div>
 <div class="sect1">
+<h2 id="kudu-tserver_log_container_excess_space_before_cleanup_fraction"><a class="link" href="#kudu-tserver_log_container_excess_space_before_cleanup_fraction"><code>--log_container_excess_space_before_cleanup_fraction</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Additional fraction of a log container&#8217;s calculated size that must be consumed on disk before the container is considered to be inconsistent and subject to excess space cleanup at block manager startup.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0.10000000000000001</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_log_container_live_metadata_before_compact_ratio"><a class="link" href="#kudu-tserver_log_container_live_metadata_before_compact_ratio"><code>--log_container_live_metadata_before_compact_ratio</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Desired ratio of live block metadata in log containers. If a container&#8217;s live to total block ratio dips below this value, the container&#8217;s metadata file will be compacted at startup.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0.5</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
 <h2 id="kudu-tserver_log_container_max_blocks"><a class="link" href="#kudu-tserver_log_container_max_blocks"><code>--log_container_max_blocks</code></a></h2>
 <div class="sectionbody">
 <div class="paragraph">
@@ -1402,7 +1430,7 @@
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>15000</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>3000</code></p></td>
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
@@ -1665,6 +1693,34 @@
 </div>
 </div>
 <div class="sect1">
+<h2 id="kudu-tserver_rpc_advertised_addresses"><a class="link" href="#kudu-tserver_rpc_advertised_addresses"><code>--rpc_advertised_addresses</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Comma-separated list of addresses to advertise externally for RPC connections. Ephemeral ports (i.e. port 0) are not allowed. This should be configured when the locally bound RPC addresses specified in --rpc_bind_addresses are not externally resolvable, for example, if Kudu is deployed in a container.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
 <h2 id="kudu-tserver_rpc_num_acceptors_per_address"><a class="link" href="#kudu-tserver_rpc_num_acceptors_per_address"><code>--rpc_num_acceptors_per_address</code></a></h2>
 <div class="sectionbody">
 <div class="paragraph">
@@ -1945,6 +2001,34 @@
 </div>
 </div>
 <div class="sect1">
+<h2 id="kudu-tserver_webserver_advertised_addresses"><a class="link" href="#kudu-tserver_webserver_advertised_addresses"><code>--webserver_advertised_addresses</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Comma-separated list of addresses to advertise externally for HTTP(S) connections. Ephemeral ports (i.e. port 0) are not allowed. This should be configured when the locally bound webserver address specified in --webserver_interface and --webserver_port are not externally resolvable, for example, if Kudu is deployed in a container.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
 <h2 id="kudu-tserver_webserver_authentication_domain"><a class="link" href="#kudu-tserver_webserver_authentication_domain"><code>--webserver_authentication_domain</code></a></h2>
 <div class="sectionbody">
 <div class="paragraph">
@@ -3093,90 +3177,6 @@
 </div>
 </div>
 <div class="sect1">
-<h2 id="kudu-tserver_memory_limit_soft_percentage"><a class="link" href="#kudu-tserver_memory_limit_soft_percentage"><code>--memory_limit_soft_percentage</code></a></h2>
-<div class="sectionbody">
-<div class="paragraph">
-<p>Percentage of the hard memory limit that this daemon may consume before memory throttling of writes begins. The greater the excess, the higher the chance of throttling. In general, a lower soft limit leads to smoother write latencies but decreased throughput, and vice versa for a higher soft limit.</p>
-</div>
-<table class="tableblock frame-all grid-all" style="width: 50%;">
-<colgroup>
-<col style="width: 25%;">
-<col style="width: 75%;">
-</colgroup>
-<tbody>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>60</code></p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
-</tr>
-</tbody>
-</table>
-</div>
-</div>
-<div class="sect1">
-<h2 id="kudu-tserver_memory_limit_warn_threshold_percentage"><a class="link" href="#kudu-tserver_memory_limit_warn_threshold_percentage"><code>--memory_limit_warn_threshold_percentage</code></a></h2>
-<div class="sectionbody">
-<div class="paragraph">
-<p>Percentage of the hard memory limit that this daemon may consume before WARNING level messages are periodically logged.</p>
-</div>
-<table class="tableblock frame-all grid-all" style="width: 50%;">
-<colgroup>
-<col style="width: 25%;">
-<col style="width: 75%;">
-</colgroup>
-<tbody>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>98</code></p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
-</tr>
-</tbody>
-</table>
-</div>
-</div>
-<div class="sect1">
-<h2 id="kudu-tserver_tcmalloc_max_free_bytes_percentage"><a class="link" href="#kudu-tserver_tcmalloc_max_free_bytes_percentage"><code>--tcmalloc_max_free_bytes_percentage</code></a></h2>
-<div class="sectionbody">
-<div class="paragraph">
-<p>Maximum percentage of the RSS that tcmalloc is allowed to use for reserved but unallocated memory.</p>
-</div>
-<table class="tableblock frame-all grid-all" style="width: 50%;">
-<colgroup>
-<col style="width: 25%;">
-<col style="width: 75%;">
-</colgroup>
-<tbody>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
-</tr>
-<tr>
-<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
-</tr>
-</tbody>
-</table>
-</div>
-</div>
-<div class="sect1">
 <h2 id="kudu-tserver_metrics_retirement_age_ms"><a class="link" href="#kudu-tserver_metrics_retirement_age_ms"><code>--metrics_retirement_age_ms</code></a></h2>
 <div class="sectionbody">
 <div class="paragraph">
@@ -3289,6 +3289,118 @@
 </div>
 </div>
 <div class="sect1">
+<h2 id="kudu-tserver_memory_limit_soft_percentage"><a class="link" href="#kudu-tserver_memory_limit_soft_percentage"><code>--memory_limit_soft_percentage</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Percentage of the hard memory limit that this daemon may consume before memory throttling of writes begins. The greater the excess, the higher the chance of throttling. In general, a lower soft limit leads to smoother write latencies but decreased throughput, and vice versa for a higher soft limit.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>80</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_memory_limit_warn_threshold_percentage"><a class="link" href="#kudu-tserver_memory_limit_warn_threshold_percentage"><code>--memory_limit_warn_threshold_percentage</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Percentage of the hard memory limit that this daemon may consume before WARNING level messages are periodically logged.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>98</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_memory_pressure_percentage"><a class="link" href="#kudu-tserver_memory_pressure_percentage"><code>--memory_pressure_percentage</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Percentage of the hard memory limit that this daemon may consume before flushing of in-memory data becomes prioritized.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>60</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_tcmalloc_max_free_bytes_percentage"><a class="link" href="#kudu-tserver_tcmalloc_max_free_bytes_percentage"><code>--tcmalloc_max_free_bytes_percentage</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Maximum percentage of the RSS that tcmalloc is allowed to use for reserved but unallocated memory.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
 <h2 id="kudu-tserver_drop_log_memory"><a class="link" href="#kudu-tserver_drop_log_memory"><code>--drop_log_memory</code></a></h2>
 <div class="sectionbody">
 <div class="paragraph">
@@ -3390,7 +3502,7 @@
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>30</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>5</code></p></td>
 </tr>
 <tr>
 <th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
@@ -3398,6 +3510,34 @@
 </tr>
 </tbody>
 </table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_logfile_mode"><a class="link" href="#kudu-tserver_logfile_mode"><code>--logfile_mode</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Log file mode/permissions.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>436</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"></td>
+</tr>
+</tbody>
+</table>
 <hr>
 </div>
 </div>
@@ -3486,7 +3626,7 @@
 </div>
       <footer class="footer">
         <p class="small">
-        Copyright &copy; 2016 The Apache Software Foundation.  Last updated 2017-05-15 12:46:02 PDT 
+        Copyright &copy; 2016 The Apache Software Foundation.  Last updated 2017-06-13 10:50:35 PDT 
         </p>
       </footer>
     </div>
diff --git a/docs/kudu_impala_integration.html b/docs/kudu_impala_integration.html
index 9a2f0a0..e3b52a3 100644
--- a/docs/kudu_impala_integration.html
+++ b/docs/kudu_impala_integration.html
@@ -1076,8 +1076,8 @@
 </li>
 <li>
 <p>Kudu tables with a column name containing upper case or non-ascii characters
-may not be used as an external table in Impala. Non-primary key columns may be
-renamed in Kudu to work around this issue.</p>
+may not be used as an external table in Impala. Columns may be renamed in Kudu
+to work around this issue.</p>
 </li>
 <li>
 <p>When creating a Kudu table, the <code>CREATE TABLE</code> statement must include the
@@ -1221,7 +1221,7 @@
 </div>
       <footer class="footer">
         <p class="small">
-        Copyright &copy; 2016 The Apache Software Foundation.  Last updated 2017-05-15 12:38:07 PDT 
+        Copyright &copy; 2016 The Apache Software Foundation.  Last updated 2017-05-18 13:38:03 PDT 
         </p>
       </footer>
     </div>
diff --git a/docs/prior_release_notes.html b/docs/prior_release_notes.html
index e62564c..fc56c02 100644
--- a/docs/prior_release_notes.html
+++ b/docs/prior_release_notes.html
@@ -139,6 +139,284 @@
 </div>
 </div>
 <div class="sect1">
+<h2 id="rn_1.3.0"><a class="link" href="#rn_1.3.0">Release notes specific to 1.3.0</a></h2>
+<div class="sectionbody">
+
+</div>
+</div>
+<div class="sect1">
+<h2 id="rn_1.3.0_new_features"><a class="link" href="#rn_1.3.0_new_features">New features</a></h2>
+<div class="sectionbody">
+<div class="ulist">
+<ul>
+<li>
+<p>Kudu 1.3 adds support for strong authentication based on Kerberos. This optional feature
+allows users to authenticate themselves using Kerberos tickets, and also provides
+mutual authentication of servers using Kerberos credentials stored in keytabs. This
+feature is optional, but recommended for deployments requiring security.</p>
+</li>
+<li>
+<p>Kudu 1.3 adds support for encryption of data on the network using Transport Layer Security
+(TLS). Kudu will now use TLS to encrypt all network traffic between clients and servers as
+well as any internal traffic among servers, with the exception of traffic determined to
+be within a localhost network connection. Encryption is enabled by default whenever it can
+be determined that both the client and server support the feature.</p>
+</li>
+<li>
+<p>Kudu 1.3 adds coarse-grained service-level authorization of access to the cluster.
+The operator may set up lists of permitted users who may act as administrators and
+as clients of the cluster. Combined with the strong authentication feature described
+above, this can enable a secure environment for some use cases. Note that fine-grained
+access control (e.g. table-level or column-level) is not yet supported.</p>
+</li>
+<li>
+<p>Kudu 1.3 adds a background task to tablet servers which removes historical versions of
+data which have fallen behind the configured data retention time. This reduces disk space
+usage in all workloads, but particularly in those with a higher volume of updates or
+upserts.</p>
+</li>
+<li>
+<p>Kudu now incorporates Google Breakpad, a library which writes crash reports in
+the case of a server crash. These reports can be found within the configured log directory,
+and can be useful during bug diagnosis.</p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_optimizations_and_improvements"><a class="link" href="#_optimizations_and_improvements">Optimizations and improvements</a></h2>
+<div class="sectionbody">
+<div class="ulist">
+<ul>
+<li>
+<p>Kudu servers will now change the file permissions of data directories and contained
+data files based on a new configuration flag <code>--umask</code>. As a result, after upgrading,
+permissions on disk may be more restrictive than in previous versions. The new default
+configuration improves data security.</p>
+</li>
+<li>
+<p>Kudu&#8217;s web UI will now redact strings which may include sensitive user data. For example,
+the monitoring page which shows in-progress scans no longer includes the scanner predicate
+values. The tracing and RPC diagnostics endpoints no longer include contents of RPCs which
+may include table data.</p>
+</li>
+<li>
+<p>By default, Kudu now reserves 1% of each configured data volume as free space. If a volume
+is seen to have less than 1% of disk space free, Kudu will stop writing to that volume
+to avoid completely filling up the disk.</p>
+</li>
+<li>
+<p>The default encoding for numeric columns (int, float, and double) has been changed
+to <code>BIT_SHUFFLE</code>. The default encoding for binary and string columns has been
+changed to <code>DICT_ENCODING</code>. Dictionary encoding automatically falls back to the old
+default (<code>PLAIN</code>) when cardinality is too high to be effectively encoded.</p>
+<div class="paragraph">
+<p>These new defaults match the default behavior of other storage mechanisms such as
+  Apache Parquet and are likely to perform better out of the box.</p>
+</div>
+</li>
+<li>
+<p>Kudu now uses <code>LZ4</code> compression when writing its Write Ahead Log (WAL). This improves
+write performance and stability for many use cases.</p>
+</li>
+<li>
+<p>Kudu now uses <code>LZ4</code> compression when writing delta files. This can improve both
+read and write performance as well as save substantial disk usage, especially
+for workloads involving a high number of updates or upserts containing compressible
+data.</p>
+</li>
+<li>
+<p>The Kudu API now supports the ability to express <code>IS NULL</code> and <code>IS NOT NULL</code> predicates
+on scanners. The Spark DataSource integration will take advantage of these new
+predicates when possible.</p>
+</li>
+<li>
+<p>Both C++ and Java clients have been optimized to prune partitions more effectively
+when performing scans using the <code>IN (&#8230;&#8203;)</code> predicate.</p>
+</li>
+<li>
+<p>The exception messages produced by the Java client are now truncated to a maximum length
+of 32KB.</p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="rn_1.3.0_fixed_issues"><a class="link" href="#rn_1.3.0_fixed_issues">Fixed Issues</a></h2>
+<div class="sectionbody">
+<div class="ulist">
+<ul>
+<li>
+<p><a href="https://issues.apache.org/jira/browse/KUDU-1893">KUDU-1893</a>
+Fixed a critical bug in which wrong results would be returned when evaluating
+predicates applied to columns added using the <code>ALTER TABLE</code> operation.</p>
+</li>
+<li>
+<p><a href="https://issues.apache.org/jira/browse/KUDU-1905">KUDU-1905</a>
+Fixed a crash after inserting a row sharing a primary key with a recently-deleted
+row in tables where the primary key is comprised of all of the columns.</p>
+</li>
+<li>
+<p><a href="https://issues.apache.org/jira/browse/KUDU-1899">KUDU-1899</a>
+Fixed a crash after inserting a row with an empty string as the single-column
+primary key.</p>
+</li>
+<li>
+<p><a href="https://issues.apache.org/jira/browse/KUDU-1904">KUDU-1904</a>
+Fixed a potential crash when performing random reads against a column using RLE
+encoding and containing long runs of NULL values.</p>
+</li>
+<li>
+<p><a href="https://issues.apache.org/jira/browse/KUDU-1853">KUDU-1853</a>
+Fixed an issue where disk space could be leaked on servers which experienced an error
+during the process of copying tablet data from another server.</p>
+</li>
+<li>
+<p><a href="https://issues.apache.org/jira/browse/KUDU-1856">KUDU-1856</a>
+Fixed an issue in which disk space could be leaked by Kudu servers storing data on
+partitions using the XFS file system. Any leaked disk space will be automatically
+recovered upon upgrade.</p>
+</li>
+<li>
+<p><a href="https://issues.apache.org/jira/browse/KUDU-1888">KUDU-1888</a>,
+<a href="https://issues.apache.org/jira/browse/KUDU-1906">KUDU-1906</a>
+Fixed multiple issues in the Java client where operation callbacks would never be
+triggered, causing the client to hang.</p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="rn_1.3.0_wire_compatibility"><a class="link" href="#rn_1.3.0_wire_compatibility">Wire Protocol compatibility</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Kudu 1.3.0 is wire-compatible with previous versions of Kudu:</p>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p>Kudu 1.3 clients may connect to servers running Kudu 1.0. If the client uses features
+that are not available on the target server, an error will be returned.</p>
+</li>
+<li>
+<p>Kudu 1.0 clients may connect to servers running Kudu 1.3 with the exception of the
+below-mentioned restrictions regarding secure clusters.</p>
+</li>
+<li>
+<p>Rolling upgrade between Kudu 1.2 and Kudu 1.3 servers is believed to be possible
+though has not been sufficiently tested. Users are encouraged to shut down all nodes
+in the cluster, upgrade the software, and then restart the daemons on the new version.</p>
+</li>
+</ul>
+</div>
+<div class="paragraph">
+<p>The authentication features newly introduced in Kudu 1.3 place the following limitations
+on wire compatibility with older versions:</p>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p>If a Kudu 1.3 cluster is configured with authentication or encryption set to "required",
+older clients will be unable to connect.</p>
+</li>
+<li>
+<p>If a Kudu 1.3 cluster is configured with authentication and encryption set to "optional"
+or "disabled", older clients will still be able to connect.</p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="rn_1.3.0_incompatible_changes"><a class="link" href="#rn_1.3.0_incompatible_changes">Incompatible Changes in Kudu 1.3.0</a></h2>
+<div class="sectionbody">
+<div class="ulist">
+<ul>
+<li>
+<p>Due to storage format changes in Kudu 1.3, downgrade from Kudu 1.3 to earlier versions
+is not supported. After upgrading to Kudu 1.3, attempting to restart with an earlier
+version will result in an error.</p>
+</li>
+<li>
+<p>In order to support running MapReduce and Spark jobs on secure clusters, these
+frameworks now connect to the cluster at job submission time to retrieve authentication
+credentials which can later be used by the tasks to be spawned. This means that
+the process submitting jobs to Kudu clusters must have direct access to that cluster.</p>
+</li>
+<li>
+<p>The embedded web servers in Kudu processes now specify the <code>X-Frame-Options: DENY</code> HTTP
+header which prevents embedding Kudu web pages in HTML <code>iframe</code> elements.</p>
+</li>
+</ul>
+</div>
+<div class="sect2">
+<h3 id="rn_1.3.0_client_compatibility"><a class="link" href="#rn_1.3.0_client_compatibility">Client Library Compatibility</a></h3>
+<div class="ulist">
+<ul>
+<li>
+<p>The Kudu 1.3 Java client library is API- and ABI-compatible with Kudu 1.2. Applications
+written against Kudu 1.2 will compile and run against the Kudu 1.3 client library and
+vice-versa, unless one of the following newly added APIs is used:</p>
+<div class="ulist">
+<ul>
+<li>
+<p><code>[Async]KuduClient.exportAuthenticationCredentials(&#8230;&#8203;)</code> (unstable API)</p>
+</li>
+<li>
+<p><code>[Async]KuduClient.importAuthenticationCredentials(&#8230;&#8203;)</code> (unstable API)</p>
+</li>
+<li>
+<p><code>[Async]KuduClient.getMasterAddressesAsString()</code></p>
+</li>
+<li>
+<p><code>KuduPredicate.newIsNotNullPredicate()</code></p>
+</li>
+<li>
+<p><code>KuduPredicate.newIsNullPredicate()</code></p>
+</li>
+</ul>
+</div>
+</li>
+<li>
+<p>The Kudu 1.3 C++ client is API- and ABI-forward-compatible with Kudu 1.2.
+Applications written and compiled against the Kudu 1.2 client library will run without
+modification against the Kudu 1.3 client library. Applications written and compiled
+against the Kudu 1.3 client library will run without modification against the Kudu 1.2
+client library unless they use one of the following new APIs:</p>
+<div class="ulist">
+<ul>
+<li>
+<p><code>kudu::DisableOpenSSLInitialization()</code></p>
+</li>
+<li>
+<p><code>KuduClientBuilder::import_authentication_credentials(&#8230;&#8203;)</code></p>
+</li>
+<li>
+<p><code>KuduClient::ExportAuthenticationCredentials(&#8230;&#8203;)</code></p>
+</li>
+<li>
+<p><code>KuduClient::NewIsNotNullPredicate(&#8230;&#8203;)</code></p>
+</li>
+<li>
+<p><code>KuduClient::NewIsNullPredicate(&#8230;&#8203;)</code></p>
+</li>
+</ul>
+</div>
+</li>
+<li>
+<p>The Kudu 1.3 Python client is API-compatible with Kudu 1.2. Applications
+written against Kudu 1.2 will continue to run against the Kudu 1.3 client
+and vice-versa.</p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
 <h2 id="rn_1.2.0"><a class="link" href="#rn_1.2.0">Release notes specific to 1.2.0</a></h2>
 <div class="sectionbody">
 
@@ -208,7 +486,7 @@
 </div>
 </div>
 <div class="sect1">
-<h2 id="_optimizations_and_improvements"><a class="link" href="#_optimizations_and_improvements">Optimizations and improvements</a></h2>
+<h2 id="_optimizations_and_improvements_2"><a class="link" href="#_optimizations_and_improvements_2">Optimizations and improvements</a></h2>
 <div class="sectionbody">
 <div class="ulist">
 <ul>
@@ -503,7 +781,7 @@
 </div>
 </div>
 <div class="sect1">
-<h2 id="_optimizations_and_improvements_2"><a class="link" href="#_optimizations_and_improvements_2">Optimizations and improvements</a></h2>
+<h2 id="_optimizations_and_improvements_3"><a class="link" href="#_optimizations_and_improvements_3">Optimizations and improvements</a></h2>
 <div class="sectionbody">
 <div class="ulist">
 <ul>
@@ -752,7 +1030,7 @@
 </div>
 </div>
 <div class="sect2">
-<h3 id="_optimizations_and_improvements_3"><a class="link" href="#_optimizations_and_improvements_3">Optimizations and improvements</a></h3>
+<h3 id="_optimizations_and_improvements_4"><a class="link" href="#_optimizations_and_improvements_4">Optimizations and improvements</a></h3>
 <div class="ulist">
 <ul>
 <li>
@@ -1733,7 +2011,7 @@
 </div>
       <footer class="footer">
         <p class="small">
-        Copyright &copy; 2016 The Apache Software Foundation.  Last updated 2017-04-10 16:00:03 PDT 
+        Copyright &copy; 2016 The Apache Software Foundation.  Last updated 2017-05-31 14:43:27 PDT 
         </p>
       </footer>
     </div>
diff --git a/docs/release_notes.html b/docs/release_notes.html
index 5ddc7ce..7e1a89f 100644
--- a/docs/release_notes.html
+++ b/docs/release_notes.html
@@ -7,7 +7,7 @@
     <!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
     <meta name="description" content="A new open source Apache Hadoop ecosystem project, Apache Kudu completes Hadoop's storage layer to enable fast analytics on fast data" />
     <meta name="author" content="Cloudera" />
-    <title>Apache Kudu - Apache Kudu 1.3.1 Release Notes</title>
+    <title>Apache Kudu - Apache Kudu 1.4.0 Release Notes</title>
     <!-- Bootstrap core CSS -->
     <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css"
           integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7"
@@ -114,84 +114,57 @@
   <div class="row">
     <div class="col-md-9">
 
-<h1>Apache Kudu 1.3.1 Release Notes</h1>
-      <div id="preamble">
-<div class="sectionbody">
-<div id="rn_1.3.1" class="paragraph">
-<p>Apache Kudu 1.3.1 is a bug-fix release which fixes critical issues in Kudu 1.3.0.</p>
-</div>
-<div class="ulist">
-<ul>
-<li>
-<p><a href="https://issues.apache.org/jira/browse/KUDU-1962">KUDU-1962</a>
-Fixed a NullPointerException in the Java client in the case that the Kudu master
-is overloaded at the time the client requests location information. This could
-cause client applications to hang indefinitely regardless of configured timeouts.</p>
-</li>
-<li>
-<p><a href="https://issues.apache.org/jira/browse/KUDU-1963">KUDU-1963</a>
-Fixed cases in which the Java client could log NullPointerException or
-SSLException stack traces in the case that it was closed while in the process
-of connecting to a server.</p>
-</li>
-<li>
-<p><a href="https://issues.apache.org/jira/browse/KUDU-1607">KUDU-1607</a>
-Fixed a case in which a tablet replica on a tablet server could retain blocks
-of data which prevented it from being fully deleted.</p>
-</li>
-<li>
-<p><a href="https://issues.apache.org/jira/browse/KUDU-1933">KUDU-1933</a>
-Fixed an issue in which a tablet server would crash and fail to restart after
-a single tablet received more than two billion write operations. Upgrading to
-Kudu 1.3.1 or later will allow a server which previously experienced this
-issue to restart.</p>
-</li>
-<li>
-<p><a href="https://issues.apache.org/jira/browse/KUDU-1968">KUDU-1968</a>
-Fixed an issue in which the tablet server would delete an incorrect set of
-data blocks after an aborted attempt to copy a tablet from another server.
-This would produce data loss in unrelated tablets.</p>
-</li>
-</ul>
-</div>
-</div>
-</div>
-<h1 id="_apache_kudu_1_3_0_release_notes" class="sect0"><a class="link" href="#_apache_kudu_1_3_0_release_notes">Apache Kudu 1.3.0 Release Notes</a></h1>
-<div class="sect1">
-<h2 id="rn_1.3.0_new_features"><a class="link" href="#rn_1.3.0_new_features">New features</a></h2>
+<h1>Apache Kudu 1.4.0 Release Notes</h1>
+      <div class="sect1">
+<h2 id="rn_1.4.0_new_features"><a class="link" href="#rn_1.4.0_new_features">New features</a></h2>
 <div class="sectionbody">
 <div class="ulist">
 <ul>
 <li>
-<p>Kudu 1.3 adds support for strong authentication based on Kerberos. This optional feature
-allows users to authenticate themselves using Kerberos tickets, and also provides
-mutual authentication of servers using Kerberos credentials stored in keytabs. This
-feature is optional, but recommended for deployments requiring security.</p>
+<p>The C++ and Java client libraries now support the ability to alter the
+storage attributes (e.g. encoding and compression) and default value
+of existing columns. Additionally, it is now possible to rename
+a column which is part of a table&#8217;s primary key.</p>
 </li>
 <li>
-<p>Kudu 1.3 adds support for encryption of data on the network using Transport Layer Security
-(TLS). Kudu will now use TLS to encrypt all network traffic between clients and servers as
-well as any internal traffic among servers, with the exception of traffic determined to
-be within a localhost network connection. Encryption is enabled by default whenever it can
-be determined that both the client and server support the feature.</p>
+<p>The C++ client library now includes an experimental <code>KuduPartitioner</code> API which may
+be used to efficiently map rows to their associated partitions and hosts.
+This may be used to achieve better locality or distribution of writes
+in client applications.</p>
 </li>
 <li>
-<p>Kudu 1.3 adds coarse-grained service-level authorization of access to the cluster.
-The operator may set up lists of permitted users who may act as administrators and
-as clients of the cluster. Combined with the strong authentication feature described
-above, this can enable a secure environment for some use cases. Note that fine-grained
-access control (e.g. table-level or column-level) is not yet supported.</p>
+<p>The Java client library now supports enabling fault tolerance on scanners.
+Fault tolerant scanners are able to transparently recover from concurrent
+server crashes at the cost of some performance overhead. See the Java
+API documentation for more details on usage.</p>
 </li>
 <li>
-<p>Kudu 1.3 adds a background task to tablet servers which removes historical versions of
-data which have fallen behind the configured data retention time. This reduces disk space
-usage in all workloads, but particularly in those with a higher volume of updates or
-upserts.</p>
+<p>The <code>kudu</code> command line tool now includes a new advanced administrative
+command <code>kudu remote_replica unsafe_change_config</code>. This command may be used
+to force a tablet to perform an unsafe change of its Raft replication
+configuration. This can be used to recover from scenarios such as a loss
+of a majority of replicas, at the risk of losing edits.</p>
 </li>
 <li>
-<p>Kudu now incorporates Google Breakpad, a library which writes crash reports in
-the case of a server crash. These reports can be found within the configured log directory,
-and can be useful during bug diagnosis.</p>
+<p>The <code>kudu</code> command line tool now includes the <code>kudu fs check</code> command
+which performs various offline consistency checks on the local on-disk
+storage of a Kudu Tablet Server or Master. In addition to detecting
+various inconsistencies or corruptions, it can also detect and remove
+data blocks that are no longer referenced by any tablet but were not
+fully removed from disk due to a crash or a bug in prior versions of Kudu.</p>
+</li>
+<li>
+<p>The <code>kudu</code> command line tool can now be used to list the addresses and
+identifiers of the servers in the cluster using either <code>kudu master list</code>
+or <code>kudu tserver list</code>.</p>
+</li>
+<li>
+<p>Kudu 1.4 now includes the optional ability to compute, store, and verify
+checksums on all pieces of data stored on a server. Prior versions only
+performed checksums on certain portions of the stored data. This feature
+is not enabled by default since it makes a backward-incompatible change
+to the on-disk formats and thus prevent downgrades. Kudu 1.5 will enable
+the feature by default.</p>
 </li>
 </ul>
 </div>
@@ -203,156 +176,157 @@
 <div class="ulist">
 <ul>
 <li>
-<p>Kudu servers will now change the file permissions of data directories and contained
-data files based on a new configuration flag <code>--umask</code>. As a result, after upgrading,
-permissions on disk may be more restrictive than in previous versions. The new default
-configuration improves data security.</p>
+<p><code>kudu cluster ksck</code> now detects and reports new classes of
+inconsistencies and issues. In particular, it is better able to
+detect cases where a configuration change such as a replica eviction
+or addition is pending but is unable to be committed. It also now
+properly detects and reports cases where a tablet has no elected
+leader.</p>
 </li>
 <li>
-<p>Kudu&#8217;s web UI will now redact strings which may include sensitive user data. For example,
-the monitoring page which shows in-progress scans no longer includes the scanner predicate
-values. The tracing and RPC diagnostics endpoints no longer include contents of RPCs which
-may include table data.</p>
+<p>The default size for Write Ahead Log (WAL) segments has been reduced
+from 64MB to 8MB. Additionally, in the case that all replicas of a
+tablet are fully up to date and data has been flushed from memory,
+servers will now retain only a single WAL segment rather than
+two. These changes are expected to reduce the average consumption of
+disk space on the configured WAL disk by 16x, as well as improve the
+startup speed of tablet servers by reducing the number and size of
+WAL segments that need to be re-read.</p>
 </li>
 <li>
-<p>By default, Kudu now reserves 1% of each configured data volume as free space. If a volume
-is seen to have less than 1% of disk space free, Kudu will stop writing to that volume
-to avoid completely filling up the disk.</p>
+<p>The default on-disk storage system used by Kudu servers (Log Block Manager)
+has been improved to compact its metadata and remove dead containers.
+This compaction and garbage collection occurs only at startup. Thus, the
+first startup after upgrade is expected to be longer than usual, and
+subsequent restarts should be shorter.</p>
 </li>
 <li>
-<p>The default encoding for numeric columns (int, float, and double) has been changed
-to <code>BIT_SHUFFLE</code>. The default encoding for binary and string columns has been
-changed to <code>DICT_ENCODING</code>. Dictionary encoding automatically falls back to the old
-default (<code>PLAIN</code>) when cardinality is too high to be effectively encoded.</p>
-<div class="paragraph">
-<p>These new defaults match the default behavior of other storage mechanisms such as
-  Apache Parquet and are likely to perform better out of the box.</p>
-</div>
+<p>The usability of the Kudu web interfaces has been improved,
+particularly for the case where a server hosts many tablets or a
+table has many partitions. Pages that list tablets now include
+a top-level summary of tablet status and show the complete list
+under a toggleable section.</p>
 </li>
 <li>
-<p>Kudu now uses <code>LZ4</code> compression when writing its Write Ahead Log (WAL). This improves
-write performance and stability for many use cases.</p>
+<p>The Maintenance Manager has been improved to improve utilization of the
+configured maintenance threads. Previously, maintenance work would
+only be scheduled a maximum of 4 times per second, but now maintenance
+work will be scheduled immediately whenever any configured thread is
+available. This can improve the throughput of write-heavy workloads.</p>
 </li>
 <li>
-<p>Kudu now uses <code>LZ4</code> compression when writing delta files. This can improve both
-read and write performance as well as save substantial disk usage, especially
-for workloads involving a high number of updates or upserts containing compressible
-data.</p>
+<p>The Maintenance Manager will now aggressively schedule flushes of
+in-memory data when memory consumption crosses 60% of the configured
+process-wide memory limit. The backpressure mechanism which begins
+to throttle client writes has been accordingly adjusted to not begin
+throttling until reaching 80% of the configured limit. These two
+changes together result in improved write throughput, more consistent
+latency, and fewer timeouts due to memory exhaustion.</p>
 </li>
 <li>
-<p>The Kudu API now supports the ability to express <code>IS NULL</code> and <code>IS NOT NULL</code> predicates
-on scanners. The Spark DataSource integration will take advantage of these new
-predicates when possible.</p>
+<p>Many performance improvements were made to write performance. Applications
+which send large batches of writes to Kudu should see substantially
+improved throughput in Kudu 1.4.</p>
 </li>
 <li>
-<p>Both C++ and Java clients have been optimized to prune partitions more effectively
-when performing scans using the <code>IN (&#8230;&#8203;)</code> predicate.</p>
+<p>Several improvements were made to reduce the memory consumption of
+Kudu Tablet Servers which hold large volumes of data. The specific
+amount of memory saved varies depending on workload, but the expectation
+is that approximately 350MB of excess peak memory usage has been eliminated
+per TB of data stored.</p>
 </li>
 <li>
-<p>The exception messages produced by the Java client are now truncated to a maximum length
-of 32KB.</p>
+<p>The number of threads used by the Kudu Tablet Server has been reduced.
+Previously, each tablet used a dedicated thread to append to its WAL.
+Those threads now automatically stop running if there is no activity
+on a given tablet for a short period of time.</p>
 </li>
 </ul>
 </div>
 </div>
 </div>
 <div class="sect1">
-<h2 id="rn_1.3.0_fixed_issues"><a class="link" href="#rn_1.3.0_fixed_issues">Fixed Issues</a></h2>
+<h2 id="rn_1.4.0_fixed_issues"><a class="link" href="#rn_1.4.0_fixed_issues">Fixed Issues</a></h2>
 <div class="sectionbody">
 <div class="ulist">
 <ul>
 <li>
-<p><a href="https://issues.apache.org/jira/browse/KUDU-1893">KUDU-1893</a>
-Fixed a critical bug in which wrong results would be returned when evaluating
-predicates applied to columns added using the <code>ALTER TABLE</code> operation.</p>
+<p><a href="https://issues.apache.org/jira/browse/KUDU-2020">KUDU-2020</a>
+Fixed an issue where re-replication after a failure would proceed
+significantly slower than expected. This bug caused many tablets
+to be unnecessarily copied multiple times before successfully
+being considered re-replicated, resulting in significantly more
+network and IO bandwidth usage than expected. Mean time to recovery
+on clusters with large amounts of data is improved by up to 10x by this
+fix.</p>
 </li>
 <li>
-<p><a href="https://issues.apache.org/jira/browse/KUDU-1905">KUDU-1905</a>
-Fixed a crash after inserting a row sharing a primary key with a recently-deleted
-row in tables where the primary key is comprised of all of the columns.</p>
+<p><a href="https://issues.apache.org/jira/browse/KUDU-1982">KUDU-1982</a>
+Fixed an issue where the Java client would call <code>NetworkInterface.getByInetAddress</code>
+very often, causing performance problems particularly on Windows
+where this function can be quite slow.</p>
 </li>
 <li>
-<p><a href="https://issues.apache.org/jira/browse/KUDU-1899">KUDU-1899</a>
-Fixed a crash after inserting a row with an empty string as the single-column
-primary key.</p>
+<p><a href="https://issues.apache.org/jira/browse/KUDU-1755">KUDU-1755</a>
+Improved the accuracy of the <code>on_disk_size</code> replica metrics to
+include the size consumed by bloom filters, primary key indexes,
+and superblock metadata, and delta files. Note that, because the size
+metric is now more accurate, the reported values are expected to
+increase after upgrading to Kudu 1.4. This does not indicate that
+replicas are using more space after the upgrade; rather, it is
+now accurately reporting the amount of space that has always been
+used.</p>
 </li>
 <li>
-<p><a href="https://issues.apache.org/jira/browse/KUDU-1904">KUDU-1904</a>
-Fixed a potential crash when performing random reads against a column using RLE
-encoding and containing long runs of NULL values.</p>
+<p><a href="https://issues.apache.org/jira/browse/KUDU-1192">KUDU-1192</a>
+Kudu servers will now periodically flush their log messages to disk
+even if no <code>WARNING</code>-level messages have been logged. This makes it
+easier to tail the logs to see progress output during normal startup.</p>
 </li>
 <li>
-<p><a href="https://issues.apache.org/jira/browse/KUDU-1853">KUDU-1853</a>
-Fixed an issue where disk space could be leaked on servers which experienced an error
-during the process of copying tablet data from another server.</p>
-</li>
-</ul>
-</div>
-<div class="admonitionblock note">
-<table>
-<tr>
-<td class="icon">
-<i class="fa icon-note" title="Note"></i>
-</td>
-<td class="content">
-The fix for KUDU-1853 resulted in a regression and was reverted in Kudu 1.3.1.
-</td>
-</tr>
-</table>
-</div>
-<div class="ulist">
-<ul>
-<li>
-<p><a href="https://issues.apache.org/jira/browse/KUDU-1856">KUDU-1856</a>
-Fixed an issue in which disk space could be leaked by Kudu servers storing data on
-partitions using the XFS file system. Any leaked disk space will be automatically
-recovered upon upgrade.</p>
-</li>
-<li>
-<p><a href="https://issues.apache.org/jira/browse/KUDU-1888">KUDU-1888</a>,
-<a href="https://issues.apache.org/jira/browse/KUDU-1906">KUDU-1906</a>
-Fixed multiple issues in the Java client where operation callbacks would never be
-triggered, causing the client to hang.</p>
+<p><a href="https://issues.apache.org/jira/browse/KUDU-1999">KUDU-1999</a>
+Fixed the ability to run Spark jobs in "cluster" mode against
+Kudu clusters secured by Kerberos.</p>
 </li>
 </ul>
 </div>
 </div>
 </div>
 <div class="sect1">
-<h2 id="rn_1.3.0_wire_compatibility"><a class="link" href="#rn_1.3.0_wire_compatibility">Wire Protocol compatibility</a></h2>
+<h2 id="rn_1.4.0_wire_compatibility"><a class="link" href="#rn_1.4.0_wire_compatibility">Wire Protocol compatibility</a></h2>
 <div class="sectionbody">
 <div class="paragraph">
-<p>Kudu 1.3.0 is wire-compatible with previous versions of Kudu:</p>
+<p>Kudu 1.4.0 is wire-compatible with previous versions of Kudu:</p>
 </div>
 <div class="ulist">
 <ul>
 <li>
-<p>Kudu 1.3 clients may connect to servers running Kudu 1.0. If the client uses features
-that are not available on the target server, an error will be returned.</p>
+<p>Kudu 1.4 clients may connect to servers running Kudu 1.0 or later. If the client uses
+features that are not available on the target server, an error will be returned.</p>
 </li>
 <li>
-<p>Kudu 1.0 clients may connect to servers running Kudu 1.3 with the exception of the
+<p>Kudu 1.0 clients may connect to servers running Kudu 1.4 with the exception of the
 below-mentioned restrictions regarding secure clusters.</p>
 </li>
 <li>
-<p>Rolling upgrade between Kudu 1.2 and Kudu 1.3 servers is believed to be possible
+<p>Rolling upgrade between Kudu 1.3 and Kudu 1.4 servers is believed to be possible
 though has not been sufficiently tested. Users are encouraged to shut down all nodes
 in the cluster, upgrade the software, and then restart the daemons on the new version.</p>
 </li>
 </ul>
 </div>
 <div class="paragraph">
-<p>The authentication features newly introduced in Kudu 1.3 place the following limitations
-on wire compatibility with older versions:</p>
+<p>The authentication features introduced in Kudu 1.3 place the following limitations
+on wire compatibility between Kudu 1.4 and versions earlier than 1.3:</p>
 </div>
 <div class="ulist">
 <ul>
 <li>
-<p>If a Kudu 1.3 cluster is configured with authentication or encryption set to "required",
-older clients will be unable to connect.</p>
+<p>If a Kudu 1.4 cluster is configured with authentication or encryption set to "required",
+clients older than Kudu 1.3 will be unable to connect.</p>
 </li>
 <li>
-<p>If a Kudu 1.3 cluster is configured with authentication and encryption set to "optional"
+<p>If a Kudu 1.4 cluster is configured with authentication and encryption set to "optional"
 or "disabled", older clients will still be able to connect.</p>
 </li>
 </ul>
@@ -360,84 +334,84 @@
 </div>
 </div>
 <div class="sect1">
-<h2 id="rn_1.3.0_incompatible_changes"><a class="link" href="#rn_1.3.0_incompatible_changes">Incompatible Changes in Kudu 1.3.0</a></h2>
+<h2 id="rn_1.4.0_incompatible_changes"><a class="link" href="#rn_1.4.0_incompatible_changes">Incompatible Changes in Kudu 1.4.0</a></h2>
 <div class="sectionbody">
 <div class="ulist">
 <ul>
 <li>
-<p>Due to storage format changes in Kudu 1.3, downgrade from Kudu 1.3 to earlier versions
-is not supported. After upgrading to Kudu 1.3, attempting to restart with an earlier
-version will result in an error.</p>
-</li>
-<li>
-<p>In order to support running MapReduce and Spark jobs on secure clusters, these
-frameworks now connect to the cluster at job submission time to retrieve authentication
-credentials which can later be used by the tasks to be spawned. This means that
-the process submitting jobs to Kudu clusters must have direct access to that cluster.</p>
-</li>
-<li>
-<p>The embedded web servers in Kudu processes now specify the <code>X-Frame-Options: DENY</code> HTTP
-header which prevents embedding Kudu web pages in HTML <code>iframe</code> elements.</p>
+<p>Kudu servers, by default, will now only allow unencrypted or unauthenticated connections
+from trusted subnets, which are private networks (127.0.0.0/8,10.0.0.0/8,172.16.0.0/12,
+192.168.0.0/16,169.254.0.0/16) and local subnets of all local network interfaces.
+Unencrypted or unauthenticated connections from publicly routable IPs will be rejected,
+even if encryption and authentication are not configured.</p>
+<div class="paragraph">
+<p>The trusted subnets can be configured using the <code>--trusted_subnets</code> flag, which can be set
+   to IP blocks represented in CIDR notation separated by comma. Set it to '0.0.0.0/0' to
+   allow unauthenticated connections from all remote IP addresses. However, if network access
+   is not otherwise restricted by a firewall, malicious users may be able to gain unauthorized
+   access. This can be mitigated if authentication and encryption are configured to be
+   required.</p>
+</div>
 </li>
 </ul>
 </div>
 <div class="sect2">
-<h3 id="rn_1.3.0_client_compatibility"><a class="link" href="#rn_1.3.0_client_compatibility">Client Library Compatibility</a></h3>
+<h3 id="rn_1.4.0_client_compatibility"><a class="link" href="#rn_1.4.0_client_compatibility">Client Library Compatibility</a></h3>
 <div class="ulist">
 <ul>
 <li>
-<p>The Kudu 1.3 Java client library is API- and ABI-compatible with Kudu 1.2. Applications
-written against Kudu 1.2 will compile and run against the Kudu 1.3 client library and
+<p>The Kudu 1.4 Java client library is API- and ABI-compatible with Kudu 1.3. Applications
+written against Kudu 1.3 will compile and run against the Kudu 1.4 client library and
 vice-versa, unless one of the following newly added APIs is used:</p>
 <div class="ulist">
 <ul>
 <li>
-<p><code>[Async]KuduClient.exportAuthenticationCredentials(&#8230;&#8203;)</code> (unstable API)</p>
+<p><code>[Async]KuduScannerBuilder.setFaultTolerant(&#8230;&#8203;)</code></p>
 </li>
 <li>
-<p><code>[Async]KuduClient.importAuthenticationCredentials(&#8230;&#8203;)</code> (unstable API)</p>
+<p>New methods in <code>AlterTableOptions</code>: <code>removeDefault</code>, <code>changeDefault</code>, <code>changeDesiredBlockSize</code>,
+<code>changeEncoding</code>, <code>changeCompressionAlgorithm</code></p>
 </li>
 <li>
-<p><code>[Async]KuduClient.getMasterAddressesAsString()</code></p>
+<p><code>KuduClient.updateLastPropagatedTimestamp</code></p>
 </li>
 <li>
-<p><code>KuduPredicate.newIsNotNullPredicate()</code></p>
+<p><code>KuduClient.getLastPropagatedTimestamp</code></p>
 </li>
 <li>
-<p><code>KuduPredicate.newIsNullPredicate()</code></p>
+<p>New getters in <code>PartialRow</code>: <code>getBoolean</code>, <code>getByte</code>, <code>getShort</code>, <code>getInt</code>, <code>getLong</code>,
+<code>getFloat</code>, <code>getDouble</code>, <code>getString</code>, <code>getBinaryCopy</code>, <code>getBinary</code>, <code>isNull</code>,
+<code>isSet</code>.</p>
 </li>
 </ul>
 </div>
 </li>
 <li>
-<p>The Kudu 1.3 C++ client is API- and ABI-forward-compatible with Kudu 1.2.
-Applications written and compiled against the Kudu 1.2 client library will run without
-modification against the Kudu 1.3 client library. Applications written and compiled
-against the Kudu 1.3 client library will run without modification against the Kudu 1.2
+<p>The Kudu 1.4 C++ client is API- and ABI-forward-compatible with Kudu 1.3.
+Applications written and compiled against the Kudu 1.3 client library will run without
+modification against the Kudu 1.4 client library. Applications written and compiled
+against the Kudu 1.4 client library will run without modification against the Kudu 1.3
 client library unless they use one of the following new APIs:</p>
 <div class="ulist">
 <ul>
 <li>
-<p><code>kudu::DisableOpenSSLInitialization()</code></p>
+<p><code>KuduPartitionerBuilder</code></p>
 </li>
 <li>
-<p><code>KuduClientBuilder::import_authentication_credentials(&#8230;&#8203;)</code></p>
+<p>`KuduPartitioner</p>
 </li>
 <li>
-<p><code>KuduClient::ExportAuthenticationCredentials(&#8230;&#8203;)</code></p>
+<p><code>KuduScanner::SetRowFormatFlags</code> (unstable API)</p>
 </li>
 <li>
-<p><code>KuduClient::NewIsNotNullPredicate(&#8230;&#8203;)</code></p>
-</li>
-<li>
-<p><code>KuduClient::NewIsNullPredicate(&#8230;&#8203;)</code></p>
+<p><code>KuduScanBatch::direct_data</code>, <code>KuduScanBatch::indirect_data</code> (unstable API)</p>
 </li>
 </ul>
 </div>
 </li>
 <li>
-<p>The Kudu 1.3 Python client is API-compatible with Kudu 1.2. Applications
-written against Kudu 1.2 will continue to run against the Kudu 1.3 client
+<p>The Kudu 1.4 Python client is API-compatible with Kudu 1.3. Applications
+written against Kudu 1.3 will continue to run against the Kudu 1.4 client
 and vice-versa.</p>
 </li>
 </ul>
@@ -446,7 +420,7 @@
 </div>
 </div>
 <div class="sect1">
-<h2 id="rn_1.3.0_known_issues"><a class="link" href="#rn_1.3.0_known_issues">Known Issues and Limitations</a></h2>
+<h2 id="rn_1.4.0_known_issues"><a class="link" href="#rn_1.4.0_known_issues">Known Issues and Limitations</a></h2>
 <div class="sectionbody">
 <div class="paragraph">
 <p>Please refer to the <a href="known_issues.html">Known Issues and Limitations</a> section of the
@@ -513,24 +487,20 @@
       </li> 
       <li>
 <span class="active-toc">Kudu Release Notes</span>
-            <ul class="sectlevel0">
-<li><a href="#_apache_kudu_1_3_0_release_notes">Apache Kudu 1.3.0 Release Notes</a>
-<ul class="sectlevel1">
-<li><a href="#rn_1.3.0_new_features">New features</a></li>
+            <ul class="sectlevel1">
+<li><a href="#rn_1.4.0_new_features">New features</a></li>
 <li><a href="#_optimizations_and_improvements">Optimizations and improvements</a></li>
-<li><a href="#rn_1.3.0_fixed_issues">Fixed Issues</a></li>
-<li><a href="#rn_1.3.0_wire_compatibility">Wire Protocol compatibility</a></li>
-<li><a href="#rn_1.3.0_incompatible_changes">Incompatible Changes in Kudu 1.3.0</a>
+<li><a href="#rn_1.4.0_fixed_issues">Fixed Issues</a></li>
+<li><a href="#rn_1.4.0_wire_compatibility">Wire Protocol compatibility</a></li>
+<li><a href="#rn_1.4.0_incompatible_changes">Incompatible Changes in Kudu 1.4.0</a>
 <ul class="sectlevel2">
-<li><a href="#rn_1.3.0_client_compatibility">Client Library Compatibility</a></li>
+<li><a href="#rn_1.4.0_client_compatibility">Client Library Compatibility</a></li>
 </ul>
 </li>
-<li><a href="#rn_1.3.0_known_issues">Known Issues and Limitations</a></li>
+<li><a href="#rn_1.4.0_known_issues">Known Issues and Limitations</a></li>
 <li><a href="#resources_and_next_steps">Resources</a></li>
 <li><a href="#_installation_options">Installation Options</a></li>
 <li><a href="#_next_steps">Next Steps</a></li>
-</ul>
-</li>
 </ul> 
       </li> 
       <li>
@@ -604,7 +574,7 @@
 </div>
       <footer class="footer">
         <p class="small">
-        Copyright &copy; 2016 The Apache Software Foundation.  Last updated 2017-05-15 12:38:04 PDT 
+        Copyright &copy; 2016 The Apache Software Foundation.  Last updated 2017-06-08 18:46:50 PDT 
         </p>
       </footer>
     </div>
diff --git a/docs/schema_design.html b/docs/schema_design.html
index 5f1b80d..05b269e 100644
--- a/docs/schema_design.html
+++ b/docs/schema_design.html
@@ -201,10 +201,10 @@
 <p>double-precision (64-bit) IEEE-754 floating-point number</p>
 </li>
 <li>
-<p>UTF-8 encoded string (up to 64KB)</p>
+<p>UTF-8 encoded string (up to 64KB uncompressed)</p>
 </li>
 <li>
-<p>binary (up to 64KB)</p>
+<p>binary (up to 64KB uncompressed)</p>
 </li>
 </ul>
 </div>
@@ -747,6 +747,9 @@
 <p>Rename the table</p>
 </li>
 <li>
+<p>Rename primary key columns</p>
+</li>
+<li>
 <p>Rename, add, or drop non-primary key columns</p>
 </li>
 <li>
@@ -789,10 +792,11 @@
 </dd>
 <dt class="hdlist1">Size of Cells</dt>
 <dd>
-<p>No individual cell may be larger than 64KB. The cells making up
-a composite key are limited to a total of 16KB after the internal composite-key encoding
-done by Kudu. Inserting rows not conforming to these limitations will result in errors
-being returned to the client.</p>
+<p>No individual cell may be larger than 64KB before encoding or
+compression. The cells making up a composite key are limited to a total of 16KB
+after the internal composite-key encoding done by Kudu. Inserting rows not
+conforming to these limitations will result in errors being returned to the
+client.</p>
 </dd>
 <dt class="hdlist1">Size of Rows</dt>
 <dd>
@@ -953,7 +957,7 @@
 </div>
       <footer class="footer">
         <p class="small">
-        Copyright &copy; 2016 The Apache Software Foundation.  Last updated 2017-05-15 12:38:04 PDT 
+        Copyright &copy; 2016 The Apache Software Foundation.  Last updated 2017-05-31 14:43:27 PDT 
         </p>
       </footer>
     </div>
diff --git a/docs/security.html b/docs/security.html
index 57d5cdb..64602ff 100644
--- a/docs/security.html
+++ b/docs/security.html
@@ -141,9 +141,20 @@
 <code>--rpc-authentication</code> flag, which can be set to <code>required</code>, <code>optional</code>, or
 <code>disabled</code>. By default, the flag is set to <code>optional</code>. When <code>required</code>, Kudu
 will reject connections from clients and servers who lack authentication
-credentials. When <code>optional</code>, Kudu will attempt to use strong authentication,
-but will allow unauthenticated connections. When <code>disabled</code>, Kudu will only
-allow unauthenticated connections.</p>
+credentials. When <code>optional</code>, Kudu will attempt to use strong authentication.
+When <code>disabled</code> or strong authentication fails for 'optional', by default Kudu
+will only allow unauthenticated connections from trusted subnets, which are
+private networks (127.0.0.0/8,10.0.0.0/8,172.16.0.0/12,192.168.0.0/16,
+169.254.0.0/16) and local subnets of all local network interfaces. Unauthenticated
+connections from publicly routable IPs will be rejected.</p>
+</div>
+<div class="paragraph">
+<p>The trusted subnets can be configured using the <code>--trusted_subnets</code> flag,
+which can be set to IP blocks in CIDR notation separated by comma. Set it to
+'0.0.0.0/0' to allow unauthenticated connections from all remote IP addresses.
+However, if network access is not otherwise restricted by a firewall,
+malicious users may be able to gain unauthorized access. This can be mitigated
+if authentication is configured to be required.</p>
 </div>
 <div class="admonitionblock warning">
 <table>
@@ -227,9 +238,10 @@
 <p>Encryption can be configured on Kudu servers using the <code>--rpc-encryption</code> flag,
 which can be set to <code>required</code>, <code>optional</code>, or <code>disabled</code>. By default, the flag
 is set to <code>optional</code>. When <code>required</code>, Kudu will reject unencrypted connections.
-When <code>optional</code>, Kudu will attempt to use encryption, but will allow unencrypted
-connections. When <code>disabled</code>, Kudu will never use encryption. To secure a
-cluster, use <code>--rpc-encryption=required</code>.</p>
+When <code>optional</code>, Kudu will attempt to use encryption. Same as authentication,
+when <code>disabled</code> or encryption fails for <code>optional</code>, Kudu will only allow
+unencrypted connections from trusted subnets and reject any unencrypted connections
+from publicly routable IPs. To secure a cluster, use <code>--rpc-encryption=required</code>.</p>
 </div>
 <div class="admonitionblock note">
 <table>
@@ -407,11 +419,11 @@
 <dl>
 <dt class="hdlist1">Long-lived Tokens</dt>
 <dd>
-<p>Kudu clients do not automatically request fresh tokens after
-initial token expiration, so long-lived clients in secure clusters are not
-supported. Note that applications such as Apache Impala construct new clients
-for each query and thus this limitation only affects the runtime of any single
-query.</p>
+<p>The Java Kudu client does not automatically request fresh
+authn tokens after initial token expiration, so long-lived Java clients in
+secure clusters are not supported. However, the C Kudu client does
+automatically request fresh authn tokens, so long-lived C clients
+(i.e. beyond authn token lifetime) in secure clusters are supported.</p>
 </dd>
 <dt class="hdlist1">Custom Kerberos Principal</dt>
 <dd>
@@ -548,7 +560,7 @@
 </div>
       <footer class="footer">
         <p class="small">
-        Copyright &copy; 2016 The Apache Software Foundation.  Last updated 2017-05-15 12:38:07 PDT 
+        Copyright &copy; 2016 The Apache Software Foundation.  Last updated 2017-05-31 14:43:27 PDT 
         </p>
       </footer>
     </div>
diff --git a/docs/troubleshooting.html b/docs/troubleshooting.html
index 3622604..61b2653 100644
--- a/docs/troubleshooting.html
+++ b/docs/troubleshooting.html
@@ -116,7 +116,7 @@
 
 <h1>Apache Kudu Troubleshooting</h1>
       <div class="sect1">
-<h2 id="_issues_starting_the_master_or_tablet_server"><a class="link" href="#_issues_starting_the_master_or_tablet_server">Issues starting the Master or Tablet Server</a></h2>
+<h2 id="_startup_errors"><a class="link" href="#_startup_errors">Startup Errors</a></h2>
 <div class="sectionbody">
 <div class="sect2">
 <h3 id="req_hole_punching"><a class="link" href="#req_hole_punching">Errors During Hole Punching Test</a></h3>
@@ -178,7 +178,7 @@
 </div>
 </div>
 <div class="sect2">
-<h3 id="ntp"><a class="link" href="#ntp">NTP clock synchronization</a></h3>
+<h3 id="ntp"><a class="link" href="#ntp">NTP Clock Synchronization</a></h3>
 <div class="paragraph">
 <p>For the master and tablet server daemons, the server&#8217;s clock must be synchronized using NTP.
 In addition, the <strong>maximum clock error</strong> (not to be mistaken with the estimated error)
@@ -298,7 +298,68 @@
 </div>
 </div>
 <div class="sect1">
-<h2 id="_troubleshooting_performance_issues"><a class="link" href="#_troubleshooting_performance_issues">Troubleshooting Performance Issues</a></h2>
+<h2 id="crash_reporting"><a class="link" href="#crash_reporting">Reporting Kudu Crashes</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Kudu uses the
+<a href="https://chromium.googlesource.com/breakpad/breakpad/">Google Breakpad</a>
+library to generate a minidump whenever Kudu experiences a crash. These
+minidumps are typically only a few MB in size and are generated even if core
+dump generation is disabled. At this time, generating minidumps is only
+possible in Kudu on Linux builds.</p>
+</div>
+<div class="paragraph">
+<p>A minidump file contains important debugging information about the process that
+crashed, including shared libraries loaded and their versions, a list of
+threads running at the time of the crash, the state of the processor registers
+and a copy of the stack memory for each thread, and CPU and operating system
+version information.</p>
+</div>
+<div class="paragraph">
+<p>It is also possible to force Kudu to create a minidump without killing the
+process by sending a <code>USR1</code> signal to the <code>kudu-tserver</code> or <code>kudu-master</code>
+process. For example:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-bash" data-lang="bash">sudo pkill -USR1 kudu-tserver</code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>By default, Kudu stores its minidumps in a subdirectory of its configured glog
+directory called <code>minidumps</code>. This location can be customized by setting the
+<code>--minidump_path</code> flag. Kudu will retain only a certain number of minidumps
+before deleting the oldest ones, in an effort to avoid filling up the disk with
+minidump files. The maximum number of minidumps that will be retained can be
+controlled by setting the <code>--max_minidumps</code> gflag.</p>
+</div>
+<div class="paragraph">
+<p>Minidumps contain information specific to the binary that created them and so
+are not usable without access to the exact binary that crashed, or a very
+similar binary.</p>
+</div>
+<div class="admonitionblock note">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-note" title="Note"></i>
+</td>
+<td class="content">
+A minidump can be emailed to a Kudu developer or attached to a JIRA in
+order to help a Kudu developer debug a crash. In order for it to be useful, the
+developer will need to know the exact version of Kudu and the operating system
+where the crash was observed. Note that while a minidump does not contain a
+heap memory dump, it does contain stack memory and therefore it is possible for
+application data to appear in a minidump. If confidential or personal
+information is stored on the cluster, do not share minidump files.
+</td>
+</tr>
+</table>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_performance_troubleshooting"><a class="link" href="#_performance_troubleshooting">Performance Troubleshooting</a></h2>
 <div class="sectionbody">
 <div class="sect2">
 <h3 id="kudu_tracing"><a class="link" href="#kudu_tracing">Kudu Tracing</a></h3>
@@ -517,13 +578,14 @@
       <li>
 <span class="active-toc">Troubleshooting Kudu</span>
             <ul class="sectlevel1">
-<li><a href="#_issues_starting_the_master_or_tablet_server">Issues starting the Master or Tablet Server</a>
+<li><a href="#_startup_errors">Startup Errors</a>
 <ul class="sectlevel2">
 <li><a href="#req_hole_punching">Errors During Hole Punching Test</a></li>
-<li><a href="#ntp">NTP clock synchronization</a></li>
+<li><a href="#ntp">NTP Clock Synchronization</a></li>
 </ul>
 </li>
-<li><a href="#_troubleshooting_performance_issues">Troubleshooting Performance Issues</a>
+<li><a href="#crash_reporting">Reporting Kudu Crashes</a></li>
+<li><a href="#_performance_troubleshooting">Performance Troubleshooting</a>
 <ul class="sectlevel2">
 <li><a href="#kudu_tracing">Kudu Tracing</a></li>
 <li><a href="#_rpc_timeout_traces">RPC Timeout Traces</a></li>
@@ -584,7 +646,7 @@
 </div>
       <footer class="footer">
         <p class="small">
-        Copyright &copy; 2016 The Apache Software Foundation.  Last updated 2017-05-15 12:38:07 PDT 
+        Copyright &copy; 2016 The Apache Software Foundation.  Last updated 2017-05-18 13:38:03 PDT 
         </p>
       </footer>
     </div>
diff --git a/feed.xml b/feed.xml
index 6683e9d..b8dd5c2 100644
--- a/feed.xml
+++ b/feed.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom"><generator uri="http://jekyllrb.com" version="2.5.3">Jekyll</generator><link href="/feed.xml" rel="self" type="application/atom+xml" /><link href="/" rel="alternate" type="text/html" /><updated>2017-05-15T12:52:51-07:00</updated><id>/</id><entry><title>Apache Kudu 1.3.1 released</title><link href="/2017/04/19/apache-kudu-1-3-1-released.html" rel="alternate" type="text/html" title="Apache Kudu 1.3.1 released" /><published>2017-04-19T00:00:00-07:00</published><updated>2017-04-19T00:00:00-07:00</updated><id>/2017/04/19/apache-kudu-1-3-1-released</id><content type="html" xml:base="/2017/04/19/apache-kudu-1-3-1-released.html">&lt;p&gt;The Apache Kudu team is happy to announce the release of Kudu 1.3.1!&lt;/p&gt;
+<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom"><generator uri="http://jekyllrb.com" version="2.5.3">Jekyll</generator><link href="/feed.xml" rel="self" type="application/atom+xml" /><link href="/" rel="alternate" type="text/html" /><updated>2017-06-15T10:02:16-07:00</updated><id>/</id><entry><title>Apache Kudu 1.3.1 released</title><link href="/2017/04/19/apache-kudu-1-3-1-released.html" rel="alternate" type="text/html" title="Apache Kudu 1.3.1 released" /><published>2017-04-19T00:00:00-07:00</published><updated>2017-04-19T00:00:00-07:00</updated><id>/2017/04/19/apache-kudu-1-3-1-released</id><content type="html" xml:base="/2017/04/19/apache-kudu-1-3-1-released.html">&lt;p&gt;The Apache Kudu team is happy to announce the release of Kudu 1.3.1!&lt;/p&gt;
 
 &lt;p&gt;Apache Kudu 1.3.1 is a bug fix release which fixes critical issues discovered
 in Apache Kudu 1.3.0. In particular, this fixes a bug in which data could be
diff --git a/releases/0.8.0/index.html b/releases/0.8.0/index.html
index 6ba7cdc..49bf61c 100644
--- a/releases/0.8.0/index.html
+++ b/releases/0.8.0/index.html
@@ -126,7 +126,7 @@
 <p>Downloads of Kudu 0.8.0 are available in the following formats:</p>
 
 <ul>
-  <li><a href="http://www.apache.org/closer.cgi?filename=incubator/kudu/0.8.0/apache-kudu-incubating-0.8.0.tar.gz&amp;action=download">Kudu 0.8.0 source tarball</a>
+  <li><a href="https://archive.apache.org/dist/incubator/kudu/0.8.0/apache-kudu-incubating-0.8.0.tar.gz">Kudu 0.8.0 source tarball</a>,
 (<a href="https://archive.apache.org/dist/incubator/kudu/0.8.0/apache-kudu-incubating-0.8.0.tar.gz.sha">SHA1</a>,
 <a href="https://archive.apache.org/dist/incubator/kudu/0.8.0/apache-kudu-incubating-0.8.0.tar.gz.md5">MD5</a>,
 <a href="https://archive.apache.org/dist/incubator/kudu/0.8.0/apache-kudu-incubating-0.8.0.tar.gz.asc">Signature</a>)</li>
diff --git a/releases/0.9.0/index.html b/releases/0.9.0/index.html
index efe4c11..0acdacf 100644
--- a/releases/0.9.0/index.html
+++ b/releases/0.9.0/index.html
@@ -126,7 +126,7 @@
 <p>Downloads of Kudu 0.9.0 are available in the following formats:</p>
 
 <ul>
-  <li><a href="http://www.apache.org/closer.cgi?filename=incubator/kudu/0.9.0/apache-kudu-incubating-0.9.0.tar.gz&amp;action=download">Kudu 0.9.0 source tarball</a>
+  <li><a href="https://archive.apache.org/dist/incubator/kudu/0.9.0/apache-kudu-incubating-0.9.0.tar.gz">Kudu 0.9.0 source tarball</a>
 (<a href="https://archive.apache.org/dist/incubator/kudu/0.9.0/apache-kudu-incubating-0.9.0.tar.gz.sha">SHA1</a>,
 <a href="https://archive.apache.org/dist/incubator/kudu/0.9.0/apache-kudu-incubating-0.9.0.tar.gz.md5">MD5</a>,
 <a href="https://archive.apache.org/dist/incubator/kudu/0.9.0/apache-kudu-incubating-0.9.0.tar.gz.asc">Signature</a>)</li>
diff --git a/releases/0.9.1/index.html b/releases/0.9.1/index.html
index 96a064e..7fa87ed 100644
--- a/releases/0.9.1/index.html
+++ b/releases/0.9.1/index.html
@@ -126,7 +126,7 @@
 <p>Downloads of Kudu 0.9.1 are available in the following formats:</p>
 
 <ul>
-  <li><a href="http://www.apache.org/closer.cgi?filename=incubator/kudu/0.9.1/apache-kudu-incubating-0.9.1.tar.gz&amp;action=download">Kudu 0.9.1 source tarball</a>
+  <li><a href="https://archive.apache.org/dist/incubator/kudu/0.9.1/apache-kudu-incubating-0.9.1.tar.gz">Kudu 0.9.1 source tarball</a>
 (<a href="https://archive.apache.org/dist/incubator/kudu/0.9.1/apache-kudu-incubating-0.9.1.tar.gz.sha">SHA1</a>,
 <a href="https://archive.apache.org/dist/incubator/kudu/0.9.1/apache-kudu-incubating-0.9.1.tar.gz.md5">MD5</a>,
 <a href="https://archive.apache.org/dist/incubator/kudu/0.9.1/apache-kudu-incubating-0.9.1.tar.gz.asc">Signature</a>)</li>
diff --git a/releases/1.1.0/index.html b/releases/1.1.0/index.html
index d613d54..5085580 100644
--- a/releases/1.1.0/index.html
+++ b/releases/1.1.0/index.html
@@ -126,10 +126,10 @@
 <p>Downloads of Kudu 1.1.0 are available in the following formats:</p>
 
 <ul>
-  <li><a href="http://www.apache.org/closer.cgi?filename=kudu/1.1.0/apache-kudu-1.1.0.tar.gz&amp;action=download">Kudu 1.1.0 source tarball</a>
-(<a href="https://www.apache.org/dist/kudu/1.1.0/apache-kudu-1.1.0.tar.gz.sha">SHA1</a>,
-<a href="https://www.apache.org/dist/kudu/1.1.0/apache-kudu-1.1.0.tar.gz.md5">MD5</a>,
-<a href="https://www.apache.org/dist/kudu/1.1.0/apache-kudu-1.1.0.tar.gz.asc">Signature</a>)</li>
+  <li><a href="https://archive.apache.org/dist/kudu/1.1.0/apache-kudu-1.1.0.tar.gz">Kudu 1.1.0 source tarball</a>
+(<a href="https://archive.apache.org/dist/kudu/1.1.0/apache-kudu-1.1.0.tar.gz.sha">SHA1</a>,
+<a href="https://archive.apache.org/dist/kudu/1.1.0/apache-kudu-1.1.0.tar.gz.md5">MD5</a>,
+<a href="https://archive.apache.org/dist/kudu/1.1.0/apache-kudu-1.1.0.tar.gz.asc">Signature</a>)</li>
 </ul>
 
 <p>You can use the <a href="https://www.apache.org/dist/kudu/KEYS">KEYS file</a> to verify the included GPG signature.</p>
diff --git a/releases/1.2.0/index.html b/releases/1.2.0/index.html
index cd28572..346a019 100644
--- a/releases/1.2.0/index.html
+++ b/releases/1.2.0/index.html
@@ -126,10 +126,10 @@
 <p>Downloads of Kudu 1.2.0 are available in the following formats:</p>
 
 <ul>
-  <li><a href="http://www.apache.org/closer.cgi?filename=kudu/1.2.0/apache-kudu-1.2.0.tar.gz&amp;action=download">Kudu 1.2.0 source tarball</a>
-(<a href="https://www.apache.org/dist/kudu/1.2.0/apache-kudu-1.2.0.tar.gz.sha">SHA1</a>,
-<a href="https://www.apache.org/dist/kudu/1.2.0/apache-kudu-1.2.0.tar.gz.md5">MD5</a>,
-<a href="https://www.apache.org/dist/kudu/1.2.0/apache-kudu-1.2.0.tar.gz.asc">Signature</a>)</li>
+  <li><a href="https://archive.apache.org/dist/kudu/1.2.0/apache-kudu-1.2.0.tar.gz">Kudu 1.2.0 source tarball</a>
+(<a href="https://archive.apache.org/dist/kudu/1.2.0/apache-kudu-1.2.0.tar.gz.sha">SHA1</a>,
+<a href="https://archive.apache.org/dist/kudu/1.2.0/apache-kudu-1.2.0.tar.gz.md5">MD5</a>,
+<a href="https://archive.apache.org/dist/kudu/1.2.0/apache-kudu-1.2.0.tar.gz.asc">Signature</a>)</li>
 </ul>
 
 <p>You can use the <a href="https://www.apache.org/dist/kudu/KEYS">KEYS file</a> to verify the included GPG signature.</p>
diff --git a/releases/1.3.0/index.html b/releases/1.3.0/index.html
index d31f35d..a20e16a 100644
--- a/releases/1.3.0/index.html
+++ b/releases/1.3.0/index.html
@@ -126,10 +126,10 @@
 <p>Downloads of Kudu 1.3.0 are available in the following formats:</p>
 
 <ul>
-  <li><a href="http://www.apache.org/closer.cgi?filename=kudu/1.3.0/apache-kudu-1.3.0.tar.gz&amp;action=download">Kudu 1.3.0 source tarball</a>
-(<a href="https://www.apache.org/dist/kudu/1.3.0/apache-kudu-1.3.0.tar.gz.sha">SHA1</a>,
-<a href="https://www.apache.org/dist/kudu/1.3.0/apache-kudu-1.3.0.tar.gz.md5">MD5</a>,
-<a href="https://www.apache.org/dist/kudu/1.3.0/apache-kudu-1.3.0.tar.gz.asc">Signature</a>)</li>
+  <li><a href="https://archive.apache.org/dist/kudu/1.3.0/apache-kudu-1.3.0.tar.gz">Kudu 1.3.0 source tarball</a>
+(<a href="https://archive.apache.org/dist/kudu/1.3.0/apache-kudu-1.3.0.tar.gz.sha">SHA1</a>,
+<a href="https://archive.apache.org/dist/kudu/1.3.0/apache-kudu-1.3.0.tar.gz.md5">MD5</a>,
+<a href="https://archive.apache.org/dist/kudu/1.3.0/apache-kudu-1.3.0.tar.gz.asc">Signature</a>)</li>
 </ul>
 
 <p>You can use the <a href="https://www.apache.org/dist/kudu/KEYS">KEYS file</a> to verify the included GPG signature.</p>
diff --git a/releases/1.3.1/index.html b/releases/1.3.1/index.html
index 19467c6..bf9797a 100644
--- a/releases/1.3.1/index.html
+++ b/releases/1.3.1/index.html
@@ -126,10 +126,10 @@
 <p>Downloads of Kudu 1.3.1 are available in the following formats:</p>
 
 <ul>
-  <li><a href="http://www.apache.org/closer.cgi?filename=kudu/1.3.1/apache-kudu-1.3.1.tar.gz&amp;action=download">Kudu 1.3.1 source tarball</a>
-(<a href="https://www.apache.org/dist/kudu/1.3.1/apache-kudu-1.3.1.tar.gz.sha">SHA1</a>,
-<a href="https://www.apache.org/dist/kudu/1.3.1/apache-kudu-1.3.1.tar.gz.md5">MD5</a>,
-<a href="https://www.apache.org/dist/kudu/1.3.1/apache-kudu-1.3.1.tar.gz.asc">Signature</a>)</li>
+  <li><a href="https://archive.apache.org/dist/kudu/1.3.1/apache-kudu-1.3.1.tar.gz">Kudu 1.3.1 source tarball</a>
+(<a href="https://archive.apache.org/dist/kudu/1.3.1/apache-kudu-1.3.1.tar.gz.sha">SHA1</a>,
+<a href="https://archive.apache.org/dist/kudu/1.3.1/apache-kudu-1.3.1.tar.gz.md5">MD5</a>,
+<a href="https://archive.apache.org/dist/kudu/1.3.1/apache-kudu-1.3.1.tar.gz.asc">Signature</a>)</li>
 </ul>
 
 <p>You can use the <a href="https://www.apache.org/dist/kudu/KEYS">KEYS file</a> to verify the included GPG signature.</p>
diff --git a/releases/1.4.0/apidocs/allclasses-frame.html b/releases/1.4.0/apidocs/allclasses-frame.html
new file mode 100644
index 0000000..dcf5212
--- /dev/null
+++ b/releases/1.4.0/apidocs/allclasses-frame.html
@@ -0,0 +1,88 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>All Classes (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
+<script type="text/javascript" src="script.js"></script>
+</head>
+<body>
+<h1 class="bar">All&nbsp;Classes</h1>
+<div class="indexContainer">
+<ul>
+<li><a href="org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="class in org.apache.kudu.client" target="classFrame">AbstractKuduScannerBuilder</a></li>
+<li><a href="org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client" target="classFrame">AlterTableOptions</a></li>
+<li><a href="org/apache/kudu/client/AlterTableResponse.html" title="class in org.apache.kudu.client" target="classFrame">AlterTableResponse</a></li>
+<li><a href="org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client" target="classFrame">AsyncKuduClient</a></li>
+<li><a href="org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html" title="class in org.apache.kudu.client" target="classFrame">AsyncKuduClient.AsyncKuduClientBuilder</a></li>
+<li><a href="org/apache/kudu/client/AsyncKuduScanner.html" title="class in org.apache.kudu.client" target="classFrame">AsyncKuduScanner</a></li>
+<li><a href="org/apache/kudu/client/AsyncKuduScanner.AsyncKuduScannerBuilder.html" title="class in org.apache.kudu.client" target="classFrame">AsyncKuduScanner.AsyncKuduScannerBuilder</a></li>
+<li><a href="org/apache/kudu/client/AsyncKuduScanner.ReadMode.html" title="enum in org.apache.kudu.client" target="classFrame">AsyncKuduScanner.ReadMode</a></li>
+<li><a href="org/apache/kudu/client/AsyncKuduSession.html" title="class in org.apache.kudu.client" target="classFrame">AsyncKuduSession</a></li>
+<li><a href="org/apache/kudu/flume/sink/AvroKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink" target="classFrame">AvroKuduOperationsProducer</a></li>
+<li><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools" target="classFrame">BigLinkedListCommon</a></li>
+<li><a href="org/apache/kudu/client/ColumnRangePredicate.html" title="class in org.apache.kudu.client" target="classFrame">ColumnRangePredicate</a></li>
+<li><a href="org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu" target="classFrame">ColumnSchema</a></li>
+<li><a href="org/apache/kudu/mapreduce/CommandLineParser.html" title="class in org.apache.kudu.mapreduce" target="classFrame">CommandLineParser</a></li>
+<li><a href="org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client" target="classFrame">CreateTableOptions</a></li>
+<li><a href="org/apache/kudu/mapreduce/tools/CsvParser.html" title="class in org.apache.kudu.mapreduce.tools" target="classFrame">CsvParser</a></li>
+<li><a href="org/apache/kudu/client/Delete.html" title="class in org.apache.kudu.client" target="classFrame">Delete</a></li>
+<li><a href="org/apache/kudu/client/DeleteTableResponse.html" title="class in org.apache.kudu.client" target="classFrame">DeleteTableResponse</a></li>
+<li><a href="org/apache/kudu/client/ExternalConsistencyMode.html" title="enum in org.apache.kudu.client" target="classFrame">ExternalConsistencyMode</a></li>
+<li><a href="org/apache/kudu/client/HasFailedRpcException.html" title="interface in org.apache.kudu.client" target="classFrame"><span class="interfaceName">HasFailedRpcException</span></a></li>
+<li><a href="org/apache/kudu/mapreduce/tools/ImportCsv.html" title="class in org.apache.kudu.mapreduce.tools" target="classFrame">ImportCsv</a></li>
+<li><a href="org/apache/kudu/client/Insert.html" title="class in org.apache.kudu.client" target="classFrame">Insert</a></li>
+<li><a href="org/apache/kudu/annotations/InterfaceAudience.html" title="class in org.apache.kudu.annotations" target="classFrame">InterfaceAudience</a></li>
+<li><a href="org/apache/kudu/annotations/InterfaceStability.html" title="class in org.apache.kudu.annotations" target="classFrame">InterfaceStability</a></li>
+<li><a href="org/apache/kudu/client/IsAlterTableDoneResponse.html" title="class in org.apache.kudu.client" target="classFrame">IsAlterTableDoneResponse</a></li>
+<li><a href="org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client" target="classFrame">KuduClient</a></li>
+<li><a href="org/apache/kudu/client/KuduClient.KuduClientBuilder.html" title="class in org.apache.kudu.client" target="classFrame">KuduClient.KuduClientBuilder</a></li>
+<li><a href="org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client" target="classFrame">KuduException</a></li>
+<li><a href="org/apache/kudu/flume/sink/KuduOperationsProducer.html" title="interface in org.apache.kudu.flume.sink" target="classFrame"><span class="interfaceName">KuduOperationsProducer</span></a></li>
+<li><a href="org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client" target="classFrame">KuduPredicate</a></li>
+<li><a href="org/apache/kudu/client/KuduPredicate.ComparisonOp.html" title="enum in org.apache.kudu.client" target="classFrame">KuduPredicate.ComparisonOp</a></li>
+<li><a href="org/apache/kudu/client/KuduScanner.html" title="class in org.apache.kudu.client" target="classFrame">KuduScanner</a></li>
+<li><a href="org/apache/kudu/client/KuduScanner.KuduScannerBuilder.html" title="class in org.apache.kudu.client" target="classFrame">KuduScanner.KuduScannerBuilder</a></li>
+<li><a href="org/apache/kudu/client/KuduScanToken.html" title="class in org.apache.kudu.client" target="classFrame">KuduScanToken</a></li>
+<li><a href="org/apache/kudu/client/KuduScanToken.KuduScanTokenBuilder.html" title="class in org.apache.kudu.client" target="classFrame">KuduScanToken.KuduScanTokenBuilder</a></li>
+<li><a href="org/apache/kudu/client/KuduSession.html" title="class in org.apache.kudu.client" target="classFrame">KuduSession</a></li>
+<li><a href="org/apache/kudu/flume/sink/KuduSink.html" title="class in org.apache.kudu.flume.sink" target="classFrame">KuduSink</a></li>
+<li><a href="org/apache/kudu/flume/sink/KuduSinkConfigurationConstants.html" title="class in org.apache.kudu.flume.sink" target="classFrame">KuduSinkConfigurationConstants</a></li>
+<li><a href="org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client" target="classFrame">KuduTable</a></li>
+<li><a href="org/apache/kudu/mapreduce/KuduTableInputFormat.html" title="class in org.apache.kudu.mapreduce" target="classFrame">KuduTableInputFormat</a></li>
+<li><a href="org/apache/kudu/mapreduce/KuduTableMapReduceUtil.html" title="class in org.apache.kudu.mapreduce" target="classFrame">KuduTableMapReduceUtil</a></li>
+<li><a href="org/apache/kudu/mapreduce/KuduTableOutputCommitter.html" title="class in org.apache.kudu.mapreduce" target="classFrame">KuduTableOutputCommitter</a></li>
+<li><a href="org/apache/kudu/mapreduce/KuduTableOutputFormat.html" title="class in org.apache.kudu.mapreduce" target="classFrame">KuduTableOutputFormat</a></li>
+<li><a href="org/apache/kudu/client/ListTablesResponse.html" title="class in org.apache.kudu.client" target="classFrame">ListTablesResponse</a></li>
+<li><a href="org/apache/kudu/client/ListTabletServersResponse.html" title="class in org.apache.kudu.client" target="classFrame">ListTabletServersResponse</a></li>
+<li><a href="org/apache/kudu/client/LocatedTablet.html" title="class in org.apache.kudu.client" target="classFrame">LocatedTablet</a></li>
+<li><a href="org/apache/kudu/client/LocatedTablet.Replica.html" title="class in org.apache.kudu.client" target="classFrame">LocatedTablet.Replica</a></li>
+<li><a href="org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client" target="classFrame">Operation</a></li>
+<li><a href="org/apache/kudu/client/OperationResponse.html" title="class in org.apache.kudu.client" target="classFrame">OperationResponse</a></li>
+<li><a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client" target="classFrame">PartialRow</a></li>
+<li><a href="org/apache/kudu/client/PleaseThrottleException.html" title="class in org.apache.kudu.client" target="classFrame">PleaseThrottleException</a></li>
+<li><a href="org/apache/kudu/client/RangePartitionBound.html" title="enum in org.apache.kudu.client" target="classFrame">RangePartitionBound</a></li>
+<li><a href="org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink" target="classFrame">RegexpKuduOperationsProducer</a></li>
+<li><a href="org/apache/kudu/client/ReplicaSelection.html" title="enum in org.apache.kudu.client" target="classFrame">ReplicaSelection</a></li>
+<li><a href="org/apache/kudu/client/RowError.html" title="class in org.apache.kudu.client" target="classFrame">RowError</a></li>
+<li><a href="org/apache/kudu/client/RowErrorsAndOverflowStatus.html" title="class in org.apache.kudu.client" target="classFrame">RowErrorsAndOverflowStatus</a></li>
+<li><a href="org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client" target="classFrame">RowResult</a></li>
+<li><a href="org/apache/kudu/client/RowResultIterator.html" title="class in org.apache.kudu.client" target="classFrame">RowResultIterator</a></li>
+<li><a href="org/apache/kudu/Schema.html" title="class in org.apache.kudu" target="classFrame">Schema</a></li>
+<li><a href="org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client" target="classFrame"><span class="interfaceName">SessionConfiguration</span></a></li>
+<li><a href="org/apache/kudu/client/SessionConfiguration.FlushMode.html" title="enum in org.apache.kudu.client" target="classFrame">SessionConfiguration.FlushMode</a></li>
+<li><a href="org/apache/kudu/flume/sink/SimpleKeyedKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink" target="classFrame">SimpleKeyedKuduOperationsProducer</a></li>
+<li><a href="org/apache/kudu/flume/sink/SimpleKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink" target="classFrame">SimpleKuduOperationsProducer</a></li>
+<li><a href="org/apache/kudu/client/Statistics.html" title="class in org.apache.kudu.client" target="classFrame">Statistics</a></li>
+<li><a href="org/apache/kudu/client/Statistics.Statistic.html" title="enum in org.apache.kudu.client" target="classFrame">Statistics.Statistic</a></li>
+<li><a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client" target="classFrame">Status</a></li>
+<li><a href="org/apache/kudu/mapreduce/TableReducer.html" title="class in org.apache.kudu.mapreduce" target="classFrame">TableReducer</a></li>
+<li><a href="org/apache/kudu/Type.html" title="enum in org.apache.kudu" target="classFrame">Type</a></li>
+<li><a href="org/apache/kudu/client/Update.html" title="class in org.apache.kudu.client" target="classFrame">Update</a></li>
+<li><a href="org/apache/kudu/client/Upsert.html" title="class in org.apache.kudu.client" target="classFrame">Upsert</a></li>
+</ul>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/allclasses-noframe.html b/releases/1.4.0/apidocs/allclasses-noframe.html
new file mode 100644
index 0000000..cb20732
--- /dev/null
+++ b/releases/1.4.0/apidocs/allclasses-noframe.html
@@ -0,0 +1,88 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>All Classes (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
+<script type="text/javascript" src="script.js"></script>
+</head>
+<body>
+<h1 class="bar">All&nbsp;Classes</h1>
+<div class="indexContainer">
+<ul>
+<li><a href="org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="class in org.apache.kudu.client">AbstractKuduScannerBuilder</a></li>
+<li><a href="org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></li>
+<li><a href="org/apache/kudu/client/AlterTableResponse.html" title="class in org.apache.kudu.client">AlterTableResponse</a></li>
+<li><a href="org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client">AsyncKuduClient</a></li>
+<li><a href="org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html" title="class in org.apache.kudu.client">AsyncKuduClient.AsyncKuduClientBuilder</a></li>
+<li><a href="org/apache/kudu/client/AsyncKuduScanner.html" title="class in org.apache.kudu.client">AsyncKuduScanner</a></li>
+<li><a href="org/apache/kudu/client/AsyncKuduScanner.AsyncKuduScannerBuilder.html" title="class in org.apache.kudu.client">AsyncKuduScanner.AsyncKuduScannerBuilder</a></li>
+<li><a href="org/apache/kudu/client/AsyncKuduScanner.ReadMode.html" title="enum in org.apache.kudu.client">AsyncKuduScanner.ReadMode</a></li>
+<li><a href="org/apache/kudu/client/AsyncKuduSession.html" title="class in org.apache.kudu.client">AsyncKuduSession</a></li>
+<li><a href="org/apache/kudu/flume/sink/AvroKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">AvroKuduOperationsProducer</a></li>
+<li><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools">BigLinkedListCommon</a></li>
+<li><a href="org/apache/kudu/client/ColumnRangePredicate.html" title="class in org.apache.kudu.client">ColumnRangePredicate</a></li>
+<li><a href="org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a></li>
+<li><a href="org/apache/kudu/mapreduce/CommandLineParser.html" title="class in org.apache.kudu.mapreduce">CommandLineParser</a></li>
+<li><a href="org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client">CreateTableOptions</a></li>
+<li><a href="org/apache/kudu/mapreduce/tools/CsvParser.html" title="class in org.apache.kudu.mapreduce.tools">CsvParser</a></li>
+<li><a href="org/apache/kudu/client/Delete.html" title="class in org.apache.kudu.client">Delete</a></li>
+<li><a href="org/apache/kudu/client/DeleteTableResponse.html" title="class in org.apache.kudu.client">DeleteTableResponse</a></li>
+<li><a href="org/apache/kudu/client/ExternalConsistencyMode.html" title="enum in org.apache.kudu.client">ExternalConsistencyMode</a></li>
+<li><a href="org/apache/kudu/client/HasFailedRpcException.html" title="interface in org.apache.kudu.client"><span class="interfaceName">HasFailedRpcException</span></a></li>
+<li><a href="org/apache/kudu/mapreduce/tools/ImportCsv.html" title="class in org.apache.kudu.mapreduce.tools">ImportCsv</a></li>
+<li><a href="org/apache/kudu/client/Insert.html" title="class in org.apache.kudu.client">Insert</a></li>
+<li><a href="org/apache/kudu/annotations/InterfaceAudience.html" title="class in org.apache.kudu.annotations">InterfaceAudience</a></li>
+<li><a href="org/apache/kudu/annotations/InterfaceStability.html" title="class in org.apache.kudu.annotations">InterfaceStability</a></li>
+<li><a href="org/apache/kudu/client/IsAlterTableDoneResponse.html" title="class in org.apache.kudu.client">IsAlterTableDoneResponse</a></li>
+<li><a href="org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a></li>
+<li><a href="org/apache/kudu/client/KuduClient.KuduClientBuilder.html" title="class in org.apache.kudu.client">KuduClient.KuduClientBuilder</a></li>
+<li><a href="org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client">KuduException</a></li>
+<li><a href="org/apache/kudu/flume/sink/KuduOperationsProducer.html" title="interface in org.apache.kudu.flume.sink"><span class="interfaceName">KuduOperationsProducer</span></a></li>
+<li><a href="org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a></li>
+<li><a href="org/apache/kudu/client/KuduPredicate.ComparisonOp.html" title="enum in org.apache.kudu.client">KuduPredicate.ComparisonOp</a></li>
+<li><a href="org/apache/kudu/client/KuduScanner.html" title="class in org.apache.kudu.client">KuduScanner</a></li>
+<li><a href="org/apache/kudu/client/KuduScanner.KuduScannerBuilder.html" title="class in org.apache.kudu.client">KuduScanner.KuduScannerBuilder</a></li>
+<li><a href="org/apache/kudu/client/KuduScanToken.html" title="class in org.apache.kudu.client">KuduScanToken</a></li>
+<li><a href="org/apache/kudu/client/KuduScanToken.KuduScanTokenBuilder.html" title="class in org.apache.kudu.client">KuduScanToken.KuduScanTokenBuilder</a></li>
+<li><a href="org/apache/kudu/client/KuduSession.html" title="class in org.apache.kudu.client">KuduSession</a></li>
+<li><a href="org/apache/kudu/flume/sink/KuduSink.html" title="class in org.apache.kudu.flume.sink">KuduSink</a></li>
+<li><a href="org/apache/kudu/flume/sink/KuduSinkConfigurationConstants.html" title="class in org.apache.kudu.flume.sink">KuduSinkConfigurationConstants</a></li>
+<li><a href="org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a></li>
+<li><a href="org/apache/kudu/mapreduce/KuduTableInputFormat.html" title="class in org.apache.kudu.mapreduce">KuduTableInputFormat</a></li>
+<li><a href="org/apache/kudu/mapreduce/KuduTableMapReduceUtil.html" title="class in org.apache.kudu.mapreduce">KuduTableMapReduceUtil</a></li>
+<li><a href="org/apache/kudu/mapreduce/KuduTableOutputCommitter.html" title="class in org.apache.kudu.mapreduce">KuduTableOutputCommitter</a></li>
+<li><a href="org/apache/kudu/mapreduce/KuduTableOutputFormat.html" title="class in org.apache.kudu.mapreduce">KuduTableOutputFormat</a></li>
+<li><a href="org/apache/kudu/client/ListTablesResponse.html" title="class in org.apache.kudu.client">ListTablesResponse</a></li>
+<li><a href="org/apache/kudu/client/ListTabletServersResponse.html" title="class in org.apache.kudu.client">ListTabletServersResponse</a></li>
+<li><a href="org/apache/kudu/client/LocatedTablet.html" title="class in org.apache.kudu.client">LocatedTablet</a></li>
+<li><a href="org/apache/kudu/client/LocatedTablet.Replica.html" title="class in org.apache.kudu.client">LocatedTablet.Replica</a></li>
+<li><a href="org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">Operation</a></li>
+<li><a href="org/apache/kudu/client/OperationResponse.html" title="class in org.apache.kudu.client">OperationResponse</a></li>
+<li><a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></li>
+<li><a href="org/apache/kudu/client/PleaseThrottleException.html" title="class in org.apache.kudu.client">PleaseThrottleException</a></li>
+<li><a href="org/apache/kudu/client/RangePartitionBound.html" title="enum in org.apache.kudu.client">RangePartitionBound</a></li>
+<li><a href="org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">RegexpKuduOperationsProducer</a></li>
+<li><a href="org/apache/kudu/client/ReplicaSelection.html" title="enum in org.apache.kudu.client">ReplicaSelection</a></li>
+<li><a href="org/apache/kudu/client/RowError.html" title="class in org.apache.kudu.client">RowError</a></li>
+<li><a href="org/apache/kudu/client/RowErrorsAndOverflowStatus.html" title="class in org.apache.kudu.client">RowErrorsAndOverflowStatus</a></li>
+<li><a href="org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a></li>
+<li><a href="org/apache/kudu/client/RowResultIterator.html" title="class in org.apache.kudu.client">RowResultIterator</a></li>
+<li><a href="org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a></li>
+<li><a href="org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client"><span class="interfaceName">SessionConfiguration</span></a></li>
+<li><a href="org/apache/kudu/client/SessionConfiguration.FlushMode.html" title="enum in org.apache.kudu.client">SessionConfiguration.FlushMode</a></li>
+<li><a href="org/apache/kudu/flume/sink/SimpleKeyedKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">SimpleKeyedKuduOperationsProducer</a></li>
+<li><a href="org/apache/kudu/flume/sink/SimpleKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">SimpleKuduOperationsProducer</a></li>
+<li><a href="org/apache/kudu/client/Statistics.html" title="class in org.apache.kudu.client">Statistics</a></li>
+<li><a href="org/apache/kudu/client/Statistics.Statistic.html" title="enum in org.apache.kudu.client">Statistics.Statistic</a></li>
+<li><a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></li>
+<li><a href="org/apache/kudu/mapreduce/TableReducer.html" title="class in org.apache.kudu.mapreduce">TableReducer</a></li>
+<li><a href="org/apache/kudu/Type.html" title="enum in org.apache.kudu">Type</a></li>
+<li><a href="org/apache/kudu/client/Update.html" title="class in org.apache.kudu.client">Update</a></li>
+<li><a href="org/apache/kudu/client/Upsert.html" title="class in org.apache.kudu.client">Upsert</a></li>
+</ul>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/constant-values.html b/releases/1.4.0/apidocs/constant-values.html
new file mode 100644
index 0000000..6fe2e37
--- /dev/null
+++ b/releases/1.4.0/apidocs/constant-values.html
@@ -0,0 +1,690 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Constant Field Values (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
+<script type="text/javascript" src="script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Constant Field Values (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="overview-summary.html">Overview</a></li>
+<li>Package</li>
+<li>Class</li>
+<li>Use</li>
+<li><a href="overview-tree.html">Tree</a></li>
+<li><a href="deprecated-list.html">Deprecated</a></li>
+<li><a href="index-all.html">Index</a></li>
+<li><a href="help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="index.html?constant-values.html" target="_top">Frames</a></li>
+<li><a href="constant-values.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h1 title="Constant Field Values" class="title">Constant Field Values</h1>
+<h2 title="Contents">Contents</h2>
+<ul>
+<li><a href="#org.apache">org.apache.*</a></li>
+</ul>
+</div>
+<div class="constantValuesContainer"><a name="org.apache">
+<!--   -->
+</a>
+<h2 title="org.apache">org.apache.*</h2>
+<ul class="blockList">
+<li class="blockList">
+<table class="constantsSummary" border="0" cellpadding="3" cellspacing="0" summary="Constant Field Values table, listing constant fields, and values">
+<caption><span>org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client">AsyncKuduClient</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th scope="col">Constant Field</th>
+<th class="colLast" scope="col">Value</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a name="org.apache.kudu.client.AsyncKuduClient.DEFAULT_OPERATION_TIMEOUT_MS">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;long</code></td>
+<td><code><a href="org/apache/kudu/client/AsyncKuduClient.html#DEFAULT_OPERATION_TIMEOUT_MS">DEFAULT_OPERATION_TIMEOUT_MS</a></code></td>
+<td class="colLast"><code>30000L</code></td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a name="org.apache.kudu.client.AsyncKuduClient.DEFAULT_SOCKET_READ_TIMEOUT_MS">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;long</code></td>
+<td><code><a href="org/apache/kudu/client/AsyncKuduClient.html#DEFAULT_SOCKET_READ_TIMEOUT_MS">DEFAULT_SOCKET_READ_TIMEOUT_MS</a></code></td>
+<td class="colLast"><code>10000L</code></td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a name="org.apache.kudu.client.AsyncKuduClient.NO_TIMESTAMP">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;long</code></td>
+<td><code><a href="org/apache/kudu/client/AsyncKuduClient.html#NO_TIMESTAMP">NO_TIMESTAMP</a></code></td>
+<td class="colLast"><code>-1L</code></td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a name="org.apache.kudu.client.AsyncKuduClient.SLEEP_TIME">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;int</code></td>
+<td><code><a href="org/apache/kudu/client/AsyncKuduClient.html#SLEEP_TIME">SLEEP_TIME</a></code></td>
+<td class="colLast"><code>500</code></td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList">
+<table class="constantsSummary" border="0" cellpadding="3" cellspacing="0" summary="Constant Field Values table, listing constant fields, and values">
+<caption><span>org.apache.kudu.client.<a href="org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th scope="col">Constant Field</th>
+<th class="colLast" scope="col">Value</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a name="org.apache.kudu.client.KuduClient.NO_TIMESTAMP">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;long</code></td>
+<td><code><a href="org/apache/kudu/client/KuduClient.html#NO_TIMESTAMP">NO_TIMESTAMP</a></code></td>
+<td class="colLast"><code>-1L</code></td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+<ul class="blockList">
+<li class="blockList">
+<table class="constantsSummary" border="0" cellpadding="3" cellspacing="0" summary="Constant Field Values table, listing constant fields, and values">
+<caption><span>org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/AvroKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">AvroKuduOperationsProducer</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th scope="col">Constant Field</th>
+<th class="colLast" scope="col">Value</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a name="org.apache.kudu.flume.sink.AvroKuduOperationsProducer.DEFAULT_OPERATION">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td><code><a href="org/apache/kudu/flume/sink/AvroKuduOperationsProducer.html#DEFAULT_OPERATION">DEFAULT_OPERATION</a></code></td>
+<td class="colLast"><code>"upsert"</code></td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a name="org.apache.kudu.flume.sink.AvroKuduOperationsProducer.OPERATION_PROP">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td><code><a href="org/apache/kudu/flume/sink/AvroKuduOperationsProducer.html#OPERATION_PROP">OPERATION_PROP</a></code></td>
+<td class="colLast"><code>"operation"</code></td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a name="org.apache.kudu.flume.sink.AvroKuduOperationsProducer.SCHEMA_LITERAL_HEADER">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td><code><a href="org/apache/kudu/flume/sink/AvroKuduOperationsProducer.html#SCHEMA_LITERAL_HEADER">SCHEMA_LITERAL_HEADER</a></code></td>
+<td class="colLast"><code>"flume.avro.schema.literal"</code></td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a name="org.apache.kudu.flume.sink.AvroKuduOperationsProducer.SCHEMA_PROP">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td><code><a href="org/apache/kudu/flume/sink/AvroKuduOperationsProducer.html#SCHEMA_PROP">SCHEMA_PROP</a></code></td>
+<td class="colLast"><code>"schemaPath"</code></td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a name="org.apache.kudu.flume.sink.AvroKuduOperationsProducer.SCHEMA_URL_HEADER">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td><code><a href="org/apache/kudu/flume/sink/AvroKuduOperationsProducer.html#SCHEMA_URL_HEADER">SCHEMA_URL_HEADER</a></code></td>
+<td class="colLast"><code>"flume.avro.schema.url"</code></td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList">
+<table class="constantsSummary" border="0" cellpadding="3" cellspacing="0" summary="Constant Field Values table, listing constant fields, and values">
+<caption><span>org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/KuduSinkConfigurationConstants.html" title="class in org.apache.kudu.flume.sink">KuduSinkConfigurationConstants</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th scope="col">Constant Field</th>
+<th class="colLast" scope="col">Value</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a name="org.apache.kudu.flume.sink.KuduSinkConfigurationConstants.BATCH_SIZE">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td><code><a href="org/apache/kudu/flume/sink/KuduSinkConfigurationConstants.html#BATCH_SIZE">BATCH_SIZE</a></code></td>
+<td class="colLast"><code>"batchSize"</code></td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a name="org.apache.kudu.flume.sink.KuduSinkConfigurationConstants.IGNORE_DUPLICATE_ROWS">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td><code><a href="org/apache/kudu/flume/sink/KuduSinkConfigurationConstants.html#IGNORE_DUPLICATE_ROWS">IGNORE_DUPLICATE_ROWS</a></code></td>
+<td class="colLast"><code>"ignoreDuplicateRows"</code></td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a name="org.apache.kudu.flume.sink.KuduSinkConfigurationConstants.MASTER_ADDRESSES">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td><code><a href="org/apache/kudu/flume/sink/KuduSinkConfigurationConstants.html#MASTER_ADDRESSES">MASTER_ADDRESSES</a></code></td>
+<td class="colLast"><code>"masterAddresses"</code></td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a name="org.apache.kudu.flume.sink.KuduSinkConfigurationConstants.PRODUCER">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td><code><a href="org/apache/kudu/flume/sink/KuduSinkConfigurationConstants.html#PRODUCER">PRODUCER</a></code></td>
+<td class="colLast"><code>"producer"</code></td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a name="org.apache.kudu.flume.sink.KuduSinkConfigurationConstants.PRODUCER_PREFIX">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td><code><a href="org/apache/kudu/flume/sink/KuduSinkConfigurationConstants.html#PRODUCER_PREFIX">PRODUCER_PREFIX</a></code></td>
+<td class="colLast"><code>"producer."</code></td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a name="org.apache.kudu.flume.sink.KuduSinkConfigurationConstants.TABLE_NAME">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td><code><a href="org/apache/kudu/flume/sink/KuduSinkConfigurationConstants.html#TABLE_NAME">TABLE_NAME</a></code></td>
+<td class="colLast"><code>"tableName"</code></td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a name="org.apache.kudu.flume.sink.KuduSinkConfigurationConstants.TIMEOUT_MILLIS">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td><code><a href="org/apache/kudu/flume/sink/KuduSinkConfigurationConstants.html#TIMEOUT_MILLIS">TIMEOUT_MILLIS</a></code></td>
+<td class="colLast"><code>"timeoutMillis"</code></td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList">
+<table class="constantsSummary" border="0" cellpadding="3" cellspacing="0" summary="Constant Field Values table, listing constant fields, and values">
+<caption><span>org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">RegexpKuduOperationsProducer</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th scope="col">Constant Field</th>
+<th class="colLast" scope="col">Value</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a name="org.apache.kudu.flume.sink.RegexpKuduOperationsProducer.DEFAULT_ENCODING">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td><code><a href="org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html#DEFAULT_ENCODING">DEFAULT_ENCODING</a></code></td>
+<td class="colLast"><code>"utf-8"</code></td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a name="org.apache.kudu.flume.sink.RegexpKuduOperationsProducer.DEFAULT_OPERATION">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td><code><a href="org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html#DEFAULT_OPERATION">DEFAULT_OPERATION</a></code></td>
+<td class="colLast"><code>"upsert"</code></td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a name="org.apache.kudu.flume.sink.RegexpKuduOperationsProducer.DEFAULT_SKIP_BAD_COLUMN_VALUE">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;boolean</code></td>
+<td><code><a href="org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html#DEFAULT_SKIP_BAD_COLUMN_VALUE">DEFAULT_SKIP_BAD_COLUMN_VALUE</a></code></td>
+<td class="colLast"><code>false</code></td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a name="org.apache.kudu.flume.sink.RegexpKuduOperationsProducer.DEFAULT_SKIP_MISSING_COLUMN">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;boolean</code></td>
+<td><code><a href="org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html#DEFAULT_SKIP_MISSING_COLUMN">DEFAULT_SKIP_MISSING_COLUMN</a></code></td>
+<td class="colLast"><code>false</code></td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a name="org.apache.kudu.flume.sink.RegexpKuduOperationsProducer.DEFAULT_WARN_UNMATCHED_ROWS">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;boolean</code></td>
+<td><code><a href="org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html#DEFAULT_WARN_UNMATCHED_ROWS">DEFAULT_WARN_UNMATCHED_ROWS</a></code></td>
+<td class="colLast"><code>true</code></td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a name="org.apache.kudu.flume.sink.RegexpKuduOperationsProducer.ENCODING_PROP">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td><code><a href="org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html#ENCODING_PROP">ENCODING_PROP</a></code></td>
+<td class="colLast"><code>"encoding"</code></td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a name="org.apache.kudu.flume.sink.RegexpKuduOperationsProducer.OPERATION_PROP">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td><code><a href="org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html#OPERATION_PROP">OPERATION_PROP</a></code></td>
+<td class="colLast"><code>"operation"</code></td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a name="org.apache.kudu.flume.sink.RegexpKuduOperationsProducer.PATTERN_PROP">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td><code><a href="org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html#PATTERN_PROP">PATTERN_PROP</a></code></td>
+<td class="colLast"><code>"pattern"</code></td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a name="org.apache.kudu.flume.sink.RegexpKuduOperationsProducer.SKIP_BAD_COLUMN_VALUE_PROP">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td><code><a href="org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html#SKIP_BAD_COLUMN_VALUE_PROP">SKIP_BAD_COLUMN_VALUE_PROP</a></code></td>
+<td class="colLast"><code>"skipBadColumnValue"</code></td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a name="org.apache.kudu.flume.sink.RegexpKuduOperationsProducer.SKIP_MISSING_COLUMN_PROP">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td><code><a href="org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html#SKIP_MISSING_COLUMN_PROP">SKIP_MISSING_COLUMN_PROP</a></code></td>
+<td class="colLast"><code>"skipMissingColumn"</code></td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a name="org.apache.kudu.flume.sink.RegexpKuduOperationsProducer.WARN_UNMATCHED_ROWS_PROP">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td><code><a href="org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html#WARN_UNMATCHED_ROWS_PROP">WARN_UNMATCHED_ROWS_PROP</a></code></td>
+<td class="colLast"><code>"skipUnmatchedRows"</code></td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList">
+<table class="constantsSummary" border="0" cellpadding="3" cellspacing="0" summary="Constant Field Values table, listing constant fields, and values">
+<caption><span>org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/SimpleKeyedKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">SimpleKeyedKuduOperationsProducer</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th scope="col">Constant Field</th>
+<th class="colLast" scope="col">Value</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a name="org.apache.kudu.flume.sink.SimpleKeyedKuduOperationsProducer.KEY_COLUMN_DEFAULT">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td><code><a href="org/apache/kudu/flume/sink/SimpleKeyedKuduOperationsProducer.html#KEY_COLUMN_DEFAULT">KEY_COLUMN_DEFAULT</a></code></td>
+<td class="colLast"><code>"key"</code></td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a name="org.apache.kudu.flume.sink.SimpleKeyedKuduOperationsProducer.KEY_COLUMN_PROP">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td><code><a href="org/apache/kudu/flume/sink/SimpleKeyedKuduOperationsProducer.html#KEY_COLUMN_PROP">KEY_COLUMN_PROP</a></code></td>
+<td class="colLast"><code>"keyColumn"</code></td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a name="org.apache.kudu.flume.sink.SimpleKeyedKuduOperationsProducer.OPERATION_DEFAULT">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td><code><a href="org/apache/kudu/flume/sink/SimpleKeyedKuduOperationsProducer.html#OPERATION_DEFAULT">OPERATION_DEFAULT</a></code></td>
+<td class="colLast"><code>"upsert"</code></td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a name="org.apache.kudu.flume.sink.SimpleKeyedKuduOperationsProducer.OPERATION_PROP">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td><code><a href="org/apache/kudu/flume/sink/SimpleKeyedKuduOperationsProducer.html#OPERATION_PROP">OPERATION_PROP</a></code></td>
+<td class="colLast"><code>"operation"</code></td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a name="org.apache.kudu.flume.sink.SimpleKeyedKuduOperationsProducer.PAYLOAD_COLUMN_DEFAULT">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td><code><a href="org/apache/kudu/flume/sink/SimpleKeyedKuduOperationsProducer.html#PAYLOAD_COLUMN_DEFAULT">PAYLOAD_COLUMN_DEFAULT</a></code></td>
+<td class="colLast"><code>"payload"</code></td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a name="org.apache.kudu.flume.sink.SimpleKeyedKuduOperationsProducer.PAYLOAD_COLUMN_PROP">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td><code><a href="org/apache/kudu/flume/sink/SimpleKeyedKuduOperationsProducer.html#PAYLOAD_COLUMN_PROP">PAYLOAD_COLUMN_PROP</a></code></td>
+<td class="colLast"><code>"payloadColumn"</code></td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList">
+<table class="constantsSummary" border="0" cellpadding="3" cellspacing="0" summary="Constant Field Values table, listing constant fields, and values">
+<caption><span>org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/SimpleKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">SimpleKuduOperationsProducer</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th scope="col">Constant Field</th>
+<th class="colLast" scope="col">Value</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a name="org.apache.kudu.flume.sink.SimpleKuduOperationsProducer.PAYLOAD_COLUMN_DEFAULT">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td><code><a href="org/apache/kudu/flume/sink/SimpleKuduOperationsProducer.html#PAYLOAD_COLUMN_DEFAULT">PAYLOAD_COLUMN_DEFAULT</a></code></td>
+<td class="colLast"><code>"payload"</code></td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a name="org.apache.kudu.flume.sink.SimpleKuduOperationsProducer.PAYLOAD_COLUMN_PROP">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td><code><a href="org/apache/kudu/flume/sink/SimpleKuduOperationsProducer.html#PAYLOAD_COLUMN_PROP">PAYLOAD_COLUMN_PROP</a></code></td>
+<td class="colLast"><code>"payloadColumn"</code></td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+<ul class="blockList">
+<li class="blockList">
+<table class="constantsSummary" border="0" cellpadding="3" cellspacing="0" summary="Constant Field Values table, listing constant fields, and values">
+<caption><span>org.apache.kudu.mapreduce.<a href="org/apache/kudu/mapreduce/CommandLineParser.html" title="class in org.apache.kudu.mapreduce">CommandLineParser</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th scope="col">Constant Field</th>
+<th class="colLast" scope="col">Value</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a name="org.apache.kudu.mapreduce.CommandLineParser.ADMIN_OPERATION_TIMEOUT_MS_KEY">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td><code><a href="org/apache/kudu/mapreduce/CommandLineParser.html#ADMIN_OPERATION_TIMEOUT_MS_KEY">ADMIN_OPERATION_TIMEOUT_MS_KEY</a></code></td>
+<td class="colLast"><code>"kudu.admin.operation.timeout.ms"</code></td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a name="org.apache.kudu.mapreduce.CommandLineParser.MASTER_ADDRESSES_DEFAULT">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td><code><a href="org/apache/kudu/mapreduce/CommandLineParser.html#MASTER_ADDRESSES_DEFAULT">MASTER_ADDRESSES_DEFAULT</a></code></td>
+<td class="colLast"><code>"127.0.0.1"</code></td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a name="org.apache.kudu.mapreduce.CommandLineParser.MASTER_ADDRESSES_KEY">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td><code><a href="org/apache/kudu/mapreduce/CommandLineParser.html#MASTER_ADDRESSES_KEY">MASTER_ADDRESSES_KEY</a></code></td>
+<td class="colLast"><code>"kudu.master.addresses"</code></td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a name="org.apache.kudu.mapreduce.CommandLineParser.NUM_REPLICAS_DEFAULT">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;int</code></td>
+<td><code><a href="org/apache/kudu/mapreduce/CommandLineParser.html#NUM_REPLICAS_DEFAULT">NUM_REPLICAS_DEFAULT</a></code></td>
+<td class="colLast"><code>3</code></td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a name="org.apache.kudu.mapreduce.CommandLineParser.NUM_REPLICAS_KEY">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td><code><a href="org/apache/kudu/mapreduce/CommandLineParser.html#NUM_REPLICAS_KEY">NUM_REPLICAS_KEY</a></code></td>
+<td class="colLast"><code>"kudu.num.replicas"</code></td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a name="org.apache.kudu.mapreduce.CommandLineParser.OPERATION_TIMEOUT_MS_DEFAULT">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;long</code></td>
+<td><code><a href="org/apache/kudu/mapreduce/CommandLineParser.html#OPERATION_TIMEOUT_MS_DEFAULT">OPERATION_TIMEOUT_MS_DEFAULT</a></code></td>
+<td class="colLast"><code>30000L</code></td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a name="org.apache.kudu.mapreduce.CommandLineParser.OPERATION_TIMEOUT_MS_KEY">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td><code><a href="org/apache/kudu/mapreduce/CommandLineParser.html#OPERATION_TIMEOUT_MS_KEY">OPERATION_TIMEOUT_MS_KEY</a></code></td>
+<td class="colLast"><code>"kudu.operation.timeout.ms"</code></td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a name="org.apache.kudu.mapreduce.CommandLineParser.SOCKET_READ_TIMEOUT_MS_DEFAULT">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;long</code></td>
+<td><code><a href="org/apache/kudu/mapreduce/CommandLineParser.html#SOCKET_READ_TIMEOUT_MS_DEFAULT">SOCKET_READ_TIMEOUT_MS_DEFAULT</a></code></td>
+<td class="colLast"><code>10000L</code></td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a name="org.apache.kudu.mapreduce.CommandLineParser.SOCKET_READ_TIMEOUT_MS_KEY">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td><code><a href="org/apache/kudu/mapreduce/CommandLineParser.html#SOCKET_READ_TIMEOUT_MS_KEY">SOCKET_READ_TIMEOUT_MS_KEY</a></code></td>
+<td class="colLast"><code>"kudu.socket.read.timeout.ms"</code></td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+<ul class="blockList">
+<li class="blockList">
+<table class="constantsSummary" border="0" cellpadding="3" cellspacing="0" summary="Constant Field Values table, listing constant fields, and values">
+<caption><span>org.apache.kudu.mapreduce.tools.<a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools">BigLinkedListCommon</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th scope="col">Constant Field</th>
+<th class="colLast" scope="col">Value</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a name="org.apache.kudu.mapreduce.tools.BigLinkedListCommon.COLUMN_CLIENT">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td><code><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_CLIENT">COLUMN_CLIENT</a></code></td>
+<td class="colLast"><code>"client"</code></td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a name="org.apache.kudu.mapreduce.tools.BigLinkedListCommon.COLUMN_CLIENT_IDX">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;int</code></td>
+<td><code><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_CLIENT_IDX">COLUMN_CLIENT_IDX</a></code></td>
+<td class="colLast"><code>5</code></td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a name="org.apache.kudu.mapreduce.tools.BigLinkedListCommon.COLUMN_KEY_ONE">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td><code><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_KEY_ONE">COLUMN_KEY_ONE</a></code></td>
+<td class="colLast"><code>"key1"</code></td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a name="org.apache.kudu.mapreduce.tools.BigLinkedListCommon.COLUMN_KEY_ONE_IDX">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;int</code></td>
+<td><code><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_KEY_ONE_IDX">COLUMN_KEY_ONE_IDX</a></code></td>
+<td class="colLast"><code>0</code></td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a name="org.apache.kudu.mapreduce.tools.BigLinkedListCommon.COLUMN_KEY_TWO">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td><code><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_KEY_TWO">COLUMN_KEY_TWO</a></code></td>
+<td class="colLast"><code>"key2"</code></td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a name="org.apache.kudu.mapreduce.tools.BigLinkedListCommon.COLUMN_KEY_TWO_IDX">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;int</code></td>
+<td><code><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_KEY_TWO_IDX">COLUMN_KEY_TWO_IDX</a></code></td>
+<td class="colLast"><code>1</code></td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a name="org.apache.kudu.mapreduce.tools.BigLinkedListCommon.COLUMN_PREV_ONE">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td><code><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_PREV_ONE">COLUMN_PREV_ONE</a></code></td>
+<td class="colLast"><code>"prev1"</code></td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a name="org.apache.kudu.mapreduce.tools.BigLinkedListCommon.COLUMN_PREV_ONE_IDX">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;int</code></td>
+<td><code><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_PREV_ONE_IDX">COLUMN_PREV_ONE_IDX</a></code></td>
+<td class="colLast"><code>2</code></td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a name="org.apache.kudu.mapreduce.tools.BigLinkedListCommon.COLUMN_PREV_TWO">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td><code><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_PREV_TWO">COLUMN_PREV_TWO</a></code></td>
+<td class="colLast"><code>"prev2"</code></td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a name="org.apache.kudu.mapreduce.tools.BigLinkedListCommon.COLUMN_PREV_TWO_IDX">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;int</code></td>
+<td><code><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_PREV_TWO_IDX">COLUMN_PREV_TWO_IDX</a></code></td>
+<td class="colLast"><code>3</code></td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a name="org.apache.kudu.mapreduce.tools.BigLinkedListCommon.COLUMN_ROW_ID">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td><code><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_ROW_ID">COLUMN_ROW_ID</a></code></td>
+<td class="colLast"><code>"row_id"</code></td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a name="org.apache.kudu.mapreduce.tools.BigLinkedListCommon.COLUMN_ROW_ID_IDX">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;int</code></td>
+<td><code><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_ROW_ID_IDX">COLUMN_ROW_ID_IDX</a></code></td>
+<td class="colLast"><code>4</code></td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a name="org.apache.kudu.mapreduce.tools.BigLinkedListCommon.COLUMN_UPDATE_COUNT">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td><code><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_UPDATE_COUNT">COLUMN_UPDATE_COUNT</a></code></td>
+<td class="colLast"><code>"update_count"</code></td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a name="org.apache.kudu.mapreduce.tools.BigLinkedListCommon.COLUMN_UPDATE_COUNT_IDX">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;int</code></td>
+<td><code><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_UPDATE_COUNT_IDX">COLUMN_UPDATE_COUNT_IDX</a></code></td>
+<td class="colLast"><code>6</code></td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a name="org.apache.kudu.mapreduce.tools.BigLinkedListCommon.DEFAULT_HEADS_TABLE_NAME">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td><code><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#DEFAULT_HEADS_TABLE_NAME">DEFAULT_HEADS_TABLE_NAME</a></code></td>
+<td class="colLast"><code>"IntegrationTestBigLinkedListHeads"</code></td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a name="org.apache.kudu.mapreduce.tools.BigLinkedListCommon.DEFAULT_TABLE_NAME">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td><code><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#DEFAULT_TABLE_NAME">DEFAULT_TABLE_NAME</a></code></td>
+<td class="colLast"><code>"IntegrationTestBigLinkedList"</code></td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a name="org.apache.kudu.mapreduce.tools.BigLinkedListCommon.HEADS_TABLE_NAME_KEY">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td><code><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#HEADS_TABLE_NAME_KEY">HEADS_TABLE_NAME_KEY</a></code></td>
+<td class="colLast"><code>"IntegrationTestBigLinkedList.heads_table"</code></td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a name="org.apache.kudu.mapreduce.tools.BigLinkedListCommon.TABLE_NAME_KEY">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td><code><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#TABLE_NAME_KEY">TABLE_NAME_KEY</a></code></td>
+<td class="colLast"><code>"IntegrationTestBigLinkedList.table"</code></td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="overview-summary.html">Overview</a></li>
+<li>Package</li>
+<li>Class</li>
+<li>Use</li>
+<li><a href="overview-tree.html">Tree</a></li>
+<li><a href="deprecated-list.html">Deprecated</a></li>
+<li><a href="index-all.html">Index</a></li>
+<li><a href="help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="index.html?constant-values.html" target="_top">Frames</a></li>
+<li><a href="constant-values.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/deprecated-list.html b/releases/1.4.0/apidocs/deprecated-list.html
new file mode 100644
index 0000000..5957ae3
--- /dev/null
+++ b/releases/1.4.0/apidocs/deprecated-list.html
@@ -0,0 +1,221 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Deprecated List (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
+<script type="text/javascript" src="script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Deprecated List (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="overview-summary.html">Overview</a></li>
+<li>Package</li>
+<li>Class</li>
+<li>Use</li>
+<li><a href="overview-tree.html">Tree</a></li>
+<li class="navBarCell1Rev">Deprecated</li>
+<li><a href="index-all.html">Index</a></li>
+<li><a href="help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="index.html?deprecated-list.html" target="_top">Frames</a></li>
+<li><a href="deprecated-list.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h1 title="Deprecated API" class="title">Deprecated API</h1>
+<h2 title="Contents">Contents</h2>
+<ul>
+<li><a href="#class">Deprecated Classes</a></li>
+<li><a href="#method">Deprecated Methods</a></li>
+</ul>
+</div>
+<div class="contentContainer"><a name="class">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<table class="deprecatedSummary" border="0" cellpadding="3" cellspacing="0" summary="Deprecated Classes table, listing deprecated classes, and an explanation">
+<caption><span>Deprecated Classes</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colOne" scope="col">Class and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colOne"><a href="org/apache/kudu/client/ColumnRangePredicate.html" title="class in org.apache.kudu.client">org.apache.kudu.client.ColumnRangePredicate</a>
+<div class="block"><span class="deprecationComment">use the <a href="org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client"><code>KuduPredicate</code></a> class instead.</span></div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+<a name="method">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<table class="deprecatedSummary" border="0" cellpadding="3" cellspacing="0" summary="Deprecated Methods table, listing deprecated methods, and an explanation">
+<caption><span>Deprecated Methods</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colOne" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colOne"><a href="org/apache/kudu/client/AbstractKuduScannerBuilder.html#addColumnRangePredicate-org.apache.kudu.client.ColumnRangePredicate-">org.apache.kudu.client.AbstractKuduScannerBuilder.addColumnRangePredicate(ColumnRangePredicate)</a>
+<div class="block"><span class="deprecationComment">use <a href="org/apache/kudu/client/AbstractKuduScannerBuilder.html#addPredicate-org.apache.kudu.client.KuduPredicate-"><code>AbstractKuduScannerBuilder.addPredicate(KuduPredicate)</code></a></span></div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><a href="org/apache/kudu/client/AbstractKuduScannerBuilder.html#addColumnRangePredicatesRaw-byte:A-">org.apache.kudu.client.AbstractKuduScannerBuilder.addColumnRangePredicatesRaw(byte[])</a>
+<div class="block"><span class="deprecationComment">use <a href="org/apache/kudu/client/AbstractKuduScannerBuilder.html#addPredicate-org.apache.kudu.client.KuduPredicate-"><code>AbstractKuduScannerBuilder.addPredicate(org.apache.kudu.client.KuduPredicate)</code></a></span></div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colOne"><a href="org/apache/kudu/client/KuduTable.html#asyncGetTabletsLocations-byte:A-byte:A-long-">org.apache.kudu.client.KuduTable.asyncGetTabletsLocations(byte[], byte[], long)</a>
+<div class="block"><span class="deprecationComment">use the <a href="org/apache/kudu/client/KuduScanToken.html" title="class in org.apache.kudu.client"><code>KuduScanToken</code></a> API</span></div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><a href="org/apache/kudu/client/KuduTable.html#asyncGetTabletsLocations-long-">org.apache.kudu.client.KuduTable.asyncGetTabletsLocations(long)</a>
+<div class="block"><span class="deprecationComment">use the <a href="org/apache/kudu/client/KuduScanToken.html" title="class in org.apache.kudu.client"><code>KuduScanToken</code></a> API</span></div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colOne"><a href="org/apache/kudu/client/AbstractKuduScannerBuilder.html#exclusiveUpperBoundRaw-byte:A-">org.apache.kudu.client.AbstractKuduScannerBuilder.exclusiveUpperBoundRaw(byte[])</a>
+<div class="block"><span class="deprecationComment">use <a href="org/apache/kudu/client/AbstractKuduScannerBuilder.html#exclusiveUpperBound-org.apache.kudu.client.PartialRow-"><code>AbstractKuduScannerBuilder.exclusiveUpperBound(PartialRow)</code></a></span></div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><a href="org/apache/kudu/client/LocatedTablet.html#getEndKey--">org.apache.kudu.client.LocatedTablet.getEndKey()</a></td>
+</tr>
+<tr class="altColor">
+<td class="colOne"><a href="org/apache/kudu/client/RowError.html#getMessage--">org.apache.kudu.client.RowError.getMessage()</a>
+<div class="block"><span class="deprecationComment">Please use getErrorStatus() instead. Will be removed in a future version.</span></div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><a href="org/apache/kudu/client/LocatedTablet.html#getStartKey--">org.apache.kudu.client.LocatedTablet.getStartKey()</a></td>
+</tr>
+<tr class="altColor">
+<td class="colOne"><a href="org/apache/kudu/client/RowError.html#getStatus--">org.apache.kudu.client.RowError.getStatus()</a>
+<div class="block"><span class="deprecationComment">Please use getErrorStatus() instead. Will be removed in a future version.</span></div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><a href="org/apache/kudu/client/KuduTable.html#getTabletsLocations-byte:A-byte:A-long-">org.apache.kudu.client.KuduTable.getTabletsLocations(byte[], byte[], long)</a>
+<div class="block"><span class="deprecationComment">use the <a href="org/apache/kudu/client/KuduScanToken.html" title="class in org.apache.kudu.client"><code>KuduScanToken</code></a> API</span></div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colOne"><a href="org/apache/kudu/client/KuduTable.html#getTabletsLocations-long-">org.apache.kudu.client.KuduTable.getTabletsLocations(long)</a>
+<div class="block"><span class="deprecationComment">use the <a href="org/apache/kudu/client/KuduScanToken.html" title="class in org.apache.kudu.client"><code>KuduScanToken</code></a> API</span></div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><a href="org/apache/kudu/client/AbstractKuduScannerBuilder.html#lowerBoundRaw-byte:A-">org.apache.kudu.client.AbstractKuduScannerBuilder.lowerBoundRaw(byte[])</a>
+<div class="block"><span class="deprecationComment">use <a href="org/apache/kudu/client/AbstractKuduScannerBuilder.html#lowerBound-org.apache.kudu.client.PartialRow-"><code>AbstractKuduScannerBuilder.lowerBound(PartialRow)</code></a></span></div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="overview-summary.html">Overview</a></li>
+<li>Package</li>
+<li>Class</li>
+<li>Use</li>
+<li><a href="overview-tree.html">Tree</a></li>
+<li class="navBarCell1Rev">Deprecated</li>
+<li><a href="index-all.html">Index</a></li>
+<li><a href="help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="index.html?deprecated-list.html" target="_top">Frames</a></li>
+<li><a href="deprecated-list.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/help-doc.html b/releases/1.4.0/apidocs/help-doc.html
new file mode 100644
index 0000000..8329fa7
--- /dev/null
+++ b/releases/1.4.0/apidocs/help-doc.html
@@ -0,0 +1,230 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>API Help (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
+<script type="text/javascript" src="script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="API Help (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="overview-summary.html">Overview</a></li>
+<li>Package</li>
+<li>Class</li>
+<li>Use</li>
+<li><a href="overview-tree.html">Tree</a></li>
+<li><a href="deprecated-list.html">Deprecated</a></li>
+<li><a href="index-all.html">Index</a></li>
+<li class="navBarCell1Rev">Help</li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="index.html?help-doc.html" target="_top">Frames</a></li>
+<li><a href="help-doc.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h1 class="title">How This API Document Is Organized</h1>
+<div class="subTitle">This API (Application Programming Interface) document has pages corresponding to the items in the navigation bar, described as follows.</div>
+</div>
+<div class="contentContainer">
+<ul class="blockList">
+<li class="blockList">
+<h2>Overview</h2>
+<p>The <a href="overview-summary.html">Overview</a> page is the front page of this API document and provides a list of all packages with a summary for each.  This page can also contain an overall description of the set of packages.</p>
+</li>
+<li class="blockList">
+<h2>Package</h2>
+<p>Each package has a page that contains a list of its classes and interfaces, with a summary for each. This page can contain six categories:</p>
+<ul>
+<li>Interfaces (italic)</li>
+<li>Classes</li>
+<li>Enums</li>
+<li>Exceptions</li>
+<li>Errors</li>
+<li>Annotation Types</li>
+</ul>
+</li>
+<li class="blockList">
+<h2>Class/Interface</h2>
+<p>Each class, interface, nested class and nested interface has its own separate page. Each of these pages has three sections consisting of a class/interface description, summary tables, and detailed member descriptions:</p>
+<ul>
+<li>Class inheritance diagram</li>
+<li>Direct Subclasses</li>
+<li>All Known Subinterfaces</li>
+<li>All Known Implementing Classes</li>
+<li>Class/interface declaration</li>
+<li>Class/interface description</li>
+</ul>
+<ul>
+<li>Nested Class Summary</li>
+<li>Field Summary</li>
+<li>Constructor Summary</li>
+<li>Method Summary</li>
+</ul>
+<ul>
+<li>Field Detail</li>
+<li>Constructor Detail</li>
+<li>Method Detail</li>
+</ul>
+<p>Each summary entry contains the first sentence from the detailed description for that item. The summary entries are alphabetical, while the detailed descriptions are in the order they appear in the source code. This preserves the logical groupings established by the programmer.</p>
+</li>
+<li class="blockList">
+<h2>Annotation Type</h2>
+<p>Each annotation type has its own separate page with the following sections:</p>
+<ul>
+<li>Annotation Type declaration</li>
+<li>Annotation Type description</li>
+<li>Required Element Summary</li>
+<li>Optional Element Summary</li>
+<li>Element Detail</li>
+</ul>
+</li>
+<li class="blockList">
+<h2>Enum</h2>
+<p>Each enum has its own separate page with the following sections:</p>
+<ul>
+<li>Enum declaration</li>
+<li>Enum description</li>
+<li>Enum Constant Summary</li>
+<li>Enum Constant Detail</li>
+</ul>
+</li>
+<li class="blockList">
+<h2>Use</h2>
+<p>Each documented package, class and interface has its own Use page.  This page describes what packages, classes, methods, constructors and fields use any part of the given class or package. Given a class or interface A, its Use page includes subclasses of A, fields declared as A, methods that return A, and methods and constructors with parameters of type A.  You can access this page by first going to the package, class or interface, then clicking on the "Use" link in the navigation bar.</p>
+</li>
+<li class="blockList">
+<h2>Tree (Class Hierarchy)</h2>
+<p>There is a <a href="overview-tree.html">Class Hierarchy</a> page for all packages, plus a hierarchy for each package. Each hierarchy page contains a list of classes and a list of interfaces. The classes are organized by inheritance structure starting with <code>java.lang.Object</code>. The interfaces do not inherit from <code>java.lang.Object</code>.</p>
+<ul>
+<li>When viewing the Overview page, clicking on "Tree" displays the hierarchy for all packages.</li>
+<li>When viewing a particular package, class or interface page, clicking "Tree" displays the hierarchy for only that package.</li>
+</ul>
+</li>
+<li class="blockList">
+<h2>Deprecated API</h2>
+<p>The <a href="deprecated-list.html">Deprecated API</a> page lists all of the API that have been deprecated. A deprecated API is not recommended for use, generally due to improvements, and a replacement API is usually given. Deprecated APIs may be removed in future implementations.</p>
+</li>
+<li class="blockList">
+<h2>Index</h2>
+<p>The <a href="index-all.html">Index</a> contains an alphabetic list of all classes, interfaces, constructors, methods, and fields.</p>
+</li>
+<li class="blockList">
+<h2>Prev/Next</h2>
+<p>These links take you to the next or previous class, interface, package, or related page.</p>
+</li>
+<li class="blockList">
+<h2>Frames/No Frames</h2>
+<p>These links show and hide the HTML frames.  All pages are available with or without frames.</p>
+</li>
+<li class="blockList">
+<h2>All Classes</h2>
+<p>The <a href="allclasses-noframe.html">All Classes</a> link shows all classes and interfaces except non-static nested types.</p>
+</li>
+<li class="blockList">
+<h2>Serialized Form</h2>
+<p>Each serializable or externalizable class has a description of its serialization fields and methods. This information is of interest to re-implementors, not to developers using the API. While there is no link in the navigation bar, you can get to this information by going to any serialized class and clicking "Serialized Form" in the "See also" section of the class description.</p>
+</li>
+<li class="blockList">
+<h2>Constant Field Values</h2>
+<p>The <a href="constant-values.html">Constant Field Values</a> page lists the static final fields and their values.</p>
+</li>
+</ul>
+<span class="emphasizedPhrase">This help file applies to API documentation generated using the standard doclet.</span></div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="overview-summary.html">Overview</a></li>
+<li>Package</li>
+<li>Class</li>
+<li>Use</li>
+<li><a href="overview-tree.html">Tree</a></li>
+<li><a href="deprecated-list.html">Deprecated</a></li>
+<li><a href="index-all.html">Index</a></li>
+<li class="navBarCell1Rev">Help</li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="index.html?help-doc.html" target="_top">Frames</a></li>
+<li><a href="help-doc.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/index-all.html b/releases/1.4.0/apidocs/index-all.html
new file mode 100644
index 0000000..b1ac151
--- /dev/null
+++ b/releases/1.4.0/apidocs/index-all.html
@@ -0,0 +1,2660 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Index (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
+<script type="text/javascript" src="script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Index (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="overview-summary.html">Overview</a></li>
+<li>Package</li>
+<li>Class</li>
+<li>Use</li>
+<li><a href="overview-tree.html">Tree</a></li>
+<li><a href="deprecated-list.html">Deprecated</a></li>
+<li class="navBarCell1Rev">Index</li>
+<li><a href="help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="index.html?index-all.html" target="_top">Frames</a></li>
+<li><a href="index-all.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="contentContainer"><a href="#I:A">A</a>&nbsp;<a href="#I:B">B</a>&nbsp;<a href="#I:C">C</a>&nbsp;<a href="#I:D">D</a>&nbsp;<a href="#I:E">E</a>&nbsp;<a href="#I:F">F</a>&nbsp;<a href="#I:G">G</a>&nbsp;<a href="#I:H">H</a>&nbsp;<a href="#I:I">I</a>&nbsp;<a href="#I:K">K</a>&nbsp;<a href="#I:L">L</a>&nbsp;<a href="#I:M">M</a>&nbsp;<a href="#I:N">N</a>&nbsp;<a href="#I:O">O</a>&nbsp;<a href="#I:P">P</a>&nbsp;<a href="#I:R">R</a>&nbsp;<a href="#I:S">S</a>&nbsp;<a href="#I:T">T</a>&nbsp;<a href="#I:U">U</a>&nbsp;<a href="#I:V">V</a>&nbsp;<a href="#I:W">W</a>&nbsp;<a name="I:A">
+<!--   -->
+</a>
+<h2 class="title">A</h2>
+<dl>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Status.html#Aborted-java.lang.String-">Aborted(String)</a></span> - Static method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Status.html#Aborted-java.lang.String-int-">Aborted(String, int)</a></span> - Static method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/KuduTableOutputCommitter.html#abortTask-org.apache.hadoop.mapreduce.TaskAttemptContext-">abortTask(TaskAttemptContext)</a></span> - Method in class org.apache.kudu.mapreduce.<a href="org/apache/kudu/mapreduce/KuduTableOutputCommitter.html" title="class in org.apache.kudu.mapreduce">KuduTableOutputCommitter</a></dt>
+<dd>&nbsp;</dd>
+<dt><a href="org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="class in org.apache.kudu.client"><span class="typeNameLink">AbstractKuduScannerBuilder</span></a>&lt;<a href="org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="type parameter in AbstractKuduScannerBuilder">S</a> extends <a href="org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="class in org.apache.kudu.client">AbstractKuduScannerBuilder</a>&lt;? super <a href="org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="type parameter in AbstractKuduScannerBuilder">S</a>,<a href="org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="type parameter in AbstractKuduScannerBuilder">T</a>&gt;,<a href="org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="type parameter in AbstractKuduScannerBuilder">T</a>&gt; - Class in <a href="org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></dt>
+<dd>
+<div class="block">Abstract class to extend in order to create builders for scanners.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#addBinary-int-byte:A-">addBinary(int, byte[])</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Add binary data with the specified value.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#addBinary-int-java.nio.ByteBuffer-">addBinary(int, ByteBuffer)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Add binary data with the specified value, from the current ByteBuffer's position to its limit.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#addBinary-java.lang.String-byte:A-">addBinary(String, byte[])</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Add binary data with the specified value.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#addBinary-java.lang.String-java.nio.ByteBuffer-">addBinary(String, ByteBuffer)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Add binary data with the specified value, from the current ByteBuffer's position to its limit.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#addBoolean-int-boolean-">addBoolean(int, boolean)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Add a boolean for the specified column.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#addBoolean-java.lang.String-boolean-">addBoolean(String, boolean)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Add a boolean for the specified column.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#addByte-int-byte-">addByte(int, byte)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Add a byte for the specified column.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#addByte-java.lang.String-byte-">addByte(String, byte)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Add a byte for the specified column.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AlterTableOptions.html#addColumn-org.apache.kudu.ColumnSchema-">addColumn(ColumnSchema)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></dt>
+<dd>
+<div class="block">Add a new column.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AlterTableOptions.html#addColumn-java.lang.String-org.apache.kudu.Type-java.lang.Object-">addColumn(String, Type, Object)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></dt>
+<dd>
+<div class="block">Add a new column that's not nullable.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AbstractKuduScannerBuilder.html#addColumnRangePredicate-org.apache.kudu.client.ColumnRangePredicate-">addColumnRangePredicate(ColumnRangePredicate)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="class in org.apache.kudu.client">AbstractKuduScannerBuilder</a></dt>
+<dd>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>
+<div class="block"><span class="deprecationComment">use <a href="org/apache/kudu/client/AbstractKuduScannerBuilder.html#addPredicate-org.apache.kudu.client.KuduPredicate-"><code>AbstractKuduScannerBuilder.addPredicate(KuduPredicate)</code></a></span></div>
+</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AbstractKuduScannerBuilder.html#addColumnRangePredicatesRaw-byte:A-">addColumnRangePredicatesRaw(byte[])</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="class in org.apache.kudu.client">AbstractKuduScannerBuilder</a></dt>
+<dd>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>
+<div class="block"><span class="deprecationComment">use <a href="org/apache/kudu/client/AbstractKuduScannerBuilder.html#addPredicate-org.apache.kudu.client.KuduPredicate-"><code>AbstractKuduScannerBuilder.addPredicate(org.apache.kudu.client.KuduPredicate)</code></a></span></div>
+</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/KuduTableMapReduceUtil.html#addCredentialsToJob-org.apache.kudu.client.KuduClient-org.apache.hadoop.mapreduce.Job-">addCredentialsToJob(KuduClient, Job)</a></span> - Static method in class org.apache.kudu.mapreduce.<a href="org/apache/kudu/mapreduce/KuduTableMapReduceUtil.html" title="class in org.apache.kudu.mapreduce">KuduTableMapReduceUtil</a></dt>
+<dd>
+<div class="block">Export the credentials from a <a href="org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client"><code>KuduClient</code></a> and store them in the given MapReduce
+ <code>Job</code> so that <a href="org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client"><code>KuduClient</code></a>s created from within tasks of that job can
+ authenticate to Kudu.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/KuduTableMapReduceUtil.html#addDependencyJars-org.apache.hadoop.mapreduce.Job-">addDependencyJars(Job)</a></span> - Static method in class org.apache.kudu.mapreduce.<a href="org/apache/kudu/mapreduce/KuduTableMapReduceUtil.html" title="class in org.apache.kudu.mapreduce">KuduTableMapReduceUtil</a></dt>
+<dd>
+<div class="block">Add the Kudu dependency jars as well as jars for any of the configured
+ job classes to the job configuration, so that JobClient will ship them
+ to the cluster and add them to the DistributedCache.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/KuduTableMapReduceUtil.html#addDependencyJars-org.apache.hadoop.conf.Configuration-java.lang.Class...-">addDependencyJars(Configuration, Class&lt;?&gt;...)</a></span> - Static method in class org.apache.kudu.mapreduce.<a href="org/apache/kudu/mapreduce/KuduTableMapReduceUtil.html" title="class in org.apache.kudu.mapreduce">KuduTableMapReduceUtil</a></dt>
+<dd>
+<div class="block">Add the jars containing the given classes to the job's configuration
+ such that JobClient will ship them to the cluster and add them to
+ the DistributedCache.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#addDouble-int-double-">addDouble(int, double)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Add an double for the specified column.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#addDouble-java.lang.String-double-">addDouble(String, double)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Add an double for the specified column.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#addFloat-int-float-">addFloat(int, float)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Add an float for the specified column.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#addFloat-java.lang.String-float-">addFloat(String, float)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Add an float for the specified column.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/CreateTableOptions.html#addHashPartitions-java.util.List-int-">addHashPartitions(List&lt;String&gt;, int)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client">CreateTableOptions</a></dt>
+<dd>
+<div class="block">Add a set of hash partitions to the table.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/CreateTableOptions.html#addHashPartitions-java.util.List-int-int-">addHashPartitions(List&lt;String&gt;, int, int)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client">CreateTableOptions</a></dt>
+<dd>
+<div class="block">Add a set of hash partitions to the table.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#addInt-int-int-">addInt(int, int)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Add an int for the specified column.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#addInt-java.lang.String-int-">addInt(String, int)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Add an int for the specified column.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/KuduTableMapReduceUtil.html#addKuduDependencyJars-org.apache.hadoop.conf.Configuration-">addKuduDependencyJars(Configuration)</a></span> - Static method in class org.apache.kudu.mapreduce.<a href="org/apache/kudu/mapreduce/KuduTableMapReduceUtil.html" title="class in org.apache.kudu.mapreduce">KuduTableMapReduceUtil</a></dt>
+<dd>
+<div class="block">Add Kudu and its dependencies (only) to the job configuration.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#addLong-int-long-">addLong(int, long)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Add an long for the specified column.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#addLong-java.lang.String-long-">addLong(String, long)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Add an long for the specified column.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AlterTableOptions.html#addNullableColumn-java.lang.String-org.apache.kudu.Type-">addNullableColumn(String, Type)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></dt>
+<dd>
+<div class="block">Add a new column that's nullable and has no default value.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AlterTableOptions.html#addNullableColumn-java.lang.String-org.apache.kudu.Type-java.lang.Object-">addNullableColumn(String, Type, Object)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></dt>
+<dd>
+<div class="block">Add a new column that's nullable.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AbstractKuduScannerBuilder.html#addPredicate-org.apache.kudu.client.KuduPredicate-">addPredicate(KuduPredicate)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="class in org.apache.kudu.client">AbstractKuduScannerBuilder</a></dt>
+<dd>
+<div class="block">Adds a predicate to the scan.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AlterTableOptions.html#addRangePartition-org.apache.kudu.client.PartialRow-org.apache.kudu.client.PartialRow-">addRangePartition(PartialRow, PartialRow)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></dt>
+<dd>
+<div class="block">Add a range partition to the table with an inclusive lower bound and an exclusive upper bound.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AlterTableOptions.html#addRangePartition-org.apache.kudu.client.PartialRow-org.apache.kudu.client.PartialRow-org.apache.kudu.client.RangePartitionBound-org.apache.kudu.client.RangePartitionBound-">addRangePartition(PartialRow, PartialRow, RangePartitionBound, RangePartitionBound)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></dt>
+<dd>
+<div class="block">Add a range partition to the table with a lower bound and upper bound.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/CreateTableOptions.html#addRangePartition-org.apache.kudu.client.PartialRow-org.apache.kudu.client.PartialRow-">addRangePartition(PartialRow, PartialRow)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client">CreateTableOptions</a></dt>
+<dd>
+<div class="block">Add a range partition partition to the table with an inclusive lower bound
+ and an exclusive upper bound.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/CreateTableOptions.html#addRangePartition-org.apache.kudu.client.PartialRow-org.apache.kudu.client.PartialRow-org.apache.kudu.client.RangePartitionBound-org.apache.kudu.client.RangePartitionBound-">addRangePartition(PartialRow, PartialRow, RangePartitionBound, RangePartitionBound)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client">CreateTableOptions</a></dt>
+<dd>
+<div class="block">Add a range partition partition to the table with a lower bound and upper
+ bound.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#addShort-int-short-">addShort(int, short)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Add a short for the specified column.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#addShort-java.lang.String-short-">addShort(String, short)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Add a short for the specified column.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/CreateTableOptions.html#addSplitRow-org.apache.kudu.client.PartialRow-">addSplitRow(PartialRow)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client">CreateTableOptions</a></dt>
+<dd>
+<div class="block">Add a range partition split.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#addString-int-java.lang.String-">addString(int, String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Add a String for the specified column.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#addString-java.lang.String-java.lang.String-">addString(String, String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Add a String for the specified column.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#addStringUtf8-int-byte:A-">addStringUtf8(int, byte[])</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Add a String for the specified value, encoded as UTF8.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#addStringUtf8-java.lang.String-byte:A-">addStringUtf8(String, byte[])</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Add a String for the specified value, encoded as UTF8.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/CommandLineParser.html#ADMIN_OPERATION_TIMEOUT_MS_KEY">ADMIN_OPERATION_TIMEOUT_MS_KEY</a></span> - Static variable in class org.apache.kudu.mapreduce.<a href="org/apache/kudu/mapreduce/CommandLineParser.html" title="class in org.apache.kudu.mapreduce">CommandLineParser</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Status.html#AlreadyPresent-java.lang.String-">AlreadyPresent(String)</a></span> - Static method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Status.html#AlreadyPresent-java.lang.String-int-">AlreadyPresent(String, int)</a></span> - Static method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduClient.html#alterTable-java.lang.String-org.apache.kudu.client.AlterTableOptions-">alterTable(String, AlterTableOptions)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client">AsyncKuduClient</a></dt>
+<dd>
+<div class="block">Alter a table on the cluster as specified by the builder.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduClient.html#alterTable-java.lang.String-org.apache.kudu.client.AlterTableOptions-">alterTable(String, AlterTableOptions)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a></dt>
+<dd>
+<div class="block">Alter a table on the cluster as specified by the builder.</div>
+</dd>
+<dt><a href="org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client"><span class="typeNameLink">AlterTableOptions</span></a> - Class in <a href="org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></dt>
+<dd>
+<div class="block">This builder must be used to alter a table.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AlterTableOptions.html#AlterTableOptions--">AlterTableOptions()</a></span> - Constructor for class org.apache.kudu.client.<a href="org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></dt>
+<dd>&nbsp;</dd>
+<dt><a href="org/apache/kudu/client/AlterTableResponse.html" title="class in org.apache.kudu.client"><span class="typeNameLink">AlterTableResponse</span></a> - Class in <a href="org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduSession.html#apply-org.apache.kudu.client.Operation-">apply(Operation)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduSession.html" title="class in org.apache.kudu.client">AsyncKuduSession</a></dt>
+<dd>
+<div class="block">Apply the given operation.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduSession.html#apply-org.apache.kudu.client.Operation-">apply(Operation)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduSession.html" title="class in org.apache.kudu.client">KuduSession</a></dt>
+<dd>
+<div class="block">Apply a given <a href="org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client"><code>Operation</code></a> to Kudu as part of this session.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduTable.html#asyncGetTabletsLocations-long-">asyncGetTabletsLocations(long)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a></dt>
+<dd>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>
+<div class="block"><span class="deprecationComment">use the <a href="org/apache/kudu/client/KuduScanToken.html" title="class in org.apache.kudu.client"><code>KuduScanToken</code></a> API</span></div>
+</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduTable.html#asyncGetTabletsLocations-byte:A-byte:A-long-">asyncGetTabletsLocations(byte[], byte[], long)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a></dt>
+<dd>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>
+<div class="block"><span class="deprecationComment">use the <a href="org/apache/kudu/client/KuduScanToken.html" title="class in org.apache.kudu.client"><code>KuduScanToken</code></a> API</span></div>
+</div>
+</dd>
+<dt><a href="org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client"><span class="typeNameLink">AsyncKuduClient</span></a> - Class in <a href="org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></dt>
+<dd>
+<div class="block">A fully asynchronous and thread-safe client for Kudu.</div>
+</dd>
+<dt><a href="org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html" title="class in org.apache.kudu.client"><span class="typeNameLink">AsyncKuduClient.AsyncKuduClientBuilder</span></a> - Class in <a href="org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></dt>
+<dd>
+<div class="block">Builder class to use in order to connect to Kudu.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html#AsyncKuduClientBuilder-java.lang.String-">AsyncKuduClientBuilder(String)</a></span> - Constructor for class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html" title="class in org.apache.kudu.client">AsyncKuduClient.AsyncKuduClientBuilder</a></dt>
+<dd>
+<div class="block">Creates a new builder for a client that will connect to the specified masters.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html#AsyncKuduClientBuilder-java.util.List-">AsyncKuduClientBuilder(List&lt;String&gt;)</a></span> - Constructor for class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html" title="class in org.apache.kudu.client">AsyncKuduClient.AsyncKuduClientBuilder</a></dt>
+<dd>
+<div class="block">Creates a new builder for a client that will connect to the specified masters.</div>
+</dd>
+<dt><a href="org/apache/kudu/client/AsyncKuduScanner.html" title="class in org.apache.kudu.client"><span class="typeNameLink">AsyncKuduScanner</span></a> - Class in <a href="org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></dt>
+<dd>
+<div class="block">Creates a scanner to read data from Kudu.</div>
+</dd>
+<dt><a href="org/apache/kudu/client/AsyncKuduScanner.AsyncKuduScannerBuilder.html" title="class in org.apache.kudu.client"><span class="typeNameLink">AsyncKuduScanner.AsyncKuduScannerBuilder</span></a> - Class in <a href="org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></dt>
+<dd>
+<div class="block">A Builder class to build <a href="org/apache/kudu/client/AsyncKuduScanner.html" title="class in org.apache.kudu.client"><code>AsyncKuduScanner</code></a>.</div>
+</dd>
+<dt><a href="org/apache/kudu/client/AsyncKuduScanner.ReadMode.html" title="enum in org.apache.kudu.client"><span class="typeNameLink">AsyncKuduScanner.ReadMode</span></a> - Enum in <a href="org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></dt>
+<dd>
+<div class="block">The possible read modes for scanners.</div>
+</dd>
+<dt><a href="org/apache/kudu/client/AsyncKuduSession.html" title="class in org.apache.kudu.client"><span class="typeNameLink">AsyncKuduSession</span></a> - Class in <a href="org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></dt>
+<dd>
+<div class="block">An <code>AsyncKuduSession</code> belongs to a specific <a href="org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client"><code>AsyncKuduClient</code></a>, and represents a
+ context in which all write data access should take place.</div>
+</dd>
+<dt><a href="org/apache/kudu/flume/sink/AvroKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink"><span class="typeNameLink">AvroKuduOperationsProducer</span></a> - Class in <a href="org/apache/kudu/flume/sink/package-summary.html">org.apache.kudu.flume.sink</a></dt>
+<dd>
+<div class="block">An Avro serializer that generates one operation per event by deserializing the event
+ body as an Avro record and mapping its fields to columns in a Kudu table.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/AvroKuduOperationsProducer.html#AvroKuduOperationsProducer--">AvroKuduOperationsProducer()</a></span> - Constructor for class org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/AvroKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">AvroKuduOperationsProducer</a></dt>
+<dd>&nbsp;</dd>
+</dl>
+<a name="I:B">
+<!--   -->
+</a>
+<h2 class="title">B</h2>
+<dl>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/KuduSinkConfigurationConstants.html#BATCH_SIZE">BATCH_SIZE</a></span> - Static variable in class org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/KuduSinkConfigurationConstants.html" title="class in org.apache.kudu.flume.sink">KuduSinkConfigurationConstants</a></dt>
+<dd>
+<div class="block">Maximum number of events that the sink should take from the channel per
+ transaction.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AbstractKuduScannerBuilder.html#batchSizeBytes-int-">batchSizeBytes(int)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="class in org.apache.kudu.client">AbstractKuduScannerBuilder</a></dt>
+<dd>
+<div class="block">Sets the maximum number of bytes returned by the scanner, on each batch.</div>
+</dd>
+<dt><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools"><span class="typeNameLink">BigLinkedListCommon</span></a> - Class in <a href="org/apache/kudu/mapreduce/tools/package-summary.html">org.apache.kudu.mapreduce.tools</a></dt>
+<dd>
+<div class="block">Static constants, helper methods, and utility classes for BigLinkedList
+ implementations.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html#bossCount-int-">bossCount(int)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html" title="class in org.apache.kudu.client">AsyncKuduClient.AsyncKuduClientBuilder</a></dt>
+<dd>
+<div class="block">Set the maximum number of boss threads.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduClient.KuduClientBuilder.html#bossCount-int-">bossCount(int)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduClient.KuduClientBuilder.html" title="class in org.apache.kudu.client">KuduClient.KuduClientBuilder</a></dt>
+<dd>
+<div class="block">Set the maximum number of boss threads.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AbstractKuduScannerBuilder.html#build--">build()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="class in org.apache.kudu.client">AbstractKuduScannerBuilder</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html#build--">build()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html" title="class in org.apache.kudu.client">AsyncKuduClient.AsyncKuduClientBuilder</a></dt>
+<dd>
+<div class="block">Creates a new client that connects to the masters.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduScanner.AsyncKuduScannerBuilder.html#build--">build()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduScanner.AsyncKuduScannerBuilder.html" title="class in org.apache.kudu.client">AsyncKuduScanner.AsyncKuduScannerBuilder</a></dt>
+<dd>
+<div class="block">Builds an <a href="org/apache/kudu/client/AsyncKuduScanner.html" title="class in org.apache.kudu.client"><code>AsyncKuduScanner</code></a> using the passed configurations.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduClient.KuduClientBuilder.html#build--">build()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduClient.KuduClientBuilder.html" title="class in org.apache.kudu.client">KuduClient.KuduClientBuilder</a></dt>
+<dd>
+<div class="block">Creates a new client that connects to the masters.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduScanner.KuduScannerBuilder.html#build--">build()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduScanner.KuduScannerBuilder.html" title="class in org.apache.kudu.client">KuduScanner.KuduScannerBuilder</a></dt>
+<dd>
+<div class="block">Builds a <a href="org/apache/kudu/client/KuduScanner.html" title="class in org.apache.kudu.client"><code>KuduScanner</code></a> using the passed configurations.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduScanToken.KuduScanTokenBuilder.html#build--">build()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduScanToken.KuduScanTokenBuilder.html" title="class in org.apache.kudu.client">KuduScanToken.KuduScanTokenBuilder</a></dt>
+<dd>&nbsp;</dd>
+</dl>
+<a name="I:C">
+<!--   -->
+</a>
+<h2 class="title">C</h2>
+<dl>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AbstractKuduScannerBuilder.html#cacheBlocks-boolean-">cacheBlocks(boolean)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="class in org.apache.kudu.client">AbstractKuduScannerBuilder</a></dt>
+<dd>
+<div class="block">Sets the block caching policy for the scanner.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AlterTableOptions.html#changeCompressionAlgorithm-java.lang.String-org.apache.kudu.ColumnSchema.CompressionAlgorithm-">changeCompressionAlgorithm(String, ColumnSchema.CompressionAlgorithm)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></dt>
+<dd>
+<div class="block">Change the compression used for a column.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AlterTableOptions.html#changeDefault-java.lang.String-java.lang.Object-">changeDefault(String, Object)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></dt>
+<dd>
+<div class="block">Change the default value for a column.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AlterTableOptions.html#changeDesiredBlockSize-java.lang.String-int-">changeDesiredBlockSize(String, int)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></dt>
+<dd>
+<div class="block">Change the block size of a column's storage.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AlterTableOptions.html#changeEncoding-java.lang.String-org.apache.kudu.ColumnSchema.Encoding-">changeEncoding(String, ColumnSchema.Encoding)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></dt>
+<dd>
+<div class="block">Change the encoding used for a column.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/KuduTableOutputFormat.html#checkOutputSpecs-org.apache.hadoop.mapreduce.JobContext-">checkOutputSpecs(JobContext)</a></span> - Method in class org.apache.kudu.mapreduce.<a href="org/apache/kudu/mapreduce/KuduTableOutputFormat.html" title="class in org.apache.kudu.mapreduce">KuduTableOutputFormat</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduClient.html#close--">close()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client">AsyncKuduClient</a></dt>
+<dd>
+<div class="block">Invokes <a href="org/apache/kudu/client/AsyncKuduClient.html#shutdown--"><code>AsyncKuduClient.shutdown()</code></a> and waits.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduScanner.html#close--">close()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduScanner.html" title="class in org.apache.kudu.client">AsyncKuduScanner</a></dt>
+<dd>
+<div class="block">Closes this scanner (don't forget to call this when you're done with it!).</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduSession.html#close--">close()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduSession.html" title="class in org.apache.kudu.client">AsyncKuduSession</a></dt>
+<dd>
+<div class="block">Flushes the buffered operations and marks this session as closed.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduClient.html#close--">close()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a></dt>
+<dd>
+<div class="block">Analogous to <a href="org/apache/kudu/client/KuduClient.html#shutdown--"><code>KuduClient.shutdown()</code></a>.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduScanner.html#close--">close()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduScanner.html" title="class in org.apache.kudu.client">KuduScanner</a></dt>
+<dd>
+<div class="block">Closes this scanner (don't forget to call this when you're done with it!).</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduSession.html#close--">close()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduSession.html" title="class in org.apache.kudu.client">KuduSession</a></dt>
+<dd>
+<div class="block">Blocking call that flushes the buffers (see <a href="org/apache/kudu/client/KuduSession.html#flush--"><code>KuduSession.flush()</code></a> and closes the sessions.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/AvroKuduOperationsProducer.html#close--">close()</a></span> - Method in class org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/AvroKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">AvroKuduOperationsProducer</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/KuduOperationsProducer.html#close--">close()</a></span> - Method in interface org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/KuduOperationsProducer.html" title="interface in org.apache.kudu.flume.sink">KuduOperationsProducer</a></dt>
+<dd>
+<div class="block">Cleans up any state.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html#close--">close()</a></span> - Method in class org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">RegexpKuduOperationsProducer</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/SimpleKeyedKuduOperationsProducer.html#close--">close()</a></span> - Method in class org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/SimpleKeyedKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">SimpleKeyedKuduOperationsProducer</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/SimpleKuduOperationsProducer.html#close--">close()</a></span> - Method in class org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/SimpleKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">SimpleKuduOperationsProducer</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/OperationResponse.html#collectErrors-java.util.List-">collectErrors(List&lt;OperationResponse&gt;)</a></span> - Static method in class org.apache.kudu.client.<a href="org/apache/kudu/client/OperationResponse.html" title="class in org.apache.kudu.client">OperationResponse</a></dt>
+<dd>
+<div class="block">Utility method that collects all the row errors from the given list of responses.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_CLIENT">COLUMN_CLIENT</a></span> - Static variable in class org.apache.kudu.mapreduce.tools.<a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools">BigLinkedListCommon</a></dt>
+<dd>
+<div class="block">identifier of the mapred task that generated this row.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_CLIENT_IDX">COLUMN_CLIENT_IDX</a></span> - Static variable in class org.apache.kudu.mapreduce.tools.<a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools">BigLinkedListCommon</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_KEY_ONE">COLUMN_KEY_ONE</a></span> - Static variable in class org.apache.kudu.mapreduce.tools.<a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools">BigLinkedListCommon</a></dt>
+<dd>
+<div class="block">Row key, two times 8 bytes.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_KEY_ONE_IDX">COLUMN_KEY_ONE_IDX</a></span> - Static variable in class org.apache.kudu.mapreduce.tools.<a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools">BigLinkedListCommon</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_KEY_TWO">COLUMN_KEY_TWO</a></span> - Static variable in class org.apache.kudu.mapreduce.tools.<a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools">BigLinkedListCommon</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_KEY_TWO_IDX">COLUMN_KEY_TWO_IDX</a></span> - Static variable in class org.apache.kudu.mapreduce.tools.<a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools">BigLinkedListCommon</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_PREV_ONE">COLUMN_PREV_ONE</a></span> - Static variable in class org.apache.kudu.mapreduce.tools.<a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools">BigLinkedListCommon</a></dt>
+<dd>
+<div class="block">Link to the id of the prev node in the linked list, two times 8 bytes.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_PREV_ONE_IDX">COLUMN_PREV_ONE_IDX</a></span> - Static variable in class org.apache.kudu.mapreduce.tools.<a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools">BigLinkedListCommon</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_PREV_TWO">COLUMN_PREV_TWO</a></span> - Static variable in class org.apache.kudu.mapreduce.tools.<a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools">BigLinkedListCommon</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_PREV_TWO_IDX">COLUMN_PREV_TWO_IDX</a></span> - Static variable in class org.apache.kudu.mapreduce.tools.<a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools">BigLinkedListCommon</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_ROW_ID">COLUMN_ROW_ID</a></span> - Static variable in class org.apache.kudu.mapreduce.tools.<a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools">BigLinkedListCommon</a></dt>
+<dd>
+<div class="block">the id of the row within the same client.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_ROW_ID_IDX">COLUMN_ROW_ID_IDX</a></span> - Static variable in class org.apache.kudu.mapreduce.tools.<a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools">BigLinkedListCommon</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_UPDATE_COUNT">COLUMN_UPDATE_COUNT</a></span> - Static variable in class org.apache.kudu.mapreduce.tools.<a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools">BigLinkedListCommon</a></dt>
+<dd>
+<div class="block">The number of times this row was updated.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_UPDATE_COUNT_IDX">COLUMN_UPDATE_COUNT_IDX</a></span> - Static variable in class org.apache.kudu.mapreduce.tools.<a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools">BigLinkedListCommon</a></dt>
+<dd>&nbsp;</dd>
+<dt><a href="org/apache/kudu/client/ColumnRangePredicate.html" title="class in org.apache.kudu.client"><span class="typeNameLink">ColumnRangePredicate</span></a> - Class in <a href="org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></dt>
+<dd>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>
+<div class="block"><span class="deprecationComment">use the <a href="org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client"><code>KuduPredicate</code></a> class instead.</span></div>
+</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/ColumnRangePredicate.html#ColumnRangePredicate-org.apache.kudu.ColumnSchema-">ColumnRangePredicate(ColumnSchema)</a></span> - Constructor for class org.apache.kudu.client.<a href="org/apache/kudu/client/ColumnRangePredicate.html" title="class in org.apache.kudu.client">ColumnRangePredicate</a></dt>
+<dd>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
+<div class="block">Create the predicate on the specified column</div>
+</dd>
+<dt><a href="org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu"><span class="typeNameLink">ColumnSchema</span></a> - Class in <a href="org/apache/kudu/package-summary.html">org.apache.kudu</a></dt>
+<dd>
+<div class="block">Represents a Kudu Table column.</div>
+</dd>
+<dt><a href="org/apache/kudu/mapreduce/CommandLineParser.html" title="class in org.apache.kudu.mapreduce"><span class="typeNameLink">CommandLineParser</span></a> - Class in <a href="org/apache/kudu/mapreduce/package-summary.html">org.apache.kudu.mapreduce</a></dt>
+<dd>
+<div class="block">Utility class that manages common configurations to all MR jobs.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/CommandLineParser.html#CommandLineParser-org.apache.hadoop.conf.Configuration-">CommandLineParser(Configuration)</a></span> - Constructor for class org.apache.kudu.mapreduce.<a href="org/apache/kudu/mapreduce/CommandLineParser.html" title="class in org.apache.kudu.mapreduce">CommandLineParser</a></dt>
+<dd>
+<div class="block">Constructor that uses a Configuration that has already been through
+ <code>GenericOptionsParser</code>'s command line parsing.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/KuduTableOutputCommitter.html#commitTask-org.apache.hadoop.mapreduce.TaskAttemptContext-">commitTask(TaskAttemptContext)</a></span> - Method in class org.apache.kudu.mapreduce.<a href="org/apache/kudu/mapreduce/KuduTableOutputCommitter.html" title="class in org.apache.kudu.mapreduce">KuduTableOutputCommitter</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduScanToken.html#compareTo-org.apache.kudu.client.KuduScanToken-">compareTo(KuduScanToken)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduScanToken.html" title="class in org.apache.kudu.client">KuduScanToken</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Status.html#ConfigurationError-java.lang.String-">ConfigurationError(String)</a></span> - Static method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Status.html#ConfigurationError-java.lang.String-int-">ConfigurationError(String, int)</a></span> - Static method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/AvroKuduOperationsProducer.html#configure-org.apache.flume.Context-">configure(Context)</a></span> - Method in class org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/AvroKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">AvroKuduOperationsProducer</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/KuduSink.html#configure-org.apache.flume.Context-">configure(Context)</a></span> - Method in class org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/KuduSink.html" title="class in org.apache.kudu.flume.sink">KuduSink</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html#configure-org.apache.flume.Context-">configure(Context)</a></span> - Method in class org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">RegexpKuduOperationsProducer</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/SimpleKeyedKuduOperationsProducer.html#configure-org.apache.flume.Context-">configure(Context)</a></span> - Method in class org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/SimpleKeyedKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">SimpleKeyedKuduOperationsProducer</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/SimpleKuduOperationsProducer.html#configure-org.apache.flume.Context-">configure(Context)</a></span> - Method in class org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/SimpleKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">SimpleKuduOperationsProducer</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Status.html#Corruption-java.lang.String-">Corruption(String)</a></span> - Static method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Status.html#Corruption-java.lang.String-int-">Corruption(String, int)</a></span> - Static method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduSession.html#countPendingErrors--">countPendingErrors()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduSession.html" title="class in org.apache.kudu.client">AsyncKuduSession</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduSession.html#countPendingErrors--">countPendingErrors()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduSession.html" title="class in org.apache.kudu.client">KuduSession</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/SessionConfiguration.html#countPendingErrors--">countPendingErrors()</a></span> - Method in interface org.apache.kudu.client.<a href="org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client">SessionConfiguration</a></dt>
+<dd>
+<div class="block">Return the number of errors which are pending.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/KuduTableInputFormat.html#createRecordReader-org.apache.hadoop.mapreduce.InputSplit-org.apache.hadoop.mapreduce.TaskAttemptContext-">createRecordReader(InputSplit, TaskAttemptContext)</a></span> - Method in class org.apache.kudu.mapreduce.<a href="org/apache/kudu/mapreduce/KuduTableInputFormat.html" title="class in org.apache.kudu.mapreduce">KuduTableInputFormat</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/tools/ImportCsv.html#createSubmittableJob-org.apache.hadoop.conf.Configuration-java.lang.String:A-">createSubmittableJob(Configuration, String[])</a></span> - Static method in class org.apache.kudu.mapreduce.tools.<a href="org/apache/kudu/mapreduce/tools/ImportCsv.html" title="class in org.apache.kudu.mapreduce.tools">ImportCsv</a></dt>
+<dd>
+<div class="block">Sets up the actual job.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduClient.html#createTable-java.lang.String-org.apache.kudu.Schema-org.apache.kudu.client.CreateTableOptions-">createTable(String, Schema, CreateTableOptions)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client">AsyncKuduClient</a></dt>
+<dd>
+<div class="block">Create a table on the cluster with the specified name, schema, and table configurations.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduClient.html#createTable-java.lang.String-org.apache.kudu.Schema-org.apache.kudu.client.CreateTableOptions-">createTable(String, Schema, CreateTableOptions)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a></dt>
+<dd>
+<div class="block">Create a table on the cluster with the specified name, schema, and table configurations.</div>
+</dd>
+<dt><a href="org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client"><span class="typeNameLink">CreateTableOptions</span></a> - Class in <a href="org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></dt>
+<dd>
+<div class="block">This is a builder class for all the options that can be provided while creating a table.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/CreateTableOptions.html#CreateTableOptions--">CreateTableOptions()</a></span> - Constructor for class org.apache.kudu.client.<a href="org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client">CreateTableOptions</a></dt>
+<dd>&nbsp;</dd>
+<dt><a href="org/apache/kudu/mapreduce/tools/CsvParser.html" title="class in org.apache.kudu.mapreduce.tools"><span class="typeNameLink">CsvParser</span></a> - Class in <a href="org/apache/kudu/mapreduce/tools/package-summary.html">org.apache.kudu.mapreduce.tools</a></dt>
+<dd>
+<div class="block">Column-separated values parser that gives access to the different columns inside each line of
+ data.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/tools/CsvParser.html#CsvParser-java.lang.String-java.lang.String-">CsvParser(String, String)</a></span> - Constructor for class org.apache.kudu.mapreduce.tools.<a href="org/apache/kudu/mapreduce/tools/CsvParser.html" title="class in org.apache.kudu.mapreduce.tools">CsvParser</a></dt>
+<dd>&nbsp;</dd>
+</dl>
+<a name="I:D">
+<!--   -->
+</a>
+<h2 class="title">D</h2>
+<dl>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html#DEFAULT_ENCODING">DEFAULT_ENCODING</a></span> - Static variable in class org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">RegexpKuduOperationsProducer</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#DEFAULT_HEADS_TABLE_NAME">DEFAULT_HEADS_TABLE_NAME</a></span> - Static variable in class org.apache.kudu.mapreduce.tools.<a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools">BigLinkedListCommon</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/AvroKuduOperationsProducer.html#DEFAULT_OPERATION">DEFAULT_OPERATION</a></span> - Static variable in class org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/AvroKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">AvroKuduOperationsProducer</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html#DEFAULT_OPERATION">DEFAULT_OPERATION</a></span> - Static variable in class org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">RegexpKuduOperationsProducer</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduClient.html#DEFAULT_OPERATION_TIMEOUT_MS">DEFAULT_OPERATION_TIMEOUT_MS</a></span> - Static variable in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client">AsyncKuduClient</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html#DEFAULT_SKIP_BAD_COLUMN_VALUE">DEFAULT_SKIP_BAD_COLUMN_VALUE</a></span> - Static variable in class org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">RegexpKuduOperationsProducer</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html#DEFAULT_SKIP_MISSING_COLUMN">DEFAULT_SKIP_MISSING_COLUMN</a></span> - Static variable in class org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">RegexpKuduOperationsProducer</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduClient.html#DEFAULT_SOCKET_READ_TIMEOUT_MS">DEFAULT_SOCKET_READ_TIMEOUT_MS</a></span> - Static variable in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client">AsyncKuduClient</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#DEFAULT_TABLE_NAME">DEFAULT_TABLE_NAME</a></span> - Static variable in class org.apache.kudu.mapreduce.tools.<a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools">BigLinkedListCommon</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html#DEFAULT_WARN_UNMATCHED_ROWS">DEFAULT_WARN_UNMATCHED_ROWS</a></span> - Static variable in class org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">RegexpKuduOperationsProducer</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html#defaultAdminOperationTimeoutMs-long-">defaultAdminOperationTimeoutMs(long)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html" title="class in org.apache.kudu.client">AsyncKuduClient.AsyncKuduClientBuilder</a></dt>
+<dd>
+<div class="block">Sets the default timeout used for administrative operations (e.g.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduClient.KuduClientBuilder.html#defaultAdminOperationTimeoutMs-long-">defaultAdminOperationTimeoutMs(long)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduClient.KuduClientBuilder.html" title="class in org.apache.kudu.client">KuduClient.KuduClientBuilder</a></dt>
+<dd>
+<div class="block">Sets the default timeout used for administrative operations (e.g.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html#defaultOperationTimeoutMs-long-">defaultOperationTimeoutMs(long)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html" title="class in org.apache.kudu.client">AsyncKuduClient.AsyncKuduClientBuilder</a></dt>
+<dd>
+<div class="block">Sets the default timeout used for user operations (using sessions and scanners).</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduClient.KuduClientBuilder.html#defaultOperationTimeoutMs-long-">defaultOperationTimeoutMs(long)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduClient.KuduClientBuilder.html" title="class in org.apache.kudu.client">KuduClient.KuduClientBuilder</a></dt>
+<dd>
+<div class="block">Sets the default timeout used for user operations (using sessions and scanners).</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html#defaultSocketReadTimeoutMs-long-">defaultSocketReadTimeoutMs(long)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html" title="class in org.apache.kudu.client">AsyncKuduClient.AsyncKuduClientBuilder</a></dt>
+<dd>
+<div class="block">Sets the default timeout to use when waiting on data from a socket.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduClient.KuduClientBuilder.html#defaultSocketReadTimeoutMs-long-">defaultSocketReadTimeoutMs(long)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduClient.KuduClientBuilder.html" title="class in org.apache.kudu.client">KuduClient.KuduClientBuilder</a></dt>
+<dd>
+<div class="block">Sets the default timeout to use when waiting on data from a socket.</div>
+</dd>
+<dt><a href="org/apache/kudu/client/Delete.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Delete</span></a> - Class in <a href="org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></dt>
+<dd>
+<div class="block">Class of Operation for whole row removals.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduClient.html#deleteTable-java.lang.String-">deleteTable(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client">AsyncKuduClient</a></dt>
+<dd>
+<div class="block">Delete a table on the cluster with the specified name.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduClient.html#deleteTable-java.lang.String-">deleteTable(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a></dt>
+<dd>
+<div class="block">Delete a table on the cluster with the specified name.</div>
+</dd>
+<dt><a href="org/apache/kudu/client/DeleteTableResponse.html" title="class in org.apache.kudu.client"><span class="typeNameLink">DeleteTableResponse</span></a> - Class in <a href="org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduScanToken.html#deserializeIntoScanner-byte:A-org.apache.kudu.client.KuduClient-">deserializeIntoScanner(byte[], KuduClient)</a></span> - Static method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduScanToken.html" title="class in org.apache.kudu.client">KuduScanToken</a></dt>
+<dd>
+<div class="block">Deserializes a <code>KuduScanToken</code> into a <a href="org/apache/kudu/client/KuduScanner.html" title="class in org.apache.kudu.client"><code>KuduScanner</code></a>.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html#disableStatistics--">disableStatistics()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html" title="class in org.apache.kudu.client">AsyncKuduClient.AsyncKuduClientBuilder</a></dt>
+<dd>
+<div class="block">Disable this client's collection of statistics.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduClient.KuduClientBuilder.html#disableStatistics--">disableStatistics()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduClient.KuduClientBuilder.html" title="class in org.apache.kudu.client">KuduClient.KuduClientBuilder</a></dt>
+<dd>
+<div class="block">Disable this client's collection of statistics.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AlterTableOptions.html#dropColumn-java.lang.String-">dropColumn(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></dt>
+<dd>
+<div class="block">Drop a column.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AlterTableOptions.html#dropRangePartition-org.apache.kudu.client.PartialRow-org.apache.kudu.client.PartialRow-">dropRangePartition(PartialRow, PartialRow)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></dt>
+<dd>
+<div class="block">Drop the range partition from the table with the specified inclusive lower bound and exclusive
+ upper bound.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AlterTableOptions.html#dropRangePartition-org.apache.kudu.client.PartialRow-org.apache.kudu.client.PartialRow-org.apache.kudu.client.RangePartitionBound-org.apache.kudu.client.RangePartitionBound-">dropRangePartition(PartialRow, PartialRow, RangePartitionBound, RangePartitionBound)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></dt>
+<dd>
+<div class="block">Drop the range partition from the table with the specified lower bound and upper bound.</div>
+</dd>
+</dl>
+<a name="I:E">
+<!--   -->
+</a>
+<h2 class="title">E</h2>
+<dl>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduClient.html#EMPTY_ARRAY">EMPTY_ARRAY</a></span> - Static variable in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client">AsyncKuduClient</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#encodePrimaryKey--">encodePrimaryKey()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Returns the encoded primary key of the row.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html#ENCODING_PROP">ENCODING_PROP</a></span> - Static variable in class org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">RegexpKuduOperationsProducer</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Status.html#EndOfFile-java.lang.String-">EndOfFile(String)</a></span> - Static method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Status.html#EndOfFile-java.lang.String-int-">EndOfFile(String, int)</a></span> - Static method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduPredicate.html#equals-java.lang.Object-">equals(Object)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/ColumnSchema.html#equals-java.lang.Object-">equals(Object)</a></span> - Method in class org.apache.kudu.<a href="org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AbstractKuduScannerBuilder.html#exclusiveUpperBound-org.apache.kudu.client.PartialRow-">exclusiveUpperBound(PartialRow)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="class in org.apache.kudu.client">AbstractKuduScannerBuilder</a></dt>
+<dd>
+<div class="block">Add an upper bound (exclusive) primary key for the scan.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AbstractKuduScannerBuilder.html#exclusiveUpperBoundRaw-byte:A-">exclusiveUpperBoundRaw(byte[])</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="class in org.apache.kudu.client">AbstractKuduScannerBuilder</a></dt>
+<dd>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>
+<div class="block"><span class="deprecationComment">use <a href="org/apache/kudu/client/AbstractKuduScannerBuilder.html#exclusiveUpperBound-org.apache.kudu.client.PartialRow-"><code>AbstractKuduScannerBuilder.exclusiveUpperBound(PartialRow)</code></a></span></div>
+</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduClient.html#exportAuthenticationCredentials--">exportAuthenticationCredentials()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client">AsyncKuduClient</a></dt>
+<dd>
+<div class="block">Export serialized authentication data that may be passed to a different
+ client instance and imported to provide that client the ability to connect
+ to the cluster.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduClient.html#exportAuthenticationCredentials--">exportAuthenticationCredentials()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a></dt>
+<dd>
+<div class="block">Export serialized authentication data that may be passed to a different
+ client instance and imported to provide that client the ability to connect
+ to the cluster.</div>
+</dd>
+<dt><a href="org/apache/kudu/client/ExternalConsistencyMode.html" title="enum in org.apache.kudu.client"><span class="typeNameLink">ExternalConsistencyMode</span></a> - Enum in <a href="org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></dt>
+<dd>
+<div class="block">The possible external consistency modes on which Kudu operates.</div>
+</dd>
+</dl>
+<a name="I:F">
+<!--   -->
+</a>
+<h2 class="title">F</h2>
+<dl>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduSession.html#flush--">flush()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduSession.html" title="class in org.apache.kudu.client">AsyncKuduSession</a></dt>
+<dd>
+<div class="block">Flush buffered writes.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduSession.html#flush--">flush()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduSession.html" title="class in org.apache.kudu.client">KuduSession</a></dt>
+<dd>
+<div class="block">Blocking call that force flushes this session's buffers.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduPredicate.html#fromPB-org.apache.kudu.Schema-org.apache.kudu.Common.ColumnPredicatePB-">fromPB(Schema, Common.ColumnPredicatePB)</a></span> - Static method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a></dt>
+<dd>
+<div class="block">Convert a column predicate protobuf message into a predicate.</div>
+</dd>
+</dl>
+<a name="I:G">
+<!--   -->
+</a>
+<h2 class="title">G</h2>
+<dl>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/CommandLineParser.html#getAdminOperationTimeoutMs--">getAdminOperationTimeoutMs()</a></span> - Method in class org.apache.kudu.mapreduce.<a href="org/apache/kudu/mapreduce/CommandLineParser.html" title="class in org.apache.kudu.mapreduce">CommandLineParser</a></dt>
+<dd>
+<div class="block">Get the configured timeout for admin operations.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduTable.html#getAsyncClient--">getAsyncClient()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a></dt>
+<dd>
+<div class="block">Get the async client that created this instance.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/CommandLineParser.html#getAsyncClient--">getAsyncClient()</a></span> - Method in class org.apache.kudu.mapreduce.<a href="org/apache/kudu/mapreduce/CommandLineParser.html" title="class in org.apache.kudu.mapreduce">CommandLineParser</a></dt>
+<dd>
+<div class="block">Get an async client connected to the configured Master(s).</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduScanner.html#getBatchSizeBytes--">getBatchSizeBytes()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduScanner.html" title="class in org.apache.kudu.client">AsyncKuduScanner</a></dt>
+<dd>
+<div class="block">Returns the maximum number of bytes returned by the scanner, on each batch.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduScanner.html#getBatchSizeBytes--">getBatchSizeBytes()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduScanner.html" title="class in org.apache.kudu.client">KuduScanner</a></dt>
+<dd>
+<div class="block">Returns the maximum number of bytes returned by the scanner, on each batch.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#getBinary-java.lang.String-">getBinary(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Get the specified column's binary data.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#getBinary-int-">getBinary(int)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Get the specified column's binary data.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/RowResult.html#getBinary-java.lang.String-">getBinary(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a></dt>
+<dd>
+<div class="block">Get the specified column's binary data.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/RowResult.html#getBinary-int-">getBinary(int)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a></dt>
+<dd>
+<div class="block">Get the specified column's binary data.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#getBinaryCopy-java.lang.String-">getBinaryCopy(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Get a copy of the specified column's binary data.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#getBinaryCopy-int-">getBinaryCopy(int)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Get a copy of the specified column's binary data.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/RowResult.html#getBinaryCopy-java.lang.String-">getBinaryCopy(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a></dt>
+<dd>
+<div class="block">Get a copy of the specified column's binary data.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/RowResult.html#getBinaryCopy-int-">getBinaryCopy(int)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a></dt>
+<dd>
+<div class="block">Get a copy of the specified column's binary data.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#getBoolean-java.lang.String-">getBoolean(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Get the specified column's boolean</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#getBoolean-int-">getBoolean(int)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Get the specified column's boolean</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/RowResult.html#getBoolean-java.lang.String-">getBoolean(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a></dt>
+<dd>
+<div class="block">Get the specified column's boolean</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/RowResult.html#getBoolean-int-">getBoolean(int)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a></dt>
+<dd>
+<div class="block">Get the specified column's boolean</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#getByte-java.lang.String-">getByte(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Get the specified column's byte</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#getByte-int-">getByte(int)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Get the specified column's byte</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/RowResult.html#getByte-java.lang.String-">getByte(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a></dt>
+<dd>
+<div class="block">Get the specified column's byte</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/RowResult.html#getByte-int-">getByte(int)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a></dt>
+<dd>
+<div class="block">Get the specified column's byte</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduScanner.html#getCacheBlocks--">getCacheBlocks()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduScanner.html" title="class in org.apache.kudu.client">AsyncKuduScanner</a></dt>
+<dd>
+<div class="block">Returns if this scanner was configured to cache data blocks or not.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduScanner.html#getCacheBlocks--">getCacheBlocks()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduScanner.html" title="class in org.apache.kudu.client">KuduScanner</a></dt>
+<dd>
+<div class="block">Returns if this scanner was configured to cache data blocks or not.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/KuduSink.html#getClient--">getClient()</a></span> - Method in class org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/KuduSink.html" title="class in org.apache.kudu.flume.sink">KuduSink</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/CommandLineParser.html#getClient--">getClient()</a></span> - Method in class org.apache.kudu.mapreduce.<a href="org/apache/kudu/mapreduce/CommandLineParser.html" title="class in org.apache.kudu.mapreduce">CommandLineParser</a></dt>
+<dd>
+<div class="block">Get a client connected to the configured Master(s).</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Statistics.html#getClientStatistic-org.apache.kudu.client.Statistics.Statistic-">getClientStatistic(Statistics.Statistic)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Statistics.html" title="class in org.apache.kudu.client">Statistics</a></dt>
+<dd>
+<div class="block">Get the statistic count of the whole client.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/ColumnRangePredicate.html#getColumn--">getColumn()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/ColumnRangePredicate.html" title="class in org.apache.kudu.client">ColumnRangePredicate</a></dt>
+<dd>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
+<div class="block">Get the column used by this predicate</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/Schema.html#getColumn-java.lang.String-">getColumn(String)</a></span> - Method in class org.apache.kudu.<a href="org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a></dt>
+<dd>
+<div class="block">Get the column associated with the specified name</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/Schema.html#getColumnByIndex-int-">getColumnByIndex(int)</a></span> - Method in class org.apache.kudu.<a href="org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a></dt>
+<dd>
+<div class="block">Get the column at the specified index in the original list</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/Schema.html#getColumnCount--">getColumnCount()</a></span> - Method in class org.apache.kudu.<a href="org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a></dt>
+<dd>
+<div class="block">Get the count of columns in this schema</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/Schema.html#getColumnIndex-java.lang.String-">getColumnIndex(String)</a></span> - Method in class org.apache.kudu.<a href="org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a></dt>
+<dd>
+<div class="block">Get the index for the provided column name.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/Schema.html#getColumnIndex-int-">getColumnIndex(int)</a></span> - Method in class org.apache.kudu.<a href="org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a></dt>
+<dd>
+<div class="block">Get the column index of the column with the provided ID.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/Schema.html#getColumnOffset-int-">getColumnOffset(int)</a></span> - Method in class org.apache.kudu.<a href="org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a></dt>
+<dd>
+<div class="block">Get the index at which this column can be found in the backing byte array</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/RowResult.html#getColumnProjection--">getColumnProjection()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a></dt>
+<dd>
+<div class="block">Get the schema used for this scanner's column projection.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/Schema.html#getColumns--">getColumns()</a></span> - Method in class org.apache.kudu.<a href="org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a></dt>
+<dd>
+<div class="block">Get the list of columns used to create this schema</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/RowResult.html#getColumnType-java.lang.String-">getColumnType(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a></dt>
+<dd>
+<div class="block">Get the type of a column in this result.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/RowResult.html#getColumnType-int-">getColumnType(int)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a></dt>
+<dd>
+<div class="block">Get the type of a column in this result.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/ColumnSchema.html#getCompressionAlgorithm--">getCompressionAlgorithm()</a></span> - Method in class org.apache.kudu.<a href="org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a></dt>
+<dd>
+<div class="block">Return the compression algorithm of this column, or null if it is not known.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/KuduTableInputFormat.html#getConf--">getConf()</a></span> - Method in class org.apache.kudu.mapreduce.<a href="org/apache/kudu/mapreduce/KuduTableInputFormat.html" title="class in org.apache.kudu.mapreduce">KuduTableInputFormat</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/KuduTableOutputFormat.html#getConf--">getConf()</a></span> - Method in class org.apache.kudu.mapreduce.<a href="org/apache/kudu/mapreduce/KuduTableOutputFormat.html" title="class in org.apache.kudu.mapreduce">KuduTableOutputFormat</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#getCreateTableOptions-org.apache.kudu.Schema-int-int-int-">getCreateTableOptions(Schema, int, int, int)</a></span> - Static method in class org.apache.kudu.mapreduce.tools.<a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools">BigLinkedListCommon</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/Type.html#getDataType--">getDataType()</a></span> - Method in enum org.apache.kudu.<a href="org/apache/kudu/Type.html" title="enum in org.apache.kudu">Type</a></dt>
+<dd>
+<div class="block">Get the data type from the common's pb</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduClient.html#getDefaultAdminOperationTimeoutMs--">getDefaultAdminOperationTimeoutMs()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client">AsyncKuduClient</a></dt>
+<dd>
+<div class="block">Get the timeout used for admin operations.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduClient.html#getDefaultAdminOperationTimeoutMs--">getDefaultAdminOperationTimeoutMs()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a></dt>
+<dd>
+<div class="block">Get the timeout used for admin operations.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduClient.html#getDefaultOperationTimeoutMs--">getDefaultOperationTimeoutMs()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client">AsyncKuduClient</a></dt>
+<dd>
+<div class="block">Get the timeout used for operations on sessions and scanners.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduClient.html#getDefaultOperationTimeoutMs--">getDefaultOperationTimeoutMs()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a></dt>
+<dd>
+<div class="block">Get the timeout used for operations on sessions and scanners.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduClient.html#getDefaultSocketReadTimeoutMs--">getDefaultSocketReadTimeoutMs()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client">AsyncKuduClient</a></dt>
+<dd>
+<div class="block">Get the timeout used when waiting to read data from a socket.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/ColumnSchema.html#getDefaultValue--">getDefaultValue()</a></span> - Method in class org.apache.kudu.<a href="org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a></dt>
+<dd>
+<div class="block">The Java object representation of the default value that's read</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PleaseThrottleException.html#getDeferred--">getDeferred()</a></span> - Method in exception org.apache.kudu.client.<a href="org/apache/kudu/client/PleaseThrottleException.html" title="class in org.apache.kudu.client">PleaseThrottleException</a></dt>
+<dd>
+<div class="block">Returns a deferred one can wait on before retrying the failed RPC.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/ColumnSchema.html#getDesiredBlockSize--">getDesiredBlockSize()</a></span> - Method in class org.apache.kudu.<a href="org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a></dt>
+<dd>
+<div class="block">Gets the desired block size for this column.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#getDouble-java.lang.String-">getDouble(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Get the specified column's double</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#getDouble-int-">getDouble(int)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Get the specified column's double</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/RowResult.html#getDouble-java.lang.String-">getDouble(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a></dt>
+<dd>
+<div class="block">Get the specified column's double</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/RowResult.html#getDouble-int-">getDouble(int)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a></dt>
+<dd>
+<div class="block">Get the specified column's double</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/ColumnSchema.html#getEncoding--">getEncoding()</a></span> - Method in class org.apache.kudu.<a href="org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a></dt>
+<dd>
+<div class="block">Return the encoding of this column, or null if it is not known.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/LocatedTablet.html#getEndKey--">getEndKey()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/LocatedTablet.html" title="class in org.apache.kudu.client">LocatedTablet</a></dt>
+<dd>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/RowError.html#getErrorStatus--">getErrorStatus()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/RowError.html" title="class in org.apache.kudu.client">RowError</a></dt>
+<dd>
+<div class="block">Get the status code and message of the row error.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/HasFailedRpcException.html#getFailedRpc--">getFailedRpc()</a></span> - Method in interface org.apache.kudu.client.<a href="org/apache/kudu/client/HasFailedRpcException.html" title="interface in org.apache.kudu.client">HasFailedRpcException</a></dt>
+<dd>
+<div class="block">Returns the RPC that caused this exception.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PleaseThrottleException.html#getFailedRpc--">getFailedRpc()</a></span> - Method in exception org.apache.kudu.client.<a href="org/apache/kudu/client/PleaseThrottleException.html" title="class in org.apache.kudu.client">PleaseThrottleException</a></dt>
+<dd>
+<div class="block">The RPC that was made to fail with this exception.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#getFloat-java.lang.String-">getFloat(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Get the specified column's float</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#getFloat-int-">getFloat(int)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Get the specified column's float</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/RowResult.html#getFloat-java.lang.String-">getFloat(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a></dt>
+<dd>
+<div class="block">Get the specified column's float</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/RowResult.html#getFloat-int-">getFloat(int)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a></dt>
+<dd>
+<div class="block">Get the specified column's float</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduSession.html#getFlushMode--">getFlushMode()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduSession.html" title="class in org.apache.kudu.client">AsyncKuduSession</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduSession.html#getFlushMode--">getFlushMode()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduSession.html" title="class in org.apache.kudu.client">KuduSession</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/SessionConfiguration.html#getFlushMode--">getFlushMode()</a></span> - Method in interface org.apache.kudu.client.<a href="org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client">SessionConfiguration</a></dt>
+<dd>
+<div class="block">Get the current flush mode.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduTable.html#getFormattedRangePartitions-long-">getFormattedRangePartitions(long)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a></dt>
+<dd>
+<div class="block">Retrieves a formatted representation of this table's range partitions.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#getHeadsTableSchema--">getHeadsTableSchema()</a></span> - Static method in class org.apache.kudu.mapreduce.tools.<a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools">BigLinkedListCommon</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/CommandLineParser.html#getHelpSnippet--">getHelpSnippet()</a></span> - Static method in class org.apache.kudu.mapreduce.<a href="org/apache/kudu/mapreduce/CommandLineParser.html" title="class in org.apache.kudu.mapreduce">CommandLineParser</a></dt>
+<dd>
+<div class="block">This method returns a single multi-line string that contains the help snippet to append to
+ the tail of a usage() or help() type of method.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#getInt-java.lang.String-">getInt(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Get the specified column's integer</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#getInt-int-">getInt(int)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Get the specified column's integer</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/RowResult.html#getInt-java.lang.String-">getInt(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a></dt>
+<dd>
+<div class="block">Get the specified column's integer</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/RowResult.html#getInt-int-">getInt(int)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a></dt>
+<dd>
+<div class="block">Get the specified column's integer</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/KuduTableOutputFormat.html#getKuduTable-java.lang.String-">getKuduTable(String)</a></span> - Static method in class org.apache.kudu.mapreduce.<a href="org/apache/kudu/mapreduce/KuduTableOutputFormat.html" title="class in org.apache.kudu.mapreduce">KuduTableOutputFormat</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduClient.html#getLastPropagatedTimestamp--">getLastPropagatedTimestamp()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client">AsyncKuduClient</a></dt>
+<dd>
+<div class="block">Returns the last timestamp received from a server.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduClient.html#getLastPropagatedTimestamp--">getLastPropagatedTimestamp()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a></dt>
+<dd>
+<div class="block">Returns the last timestamp received from a server.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/LocatedTablet.html#getLeaderReplica--">getLeaderReplica()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/LocatedTablet.html" title="class in org.apache.kudu.client">LocatedTablet</a></dt>
+<dd>
+<div class="block">Return the current leader, or null if there is none.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduScanner.html#getLimit--">getLimit()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduScanner.html" title="class in org.apache.kudu.client">AsyncKuduScanner</a></dt>
+<dd>
+<div class="block">Returns the maximum number of rows that this scanner was configured to return.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduScanner.html#getLimit--">getLimit()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduScanner.html" title="class in org.apache.kudu.client">KuduScanner</a></dt>
+<dd>
+<div class="block">Returns the maximum number of rows that this scanner was configured to return.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#getLong-java.lang.String-">getLong(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Get the specified column's long
+
+ If this is a UNIXTIME_MICROS column, the long value corresponds to a number of microseconds
+ since midnight, January 1, 1970 UTC.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#getLong-int-">getLong(int)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Get the specified column's long
+
+ If this is a UNIXTIME_MICROS column, the long value corresponds to a number of microseconds
+ since midnight, January 1, 1970 UTC.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/RowResult.html#getLong-java.lang.String-">getLong(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a></dt>
+<dd>
+<div class="block">Get the specified column's long
+
+ If this is a UNIXTIME_MICROS column, the long value corresponds to a number of microseconds
+ since midnight, January 1, 1970 UTC.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/RowResult.html#getLong-int-">getLong(int)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a></dt>
+<dd>
+<div class="block">Get the specified column's long
+
+ If this is a UNIXTIME_MICROS column, the long value corresponds to a number of microseconds
+ since midnight, January 1, 1970 UTC.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/ColumnRangePredicate.html#getLowerBound--">getLowerBound()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/ColumnRangePredicate.html" title="class in org.apache.kudu.client">ColumnRangePredicate</a></dt>
+<dd>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
+<div class="block">Get the lower bound in its raw representation</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/CommandLineParser.html#getMasterAddresses--">getMasterAddresses()</a></span> - Method in class org.apache.kudu.mapreduce.<a href="org/apache/kudu/mapreduce/CommandLineParser.html" title="class in org.apache.kudu.mapreduce">CommandLineParser</a></dt>
+<dd>
+<div class="block">Get the configured master's config.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduClient.html#getMasterAddressesAsString--">getMasterAddressesAsString()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client">AsyncKuduClient</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduClient.html#getMasterAddressesAsString--">getMasterAddressesAsString()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/RowError.html#getMessage--">getMessage()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/RowError.html" title="class in org.apache.kudu.client">RowError</a></dt>
+<dd>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>
+<div class="block"><span class="deprecationComment">Please use getErrorStatus() instead. Will be removed in a future version.</span></div>
+</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduTable.html#getName--">getName()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a></dt>
+<dd>
+<div class="block">Get this table's name.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/ColumnSchema.html#getName--">getName()</a></span> - Method in class org.apache.kudu.<a href="org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a></dt>
+<dd>
+<div class="block">Get the column's name</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/Type.html#getName--">getName()</a></span> - Method in enum org.apache.kudu.<a href="org/apache/kudu/Type.html" title="enum in org.apache.kudu">Type</a></dt>
+<dd>
+<div class="block">Get the string representation of this type</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/CommandLineParser.html#getNumReplicas--">getNumReplicas()</a></span> - Method in class org.apache.kudu.mapreduce.<a href="org/apache/kudu/mapreduce/CommandLineParser.html" title="class in org.apache.kudu.mapreduce">CommandLineParser</a></dt>
+<dd>
+<div class="block">Get the number of replicas to use when configuring a new table.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/RowResultIterator.html#getNumRows--">getNumRows()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/RowResultIterator.html" title="class in org.apache.kudu.client">RowResultIterator</a></dt>
+<dd>
+<div class="block">Get the number of rows in this iterator.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/RowError.html#getOperation--">getOperation()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/RowError.html" title="class in org.apache.kudu.client">RowError</a></dt>
+<dd>
+<div class="block">Get the Operation that failed.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/AvroKuduOperationsProducer.html#getOperations-org.apache.flume.Event-">getOperations(Event)</a></span> - Method in class org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/AvroKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">AvroKuduOperationsProducer</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/KuduOperationsProducer.html#getOperations-org.apache.flume.Event-">getOperations(Event)</a></span> - Method in interface org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/KuduOperationsProducer.html" title="interface in org.apache.kudu.flume.sink">KuduOperationsProducer</a></dt>
+<dd>
+<div class="block">Returns the operations that should be written to Kudu as a result of this event.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html#getOperations-org.apache.flume.Event-">getOperations(Event)</a></span> - Method in class org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">RegexpKuduOperationsProducer</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/SimpleKeyedKuduOperationsProducer.html#getOperations-org.apache.flume.Event-">getOperations(Event)</a></span> - Method in class org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/SimpleKeyedKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">SimpleKeyedKuduOperationsProducer</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/SimpleKuduOperationsProducer.html#getOperations-org.apache.flume.Event-">getOperations(Event)</a></span> - Method in class org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/SimpleKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">SimpleKuduOperationsProducer</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/CommandLineParser.html#getOperationTimeoutMs--">getOperationTimeoutMs()</a></span> - Method in class org.apache.kudu.mapreduce.<a href="org/apache/kudu/mapreduce/CommandLineParser.html" title="class in org.apache.kudu.mapreduce">CommandLineParser</a></dt>
+<dd>
+<div class="block">Get the configured timeout for operations on sessions and scanners.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/KuduTableOutputFormat.html#getOutputCommitter-org.apache.hadoop.mapreduce.TaskAttemptContext-">getOutputCommitter(TaskAttemptContext)</a></span> - Method in class org.apache.kudu.mapreduce.<a href="org/apache/kudu/mapreduce/KuduTableOutputFormat.html" title="class in org.apache.kudu.mapreduce">KuduTableOutputFormat</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/LocatedTablet.html#getPartition--">getPartition()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/LocatedTablet.html" title="class in org.apache.kudu.client">LocatedTablet</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduTable.html#getPartitionSchema--">getPartitionSchema()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a></dt>
+<dd>
+<div class="block">Gets the table's partition schema.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduSession.html#getPendingErrors--">getPendingErrors()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduSession.html" title="class in org.apache.kudu.client">AsyncKuduSession</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduSession.html#getPendingErrors--">getPendingErrors()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduSession.html" title="class in org.apache.kudu.client">KuduSession</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/SessionConfiguration.html#getPendingErrors--">getPendingErrors()</a></span> - Method in interface org.apache.kudu.client.<a href="org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client">SessionConfiguration</a></dt>
+<dd>
+<div class="block">Return any errors from previous calls.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Status.html#getPosixCode--">getPosixCode()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></dt>
+<dd>
+<div class="block">Get the posix code associated with the error.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/Schema.html#getPrimaryKeyColumnCount--">getPrimaryKeyColumnCount()</a></span> - Method in class org.apache.kudu.<a href="org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a></dt>
+<dd>
+<div class="block">Get the count of columns that are part of the primary key.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/Schema.html#getPrimaryKeyColumns--">getPrimaryKeyColumns()</a></span> - Method in class org.apache.kudu.<a href="org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a></dt>
+<dd>
+<div class="block">Get the primary key columns.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduScanner.html#getProjectionSchema--">getProjectionSchema()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduScanner.html" title="class in org.apache.kudu.client">AsyncKuduScanner</a></dt>
+<dd>
+<div class="block">Returns the projection schema of this scanner.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduScanner.html#getProjectionSchema--">getProjectionSchema()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduScanner.html" title="class in org.apache.kudu.client">KuduScanner</a></dt>
+<dd>
+<div class="block">Returns the projection schema of this scanner.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduScanner.html#getReadMode--">getReadMode()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduScanner.html" title="class in org.apache.kudu.client">AsyncKuduScanner</a></dt>
+<dd>
+<div class="block">Returns the ReadMode for this scanner.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduScanner.html#getReadMode--">getReadMode()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduScanner.html" title="class in org.apache.kudu.client">KuduScanner</a></dt>
+<dd>
+<div class="block">Returns the ReadMode for this scanner.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/KuduTableOutputFormat.html#getRecordWriter-org.apache.hadoop.mapreduce.TaskAttemptContext-">getRecordWriter(TaskAttemptContext)</a></span> - Method in class org.apache.kudu.mapreduce.<a href="org/apache/kudu/mapreduce/KuduTableOutputFormat.html" title="class in org.apache.kudu.mapreduce">KuduTableOutputFormat</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/LocatedTablet.html#getReplicas--">getReplicas()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/LocatedTablet.html" title="class in org.apache.kudu.client">LocatedTablet</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/LocatedTablet.Replica.html#getRole--">getRole()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/LocatedTablet.Replica.html" title="class in org.apache.kudu.client">LocatedTablet.Replica</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Operation.html#getRow--">getRow()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">Operation</a></dt>
+<dd>
+<div class="block">Get the underlying row to modify.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/OperationResponse.html#getRowError--">getRowError()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/OperationResponse.html" title="class in org.apache.kudu.client">OperationResponse</a></dt>
+<dd>
+<div class="block">Returns a row error.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/RowErrorsAndOverflowStatus.html#getRowErrors--">getRowErrors()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/RowErrorsAndOverflowStatus.html" title="class in org.apache.kudu.client">RowErrorsAndOverflowStatus</a></dt>
+<dd>
+<div class="block">Get the collected row errors.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/Schema.html#getRowKeyProjection--">getRowKeyProjection()</a></span> - Method in class org.apache.kudu.<a href="org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a></dt>
+<dd>
+<div class="block">Get a schema that only contains the columns which are part of the key</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/Schema.html#getRowSize--">getRowSize()</a></span> - Method in class org.apache.kudu.<a href="org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a></dt>
+<dd>
+<div class="block">Get the size a row built using this schema would be</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/LocatedTablet.Replica.html#getRpcHost--">getRpcHost()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/LocatedTablet.Replica.html" title="class in org.apache.kudu.client">LocatedTablet.Replica</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/LocatedTablet.Replica.html#getRpcPort--">getRpcPort()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/LocatedTablet.Replica.html" title="class in org.apache.kudu.client">LocatedTablet.Replica</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduTable.html#getSchema--">getSchema()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a></dt>
+<dd>
+<div class="block">Get this table's schema, as of the moment this instance was created.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/RowResult.html#getSchema--">getSchema()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a></dt>
+<dd>
+<div class="block">Get the schema associated with this result.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#getShort-java.lang.String-">getShort(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Get the specified column's short</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#getShort-int-">getShort(int)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Get the specified column's short</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/RowResult.html#getShort-java.lang.String-">getShort(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a></dt>
+<dd>
+<div class="block">Get the specified column's short</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/RowResult.html#getShort-int-">getShort(int)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a></dt>
+<dd>
+<div class="block">Get the specified column's short</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/Type.html#getSize--">getSize()</a></span> - Method in enum org.apache.kudu.<a href="org/apache/kudu/Type.html" title="enum in org.apache.kudu">Type</a></dt>
+<dd>
+<div class="block">The size of this type on the wire</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/CommandLineParser.html#getSocketReadTimeoutMs--">getSocketReadTimeoutMs()</a></span> - Method in class org.apache.kudu.mapreduce.<a href="org/apache/kudu/mapreduce/CommandLineParser.html" title="class in org.apache.kudu.mapreduce">CommandLineParser</a></dt>
+<dd>
+<div class="block">Get the configured timeout for socket reads.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/KuduTableInputFormat.html#getSplits-org.apache.hadoop.mapreduce.JobContext-">getSplits(JobContext)</a></span> - Method in class org.apache.kudu.mapreduce.<a href="org/apache/kudu/mapreduce/KuduTableInputFormat.html" title="class in org.apache.kudu.mapreduce">KuduTableInputFormat</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/LocatedTablet.html#getStartKey--">getStartKey()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/LocatedTablet.html" title="class in org.apache.kudu.client">LocatedTablet</a></dt>
+<dd>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduClient.html#getStatistics--">getStatistics()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client">AsyncKuduClient</a></dt>
+<dd>
+<div class="block">Get the statistics object of this client.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduClient.html#getStatistics--">getStatistics()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a></dt>
+<dd>
+<div class="block">Get the statistics object of this client.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduException.html#getStatus--">getStatus()</a></span> - Method in exception org.apache.kudu.client.<a href="org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client">KuduException</a></dt>
+<dd>
+<div class="block">Get the Status object for this exception.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/RowError.html#getStatus--">getStatus()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/RowError.html" title="class in org.apache.kudu.client">RowError</a></dt>
+<dd>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>
+<div class="block"><span class="deprecationComment">Please use getErrorStatus() instead. Will be removed in a future version.</span></div>
+</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#getString-java.lang.String-">getString(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Get the specified column's string.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#getString-int-">getString(int)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Get the specified column's string.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/RowResult.html#getString-java.lang.String-">getString(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a></dt>
+<dd>
+<div class="block">Get the specified column's string.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/RowResult.html#getString-int-">getString(int)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a></dt>
+<dd>
+<div class="block">Get the specified column's string.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/KuduTableMapReduceUtil.html#getTableFromContext-org.apache.hadoop.mapreduce.TaskInputOutputContext-">getTableFromContext(TaskInputOutputContext)</a></span> - Static method in class org.apache.kudu.mapreduce.<a href="org/apache/kudu/mapreduce/KuduTableMapReduceUtil.html" title="class in org.apache.kudu.mapreduce">KuduTableMapReduceUtil</a></dt>
+<dd>
+<div class="block">Use this method when setting up a task to get access to the KuduTable in order to create
+ Inserts, Updates, and Deletes.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AlterTableResponse.html#getTableId--">getTableId()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AlterTableResponse.html" title="class in org.apache.kudu.client">AlterTableResponse</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduTable.html#getTableId--">getTableId()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a></dt>
+<dd>
+<div class="block">Get this table's unique identifier.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Statistics.html#getTableName-java.lang.String-">getTableName(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Statistics.html" title="class in org.apache.kudu.client">Statistics</a></dt>
+<dd>
+<div class="block">Get table name of the given tablet id.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#getTableSchema--">getTableSchema()</a></span> - Static method in class org.apache.kudu.mapreduce.tools.<a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools">BigLinkedListCommon</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Statistics.html#getTableSet--">getTableSet()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Statistics.html" title="class in org.apache.kudu.client">Statistics</a></dt>
+<dd>
+<div class="block">Get the set of tables which have been written into by this client,
+ which have statistics information.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduClient.html#getTablesList--">getTablesList()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client">AsyncKuduClient</a></dt>
+<dd>
+<div class="block">Get the list of all the tables.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduClient.html#getTablesList-java.lang.String-">getTablesList(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client">AsyncKuduClient</a></dt>
+<dd>
+<div class="block">Get a list of table names.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduClient.html#getTablesList--">getTablesList()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a></dt>
+<dd>
+<div class="block">Get the list of all the tables.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduClient.html#getTablesList-java.lang.String-">getTablesList(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a></dt>
+<dd>
+<div class="block">Get a list of table names.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/ListTablesResponse.html#getTablesList--">getTablesList()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/ListTablesResponse.html" title="class in org.apache.kudu.client">ListTablesResponse</a></dt>
+<dd>
+<div class="block">Get the list of tables as specified in the request.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Statistics.html#getTableStatistic-java.lang.String-org.apache.kudu.client.Statistics.Statistic-">getTableStatistic(String, Statistics.Statistic)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Statistics.html" title="class in org.apache.kudu.client">Statistics</a></dt>
+<dd>
+<div class="block">Get the statistic count of this table.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduScanToken.html#getTablet--">getTablet()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduScanToken.html" title="class in org.apache.kudu.client">KuduScanToken</a></dt>
+<dd>
+<div class="block">Returns the tablet which the scanner created from this token will access.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/LocatedTablet.html#getTabletId--">getTabletId()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/LocatedTablet.html" title="class in org.apache.kudu.client">LocatedTablet</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/ListTabletServersResponse.html#getTabletServersCount--">getTabletServersCount()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/ListTabletServersResponse.html" title="class in org.apache.kudu.client">ListTabletServersResponse</a></dt>
+<dd>
+<div class="block">Get the count of tablet servers as reported by the master.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/ListTabletServersResponse.html#getTabletServersList--">getTabletServersList()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/ListTabletServersResponse.html" title="class in org.apache.kudu.client">ListTabletServersResponse</a></dt>
+<dd>
+<div class="block">Get the list of tablet servers, as represented by their hostname.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Statistics.html#getTabletSet--">getTabletSet()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Statistics.html" title="class in org.apache.kudu.client">Statistics</a></dt>
+<dd>
+<div class="block">Get the set of tablets which have been written into by this client,
+ which have statistics information.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduTable.html#getTabletsLocations-long-">getTabletsLocations(long)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a></dt>
+<dd>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>
+<div class="block"><span class="deprecationComment">use the <a href="org/apache/kudu/client/KuduScanToken.html" title="class in org.apache.kudu.client"><code>KuduScanToken</code></a> API</span></div>
+</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduTable.html#getTabletsLocations-byte:A-byte:A-long-">getTabletsLocations(byte[], byte[], long)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a></dt>
+<dd>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>
+<div class="block"><span class="deprecationComment">use the <a href="org/apache/kudu/client/KuduScanToken.html" title="class in org.apache.kudu.client"><code>KuduScanToken</code></a> API</span></div>
+</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Statistics.html#getTabletStatistic-java.lang.String-org.apache.kudu.client.Statistics.Statistic-">getTabletStatistic(String, Statistics.Statistic)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Statistics.html" title="class in org.apache.kudu.client">Statistics</a></dt>
+<dd>
+<div class="block">Get the statistic count of this tablet.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduSession.html#getTimeoutMillis--">getTimeoutMillis()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduSession.html" title="class in org.apache.kudu.client">AsyncKuduSession</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduSession.html#getTimeoutMillis--">getTimeoutMillis()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduSession.html" title="class in org.apache.kudu.client">KuduSession</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/SessionConfiguration.html#getTimeoutMillis--">getTimeoutMillis()</a></span> - Method in interface org.apache.kudu.client.<a href="org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client">SessionConfiguration</a></dt>
+<dd>
+<div class="block">Get the current timeout.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/RowError.html#getTsUUID--">getTsUUID()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/RowError.html" title="class in org.apache.kudu.client">RowError</a></dt>
+<dd>
+<div class="block">Get the identifier of the tablet server that sent the error.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/ColumnSchema.html#getType--">getType()</a></span> - Method in class org.apache.kudu.<a href="org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a></dt>
+<dd>
+<div class="block">Get the column's Type</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/Type.html#getTypeForDataType-org.apache.kudu.Common.DataType-">getTypeForDataType(Common.DataType)</a></span> - Static method in enum org.apache.kudu.<a href="org/apache/kudu/Type.html" title="enum in org.apache.kudu">Type</a></dt>
+<dd>
+<div class="block">Convert the pb DataType to a Type</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/ColumnRangePredicate.html#getUpperBound--">getUpperBound()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/ColumnRangePredicate.html" title="class in org.apache.kudu.client">ColumnRangePredicate</a></dt>
+<dd>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
+<div class="block">Get the upper bound in its raw representation</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/Schema.html#getVarLengthColumnCount--">getVarLengthColumnCount()</a></span> - Method in class org.apache.kudu.<a href="org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a></dt>
+<dd>
+<div class="block">Get the count of columns with variable length (BINARY/STRING) in
+ this schema.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/OperationResponse.html#getWriteTimestampRaw--">getWriteTimestampRaw()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/OperationResponse.html" title="class in org.apache.kudu.client">OperationResponse</a></dt>
+<dd>
+<div class="block">Gives the write timestamp that was returned by the Tablet Server.</div>
+</dd>
+</dl>
+<a name="I:H">
+<!--   -->
+</a>
+<h2 class="title">H</h2>
+<dl>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/Schema.html#hasColumnIds--">hasColumnIds()</a></span> - Method in class org.apache.kudu.<a href="org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a></dt>
+<dd>
+<div class="block">Tells whether this schema includes IDs for columns.</div>
+</dd>
+<dt><a href="org/apache/kudu/client/HasFailedRpcException.html" title="interface in org.apache.kudu.client"><span class="typeNameLink">HasFailedRpcException</span></a> - Interface in <a href="org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></dt>
+<dd>
+<div class="block">Interface implemented by <a href="org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client"><code>KuduException</code></a>s that can tell you which
+ RPC failed.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduPredicate.html#hashCode--">hashCode()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/ColumnSchema.html#hashCode--">hashCode()</a></span> - Method in class org.apache.kudu.<a href="org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduScanner.html#hasMoreRows--">hasMoreRows()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduScanner.html" title="class in org.apache.kudu.client">AsyncKuduScanner</a></dt>
+<dd>
+<div class="block">Tells if the last rpc returned that there might be more rows to scan.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduScanner.html#hasMoreRows--">hasMoreRows()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduScanner.html" title="class in org.apache.kudu.client">KuduScanner</a></dt>
+<dd>
+<div class="block">Tells if the last rpc returned that there might be more rows to scan.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/RowResultIterator.html#hasNext--">hasNext()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/RowResultIterator.html" title="class in org.apache.kudu.client">RowResultIterator</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/Schema.html#hasNullableColumns--">hasNullableColumns()</a></span> - Method in class org.apache.kudu.<a href="org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a></dt>
+<dd>
+<div class="block">Tells if there's at least one nullable column</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduSession.html#hasPendingOperations--">hasPendingOperations()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduSession.html" title="class in org.apache.kudu.client">AsyncKuduSession</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduSession.html#hasPendingOperations--">hasPendingOperations()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduSession.html" title="class in org.apache.kudu.client">KuduSession</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/SessionConfiguration.html#hasPendingOperations--">hasPendingOperations()</a></span> - Method in interface org.apache.kudu.client.<a href="org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client">SessionConfiguration</a></dt>
+<dd>
+<div class="block">Check if there are operations that haven't been completely applied.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/OperationResponse.html#hasRowError--">hasRowError()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/OperationResponse.html" title="class in org.apache.kudu.client">OperationResponse</a></dt>
+<dd>
+<div class="block">Tells if this operation response contains a row error.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#HEADS_TABLE_NAME_KEY">HEADS_TABLE_NAME_KEY</a></span> - Static variable in class org.apache.kudu.mapreduce.tools.<a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools">BigLinkedListCommon</a></dt>
+<dd>&nbsp;</dd>
+</dl>
+<a name="I:I">
+<!--   -->
+</a>
+<h2 class="title">I</h2>
+<dl>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/KuduSinkConfigurationConstants.html#IGNORE_DUPLICATE_ROWS">IGNORE_DUPLICATE_ROWS</a></span> - Static variable in class org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/KuduSinkConfigurationConstants.html" title="class in org.apache.kudu.flume.sink">KuduSinkConfigurationConstants</a></dt>
+<dd>
+<div class="block">Whether to ignore duplicate primary key errors caused by inserts.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Status.html#IllegalState-java.lang.String-">IllegalState(String)</a></span> - Static method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Status.html#IllegalState-java.lang.String-int-">IllegalState(String, int)</a></span> - Static method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduClient.html#importAuthenticationCredentials-byte:A-">importAuthenticationCredentials(byte[])</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client">AsyncKuduClient</a></dt>
+<dd>
+<div class="block">Import data allowing this client to authenticate to the cluster.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduClient.html#importAuthenticationCredentials-byte:A-">importAuthenticationCredentials(byte[])</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a></dt>
+<dd>
+<div class="block">Import data allowing this client to authenticate to the cluster.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/KuduTableMapReduceUtil.html#importCredentialsFromCurrentSubject-org.apache.kudu.client.KuduClient-">importCredentialsFromCurrentSubject(KuduClient)</a></span> - Static method in class org.apache.kudu.mapreduce.<a href="org/apache/kudu/mapreduce/KuduTableMapReduceUtil.html" title="class in org.apache.kudu.mapreduce">KuduTableMapReduceUtil</a></dt>
+<dd>
+<div class="block">Import credentials from the current thread's JAAS <a href="http://docs.oracle.com/javase/7/docs/api/javax/security/auth/Subject.html?is-external=true" title="class or interface in javax.security.auth"><code>Subject</code></a> into the provided
+ <a href="org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client"><code>KuduClient</code></a>.</div>
+</dd>
+<dt><a href="org/apache/kudu/mapreduce/tools/ImportCsv.html" title="class in org.apache.kudu.mapreduce.tools"><span class="typeNameLink">ImportCsv</span></a> - Class in <a href="org/apache/kudu/mapreduce/tools/package-summary.html">org.apache.kudu.mapreduce.tools</a></dt>
+<dd>
+<div class="block">Map-only job that reads CSV files and inserts them into a single Kudu table.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/tools/ImportCsv.html#ImportCsv--">ImportCsv()</a></span> - Constructor for class org.apache.kudu.mapreduce.tools.<a href="org/apache/kudu/mapreduce/tools/ImportCsv.html" title="class in org.apache.kudu.mapreduce.tools">ImportCsv</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Status.html#Incomplete-java.lang.String-">Incomplete(String)</a></span> - Static method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Status.html#Incomplete-java.lang.String-int-">Incomplete(String, int)</a></span> - Static method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/AvroKuduOperationsProducer.html#initialize-org.apache.kudu.client.KuduTable-">initialize(KuduTable)</a></span> - Method in class org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/AvroKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">AvroKuduOperationsProducer</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/KuduOperationsProducer.html#initialize-org.apache.kudu.client.KuduTable-">initialize(KuduTable)</a></span> - Method in interface org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/KuduOperationsProducer.html" title="interface in org.apache.kudu.flume.sink">KuduOperationsProducer</a></dt>
+<dd>
+<div class="block">Initializes the operations producer.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html#initialize-org.apache.kudu.client.KuduTable-">initialize(KuduTable)</a></span> - Method in class org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">RegexpKuduOperationsProducer</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/SimpleKeyedKuduOperationsProducer.html#initialize-org.apache.kudu.client.KuduTable-">initialize(KuduTable)</a></span> - Method in class org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/SimpleKeyedKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">SimpleKeyedKuduOperationsProducer</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/SimpleKuduOperationsProducer.html#initialize-org.apache.kudu.client.KuduTable-">initialize(KuduTable)</a></span> - Method in class org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/SimpleKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">SimpleKuduOperationsProducer</a></dt>
+<dd>&nbsp;</dd>
+<dt><a href="org/apache/kudu/client/Insert.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Insert</span></a> - Class in <a href="org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></dt>
+<dd>
+<div class="block">Represents a single row insert.</div>
+</dd>
+<dt><a href="org/apache/kudu/annotations/InterfaceAudience.html" title="class in org.apache.kudu.annotations"><span class="typeNameLink">InterfaceAudience</span></a> - Class in <a href="org/apache/kudu/annotations/package-summary.html">org.apache.kudu.annotations</a></dt>
+<dd>
+<div class="block">Annotation to inform users of a package, class or method's intended audience.</div>
+</dd>
+<dt><a href="org/apache/kudu/annotations/InterfaceStability.html" title="class in org.apache.kudu.annotations"><span class="typeNameLink">InterfaceStability</span></a> - Class in <a href="org/apache/kudu/annotations/package-summary.html">org.apache.kudu.annotations</a></dt>
+<dd>
+<div class="block">Annotation to inform users of how much to rely on a particular package,
+ class or method not changing over time.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/annotations/InterfaceStability.html#InterfaceStability--">InterfaceStability()</a></span> - Constructor for class org.apache.kudu.annotations.<a href="org/apache/kudu/annotations/InterfaceStability.html" title="class in org.apache.kudu.annotations">InterfaceStability</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduScanToken.html#intoScanner-org.apache.kudu.client.KuduClient-">intoScanner(KuduClient)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduScanToken.html" title="class in org.apache.kudu.client">KuduScanToken</a></dt>
+<dd>
+<div class="block">Creates a <a href="org/apache/kudu/client/KuduScanner.html" title="class in org.apache.kudu.client"><code>KuduScanner</code></a> from this scan token.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Status.html#InvalidArgument-java.lang.String-">InvalidArgument(String)</a></span> - Static method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Status.html#InvalidArgument-java.lang.String-int-">InvalidArgument(String, int)</a></span> - Static method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Status.html#IOError-java.lang.String-">IOError(String)</a></span> - Static method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Status.html#IOError-java.lang.String-int-">IOError(String, int)</a></span> - Static method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Status.html#isAborted--">isAborted()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Status.html#isAlreadyPresent--">isAlreadyPresent()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduClient.html#isAlterTableDone-java.lang.String-">isAlterTableDone(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client">AsyncKuduClient</a></dt>
+<dd>
+<div class="block">Helper method that checks and waits until the completion of an alter command.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduClient.html#isAlterTableDone-java.lang.String-">isAlterTableDone(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a></dt>
+<dd>
+<div class="block">Helper method that checks and waits until the completion of an alter command.</div>
+</dd>
+<dt><a href="org/apache/kudu/client/IsAlterTableDoneResponse.html" title="class in org.apache.kudu.client"><span class="typeNameLink">IsAlterTableDoneResponse</span></a> - Class in <a href="org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></dt>
+<dd>
+<div class="block">Response to a isAlterTableDone command to use to know if an alter table is currently running on
+ the specified table.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduSession.html#isClosed--">isClosed()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduSession.html" title="class in org.apache.kudu.client">AsyncKuduSession</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduSession.html#isClosed--">isClosed()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduSession.html" title="class in org.apache.kudu.client">KuduSession</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/SessionConfiguration.html#isClosed--">isClosed()</a></span> - Method in interface org.apache.kudu.client.<a href="org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client">SessionConfiguration</a></dt>
+<dd>
+<div class="block">Returns true if this session has already been closed.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Status.html#isConfigurationError--">isConfigurationError()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Status.html#isCorruption--">isCorruption()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/IsAlterTableDoneResponse.html#isDone--">isDone()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/IsAlterTableDoneResponse.html" title="class in org.apache.kudu.client">IsAlterTableDoneResponse</a></dt>
+<dd>
+<div class="block">Tells if the table is done being altered or not.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Status.html#isEndOfFile--">isEndOfFile()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduSession.html#isIgnoreAllDuplicateRows--">isIgnoreAllDuplicateRows()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduSession.html" title="class in org.apache.kudu.client">AsyncKuduSession</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduSession.html#isIgnoreAllDuplicateRows--">isIgnoreAllDuplicateRows()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduSession.html" title="class in org.apache.kudu.client">KuduSession</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/SessionConfiguration.html#isIgnoreAllDuplicateRows--">isIgnoreAllDuplicateRows()</a></span> - Method in interface org.apache.kudu.client.<a href="org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client">SessionConfiguration</a></dt>
+<dd>
+<div class="block">Tells if the session is currently ignoring row errors when the whole list returned by a tablet
+ server is of the AlreadyPresent type.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Status.html#isIllegalState--">isIllegalState()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Status.html#isIncomplete--">isIncomplete()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Status.html#isInvalidArgument--">isInvalidArgument()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Status.html#isIOError--">isIOError()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/ColumnSchema.html#isKey--">isKey()</a></span> - Method in class org.apache.kudu.<a href="org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a></dt>
+<dd>
+<div class="block">Answers if the column part of the key</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Status.html#isNetworkError--">isNetworkError()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Status.html#isNotAuthorized--">isNotAuthorized()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Status.html#isNotFound--">isNotFound()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Status.html#isNotSupported--">isNotSupported()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#isNull-java.lang.String-">isNull(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Get if the specified column is NULL</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#isNull-int-">isNull(int)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Get if the specified column is NULL</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/RowResult.html#isNull-java.lang.String-">isNull(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a></dt>
+<dd>
+<div class="block">Get if the specified column is NULL</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/RowResult.html#isNull-int-">isNull(int)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a></dt>
+<dd>
+<div class="block">Get if the specified column is NULL</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/ColumnSchema.html#isNullable--">isNullable()</a></span> - Method in class org.apache.kudu.<a href="org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a></dt>
+<dd>
+<div class="block">Answers if the column can be set to null</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/RowErrorsAndOverflowStatus.html#isOverflowed--">isOverflowed()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/RowErrorsAndOverflowStatus.html" title="class in org.apache.kudu.client">RowErrorsAndOverflowStatus</a></dt>
+<dd>
+<div class="block">Check if the error collector had an overflow and had to discard row errors.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Status.html#isRemoteError--">isRemoteError()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Status.html#isRuntimeError--">isRuntimeError()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Status.html#isServiceUnavailable--">isServiceUnavailable()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#isSet-java.lang.String-">isSet(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Get if the specified column has been set</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#isSet-int-">isSet(int)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Get if the specified column has been set</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduClient.html#isStatisticsEnabled--">isStatisticsEnabled()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client">AsyncKuduClient</a></dt>
+<dd>
+<div class="block">Check if statistics collection is enabled for this client.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduClient.html#isStatisticsEnabled--">isStatisticsEnabled()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a></dt>
+<dd>
+<div class="block">Check if statistics collection is enabled for this client.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Status.html#isTimedOut--">isTimedOut()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Status.html#isUninitialized--">isUninitialized()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/RowResultIterator.html#iterator--">iterator()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/RowResultIterator.html" title="class in org.apache.kudu.client">RowResultIterator</a></dt>
+<dd>&nbsp;</dd>
+</dl>
+<a name="I:K">
+<!--   -->
+</a>
+<h2 class="title">K</h2>
+<dl>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/SimpleKeyedKuduOperationsProducer.html#KEY_COLUMN_DEFAULT">KEY_COLUMN_DEFAULT</a></span> - Static variable in class org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/SimpleKeyedKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">SimpleKeyedKuduOperationsProducer</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/SimpleKeyedKuduOperationsProducer.html#KEY_COLUMN_PROP">KEY_COLUMN_PROP</a></span> - Static variable in class org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/SimpleKeyedKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">SimpleKeyedKuduOperationsProducer</a></dt>
+<dd>&nbsp;</dd>
+<dt><a href="org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client"><span class="typeNameLink">KuduClient</span></a> - Class in <a href="org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></dt>
+<dd>
+<div class="block">A synchronous and thread-safe client for Kudu.</div>
+</dd>
+<dt><a href="org/apache/kudu/client/KuduClient.KuduClientBuilder.html" title="class in org.apache.kudu.client"><span class="typeNameLink">KuduClient.KuduClientBuilder</span></a> - Class in <a href="org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></dt>
+<dd>
+<div class="block">Builder class to use in order to connect to Kudu.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduClient.KuduClientBuilder.html#KuduClientBuilder-java.lang.String-">KuduClientBuilder(String)</a></span> - Constructor for class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduClient.KuduClientBuilder.html" title="class in org.apache.kudu.client">KuduClient.KuduClientBuilder</a></dt>
+<dd>
+<div class="block">Creates a new builder for a client that will connect to the specified masters.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduClient.KuduClientBuilder.html#KuduClientBuilder-java.util.List-">KuduClientBuilder(List&lt;String&gt;)</a></span> - Constructor for class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduClient.KuduClientBuilder.html" title="class in org.apache.kudu.client">KuduClient.KuduClientBuilder</a></dt>
+<dd>
+<div class="block">Creates a new builder for a client that will connect to the specified masters.</div>
+</dd>
+<dt><a href="org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client"><span class="typeNameLink">KuduException</span></a> - Exception in <a href="org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></dt>
+<dd>
+<div class="block">The parent class of all exceptions sent by the Kudu client.</div>
+</dd>
+<dt><a href="org/apache/kudu/flume/sink/KuduOperationsProducer.html" title="interface in org.apache.kudu.flume.sink"><span class="typeNameLink">KuduOperationsProducer</span></a> - Interface in <a href="org/apache/kudu/flume/sink/package-summary.html">org.apache.kudu.flume.sink</a></dt>
+<dd>
+<div class="block">Interface for an operations producer that produces Kudu Operations from
+ Flume events.</div>
+</dd>
+<dt><a href="org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client"><span class="typeNameLink">KuduPredicate</span></a> - Class in <a href="org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></dt>
+<dd>
+<div class="block">A predicate which can be used to filter rows based on the value of a column.</div>
+</dd>
+<dt><a href="org/apache/kudu/client/KuduPredicate.ComparisonOp.html" title="enum in org.apache.kudu.client"><span class="typeNameLink">KuduPredicate.ComparisonOp</span></a> - Enum in <a href="org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></dt>
+<dd>
+<div class="block">The comparison operator of a predicate.</div>
+</dd>
+<dt><a href="org/apache/kudu/client/KuduScanner.html" title="class in org.apache.kudu.client"><span class="typeNameLink">KuduScanner</span></a> - Class in <a href="org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></dt>
+<dd>
+<div class="block">Synchronous version of <a href="org/apache/kudu/client/AsyncKuduScanner.html" title="class in org.apache.kudu.client"><code>AsyncKuduScanner</code></a>.</div>
+</dd>
+<dt><a href="org/apache/kudu/client/KuduScanner.KuduScannerBuilder.html" title="class in org.apache.kudu.client"><span class="typeNameLink">KuduScanner.KuduScannerBuilder</span></a> - Class in <a href="org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></dt>
+<dd>
+<div class="block">A Builder class to build <a href="org/apache/kudu/client/KuduScanner.html" title="class in org.apache.kudu.client"><code>KuduScanner</code></a>.</div>
+</dd>
+<dt><a href="org/apache/kudu/client/KuduScanToken.html" title="class in org.apache.kudu.client"><span class="typeNameLink">KuduScanToken</span></a> - Class in <a href="org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></dt>
+<dd>
+<div class="block">A scan token describes a partial scan of a Kudu table limited to a single
+ contiguous physical location.</div>
+</dd>
+<dt><a href="org/apache/kudu/client/KuduScanToken.KuduScanTokenBuilder.html" title="class in org.apache.kudu.client"><span class="typeNameLink">KuduScanToken.KuduScanTokenBuilder</span></a> - Class in <a href="org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></dt>
+<dd>
+<div class="block">Builds a sequence of scan tokens.</div>
+</dd>
+<dt><a href="org/apache/kudu/client/KuduSession.html" title="class in org.apache.kudu.client"><span class="typeNameLink">KuduSession</span></a> - Class in <a href="org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></dt>
+<dd>
+<div class="block">Synchronous version of <a href="org/apache/kudu/client/AsyncKuduSession.html" title="class in org.apache.kudu.client"><code>AsyncKuduSession</code></a>.</div>
+</dd>
+<dt><a href="org/apache/kudu/flume/sink/KuduSink.html" title="class in org.apache.kudu.flume.sink"><span class="typeNameLink">KuduSink</span></a> - Class in <a href="org/apache/kudu/flume/sink/package-summary.html">org.apache.kudu.flume.sink</a></dt>
+<dd>
+<div class="block">A Flume sink that reads events from a channel and writes them to a Kudu table.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/KuduSink.html#KuduSink--">KuduSink()</a></span> - Constructor for class org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/KuduSink.html" title="class in org.apache.kudu.flume.sink">KuduSink</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/KuduSink.html#KuduSink-org.apache.kudu.client.KuduClient-">KuduSink(KuduClient)</a></span> - Constructor for class org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/KuduSink.html" title="class in org.apache.kudu.flume.sink">KuduSink</a></dt>
+<dd>&nbsp;</dd>
+<dt><a href="org/apache/kudu/flume/sink/KuduSinkConfigurationConstants.html" title="class in org.apache.kudu.flume.sink"><span class="typeNameLink">KuduSinkConfigurationConstants</span></a> - Class in <a href="org/apache/kudu/flume/sink/package-summary.html">org.apache.kudu.flume.sink</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/KuduSinkConfigurationConstants.html#KuduSinkConfigurationConstants--">KuduSinkConfigurationConstants()</a></span> - Constructor for class org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/KuduSinkConfigurationConstants.html" title="class in org.apache.kudu.flume.sink">KuduSinkConfigurationConstants</a></dt>
+<dd>&nbsp;</dd>
+<dt><a href="org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client"><span class="typeNameLink">KuduTable</span></a> - Class in <a href="org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></dt>
+<dd>
+<div class="block">A KuduTable represents a table on a particular cluster.</div>
+</dd>
+<dt><a href="org/apache/kudu/mapreduce/KuduTableInputFormat.html" title="class in org.apache.kudu.mapreduce"><span class="typeNameLink">KuduTableInputFormat</span></a> - Class in <a href="org/apache/kudu/mapreduce/package-summary.html">org.apache.kudu.mapreduce</a></dt>
+<dd>
+<div class="block">
+ This input format generates one split per tablet and the only location for each split is that
+ tablet's leader.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/KuduTableInputFormat.html#KuduTableInputFormat--">KuduTableInputFormat()</a></span> - Constructor for class org.apache.kudu.mapreduce.<a href="org/apache/kudu/mapreduce/KuduTableInputFormat.html" title="class in org.apache.kudu.mapreduce">KuduTableInputFormat</a></dt>
+<dd>&nbsp;</dd>
+<dt><a href="org/apache/kudu/mapreduce/KuduTableMapReduceUtil.html" title="class in org.apache.kudu.mapreduce"><span class="typeNameLink">KuduTableMapReduceUtil</span></a> - Class in <a href="org/apache/kudu/mapreduce/package-summary.html">org.apache.kudu.mapreduce</a></dt>
+<dd>
+<div class="block">Utility class to setup MR jobs that use Kudu as an input and/or output.</div>
+</dd>
+<dt><a href="org/apache/kudu/mapreduce/KuduTableOutputCommitter.html" title="class in org.apache.kudu.mapreduce"><span class="typeNameLink">KuduTableOutputCommitter</span></a> - Class in <a href="org/apache/kudu/mapreduce/package-summary.html">org.apache.kudu.mapreduce</a></dt>
+<dd>
+<div class="block">Small committer class that does not do anything.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/KuduTableOutputCommitter.html#KuduTableOutputCommitter--">KuduTableOutputCommitter()</a></span> - Constructor for class org.apache.kudu.mapreduce.<a href="org/apache/kudu/mapreduce/KuduTableOutputCommitter.html" title="class in org.apache.kudu.mapreduce">KuduTableOutputCommitter</a></dt>
+<dd>&nbsp;</dd>
+<dt><a href="org/apache/kudu/mapreduce/KuduTableOutputFormat.html" title="class in org.apache.kudu.mapreduce"><span class="typeNameLink">KuduTableOutputFormat</span></a> - Class in <a href="org/apache/kudu/mapreduce/package-summary.html">org.apache.kudu.mapreduce</a></dt>
+<dd>
+<div class="block">
+ Use <code>KuduTableMapReduceUtil.TableOutputFormatConfigurator</code>
+ to correctly setup this output format, then <a href="org/apache/kudu/mapreduce/KuduTableMapReduceUtil.html#getTableFromContext-org.apache.hadoop.mapreduce.TaskInputOutputContext-"><code>KuduTableMapReduceUtil.getTableFromContext(org.apache.hadoop.mapreduce.TaskInputOutputContext)</code></a>
+ to get a KuduTable.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/KuduTableOutputFormat.html#KuduTableOutputFormat--">KuduTableOutputFormat()</a></span> - Constructor for class org.apache.kudu.mapreduce.<a href="org/apache/kudu/mapreduce/KuduTableOutputFormat.html" title="class in org.apache.kudu.mapreduce">KuduTableOutputFormat</a></dt>
+<dd>&nbsp;</dd>
+</dl>
+<a name="I:L">
+<!--   -->
+</a>
+<h2 class="title">L</h2>
+<dl>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AbstractKuduScannerBuilder.html#limit-long-">limit(long)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="class in org.apache.kudu.client">AbstractKuduScannerBuilder</a></dt>
+<dd>
+<div class="block">Sets a limit on the number of rows that will be returned by the scanner.</div>
+</dd>
+<dt><a href="org/apache/kudu/client/ListTablesResponse.html" title="class in org.apache.kudu.client"><span class="typeNameLink">ListTablesResponse</span></a> - Class in <a href="org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduClient.html#listTabletServers--">listTabletServers()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client">AsyncKuduClient</a></dt>
+<dd>
+<div class="block">Get the list of running tablet servers.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduClient.html#listTabletServers--">listTabletServers()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a></dt>
+<dd>
+<div class="block">Get the list of running tablet servers.</div>
+</dd>
+<dt><a href="org/apache/kudu/client/ListTabletServersResponse.html" title="class in org.apache.kudu.client"><span class="typeNameLink">ListTabletServersResponse</span></a> - Class in <a href="org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></dt>
+<dd>&nbsp;</dd>
+<dt><a href="org/apache/kudu/client/LocatedTablet.html" title="class in org.apache.kudu.client"><span class="typeNameLink">LocatedTablet</span></a> - Class in <a href="org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></dt>
+<dd>
+<div class="block">Information about the locations of tablets in a Kudu table.</div>
+</dd>
+<dt><a href="org/apache/kudu/client/LocatedTablet.Replica.html" title="class in org.apache.kudu.client"><span class="typeNameLink">LocatedTablet.Replica</span></a> - Class in <a href="org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></dt>
+<dd>
+<div class="block">One of the replicas of the tablet.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduClient.html#LOG">LOG</a></span> - Static variable in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client">AsyncKuduClient</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduSession.html#LOG">LOG</a></span> - Static variable in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduSession.html" title="class in org.apache.kudu.client">AsyncKuduSession</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduClient.html#LOG">LOG</a></span> - Static variable in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduSession.html#LOG">LOG</a></span> - Static variable in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduSession.html" title="class in org.apache.kudu.client">KuduSession</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AbstractKuduScannerBuilder.html#lowerBound-org.apache.kudu.client.PartialRow-">lowerBound(PartialRow)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="class in org.apache.kudu.client">AbstractKuduScannerBuilder</a></dt>
+<dd>
+<div class="block">Add a lower bound (inclusive) primary key for the scan.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AbstractKuduScannerBuilder.html#lowerBoundRaw-byte:A-">lowerBoundRaw(byte[])</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="class in org.apache.kudu.client">AbstractKuduScannerBuilder</a></dt>
+<dd>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>
+<div class="block"><span class="deprecationComment">use <a href="org/apache/kudu/client/AbstractKuduScannerBuilder.html#lowerBound-org.apache.kudu.client.PartialRow-"><code>AbstractKuduScannerBuilder.lowerBound(PartialRow)</code></a></span></div>
+</div>
+</dd>
+</dl>
+<a name="I:M">
+<!--   -->
+</a>
+<h2 class="title">M</h2>
+<dl>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/tools/ImportCsv.html#main-java.lang.String:A-">main(String[])</a></span> - Static method in class org.apache.kudu.mapreduce.tools.<a href="org/apache/kudu/mapreduce/tools/ImportCsv.html" title="class in org.apache.kudu.mapreduce.tools">ImportCsv</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/KuduSinkConfigurationConstants.html#MASTER_ADDRESSES">MASTER_ADDRESSES</a></span> - Static variable in class org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/KuduSinkConfigurationConstants.html" title="class in org.apache.kudu.flume.sink">KuduSinkConfigurationConstants</a></dt>
+<dd>
+<div class="block">Comma-separated list of "host:port" Kudu master addresses.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/CommandLineParser.html#MASTER_ADDRESSES_DEFAULT">MASTER_ADDRESSES_DEFAULT</a></span> - Static variable in class org.apache.kudu.mapreduce.<a href="org/apache/kudu/mapreduce/CommandLineParser.html" title="class in org.apache.kudu.mapreduce">CommandLineParser</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/CommandLineParser.html#MASTER_ADDRESSES_KEY">MASTER_ADDRESSES_KEY</a></span> - Static variable in class org.apache.kudu.mapreduce.<a href="org/apache/kudu/mapreduce/CommandLineParser.html" title="class in org.apache.kudu.mapreduce">CommandLineParser</a></dt>
+<dd>&nbsp;</dd>
+</dl>
+<a name="I:N">
+<!--   -->
+</a>
+<h2 class="title">N</h2>
+<dl>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/KuduTableOutputCommitter.html#needsTaskCommit-org.apache.hadoop.mapreduce.TaskAttemptContext-">needsTaskCommit(TaskAttemptContext)</a></span> - Method in class org.apache.kudu.mapreduce.<a href="org/apache/kudu/mapreduce/KuduTableOutputCommitter.html" title="class in org.apache.kudu.mapreduce">KuduTableOutputCommitter</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Status.html#NetworkError-java.lang.String-">NetworkError(String)</a></span> - Static method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Status.html#NetworkError-java.lang.String-int-">NetworkError(String, int)</a></span> - Static method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduPredicate.html#newComparisonPredicate-org.apache.kudu.ColumnSchema-org.apache.kudu.client.KuduPredicate.ComparisonOp-boolean-">newComparisonPredicate(ColumnSchema, KuduPredicate.ComparisonOp, boolean)</a></span> - Static method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a></dt>
+<dd>
+<div class="block">Creates a new <code>KuduPredicate</code> on a boolean column.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduPredicate.html#newComparisonPredicate-org.apache.kudu.ColumnSchema-org.apache.kudu.client.KuduPredicate.ComparisonOp-long-">newComparisonPredicate(ColumnSchema, KuduPredicate.ComparisonOp, long)</a></span> - Static method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a></dt>
+<dd>
+<div class="block">Creates a new comparison predicate on an integer or timestamp column.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduPredicate.html#newComparisonPredicate-org.apache.kudu.ColumnSchema-org.apache.kudu.client.KuduPredicate.ComparisonOp-float-">newComparisonPredicate(ColumnSchema, KuduPredicate.ComparisonOp, float)</a></span> - Static method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a></dt>
+<dd>
+<div class="block">Creates a new comparison predicate on a float column.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduPredicate.html#newComparisonPredicate-org.apache.kudu.ColumnSchema-org.apache.kudu.client.KuduPredicate.ComparisonOp-double-">newComparisonPredicate(ColumnSchema, KuduPredicate.ComparisonOp, double)</a></span> - Static method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a></dt>
+<dd>
+<div class="block">Creates a new comparison predicate on a double column.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduPredicate.html#newComparisonPredicate-org.apache.kudu.ColumnSchema-org.apache.kudu.client.KuduPredicate.ComparisonOp-java.lang.String-">newComparisonPredicate(ColumnSchema, KuduPredicate.ComparisonOp, String)</a></span> - Static method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a></dt>
+<dd>
+<div class="block">Creates a new comparison predicate on a string column.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduPredicate.html#newComparisonPredicate-org.apache.kudu.ColumnSchema-org.apache.kudu.client.KuduPredicate.ComparisonOp-byte:A-">newComparisonPredicate(ColumnSchema, KuduPredicate.ComparisonOp, byte[])</a></span> - Static method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a></dt>
+<dd>
+<div class="block">Creates a new comparison predicate on a binary column.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduTable.html#newDelete--">newDelete()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a></dt>
+<dd>
+<div class="block">Get a new delete configured with this table's schema.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduPredicate.html#newInListPredicate-org.apache.kudu.ColumnSchema-java.util.List-">newInListPredicate(ColumnSchema, List&lt;T&gt;)</a></span> - Static method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a></dt>
+<dd>
+<div class="block">Creates a new IN list predicate.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduTable.html#newInsert--">newInsert()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a></dt>
+<dd>
+<div class="block">Get a new insert configured with this table's schema.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduPredicate.html#newIsNotNullPredicate-org.apache.kudu.ColumnSchema-">newIsNotNullPredicate(ColumnSchema)</a></span> - Static method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a></dt>
+<dd>
+<div class="block">Creates a new <code>IS NOT NULL</code> predicate.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduPredicate.html#newIsNullPredicate-org.apache.kudu.ColumnSchema-">newIsNullPredicate(ColumnSchema)</a></span> - Static method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a></dt>
+<dd>
+<div class="block">Creates a new <code>IS NULL</code> predicate.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/Schema.html#newPartialRow--">newPartialRow()</a></span> - Method in class org.apache.kudu.<a href="org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a></dt>
+<dd>
+<div class="block">Creates a new partial row for the schema.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduClient.html#newScannerBuilder-org.apache.kudu.client.KuduTable-">newScannerBuilder(KuduTable)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client">AsyncKuduClient</a></dt>
+<dd>
+<div class="block">Creates a new <a href="org/apache/kudu/client/AsyncKuduScanner.AsyncKuduScannerBuilder.html" title="class in org.apache.kudu.client"><code>AsyncKuduScanner.AsyncKuduScannerBuilder</code></a> for a particular table.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduClient.html#newScannerBuilder-org.apache.kudu.client.KuduTable-">newScannerBuilder(KuduTable)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a></dt>
+<dd>
+<div class="block">Creates a new <a href="org/apache/kudu/client/KuduScanner.KuduScannerBuilder.html" title="class in org.apache.kudu.client"><code>KuduScanner.KuduScannerBuilder</code></a> for a particular table.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduClient.html#newScanTokenBuilder-org.apache.kudu.client.KuduTable-">newScanTokenBuilder(KuduTable)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a></dt>
+<dd>
+<div class="block">Creates a new <a href="org/apache/kudu/client/KuduScanToken.KuduScanTokenBuilder.html" title="class in org.apache.kudu.client"><code>KuduScanToken.KuduScanTokenBuilder</code></a> for a particular table.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduClient.html#newSession--">newSession()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client">AsyncKuduClient</a></dt>
+<dd>
+<div class="block">Create a new session for interacting with the cluster.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduClient.html#newSession--">newSession()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a></dt>
+<dd>
+<div class="block">Create a new session for interacting with the cluster.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduTable.html#newUpdate--">newUpdate()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a></dt>
+<dd>
+<div class="block">Get a new update configured with this table's schema.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduTable.html#newUpsert--">newUpsert()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a></dt>
+<dd>
+<div class="block">Get a new upsert configured with this table's schema.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/RowResultIterator.html#next--">next()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/RowResultIterator.html" title="class in org.apache.kudu.client">RowResultIterator</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduScanner.html#nextRows--">nextRows()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduScanner.html" title="class in org.apache.kudu.client">AsyncKuduScanner</a></dt>
+<dd>
+<div class="block">Scans a number of rows.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduScanner.html#nextRows--">nextRows()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduScanner.html" title="class in org.apache.kudu.client">KuduScanner</a></dt>
+<dd>
+<div class="block">Scans a number of rows.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html#nioExecutors-java.util.concurrent.Executor-java.util.concurrent.Executor-">nioExecutors(Executor, Executor)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html" title="class in org.apache.kudu.client">AsyncKuduClient.AsyncKuduClientBuilder</a></dt>
+<dd>
+<div class="block">Set the executors which will be used for the embedded Netty boss and workers.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduClient.KuduClientBuilder.html#nioExecutors-java.util.concurrent.Executor-java.util.concurrent.Executor-">nioExecutors(Executor, Executor)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduClient.KuduClientBuilder.html" title="class in org.apache.kudu.client">KuduClient.KuduClientBuilder</a></dt>
+<dd>
+<div class="block">Set the executors which will be used for the embedded Netty boss and workers.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduClient.html#NO_TIMESTAMP">NO_TIMESTAMP</a></span> - Static variable in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client">AsyncKuduClient</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduClient.html#NO_TIMESTAMP">NO_TIMESTAMP</a></span> - Static variable in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Status.html#NotAuthorized-java.lang.String-">NotAuthorized(String)</a></span> - Static method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Status.html#NotAuthorized-java.lang.String-int-">NotAuthorized(String, int)</a></span> - Static method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Status.html#NotFound-java.lang.String-">NotFound(String)</a></span> - Static method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Status.html#NotFound-java.lang.String-int-">NotFound(String, int)</a></span> - Static method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Status.html#NotSupported-java.lang.String-">NotSupported(String)</a></span> - Static method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Status.html#NotSupported-java.lang.String-int-">NotSupported(String, int)</a></span> - Static method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/CommandLineParser.html#NUM_REPLICAS_DEFAULT">NUM_REPLICAS_DEFAULT</a></span> - Static variable in class org.apache.kudu.mapreduce.<a href="org/apache/kudu/mapreduce/CommandLineParser.html" title="class in org.apache.kudu.mapreduce">CommandLineParser</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/CommandLineParser.html#NUM_REPLICAS_KEY">NUM_REPLICAS_KEY</a></span> - Static variable in class org.apache.kudu.mapreduce.<a href="org/apache/kudu/mapreduce/CommandLineParser.html" title="class in org.apache.kudu.mapreduce">CommandLineParser</a></dt>
+<dd>&nbsp;</dd>
+</dl>
+<a name="I:O">
+<!--   -->
+</a>
+<h2 class="title">O</h2>
+<dl>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Status.html#OK--">OK()</a></span> - Static method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Status.html#ok--">ok()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduClient.html#openTable-java.lang.String-">openTable(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client">AsyncKuduClient</a></dt>
+<dd>
+<div class="block">Open the table with the given name.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduClient.html#openTable-java.lang.String-">openTable(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a></dt>
+<dd>
+<div class="block">Open the table with the given name.</div>
+</dd>
+<dt><a href="org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Operation</span></a> - Class in <a href="org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></dt>
+<dd>
+<div class="block">Base class for the RPCs that related to WriteRequestPB.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/SimpleKeyedKuduOperationsProducer.html#OPERATION_DEFAULT">OPERATION_DEFAULT</a></span> - Static variable in class org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/SimpleKeyedKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">SimpleKeyedKuduOperationsProducer</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/AvroKuduOperationsProducer.html#OPERATION_PROP">OPERATION_PROP</a></span> - Static variable in class org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/AvroKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">AvroKuduOperationsProducer</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html#OPERATION_PROP">OPERATION_PROP</a></span> - Static variable in class org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">RegexpKuduOperationsProducer</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/SimpleKeyedKuduOperationsProducer.html#OPERATION_PROP">OPERATION_PROP</a></span> - Static variable in class org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/SimpleKeyedKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">SimpleKeyedKuduOperationsProducer</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/CommandLineParser.html#OPERATION_TIMEOUT_MS_DEFAULT">OPERATION_TIMEOUT_MS_DEFAULT</a></span> - Static variable in class org.apache.kudu.mapreduce.<a href="org/apache/kudu/mapreduce/CommandLineParser.html" title="class in org.apache.kudu.mapreduce">CommandLineParser</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/CommandLineParser.html#OPERATION_TIMEOUT_MS_KEY">OPERATION_TIMEOUT_MS_KEY</a></span> - Static variable in class org.apache.kudu.mapreduce.<a href="org/apache/kudu/mapreduce/CommandLineParser.html" title="class in org.apache.kudu.mapreduce">CommandLineParser</a></dt>
+<dd>&nbsp;</dd>
+<dt><a href="org/apache/kudu/client/OperationResponse.html" title="class in org.apache.kudu.client"><span class="typeNameLink">OperationResponse</span></a> - Class in <a href="org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></dt>
+<dd>&nbsp;</dd>
+<dt><a href="org/apache/kudu/package-summary.html">org.apache.kudu</a> - package org.apache.kudu</dt>
+<dd>&nbsp;</dd>
+<dt><a href="org/apache/kudu/annotations/package-summary.html">org.apache.kudu.annotations</a> - package org.apache.kudu.annotations</dt>
+<dd>&nbsp;</dd>
+<dt><a href="org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> - package org.apache.kudu.client</dt>
+<dd>&nbsp;</dd>
+<dt><a href="org/apache/kudu/flume/sink/package-summary.html">org.apache.kudu.flume.sink</a> - package org.apache.kudu.flume.sink</dt>
+<dd>&nbsp;</dd>
+<dt><a href="org/apache/kudu/mapreduce/package-summary.html">org.apache.kudu.mapreduce</a> - package org.apache.kudu.mapreduce</dt>
+<dd>&nbsp;</dd>
+<dt><a href="org/apache/kudu/mapreduce/tools/package-summary.html">org.apache.kudu.mapreduce.tools</a> - package org.apache.kudu.mapreduce.tools</dt>
+<dd>&nbsp;</dd>
+<dt><a href="org/apache/kudu/security/package-summary.html">org.apache.kudu.security</a> - package org.apache.kudu.security</dt>
+<dd>&nbsp;</dd>
+<dt><a href="org/apache/kudu/util/package-summary.html">org.apache.kudu.util</a> - package org.apache.kudu.util</dt>
+<dd>&nbsp;</dd>
+</dl>
+<a name="I:P">
+<!--   -->
+</a>
+<h2 class="title">P</h2>
+<dl>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/tools/CsvParser.html#parse-byte:A-int-">parse(byte[], int)</a></span> - Method in class org.apache.kudu.mapreduce.tools.<a href="org/apache/kudu/mapreduce/tools/CsvParser.html" title="class in org.apache.kudu.mapreduce.tools">CsvParser</a></dt>
+<dd>
+<div class="block">Creates a ParsedLine of a line of data.</div>
+</dd>
+<dt><a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client"><span class="typeNameLink">PartialRow</span></a> - Class in <a href="org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></dt>
+<dd>
+<div class="block">Class used to represent parts of a row along with its schema.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#PartialRow-org.apache.kudu.Schema-">PartialRow(Schema)</a></span> - Constructor for class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">This is not a stable API, prefer using <a href="org/apache/kudu/Schema.html#newPartialRow--"><code>Schema.newPartialRow()</code></a>
+ to create a new partial row.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Operation.html#partitionKey--">partitionKey()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">Operation</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html#PATTERN_PROP">PATTERN_PROP</a></span> - Static variable in class org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">RegexpKuduOperationsProducer</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/SimpleKeyedKuduOperationsProducer.html#PAYLOAD_COLUMN_DEFAULT">PAYLOAD_COLUMN_DEFAULT</a></span> - Static variable in class org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/SimpleKeyedKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">SimpleKeyedKuduOperationsProducer</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/SimpleKuduOperationsProducer.html#PAYLOAD_COLUMN_DEFAULT">PAYLOAD_COLUMN_DEFAULT</a></span> - Static variable in class org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/SimpleKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">SimpleKuduOperationsProducer</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/SimpleKeyedKuduOperationsProducer.html#PAYLOAD_COLUMN_PROP">PAYLOAD_COLUMN_PROP</a></span> - Static variable in class org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/SimpleKeyedKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">SimpleKeyedKuduOperationsProducer</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/SimpleKuduOperationsProducer.html#PAYLOAD_COLUMN_PROP">PAYLOAD_COLUMN_PROP</a></span> - Static variable in class org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/SimpleKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">SimpleKuduOperationsProducer</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduScanner.ReadMode.html#pbVersion--">pbVersion()</a></span> - Method in enum org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduScanner.ReadMode.html" title="enum in org.apache.kudu.client">AsyncKuduScanner.ReadMode</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/ExternalConsistencyMode.html#pbVersion--">pbVersion()</a></span> - Method in enum org.apache.kudu.client.<a href="org/apache/kudu/client/ExternalConsistencyMode.html" title="enum in org.apache.kudu.client">ExternalConsistencyMode</a></dt>
+<dd>&nbsp;</dd>
+<dt><a href="org/apache/kudu/client/PleaseThrottleException.html" title="class in org.apache.kudu.client"><span class="typeNameLink">PleaseThrottleException</span></a> - Exception in <a href="org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></dt>
+<dd>
+<div class="block">This exception notifies the application to throttle its use of Kudu.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AbstractKuduScannerBuilder.html#prefetching-boolean-">prefetching(boolean)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="class in org.apache.kudu.client">AbstractKuduScannerBuilder</a></dt>
+<dd>
+<div class="block">Enables prefetching of rows for the scanner, i.e.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/KuduSink.html#process--">process()</a></span> - Method in class org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/KuduSink.html" title="class in org.apache.kudu.flume.sink">KuduSink</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/KuduSinkConfigurationConstants.html#PRODUCER">PRODUCER</a></span> - Static variable in class org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/KuduSinkConfigurationConstants.html" title="class in org.apache.kudu.flume.sink">KuduSinkConfigurationConstants</a></dt>
+<dd>
+<div class="block">The fully qualified class name of the KuduOperationsProducer class that the
+ sink should use.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/KuduSinkConfigurationConstants.html#PRODUCER_PREFIX">PRODUCER_PREFIX</a></span> - Static variable in class org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/KuduSinkConfigurationConstants.html" title="class in org.apache.kudu.flume.sink">KuduSinkConfigurationConstants</a></dt>
+<dd>
+<div class="block">Prefix for configuration parameters that are passed to the
+ KuduOperationsProducer.</div>
+</dd>
+</dl>
+<a name="I:R">
+<!--   -->
+</a>
+<h2 class="title">R</h2>
+<dl>
+<dt><a href="org/apache/kudu/client/RangePartitionBound.html" title="enum in org.apache.kudu.client"><span class="typeNameLink">RangePartitionBound</span></a> - Enum in <a href="org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></dt>
+<dd>
+<div class="block">Specifies whether a range partition bound is inclusive or exclusive.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AbstractKuduScannerBuilder.html#readMode-org.apache.kudu.client.AsyncKuduScanner.ReadMode-">readMode(AsyncKuduScanner.ReadMode)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="class in org.apache.kudu.client">AbstractKuduScannerBuilder</a></dt>
+<dd>
+<div class="block">Sets the read mode, the default is to read the latest values.</div>
+</dd>
+<dt><a href="org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink"><span class="typeNameLink">RegexpKuduOperationsProducer</span></a> - Class in <a href="org/apache/kudu/flume/sink/package-summary.html">org.apache.kudu.flume.sink</a></dt>
+<dd>
+<div class="block">A regular expression operations producer that generates one or more Kudu
+ <a href="org/apache/kudu/client/Insert.html" title="class in org.apache.kudu.client"><code>Insert</code></a> or <a href="org/apache/kudu/client/Upsert.html" title="class in org.apache.kudu.client"><code>Upsert</code></a> operations per Flume <code>Event</code> by
+ parsing the event <code>body</code> using a regular expression.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html#RegexpKuduOperationsProducer--">RegexpKuduOperationsProducer()</a></span> - Constructor for class org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">RegexpKuduOperationsProducer</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Status.html#RemoteError-java.lang.String-">RemoteError(String)</a></span> - Static method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Status.html#RemoteError-java.lang.String-int-">RemoteError(String, int)</a></span> - Static method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/RowResultIterator.html#remove--">remove()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/RowResultIterator.html" title="class in org.apache.kudu.client">RowResultIterator</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AlterTableOptions.html#removeDefault-java.lang.String-">removeDefault(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></dt>
+<dd>
+<div class="block">Remove the default value for a column.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AlterTableOptions.html#renameColumn-java.lang.String-java.lang.String-">renameColumn(String, String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></dt>
+<dd>
+<div class="block">Change the name of a column.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AlterTableOptions.html#renameTable-java.lang.String-">renameTable(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></dt>
+<dd>
+<div class="block">Change a table's name.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AbstractKuduScannerBuilder.html#replicaSelection-org.apache.kudu.client.ReplicaSelection-">replicaSelection(ReplicaSelection)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="class in org.apache.kudu.client">AbstractKuduScannerBuilder</a></dt>
+<dd>
+<div class="block">Sets the replica selection mechanism for this scanner.</div>
+</dd>
+<dt><a href="org/apache/kudu/client/ReplicaSelection.html" title="enum in org.apache.kudu.client"><span class="typeNameLink">ReplicaSelection</span></a> - Enum in <a href="org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></dt>
+<dd>
+<div class="block">Policy with which to choose amongst multiple replicas.</div>
+</dd>
+<dt><a href="org/apache/kudu/client/RowError.html" title="class in org.apache.kudu.client"><span class="typeNameLink">RowError</span></a> - Class in <a href="org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></dt>
+<dd>
+<div class="block">Wrapper class for a single row error.</div>
+</dd>
+<dt><a href="org/apache/kudu/client/RowErrorsAndOverflowStatus.html" title="class in org.apache.kudu.client"><span class="typeNameLink">RowErrorsAndOverflowStatus</span></a> - Class in <a href="org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></dt>
+<dd>
+<div class="block">Container class used as a response when retrieving pending row errors.</div>
+</dd>
+<dt><a href="org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client"><span class="typeNameLink">RowResult</span></a> - Class in <a href="org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></dt>
+<dd>
+<div class="block">RowResult represents one row from a scanner.</div>
+</dd>
+<dt><a href="org/apache/kudu/client/RowResultIterator.html" title="class in org.apache.kudu.client"><span class="typeNameLink">RowResultIterator</span></a> - Class in <a href="org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></dt>
+<dd>
+<div class="block">Class that contains the rows sent by a tablet server, exhausting this iterator only means
+ that all the rows from the last server response were read.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/RowResult.html#rowToString--">rowToString()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a></dt>
+<dd>
+<div class="block">Return the actual data from this row in a stringified key=value
+ form.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/tools/ImportCsv.html#run-java.lang.String:A-">run(String[])</a></span> - Method in class org.apache.kudu.mapreduce.tools.<a href="org/apache/kudu/mapreduce/tools/ImportCsv.html" title="class in org.apache.kudu.mapreduce.tools">ImportCsv</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Status.html#RuntimeError-java.lang.String-">RuntimeError(String)</a></span> - Static method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Status.html#RuntimeError-java.lang.String-int-">RuntimeError(String, int)</a></span> - Static method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></dt>
+<dd>&nbsp;</dd>
+</dl>
+<a name="I:S">
+<!--   -->
+</a>
+<h2 class="title">S</h2>
+<dl>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AbstractKuduScannerBuilder.html#scanRequestTimeout-long-">scanRequestTimeout(long)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="class in org.apache.kudu.client">AbstractKuduScannerBuilder</a></dt>
+<dd>
+<div class="block">Sets how long each scan request to a server can last.</div>
+</dd>
+<dt><a href="org/apache/kudu/Schema.html" title="class in org.apache.kudu"><span class="typeNameLink">Schema</span></a> - Class in <a href="org/apache/kudu/package-summary.html">org.apache.kudu</a></dt>
+<dd>
+<div class="block">Represents table's schema which is essentially a list of columns.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/Schema.html#Schema-java.util.List-">Schema(List&lt;ColumnSchema&gt;)</a></span> - Constructor for class org.apache.kudu.<a href="org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a></dt>
+<dd>
+<div class="block">Constructs a schema using the specified columns and does some internal accounting</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/Schema.html#Schema-java.util.List-java.util.List-">Schema(List&lt;ColumnSchema&gt;, List&lt;Integer&gt;)</a></span> - Constructor for class org.apache.kudu.<a href="org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a></dt>
+<dd>
+<div class="block">Constructs a schema using the specified columns and IDs.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/AvroKuduOperationsProducer.html#SCHEMA_LITERAL_HEADER">SCHEMA_LITERAL_HEADER</a></span> - Static variable in class org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/AvroKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">AvroKuduOperationsProducer</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/AvroKuduOperationsProducer.html#SCHEMA_PROP">SCHEMA_PROP</a></span> - Static variable in class org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/AvroKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">AvroKuduOperationsProducer</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/AvroKuduOperationsProducer.html#SCHEMA_URL_HEADER">SCHEMA_URL_HEADER</a></span> - Static variable in class org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/AvroKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">AvroKuduOperationsProducer</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduScanToken.html#serialize--">serialize()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduScanToken.html" title="class in org.apache.kudu.client">KuduScanToken</a></dt>
+<dd>
+<div class="block">Serializes this <code>KuduScanToken</code> into a byte array.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Status.html#ServiceUnavailable-java.lang.String-">ServiceUnavailable(String)</a></span> - Static method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Status.html#ServiceUnavailable-java.lang.String-int-">ServiceUnavailable(String, int)</a></span> - Static method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></dt>
+<dd>&nbsp;</dd>
+<dt><a href="org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client"><span class="typeNameLink">SessionConfiguration</span></a> - Interface in <a href="org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></dt>
+<dd>
+<div class="block">Interface that defines the methods used to configure a session.</div>
+</dd>
+<dt><a href="org/apache/kudu/client/SessionConfiguration.FlushMode.html" title="enum in org.apache.kudu.client"><span class="typeNameLink">SessionConfiguration.FlushMode</span></a> - Enum in <a href="org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/KuduTableInputFormat.html#setConf-org.apache.hadoop.conf.Configuration-">setConf(Configuration)</a></span> - Method in class org.apache.kudu.mapreduce.<a href="org/apache/kudu/mapreduce/KuduTableInputFormat.html" title="class in org.apache.kudu.mapreduce">KuduTableInputFormat</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/KuduTableOutputFormat.html#setConf-org.apache.hadoop.conf.Configuration-">setConf(Configuration)</a></span> - Method in class org.apache.kudu.mapreduce.<a href="org/apache/kudu/mapreduce/KuduTableOutputFormat.html" title="class in org.apache.kudu.mapreduce">KuduTableOutputFormat</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduSession.html#setExternalConsistencyMode-org.apache.kudu.client.ExternalConsistencyMode-">setExternalConsistencyMode(ExternalConsistencyMode)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduSession.html" title="class in org.apache.kudu.client">AsyncKuduSession</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduSession.html#setExternalConsistencyMode-org.apache.kudu.client.ExternalConsistencyMode-">setExternalConsistencyMode(ExternalConsistencyMode)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduSession.html" title="class in org.apache.kudu.client">KuduSession</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/SessionConfiguration.html#setExternalConsistencyMode-org.apache.kudu.client.ExternalConsistencyMode-">setExternalConsistencyMode(ExternalConsistencyMode)</a></span> - Method in interface org.apache.kudu.client.<a href="org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client">SessionConfiguration</a></dt>
+<dd>
+<div class="block">Set the new external consistency mode for this session.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AbstractKuduScannerBuilder.html#setFaultTolerant-boolean-">setFaultTolerant(boolean)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="class in org.apache.kudu.client">AbstractKuduScannerBuilder</a></dt>
+<dd>
+<div class="block">Make scans resumable at another tablet server if current server fails if
+ isFaultTolerant is true.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduSession.html#setFlushInterval-int-">setFlushInterval(int)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduSession.html" title="class in org.apache.kudu.client">AsyncKuduSession</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduSession.html#setFlushInterval-int-">setFlushInterval(int)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduSession.html" title="class in org.apache.kudu.client">KuduSession</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/SessionConfiguration.html#setFlushInterval-int-">setFlushInterval(int)</a></span> - Method in interface org.apache.kudu.client.<a href="org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client">SessionConfiguration</a></dt>
+<dd>
+<div class="block">Set the flush interval, which will be used for the next scheduling decision.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduSession.html#setFlushMode-org.apache.kudu.client.SessionConfiguration.FlushMode-">setFlushMode(SessionConfiguration.FlushMode)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduSession.html" title="class in org.apache.kudu.client">AsyncKuduSession</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduSession.html#setFlushMode-org.apache.kudu.client.SessionConfiguration.FlushMode-">setFlushMode(SessionConfiguration.FlushMode)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduSession.html" title="class in org.apache.kudu.client">KuduSession</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/SessionConfiguration.html#setFlushMode-org.apache.kudu.client.SessionConfiguration.FlushMode-">setFlushMode(SessionConfiguration.FlushMode)</a></span> - Method in interface org.apache.kudu.client.<a href="org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client">SessionConfiguration</a></dt>
+<dd>
+<div class="block">Set the new flush mode for this session.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduSession.html#setIgnoreAllDuplicateRows-boolean-">setIgnoreAllDuplicateRows(boolean)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduSession.html" title="class in org.apache.kudu.client">AsyncKuduSession</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduSession.html#setIgnoreAllDuplicateRows-boolean-">setIgnoreAllDuplicateRows(boolean)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduSession.html" title="class in org.apache.kudu.client">KuduSession</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/SessionConfiguration.html#setIgnoreAllDuplicateRows-boolean-">setIgnoreAllDuplicateRows(boolean)</a></span> - Method in interface org.apache.kudu.client.<a href="org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client">SessionConfiguration</a></dt>
+<dd>
+<div class="block">Configures the option to ignore all the row errors if they are all of the AlreadyPresent type.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/ColumnRangePredicate.html#setLowerBound-boolean-">setLowerBound(boolean)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/ColumnRangePredicate.html" title="class in org.apache.kudu.client">ColumnRangePredicate</a></dt>
+<dd>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
+<div class="block">Set a boolean for the lower bound</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/ColumnRangePredicate.html#setLowerBound-byte-">setLowerBound(byte)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/ColumnRangePredicate.html" title="class in org.apache.kudu.client">ColumnRangePredicate</a></dt>
+<dd>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
+<div class="block">Set a byte for the lower bound</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/ColumnRangePredicate.html#setLowerBound-short-">setLowerBound(short)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/ColumnRangePredicate.html" title="class in org.apache.kudu.client">ColumnRangePredicate</a></dt>
+<dd>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
+<div class="block">Set a short for the lower bound</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/ColumnRangePredicate.html#setLowerBound-int-">setLowerBound(int)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/ColumnRangePredicate.html" title="class in org.apache.kudu.client">ColumnRangePredicate</a></dt>
+<dd>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
+<div class="block">Set an int for the lower bound</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/ColumnRangePredicate.html#setLowerBound-long-">setLowerBound(long)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/ColumnRangePredicate.html" title="class in org.apache.kudu.client">ColumnRangePredicate</a></dt>
+<dd>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
+<div class="block">Set a long for the lower bound
+
+ If 'lowerBound' is a timestamp see <a href="org/apache/kudu/client/PartialRow.html#addLong-java.lang.String-long-"><code>PartialRow.addLong(String, long)</code></a> for the
+ format.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/ColumnRangePredicate.html#setLowerBound-java.lang.String-">setLowerBound(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/ColumnRangePredicate.html" title="class in org.apache.kudu.client">ColumnRangePredicate</a></dt>
+<dd>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
+<div class="block">Set a string for the lower bound</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/ColumnRangePredicate.html#setLowerBound-byte:A-">setLowerBound(byte[])</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/ColumnRangePredicate.html" title="class in org.apache.kudu.client">ColumnRangePredicate</a></dt>
+<dd>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
+<div class="block">Set a binary value for the lower bound</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/ColumnRangePredicate.html#setLowerBound-float-">setLowerBound(float)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/ColumnRangePredicate.html" title="class in org.apache.kudu.client">ColumnRangePredicate</a></dt>
+<dd>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
+<div class="block">Set a float for the lower bound</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/ColumnRangePredicate.html#setLowerBound-double-">setLowerBound(double)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/ColumnRangePredicate.html" title="class in org.apache.kudu.client">ColumnRangePredicate</a></dt>
+<dd>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
+<div class="block">Set a double for the lower bound</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduSession.html#setMutationBufferLowWatermark-float-">setMutationBufferLowWatermark(float)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduSession.html" title="class in org.apache.kudu.client">AsyncKuduSession</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduSession.html#setMutationBufferLowWatermark-float-">setMutationBufferLowWatermark(float)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduSession.html" title="class in org.apache.kudu.client">KuduSession</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/SessionConfiguration.html#setMutationBufferLowWatermark-float-">setMutationBufferLowWatermark(float)</a></span> - Method in interface org.apache.kudu.client.<a href="org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client">SessionConfiguration</a></dt>
+<dd>
+<div class="block">Set the low watermark for this session.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduSession.html#setMutationBufferSpace-int-">setMutationBufferSpace(int)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduSession.html" title="class in org.apache.kudu.client">AsyncKuduSession</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduSession.html#setMutationBufferSpace-int-">setMutationBufferSpace(int)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduSession.html" title="class in org.apache.kudu.client">KuduSession</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/SessionConfiguration.html#setMutationBufferSpace-int-">setMutationBufferSpace(int)</a></span> - Method in interface org.apache.kudu.client.<a href="org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client">SessionConfiguration</a></dt>
+<dd>
+<div class="block">Set the number of operations that can be buffered.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#setNull-int-">setNull(int)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Set the specified column to null</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#setNull-java.lang.String-">setNull(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Set the specified column to null</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/CreateTableOptions.html#setNumReplicas-int-">setNumReplicas(int)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client">CreateTableOptions</a></dt>
+<dd>
+<div class="block">Sets the number of replicas that each tablet will have.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AbstractKuduScannerBuilder.html#setProjectedColumnIndexes-java.util.List-">setProjectedColumnIndexes(List&lt;Integer&gt;)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="class in org.apache.kudu.client">AbstractKuduScannerBuilder</a></dt>
+<dd>
+<div class="block">Set which columns will be read by the Scanner.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AbstractKuduScannerBuilder.html#setProjectedColumnNames-java.util.List-">setProjectedColumnNames(List&lt;String&gt;)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="class in org.apache.kudu.client">AbstractKuduScannerBuilder</a></dt>
+<dd>
+<div class="block">Set which columns will be read by the Scanner.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/CreateTableOptions.html#setRangePartitionColumns-java.util.List-">setRangePartitionColumns(List&lt;String&gt;)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client">CreateTableOptions</a></dt>
+<dd>
+<div class="block">Set the columns on which the table will be range-partitioned.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduScanToken.KuduScanTokenBuilder.html#setTimeout-long-">setTimeout(long)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduScanToken.KuduScanTokenBuilder.html" title="class in org.apache.kudu.client">KuduScanToken.KuduScanTokenBuilder</a></dt>
+<dd>
+<div class="block">Sets a timeout value to use when building the list of scan tokens.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduSession.html#setTimeoutMillis-long-">setTimeoutMillis(long)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduSession.html" title="class in org.apache.kudu.client">AsyncKuduSession</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduSession.html#setTimeoutMillis-long-">setTimeoutMillis(long)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduSession.html" title="class in org.apache.kudu.client">KuduSession</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/SessionConfiguration.html#setTimeoutMillis-long-">setTimeoutMillis(long)</a></span> - Method in interface org.apache.kudu.client.<a href="org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client">SessionConfiguration</a></dt>
+<dd>
+<div class="block">Sets the timeout for the next applied operations.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/KuduTableOutputCommitter.html#setupJob-org.apache.hadoop.mapreduce.JobContext-">setupJob(JobContext)</a></span> - Method in class org.apache.kudu.mapreduce.<a href="org/apache/kudu/mapreduce/KuduTableOutputCommitter.html" title="class in org.apache.kudu.mapreduce">KuduTableOutputCommitter</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/ColumnRangePredicate.html#setUpperBound-boolean-">setUpperBound(boolean)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/ColumnRangePredicate.html" title="class in org.apache.kudu.client">ColumnRangePredicate</a></dt>
+<dd>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
+<div class="block">Set a boolean for the upper bound</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/ColumnRangePredicate.html#setUpperBound-byte-">setUpperBound(byte)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/ColumnRangePredicate.html" title="class in org.apache.kudu.client">ColumnRangePredicate</a></dt>
+<dd>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
+<div class="block">Set a byte for the upper bound</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/ColumnRangePredicate.html#setUpperBound-short-">setUpperBound(short)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/ColumnRangePredicate.html" title="class in org.apache.kudu.client">ColumnRangePredicate</a></dt>
+<dd>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
+<div class="block">Set a short for the upper bound</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/ColumnRangePredicate.html#setUpperBound-int-">setUpperBound(int)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/ColumnRangePredicate.html" title="class in org.apache.kudu.client">ColumnRangePredicate</a></dt>
+<dd>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
+<div class="block">Set an int for the upper bound</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/ColumnRangePredicate.html#setUpperBound-long-">setUpperBound(long)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/ColumnRangePredicate.html" title="class in org.apache.kudu.client">ColumnRangePredicate</a></dt>
+<dd>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
+<div class="block">Set a long for the upper bound
+
+ If 'upperBound' is a timestamp see <a href="org/apache/kudu/client/PartialRow.html#addLong-java.lang.String-long-"><code>PartialRow.addLong(String, long)</code></a> for the
+ format.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/ColumnRangePredicate.html#setUpperBound-java.lang.String-">setUpperBound(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/ColumnRangePredicate.html" title="class in org.apache.kudu.client">ColumnRangePredicate</a></dt>
+<dd>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
+<div class="block">Set a string for the upper bound</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/ColumnRangePredicate.html#setUpperBound-byte:A-">setUpperBound(byte[])</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/ColumnRangePredicate.html" title="class in org.apache.kudu.client">ColumnRangePredicate</a></dt>
+<dd>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
+<div class="block">Set a binary value for the upper bound</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/ColumnRangePredicate.html#setUpperBound-float-">setUpperBound(float)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/ColumnRangePredicate.html" title="class in org.apache.kudu.client">ColumnRangePredicate</a></dt>
+<dd>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
+<div class="block">Set a float for the upper bound</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/ColumnRangePredicate.html#setUpperBound-double-">setUpperBound(double)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/ColumnRangePredicate.html" title="class in org.apache.kudu.client">ColumnRangePredicate</a></dt>
+<dd>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
+<div class="block">Set a double for the upper bound</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/KuduTableOutputCommitter.html#setupTask-org.apache.hadoop.mapreduce.TaskAttemptContext-">setupTask(TaskAttemptContext)</a></span> - Method in class org.apache.kudu.mapreduce.<a href="org/apache/kudu/mapreduce/KuduTableOutputCommitter.html" title="class in org.apache.kudu.mapreduce">KuduTableOutputCommitter</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduClient.html#shutdown--">shutdown()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client">AsyncKuduClient</a></dt>
+<dd>
+<div class="block">Performs a graceful shutdown of this instance.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduClient.html#shutdown--">shutdown()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a></dt>
+<dd>
+<div class="block">Performs a graceful shutdown of this instance.</div>
+</dd>
+<dt><a href="org/apache/kudu/flume/sink/SimpleKeyedKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink"><span class="typeNameLink">SimpleKeyedKuduOperationsProducer</span></a> - Class in <a href="org/apache/kudu/flume/sink/package-summary.html">org.apache.kudu.flume.sink</a></dt>
+<dd>
+<div class="block">A simple serializer that generates one <a href="org/apache/kudu/client/Insert.html" title="class in org.apache.kudu.client"><code>Insert</code></a> or <a href="org/apache/kudu/client/Upsert.html" title="class in org.apache.kudu.client"><code>Upsert</code></a>
+ per <code>Event</code> by writing the event body into a BINARY column.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/SimpleKeyedKuduOperationsProducer.html#SimpleKeyedKuduOperationsProducer--">SimpleKeyedKuduOperationsProducer()</a></span> - Constructor for class org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/SimpleKeyedKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">SimpleKeyedKuduOperationsProducer</a></dt>
+<dd>&nbsp;</dd>
+<dt><a href="org/apache/kudu/flume/sink/SimpleKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink"><span class="typeNameLink">SimpleKuduOperationsProducer</span></a> - Class in <a href="org/apache/kudu/flume/sink/package-summary.html">org.apache.kudu.flume.sink</a></dt>
+<dd>
+<div class="block">A simple serializer that generates one <a href="org/apache/kudu/client/Insert.html" title="class in org.apache.kudu.client"><code>Insert</code></a> per <code>Event</code>
+ by writing the event body into a BINARY column.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/SimpleKuduOperationsProducer.html#SimpleKuduOperationsProducer--">SimpleKuduOperationsProducer()</a></span> - Constructor for class org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/SimpleKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">SimpleKuduOperationsProducer</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html#SKIP_BAD_COLUMN_VALUE_PROP">SKIP_BAD_COLUMN_VALUE_PROP</a></span> - Static variable in class org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">RegexpKuduOperationsProducer</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html#SKIP_MISSING_COLUMN_PROP">SKIP_MISSING_COLUMN_PROP</a></span> - Static variable in class org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">RegexpKuduOperationsProducer</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduClient.html#SLEEP_TIME">SLEEP_TIME</a></span> - Static variable in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client">AsyncKuduClient</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AbstractKuduScannerBuilder.html#snapshotTimestampMicros-long-">snapshotTimestampMicros(long)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="class in org.apache.kudu.client">AbstractKuduScannerBuilder</a></dt>
+<dd>
+<div class="block">Sets the timestamp the scan must be executed at, in microseconds since the Unix epoch.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AbstractKuduScannerBuilder.html#snapshotTimestampRaw-long-">snapshotTimestampRaw(long)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="class in org.apache.kudu.client">AbstractKuduScannerBuilder</a></dt>
+<dd>
+<div class="block">Sets a previously encoded HT timestamp as a snapshot timestamp, for tests.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/CommandLineParser.html#SOCKET_READ_TIMEOUT_MS_DEFAULT">SOCKET_READ_TIMEOUT_MS_DEFAULT</a></span> - Static variable in class org.apache.kudu.mapreduce.<a href="org/apache/kudu/mapreduce/CommandLineParser.html" title="class in org.apache.kudu.mapreduce">CommandLineParser</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/CommandLineParser.html#SOCKET_READ_TIMEOUT_MS_KEY">SOCKET_READ_TIMEOUT_MS_KEY</a></span> - Static variable in class org.apache.kudu.mapreduce.<a href="org/apache/kudu/mapreduce/CommandLineParser.html" title="class in org.apache.kudu.mapreduce">CommandLineParser</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/KuduSink.html#start--">start()</a></span> - Method in class org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/KuduSink.html" title="class in org.apache.kudu.flume.sink">KuduSink</a></dt>
+<dd>&nbsp;</dd>
+<dt><a href="org/apache/kudu/client/Statistics.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Statistics</span></a> - Class in <a href="org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></dt>
+<dd>
+<div class="block">A Statistics belongs to a specific AsyncKuduClient.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Statistics.html#Statistics--">Statistics()</a></span> - Constructor for class org.apache.kudu.client.<a href="org/apache/kudu/client/Statistics.html" title="class in org.apache.kudu.client">Statistics</a></dt>
+<dd>&nbsp;</dd>
+<dt><a href="org/apache/kudu/client/Statistics.Statistic.html" title="enum in org.apache.kudu.client"><span class="typeNameLink">Statistics.Statistic</span></a> - Enum in <a href="org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></dt>
+<dd>
+<div class="block">The statistic enum to pass when querying.</div>
+</dd>
+<dt><a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Status</span></a> - Class in <a href="org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></dt>
+<dd>
+<div class="block">Representation of an error code and message.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/KuduSink.html#stop--">stop()</a></span> - Method in class org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/KuduSink.html" title="class in org.apache.kudu.flume.sink">KuduSink</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#stringifyRowKey--">stringifyRowKey()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dd>
+<div class="block">Transforms the row key into a string representation where each column is in the format:
+ "type col_name=value".</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduScanToken.html#stringifySerializedToken-byte:A-org.apache.kudu.client.KuduClient-">stringifySerializedToken(byte[], KuduClient)</a></span> - Static method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduScanToken.html" title="class in org.apache.kudu.client">KuduScanToken</a></dt>
+<dd>
+<div class="block">Formats the serialized token for debug printing.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduClient.html#syncClient--">syncClient()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client">AsyncKuduClient</a></dt>
+<dd>
+<div class="block">Returns a synchronous <a href="org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client"><code>KuduClient</code></a> which wraps this asynchronous client.</div>
+</dd>
+</dl>
+<a name="I:T">
+<!--   -->
+</a>
+<h2 class="title">T</h2>
+<dl>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/KuduSinkConfigurationConstants.html#TABLE_NAME">TABLE_NAME</a></span> - Static variable in class org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/KuduSinkConfigurationConstants.html" title="class in org.apache.kudu.flume.sink">KuduSinkConfigurationConstants</a></dt>
+<dd>
+<div class="block">The name of the table in Kudu to write to.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#TABLE_NAME_KEY">TABLE_NAME_KEY</a></span> - Static variable in class org.apache.kudu.mapreduce.tools.<a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools">BigLinkedListCommon</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduClient.html#tableExists-java.lang.String-">tableExists(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client">AsyncKuduClient</a></dt>
+<dd>
+<div class="block">Test if a table exists.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduClient.html#tableExists-java.lang.String-">tableExists(String)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a></dt>
+<dd>
+<div class="block">Test if a table exists.</div>
+</dd>
+<dt><a href="org/apache/kudu/mapreduce/TableReducer.html" title="class in org.apache.kudu.mapreduce"><span class="typeNameLink">TableReducer</span></a>&lt;<a href="org/apache/kudu/mapreduce/TableReducer.html" title="type parameter in TableReducer">KeyinT</a>,<a href="org/apache/kudu/mapreduce/TableReducer.html" title="type parameter in TableReducer">ValueinT</a>,<a href="org/apache/kudu/mapreduce/TableReducer.html" title="type parameter in TableReducer">KeyoutT</a>&gt; - Class in <a href="org/apache/kudu/mapreduce/package-summary.html">org.apache.kudu.mapreduce</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/mapreduce/TableReducer.html#TableReducer--">TableReducer()</a></span> - Constructor for class org.apache.kudu.mapreduce.<a href="org/apache/kudu/mapreduce/TableReducer.html" title="class in org.apache.kudu.mapreduce">TableReducer</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Status.html#TimedOut-java.lang.String-">TimedOut(String)</a></span> - Static method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Status.html#TimedOut-java.lang.String-int-">TimedOut(String, int)</a></span> - Static method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/KuduSinkConfigurationConstants.html#TIMEOUT_MILLIS">TIMEOUT_MILLIS</a></span> - Static variable in class org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/KuduSinkConfigurationConstants.html" title="class in org.apache.kudu.flume.sink">KuduSinkConfigurationConstants</a></dt>
+<dd>
+<div class="block">Timeout period for Kudu operations, in milliseconds.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/ColumnRangePredicate.html#toByteArray-java.util.List-">toByteArray(List&lt;ColumnRangePredicate&gt;)</a></span> - Static method in class org.apache.kudu.client.<a href="org/apache/kudu/client/ColumnRangePredicate.html" title="class in org.apache.kudu.client">ColumnRangePredicate</a></dt>
+<dd>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
+<div class="block">Converts a list of predicates into an opaque byte array.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/ColumnRangePredicate.html#toKuduPredicate--">toKuduPredicate()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/ColumnRangePredicate.html" title="class in org.apache.kudu.client">ColumnRangePredicate</a></dt>
+<dd>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
+<div class="block">Convert this column range predicate into a <a href="org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client"><code>KuduPredicate</code></a>.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduPredicate.html#toPB--">toPB()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a></dt>
+<dd>
+<div class="block">Convert the predicate to the protobuf representation.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduScanner.html#toString--">toString()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduScanner.html" title="class in org.apache.kudu.client">AsyncKuduScanner</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduPredicate.html#toString--">toString()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/LocatedTablet.Replica.html#toString--">toString()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/LocatedTablet.Replica.html" title="class in org.apache.kudu.client">LocatedTablet.Replica</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/LocatedTablet.html#toString--">toString()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/LocatedTablet.html" title="class in org.apache.kudu.client">LocatedTablet</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/PartialRow.html#toString--">toString()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></dt>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/RowError.html#toString--">toString()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/RowError.html" title="class in org.apache.kudu.client">RowError</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/RowResult.html#toString--">toString()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/RowResultIterator.html#toString--">toString()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/RowResultIterator.html" title="class in org.apache.kudu.client">RowResultIterator</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Statistics.html#toString--">toString()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Statistics.html" title="class in org.apache.kudu.client">Statistics</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Status.html#toString--">toString()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></dt>
+<dd>
+<div class="block">Get a human-readable version of the Status message fit for logging or display.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/ColumnSchema.html#toString--">toString()</a></span> - Method in class org.apache.kudu.<a href="org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/Type.html#toString--">toString()</a></span> - Method in enum org.apache.kudu.<a href="org/apache/kudu/Type.html" title="enum in org.apache.kudu">Type</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/RowResult.html#toStringLongFormat--">toStringLongFormat()</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a></dt>
+<dd>&nbsp;</dd>
+<dt><a href="org/apache/kudu/Type.html" title="enum in org.apache.kudu"><span class="typeNameLink">Type</span></a> - Enum in <a href="org/apache/kudu/package-summary.html">org.apache.kudu</a></dt>
+<dd>
+<div class="block">Describes all the types available to build table schemas.</div>
+</dd>
+</dl>
+<a name="I:U">
+<!--   -->
+</a>
+<h2 class="title">U</h2>
+<dl>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Status.html#Uninitialized-java.lang.String-">Uninitialized(String)</a></span> - Static method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Status.html#Uninitialized-java.lang.String-int-">Uninitialized(String, int)</a></span> - Static method in class org.apache.kudu.client.<a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></dt>
+<dd>&nbsp;</dd>
+<dt><a href="org/apache/kudu/client/Update.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Update</span></a> - Class in <a href="org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></dt>
+<dd>
+<div class="block">Operation to update columns on an existing row.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduClient.html#updateLastPropagatedTimestamp-long-">updateLastPropagatedTimestamp(long)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client">AsyncKuduClient</a></dt>
+<dd>
+<div class="block">Updates the last timestamp received from a server.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduClient.html#updateLastPropagatedTimestamp-long-">updateLastPropagatedTimestamp(long)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a></dt>
+<dd>
+<div class="block">Updates the last timestamp received from a server.</div>
+</dd>
+<dt><a href="org/apache/kudu/client/Upsert.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Upsert</span></a> - Class in <a href="org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></dt>
+<dd>
+<div class="block">Represents a single row upsert.</div>
+</dd>
+</dl>
+<a name="I:V">
+<!--   -->
+</a>
+<h2 class="title">V</h2>
+<dl>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduScanner.ReadMode.html#valueOf-java.lang.String-">valueOf(String)</a></span> - Static method in enum org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduScanner.ReadMode.html" title="enum in org.apache.kudu.client">AsyncKuduScanner.ReadMode</a></dt>
+<dd>
+<div class="block">Returns the enum constant of this type with the specified name.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/ExternalConsistencyMode.html#valueOf-java.lang.String-">valueOf(String)</a></span> - Static method in enum org.apache.kudu.client.<a href="org/apache/kudu/client/ExternalConsistencyMode.html" title="enum in org.apache.kudu.client">ExternalConsistencyMode</a></dt>
+<dd>
+<div class="block">Returns the enum constant of this type with the specified name.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduPredicate.ComparisonOp.html#valueOf-java.lang.String-">valueOf(String)</a></span> - Static method in enum org.apache.kudu.client.<a href="org/apache/kudu/client/KuduPredicate.ComparisonOp.html" title="enum in org.apache.kudu.client">KuduPredicate.ComparisonOp</a></dt>
+<dd>
+<div class="block">Returns the enum constant of this type with the specified name.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/RangePartitionBound.html#valueOf-java.lang.String-">valueOf(String)</a></span> - Static method in enum org.apache.kudu.client.<a href="org/apache/kudu/client/RangePartitionBound.html" title="enum in org.apache.kudu.client">RangePartitionBound</a></dt>
+<dd>
+<div class="block">Returns the enum constant of this type with the specified name.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/ReplicaSelection.html#valueOf-java.lang.String-">valueOf(String)</a></span> - Static method in enum org.apache.kudu.client.<a href="org/apache/kudu/client/ReplicaSelection.html" title="enum in org.apache.kudu.client">ReplicaSelection</a></dt>
+<dd>
+<div class="block">Returns the enum constant of this type with the specified name.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/SessionConfiguration.FlushMode.html#valueOf-java.lang.String-">valueOf(String)</a></span> - Static method in enum org.apache.kudu.client.<a href="org/apache/kudu/client/SessionConfiguration.FlushMode.html" title="enum in org.apache.kudu.client">SessionConfiguration.FlushMode</a></dt>
+<dd>
+<div class="block">Returns the enum constant of this type with the specified name.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Statistics.Statistic.html#valueOf-java.lang.String-">valueOf(String)</a></span> - Static method in enum org.apache.kudu.client.<a href="org/apache/kudu/client/Statistics.Statistic.html" title="enum in org.apache.kudu.client">Statistics.Statistic</a></dt>
+<dd>
+<div class="block">Returns the enum constant of this type with the specified name.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/Type.html#valueOf-java.lang.String-">valueOf(String)</a></span> - Static method in enum org.apache.kudu.<a href="org/apache/kudu/Type.html" title="enum in org.apache.kudu">Type</a></dt>
+<dd>
+<div class="block">Returns the enum constant of this type with the specified name.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduScanner.ReadMode.html#values--">values()</a></span> - Static method in enum org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduScanner.ReadMode.html" title="enum in org.apache.kudu.client">AsyncKuduScanner.ReadMode</a></dt>
+<dd>
+<div class="block">Returns an array containing the constants of this enum type, in
+the order they are declared.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/ExternalConsistencyMode.html#values--">values()</a></span> - Static method in enum org.apache.kudu.client.<a href="org/apache/kudu/client/ExternalConsistencyMode.html" title="enum in org.apache.kudu.client">ExternalConsistencyMode</a></dt>
+<dd>
+<div class="block">Returns an array containing the constants of this enum type, in
+the order they are declared.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduPredicate.ComparisonOp.html#values--">values()</a></span> - Static method in enum org.apache.kudu.client.<a href="org/apache/kudu/client/KuduPredicate.ComparisonOp.html" title="enum in org.apache.kudu.client">KuduPredicate.ComparisonOp</a></dt>
+<dd>
+<div class="block">Returns an array containing the constants of this enum type, in
+the order they are declared.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/RangePartitionBound.html#values--">values()</a></span> - Static method in enum org.apache.kudu.client.<a href="org/apache/kudu/client/RangePartitionBound.html" title="enum in org.apache.kudu.client">RangePartitionBound</a></dt>
+<dd>
+<div class="block">Returns an array containing the constants of this enum type, in
+the order they are declared.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/ReplicaSelection.html#values--">values()</a></span> - Static method in enum org.apache.kudu.client.<a href="org/apache/kudu/client/ReplicaSelection.html" title="enum in org.apache.kudu.client">ReplicaSelection</a></dt>
+<dd>
+<div class="block">Returns an array containing the constants of this enum type, in
+the order they are declared.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/SessionConfiguration.FlushMode.html#values--">values()</a></span> - Static method in enum org.apache.kudu.client.<a href="org/apache/kudu/client/SessionConfiguration.FlushMode.html" title="enum in org.apache.kudu.client">SessionConfiguration.FlushMode</a></dt>
+<dd>
+<div class="block">Returns an array containing the constants of this enum type, in
+the order they are declared.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/Statistics.Statistic.html#values--">values()</a></span> - Static method in enum org.apache.kudu.client.<a href="org/apache/kudu/client/Statistics.Statistic.html" title="enum in org.apache.kudu.client">Statistics.Statistic</a></dt>
+<dd>
+<div class="block">Returns an array containing the constants of this enum type, in
+the order they are declared.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/Type.html#values--">values()</a></span> - Static method in enum org.apache.kudu.<a href="org/apache/kudu/Type.html" title="enum in org.apache.kudu">Type</a></dt>
+<dd>
+<div class="block">Returns an array containing the constants of this enum type, in
+the order they are declared.</div>
+</dd>
+</dl>
+<a name="I:W">
+<!--   -->
+</a>
+<h2 class="title">W</h2>
+<dl>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html#WARN_UNMATCHED_ROWS_PROP">WARN_UNMATCHED_ROWS_PROP</a></span> - Static variable in class org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">RegexpKuduOperationsProducer</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html#workerCount-int-">workerCount(int)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html" title="class in org.apache.kudu.client">AsyncKuduClient.AsyncKuduClientBuilder</a></dt>
+<dd>
+<div class="block">Set the maximum number of worker threads.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/kudu/client/KuduClient.KuduClientBuilder.html#workerCount-int-">workerCount(int)</a></span> - Method in class org.apache.kudu.client.<a href="org/apache/kudu/client/KuduClient.KuduClientBuilder.html" title="class in org.apache.kudu.client">KuduClient.KuduClientBuilder</a></dt>
+<dd>
+<div class="block">Set the maximum number of worker threads.</div>
+</dd>
+</dl>
+<a href="#I:A">A</a>&nbsp;<a href="#I:B">B</a>&nbsp;<a href="#I:C">C</a>&nbsp;<a href="#I:D">D</a>&nbsp;<a href="#I:E">E</a>&nbsp;<a href="#I:F">F</a>&nbsp;<a href="#I:G">G</a>&nbsp;<a href="#I:H">H</a>&nbsp;<a href="#I:I">I</a>&nbsp;<a href="#I:K">K</a>&nbsp;<a href="#I:L">L</a>&nbsp;<a href="#I:M">M</a>&nbsp;<a href="#I:N">N</a>&nbsp;<a href="#I:O">O</a>&nbsp;<a href="#I:P">P</a>&nbsp;<a href="#I:R">R</a>&nbsp;<a href="#I:S">S</a>&nbsp;<a href="#I:T">T</a>&nbsp;<a href="#I:U">U</a>&nbsp;<a href="#I:V">V</a>&nbsp;<a href="#I:W">W</a>&nbsp;</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="overview-summary.html">Overview</a></li>
+<li>Package</li>
+<li>Class</li>
+<li>Use</li>
+<li><a href="overview-tree.html">Tree</a></li>
+<li><a href="deprecated-list.html">Deprecated</a></li>
+<li class="navBarCell1Rev">Index</li>
+<li><a href="help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="index.html?index-all.html" target="_top">Frames</a></li>
+<li><a href="index-all.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/index.html b/releases/1.4.0/apidocs/index.html
new file mode 100644
index 0000000..e5a7b5e
--- /dev/null
+++ b/releases/1.4.0/apidocs/index.html
@@ -0,0 +1,76 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Kudu 1.4.0 API</title>
+<script type="text/javascript">
+    tmpTargetPage = "" + window.location.search;
+    if (tmpTargetPage != "" && tmpTargetPage != "undefined")
+        tmpTargetPage = tmpTargetPage.substring(1);
+    if (tmpTargetPage.indexOf(":") != -1 || (tmpTargetPage != "" && !validURL(tmpTargetPage)))
+        tmpTargetPage = "undefined";
+    targetPage = tmpTargetPage;
+    function validURL(url) {
+        try {
+            url = decodeURIComponent(url);
+        }
+        catch (error) {
+            return false;
+        }
+        var pos = url.indexOf(".html");
+        if (pos == -1 || pos != url.length - 5)
+            return false;
+        var allowNumber = false;
+        var allowSep = false;
+        var seenDot = false;
+        for (var i = 0; i < url.length - 5; i++) {
+            var ch = url.charAt(i);
+            if ('a' <= ch && ch <= 'z' ||
+                    'A' <= ch && ch <= 'Z' ||
+                    ch == '$' ||
+                    ch == '_' ||
+                    ch.charCodeAt(0) > 127) {
+                allowNumber = true;
+                allowSep = true;
+            } else if ('0' <= ch && ch <= '9'
+                    || ch == '-') {
+                if (!allowNumber)
+                     return false;
+            } else if (ch == '/' || ch == '.') {
+                if (!allowSep)
+                    return false;
+                allowNumber = false;
+                allowSep = false;
+                if (ch == '.')
+                     seenDot = true;
+                if (ch == '/' && seenDot)
+                     return false;
+            } else {
+                return false;
+            }
+        }
+        return true;
+    }
+    function loadFrames() {
+        if (targetPage != "" && targetPage != "undefined")
+             top.classFrame.location = top.targetPage;
+    }
+</script>
+</head>
+<frameset cols="20%,80%" title="Documentation frame" onload="top.loadFrames()">
+<frameset rows="30%,70%" title="Left frames" onload="top.loadFrames()">
+<frame src="overview-frame.html" name="packageListFrame" title="All Packages">
+<frame src="allclasses-frame.html" name="packageFrame" title="All classes and interfaces (except non-static nested types)">
+</frameset>
+<frame src="overview-summary.html" name="classFrame" title="Package, class and interface descriptions" scrolling="yes">
+<noframes>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<h2>Frame Alert</h2>
+<p>This document is designed to be viewed using the frames feature. If you see this message, you are using a non-frame-capable web client. Link to <a href="overview-summary.html">Non-frame version</a>.</p>
+</noframes>
+</frameset>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/ColumnSchema.html b/releases/1.4.0/apidocs/org/apache/kudu/ColumnSchema.html
new file mode 100644
index 0000000..3c87740
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/ColumnSchema.html
@@ -0,0 +1,434 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>ColumnSchema (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="ColumnSchema (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10};
+var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/ColumnSchema.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../index-all.html">Index</a></li>
+<li><a href="../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev&nbsp;Class</li>
+<li><a href="../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../index.html?org/apache/kudu/ColumnSchema.html" target="_top">Frames</a></li>
+<li><a href="ColumnSchema.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu</div>
+<h2 title="Class ColumnSchema" class="title">Class ColumnSchema</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.ColumnSchema</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Evolving
+public class <span class="typeNameLabel">ColumnSchema</span>
+extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></pre>
+<div class="block">Represents a Kudu Table column. Use <code>ColumnSchema.ColumnSchemaBuilder</code> in order to
+ create columns.</div>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/kudu/ColumnSchema.html#equals-java.lang.Object-">equals</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o)</code>&nbsp;</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code>org.apache.kudu.ColumnSchema.CompressionAlgorithm</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/kudu/ColumnSchema.html#getCompressionAlgorithm--">getCompressionAlgorithm</a></span>()</code>
+<div class="block">Return the compression algorithm of this column, or null if it is not known.</div>
+</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/kudu/ColumnSchema.html#getDefaultValue--">getDefaultValue</a></span>()</code>
+<div class="block">The Java object representation of the default value that's read</div>
+</td>
+</tr>
+<tr id="i3" class="rowColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/kudu/ColumnSchema.html#getDesiredBlockSize--">getDesiredBlockSize</a></span>()</code>
+<div class="block">Gets the desired block size for this column.</div>
+</td>
+</tr>
+<tr id="i4" class="altColor">
+<td class="colFirst"><code>org.apache.kudu.ColumnSchema.Encoding</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/kudu/ColumnSchema.html#getEncoding--">getEncoding</a></span>()</code>
+<div class="block">Return the encoding of this column, or null if it is not known.</div>
+</td>
+</tr>
+<tr id="i5" class="rowColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/kudu/ColumnSchema.html#getName--">getName</a></span>()</code>
+<div class="block">Get the column's name</div>
+</td>
+</tr>
+<tr id="i6" class="altColor">
+<td class="colFirst"><code><a href="../../../org/apache/kudu/Type.html" title="enum in org.apache.kudu">Type</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/kudu/ColumnSchema.html#getType--">getType</a></span>()</code>
+<div class="block">Get the column's Type</div>
+</td>
+</tr>
+<tr id="i7" class="rowColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/kudu/ColumnSchema.html#hashCode--">hashCode</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i8" class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/kudu/ColumnSchema.html#isKey--">isKey</a></span>()</code>
+<div class="block">Answers if the column part of the key</div>
+</td>
+</tr>
+<tr id="i9" class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/kudu/ColumnSchema.html#isNullable--">isNullable</a></span>()</code>
+<div class="block">Answers if the column can be set to null</div>
+</td>
+</tr>
+<tr id="i10" class="altColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/kudu/ColumnSchema.html#toString--">toString</a></span>()</code>&nbsp;</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="getType--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getType</h4>
+<pre>public&nbsp;<a href="../../../org/apache/kudu/Type.html" title="enum in org.apache.kudu">Type</a>&nbsp;getType()</pre>
+<div class="block">Get the column's Type</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the type</dd>
+</dl>
+</li>
+</ul>
+<a name="getName--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getName</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getName()</pre>
+<div class="block">Get the column's name</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>A string representation of the name</dd>
+</dl>
+</li>
+</ul>
+<a name="isKey--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>isKey</h4>
+<pre>public&nbsp;boolean&nbsp;isKey()</pre>
+<div class="block">Answers if the column part of the key</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>true if the column is part of the key, else false</dd>
+</dl>
+</li>
+</ul>
+<a name="isNullable--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>isNullable</h4>
+<pre>public&nbsp;boolean&nbsp;isNullable()</pre>
+<div class="block">Answers if the column can be set to null</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>true if it can be set to null, else false</dd>
+</dl>
+</li>
+</ul>
+<a name="getDefaultValue--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getDefaultValue</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;getDefaultValue()</pre>
+<div class="block">The Java object representation of the default value that's read</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the default read value</dd>
+</dl>
+</li>
+</ul>
+<a name="getDesiredBlockSize--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getDesiredBlockSize</h4>
+<pre>public&nbsp;int&nbsp;getDesiredBlockSize()</pre>
+<div class="block">Gets the desired block size for this column.
+ If no block size has been explicitly specified for this column,
+ returns 0 to indicate that the server-side default will be used.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the block size, in bytes, or 0 if none has been configured.</dd>
+</dl>
+</li>
+</ul>
+<a name="getEncoding--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getEncoding</h4>
+<pre>public&nbsp;org.apache.kudu.ColumnSchema.Encoding&nbsp;getEncoding()</pre>
+<div class="block">Return the encoding of this column, or null if it is not known.</div>
+</li>
+</ul>
+<a name="getCompressionAlgorithm--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getCompressionAlgorithm</h4>
+<pre>public&nbsp;org.apache.kudu.ColumnSchema.CompressionAlgorithm&nbsp;getCompressionAlgorithm()</pre>
+<div class="block">Return the compression algorithm of this column, or null if it is not known.</div>
+</li>
+</ul>
+<a name="equals-java.lang.Object-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>equals</h4>
+<pre>public&nbsp;boolean&nbsp;equals(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o)</pre>
+<dl>
+<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a></code>&nbsp;in class&nbsp;<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></dd>
+</dl>
+</li>
+</ul>
+<a name="hashCode--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>hashCode</h4>
+<pre>public&nbsp;int&nbsp;hashCode()</pre>
+<dl>
+<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a></code>&nbsp;in class&nbsp;<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></dd>
+</dl>
+</li>
+</ul>
+<a name="toString--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>toString</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;toString()</pre>
+<dl>
+<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a></code>&nbsp;in class&nbsp;<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/ColumnSchema.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../index-all.html">Index</a></li>
+<li><a href="../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev&nbsp;Class</li>
+<li><a href="../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../index.html?org/apache/kudu/ColumnSchema.html" target="_top">Frames</a></li>
+<li><a href="ColumnSchema.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/Schema.html b/releases/1.4.0/apidocs/org/apache/kudu/Schema.html
new file mode 100644
index 0000000..83f3cce
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/Schema.html
@@ -0,0 +1,615 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Schema (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Schema (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10};
+var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/Schema.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../index-all.html">Index</a></li>
+<li><a href="../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../org/apache/kudu/Type.html" title="enum in org.apache.kudu"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../index.html?org/apache/kudu/Schema.html" target="_top">Frames</a></li>
+<li><a href="Schema.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu</div>
+<h2 title="Class Schema" class="title">Class Schema</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.Schema</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Evolving
+public class <span class="typeNameLabel">Schema</span>
+extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></pre>
+<div class="block">Represents table's schema which is essentially a list of columns.
+ This class offers a few utility methods for querying it.</div>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="constructor.summary">
+<!--   -->
+</a>
+<h3>Constructor Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
+<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colOne" scope="col">Constructor and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../org/apache/kudu/Schema.html#Schema-java.util.List-">Schema</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a>&gt;&nbsp;columns)</code>
+<div class="block">Constructs a schema using the specified columns and does some internal accounting</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../org/apache/kudu/Schema.html#Schema-java.util.List-java.util.List-">Schema</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a>&gt;&nbsp;columns,
+      <a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a>&gt;&nbsp;columnIds)</code>
+<div class="block">Constructs a schema using the specified columns and IDs.</div>
+</td>
+</tr>
+</table>
+</li>
+</ul>
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code><a href="../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/kudu/Schema.html#getColumn-java.lang.String-">getColumn</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</code>
+<div class="block">Get the column associated with the specified name</div>
+</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code><a href="../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/kudu/Schema.html#getColumnByIndex-int-">getColumnByIndex</a></span>(int&nbsp;idx)</code>
+<div class="block">Get the column at the specified index in the original list</div>
+</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/kudu/Schema.html#getColumnCount--">getColumnCount</a></span>()</code>
+<div class="block">Get the count of columns in this schema</div>
+</td>
+</tr>
+<tr id="i3" class="rowColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/kudu/Schema.html#getColumnIndex-int-">getColumnIndex</a></span>(int&nbsp;columnId)</code>
+<div class="block">Get the column index of the column with the provided ID.</div>
+</td>
+</tr>
+<tr id="i4" class="altColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/kudu/Schema.html#getColumnIndex-java.lang.String-">getColumnIndex</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</code>
+<div class="block">Get the index for the provided column name.</div>
+</td>
+</tr>
+<tr id="i5" class="rowColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/kudu/Schema.html#getColumnOffset-int-">getColumnOffset</a></span>(int&nbsp;idx)</code>
+<div class="block">Get the index at which this column can be found in the backing byte array</div>
+</td>
+</tr>
+<tr id="i6" class="altColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/kudu/Schema.html#getColumns--">getColumns</a></span>()</code>
+<div class="block">Get the list of columns used to create this schema</div>
+</td>
+</tr>
+<tr id="i7" class="rowColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/kudu/Schema.html#getPrimaryKeyColumnCount--">getPrimaryKeyColumnCount</a></span>()</code>
+<div class="block">Get the count of columns that are part of the primary key.</div>
+</td>
+</tr>
+<tr id="i8" class="altColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/kudu/Schema.html#getPrimaryKeyColumns--">getPrimaryKeyColumns</a></span>()</code>
+<div class="block">Get the primary key columns.</div>
+</td>
+</tr>
+<tr id="i9" class="rowColor">
+<td class="colFirst"><code><a href="../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/kudu/Schema.html#getRowKeyProjection--">getRowKeyProjection</a></span>()</code>
+<div class="block">Get a schema that only contains the columns which are part of the key</div>
+</td>
+</tr>
+<tr id="i10" class="altColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/kudu/Schema.html#getRowSize--">getRowSize</a></span>()</code>
+<div class="block">Get the size a row built using this schema would be</div>
+</td>
+</tr>
+<tr id="i11" class="rowColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/kudu/Schema.html#getVarLengthColumnCount--">getVarLengthColumnCount</a></span>()</code>
+<div class="block">Get the count of columns with variable length (BINARY/STRING) in
+ this schema.</div>
+</td>
+</tr>
+<tr id="i12" class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/kudu/Schema.html#hasColumnIds--">hasColumnIds</a></span>()</code>
+<div class="block">Tells whether this schema includes IDs for columns.</div>
+</td>
+</tr>
+<tr id="i13" class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/kudu/Schema.html#hasNullableColumns--">hasNullableColumns</a></span>()</code>
+<div class="block">Tells if there's at least one nullable column</div>
+</td>
+</tr>
+<tr id="i14" class="altColor">
+<td class="colFirst"><code><a href="../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/kudu/Schema.html#newPartialRow--">newPartialRow</a></span>()</code>
+<div class="block">Creates a new partial row for the schema.</div>
+</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="constructor.detail">
+<!--   -->
+</a>
+<h3>Constructor Detail</h3>
+<a name="Schema-java.util.List-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>Schema</h4>
+<pre>public&nbsp;Schema(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a>&gt;&nbsp;columns)</pre>
+<div class="block">Constructs a schema using the specified columns and does some internal accounting</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columns</code> - the columns in index order
+
+ See <code>ColumnPBsToSchema()</code> in <code>src/kudu/common/wire_protocol.cc</code></dd>
+</dl>
+</li>
+</ul>
+<a name="Schema-java.util.List-java.util.List-">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>Schema</h4>
+<pre>public&nbsp;Schema(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a>&gt;&nbsp;columns,
+              <a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a>&gt;&nbsp;columnIds)</pre>
+<div class="block">Constructs a schema using the specified columns and IDs.
+
+ This is not a stable API, prefer using <a href="../../../org/apache/kudu/Schema.html#Schema-java.util.List-"><code>Schema(List)</code></a> to create a new schema.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columns</code> - the columns in index order</dd>
+<dd><code>columnIds</code> - the column ids of the provided columns, or null</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - If the column ids length does not match the columns length
+
+ See <code>ColumnPBsToSchema()</code> in <code>src/kudu/common/wire_protocol.cc</code></dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="getColumns--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getColumns</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a>&gt;&nbsp;getColumns()</pre>
+<div class="block">Get the list of columns used to create this schema</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>list of columns</dd>
+</dl>
+</li>
+</ul>
+<a name="getVarLengthColumnCount--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getVarLengthColumnCount</h4>
+<pre>public&nbsp;int&nbsp;getVarLengthColumnCount()</pre>
+<div class="block">Get the count of columns with variable length (BINARY/STRING) in
+ this schema.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>strings count</dd>
+</dl>
+</li>
+</ul>
+<a name="getRowSize--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getRowSize</h4>
+<pre>public&nbsp;int&nbsp;getRowSize()</pre>
+<div class="block">Get the size a row built using this schema would be</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>size in bytes</dd>
+</dl>
+</li>
+</ul>
+<a name="getColumnOffset-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getColumnOffset</h4>
+<pre>public&nbsp;int&nbsp;getColumnOffset(int&nbsp;idx)</pre>
+<div class="block">Get the index at which this column can be found in the backing byte array</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>idx</code> - column's index</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>column's offset</dd>
+</dl>
+</li>
+</ul>
+<a name="getColumnIndex-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getColumnIndex</h4>
+<pre>public&nbsp;int&nbsp;getColumnIndex(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</pre>
+<div class="block">Get the index for the provided column name.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnName</code> - column to search for</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>an index in the schema</dd>
+</dl>
+</li>
+</ul>
+<a name="getColumnIndex-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getColumnIndex</h4>
+<pre>public&nbsp;int&nbsp;getColumnIndex(int&nbsp;columnId)</pre>
+<div class="block">Get the column index of the column with the provided ID.
+ This method is not part of the stable API.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnId</code> - the column id of the column</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the column index of the column.</dd>
+</dl>
+</li>
+</ul>
+<a name="getColumnByIndex-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getColumnByIndex</h4>
+<pre>public&nbsp;<a href="../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a>&nbsp;getColumnByIndex(int&nbsp;idx)</pre>
+<div class="block">Get the column at the specified index in the original list</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>idx</code> - column's index</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the column</dd>
+</dl>
+</li>
+</ul>
+<a name="getColumn-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getColumn</h4>
+<pre>public&nbsp;<a href="../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a>&nbsp;getColumn(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</pre>
+<div class="block">Get the column associated with the specified name</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnName</code> - column's name</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the column</dd>
+</dl>
+</li>
+</ul>
+<a name="getColumnCount--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getColumnCount</h4>
+<pre>public&nbsp;int&nbsp;getColumnCount()</pre>
+<div class="block">Get the count of columns in this schema</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>count of columns</dd>
+</dl>
+</li>
+</ul>
+<a name="getPrimaryKeyColumnCount--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getPrimaryKeyColumnCount</h4>
+<pre>public&nbsp;int&nbsp;getPrimaryKeyColumnCount()</pre>
+<div class="block">Get the count of columns that are part of the primary key.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>count of primary key columns.</dd>
+</dl>
+</li>
+</ul>
+<a name="getPrimaryKeyColumns--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getPrimaryKeyColumns</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a>&gt;&nbsp;getPrimaryKeyColumns()</pre>
+<div class="block">Get the primary key columns.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the primary key columns.</dd>
+</dl>
+</li>
+</ul>
+<a name="getRowKeyProjection--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getRowKeyProjection</h4>
+<pre>public&nbsp;<a href="../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a>&nbsp;getRowKeyProjection()</pre>
+<div class="block">Get a schema that only contains the columns which are part of the key</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>new schema with only the keys</dd>
+</dl>
+</li>
+</ul>
+<a name="hasNullableColumns--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>hasNullableColumns</h4>
+<pre>public&nbsp;boolean&nbsp;hasNullableColumns()</pre>
+<div class="block">Tells if there's at least one nullable column</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>true if at least one column is nullable, else false.</dd>
+</dl>
+</li>
+</ul>
+<a name="hasColumnIds--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>hasColumnIds</h4>
+<pre>public&nbsp;boolean&nbsp;hasColumnIds()</pre>
+<div class="block">Tells whether this schema includes IDs for columns. A schema created by a client as part of
+ table creation will not include IDs, but schemas for open tables will include IDs.
+ This method is not part of the stable API.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>whether this schema includes column IDs.</dd>
+</dl>
+</li>
+</ul>
+<a name="newPartialRow--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>newPartialRow</h4>
+<pre>public&nbsp;<a href="../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;newPartialRow()</pre>
+<div class="block">Creates a new partial row for the schema.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a new partial row</dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/Schema.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../index-all.html">Index</a></li>
+<li><a href="../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../org/apache/kudu/Type.html" title="enum in org.apache.kudu"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../index.html?org/apache/kudu/Schema.html" target="_top">Frames</a></li>
+<li><a href="Schema.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/Type.html b/releases/1.4.0/apidocs/org/apache/kudu/Type.html
new file mode 100644
index 0000000..0227ccc
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/Type.html
@@ -0,0 +1,540 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Type (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Type (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":10,"i1":10,"i2":10,"i3":9,"i4":10,"i5":9,"i6":9};
+var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/Type.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../index-all.html">Index</a></li>
+<li><a href="../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li>Next&nbsp;Class</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../index.html?org/apache/kudu/Type.html" target="_top">Frames</a></li>
+<li><a href="Type.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#enum.constant.summary">Enum Constants</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li><a href="#enum.constant.detail">Enum Constants</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu</div>
+<h2 title="Enum Type" class="title">Enum Type</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang">java.lang.Enum</a>&lt;<a href="../../../org/apache/kudu/Type.html" title="enum in org.apache.kudu">Type</a>&gt;</li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.Type</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<dl>
+<dt>All Implemented Interfaces:</dt>
+<dd><a href="http://docs.oracle.com/javase/7/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;<a href="../../../org/apache/kudu/Type.html" title="enum in org.apache.kudu">Type</a>&gt;</dd>
+</dl>
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Evolving
+public enum <span class="typeNameLabel">Type</span>
+extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang">Enum</a>&lt;<a href="../../../org/apache/kudu/Type.html" title="enum in org.apache.kudu">Type</a>&gt;</pre>
+<div class="block">Describes all the types available to build table schemas.</div>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- =========== ENUM CONSTANT SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="enum.constant.summary">
+<!--   -->
+</a>
+<h3>Enum Constant Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Enum Constant Summary table, listing enum constants, and an explanation">
+<caption><span>Enum Constants</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colOne" scope="col">Enum Constant and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../org/apache/kudu/Type.html#BINARY">BINARY</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../org/apache/kudu/Type.html#BOOL">BOOL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../org/apache/kudu/Type.html#DOUBLE">DOUBLE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../org/apache/kudu/Type.html#FLOAT">FLOAT</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../org/apache/kudu/Type.html#INT16">INT16</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../org/apache/kudu/Type.html#INT32">INT32</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../org/apache/kudu/Type.html#INT64">INT64</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../org/apache/kudu/Type.html#INT8">INT8</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../org/apache/kudu/Type.html#STRING">STRING</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../org/apache/kudu/Type.html#UNIXTIME_MICROS">UNIXTIME_MICROS</a></span></code>&nbsp;</td>
+</tr>
+</table>
+</li>
+</ul>
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code>org.apache.kudu.Common.DataType</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/kudu/Type.html#getDataType--">getDataType</a></span>()</code>
+<div class="block">Get the data type from the common's pb</div>
+</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/kudu/Type.html#getName--">getName</a></span>()</code>
+<div class="block">Get the string representation of this type</div>
+</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/kudu/Type.html#getSize--">getSize</a></span>()</code>
+<div class="block">The size of this type on the wire</div>
+</td>
+</tr>
+<tr id="i3" class="rowColor">
+<td class="colFirst"><code>static <a href="../../../org/apache/kudu/Type.html" title="enum in org.apache.kudu">Type</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/kudu/Type.html#getTypeForDataType-org.apache.kudu.Common.DataType-">getTypeForDataType</a></span>(org.apache.kudu.Common.DataType&nbsp;type)</code>
+<div class="block">Convert the pb DataType to a Type</div>
+</td>
+</tr>
+<tr id="i4" class="altColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/kudu/Type.html#toString--">toString</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i5" class="rowColor">
+<td class="colFirst"><code>static <a href="../../../org/apache/kudu/Type.html" title="enum in org.apache.kudu">Type</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/kudu/Type.html#valueOf-java.lang.String-">valueOf</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
+<div class="block">Returns the enum constant of this type with the specified name.</div>
+</td>
+</tr>
+<tr id="i6" class="altColor">
+<td class="colFirst"><code>static <a href="../../../org/apache/kudu/Type.html" title="enum in org.apache.kudu">Type</a>[]</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/kudu/Type.html#values--">values</a></span>()</code>
+<div class="block">Returns an array containing the constants of this enum type, in
+the order they are declared.</div>
+</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Enum">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang">Enum</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#compareTo-E-" title="class or interface in java.lang">compareTo</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#getDeclaringClass--" title="class or interface in java.lang">getDeclaringClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#name--" title="class or interface in java.lang">name</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#ordinal--" title="class or interface in java.lang">ordinal</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#valueOf-java.lang.Class-java.lang.String-" title="class or interface in java.lang">valueOf</a></code></li>
+</ul>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ============ ENUM CONSTANT DETAIL =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="enum.constant.detail">
+<!--   -->
+</a>
+<h3>Enum Constant Detail</h3>
+<a name="INT8">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>INT8</h4>
+<pre>public static final&nbsp;<a href="../../../org/apache/kudu/Type.html" title="enum in org.apache.kudu">Type</a> INT8</pre>
+</li>
+</ul>
+<a name="INT16">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>INT16</h4>
+<pre>public static final&nbsp;<a href="../../../org/apache/kudu/Type.html" title="enum in org.apache.kudu">Type</a> INT16</pre>
+</li>
+</ul>
+<a name="INT32">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>INT32</h4>
+<pre>public static final&nbsp;<a href="../../../org/apache/kudu/Type.html" title="enum in org.apache.kudu">Type</a> INT32</pre>
+</li>
+</ul>
+<a name="INT64">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>INT64</h4>
+<pre>public static final&nbsp;<a href="../../../org/apache/kudu/Type.html" title="enum in org.apache.kudu">Type</a> INT64</pre>
+</li>
+</ul>
+<a name="BINARY">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>BINARY</h4>
+<pre>public static final&nbsp;<a href="../../../org/apache/kudu/Type.html" title="enum in org.apache.kudu">Type</a> BINARY</pre>
+</li>
+</ul>
+<a name="STRING">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>STRING</h4>
+<pre>public static final&nbsp;<a href="../../../org/apache/kudu/Type.html" title="enum in org.apache.kudu">Type</a> STRING</pre>
+</li>
+</ul>
+<a name="BOOL">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>BOOL</h4>
+<pre>public static final&nbsp;<a href="../../../org/apache/kudu/Type.html" title="enum in org.apache.kudu">Type</a> BOOL</pre>
+</li>
+</ul>
+<a name="FLOAT">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>FLOAT</h4>
+<pre>public static final&nbsp;<a href="../../../org/apache/kudu/Type.html" title="enum in org.apache.kudu">Type</a> FLOAT</pre>
+</li>
+</ul>
+<a name="DOUBLE">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>DOUBLE</h4>
+<pre>public static final&nbsp;<a href="../../../org/apache/kudu/Type.html" title="enum in org.apache.kudu">Type</a> DOUBLE</pre>
+</li>
+</ul>
+<a name="UNIXTIME_MICROS">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>UNIXTIME_MICROS</h4>
+<pre>public static final&nbsp;<a href="../../../org/apache/kudu/Type.html" title="enum in org.apache.kudu">Type</a> UNIXTIME_MICROS</pre>
+</li>
+</ul>
+</li>
+</ul>
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="values--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>values</h4>
+<pre>public static&nbsp;<a href="../../../org/apache/kudu/Type.html" title="enum in org.apache.kudu">Type</a>[]&nbsp;values()</pre>
+<div class="block">Returns an array containing the constants of this enum type, in
+the order they are declared.  This method may be used to iterate
+over the constants as follows:
+<pre>
+for (Type c : Type.values())
+&nbsp;   System.out.println(c);
+</pre></div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>an array containing the constants of this enum type, in the order they are declared</dd>
+</dl>
+</li>
+</ul>
+<a name="valueOf-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>valueOf</h4>
+<pre>public static&nbsp;<a href="../../../org/apache/kudu/Type.html" title="enum in org.apache.kudu">Type</a>&nbsp;valueOf(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
+<div class="block">Returns the enum constant of this type with the specified name.
+The string must match <i>exactly</i> an identifier used to declare an
+enum constant in this type.  (Extraneous whitespace characters are 
+not permitted.)</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>name</code> - the name of the enum constant to be returned.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the enum constant with the specified name</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if this enum type has no constant with the specified name</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/NullPointerException.html?is-external=true" title="class or interface in java.lang">NullPointerException</a></code> - if the argument is null</dd>
+</dl>
+</li>
+</ul>
+<a name="getDataType--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getDataType</h4>
+<pre>public&nbsp;org.apache.kudu.Common.DataType&nbsp;getDataType()</pre>
+<div class="block">Get the data type from the common's pb</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>A DataType</dd>
+</dl>
+</li>
+</ul>
+<a name="getName--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getName</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getName()</pre>
+<div class="block">Get the string representation of this type</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>The type's name</dd>
+</dl>
+</li>
+</ul>
+<a name="getSize--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getSize</h4>
+<pre>public&nbsp;int&nbsp;getSize()</pre>
+<div class="block">The size of this type on the wire</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>A size</dd>
+</dl>
+</li>
+</ul>
+<a name="toString--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>toString</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;toString()</pre>
+<dl>
+<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#toString--" title="class or interface in java.lang">toString</a></code>&nbsp;in class&nbsp;<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang">Enum</a>&lt;<a href="../../../org/apache/kudu/Type.html" title="enum in org.apache.kudu">Type</a>&gt;</code></dd>
+</dl>
+</li>
+</ul>
+<a name="getTypeForDataType-org.apache.kudu.Common.DataType-">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>getTypeForDataType</h4>
+<pre>public static&nbsp;<a href="../../../org/apache/kudu/Type.html" title="enum in org.apache.kudu">Type</a>&nbsp;getTypeForDataType(org.apache.kudu.Common.DataType&nbsp;type)</pre>
+<div class="block">Convert the pb DataType to a Type</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>type</code> - DataType to convert</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a matching Type</dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/Type.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../index-all.html">Index</a></li>
+<li><a href="../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li>Next&nbsp;Class</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../index.html?org/apache/kudu/Type.html" target="_top">Frames</a></li>
+<li><a href="Type.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#enum.constant.summary">Enum Constants</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li><a href="#enum.constant.detail">Enum Constants</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/annotations/InterfaceAudience.html b/releases/1.4.0/apidocs/org/apache/kudu/annotations/InterfaceAudience.html
new file mode 100644
index 0000000..c900f8e
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/annotations/InterfaceAudience.html
@@ -0,0 +1,219 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>InterfaceAudience (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="InterfaceAudience (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/InterfaceAudience.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev&nbsp;Class</li>
+<li><a href="../../../../org/apache/kudu/annotations/InterfaceStability.html" title="class in org.apache.kudu.annotations"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/annotations/InterfaceAudience.html" target="_top">Frames</a></li>
+<li><a href="InterfaceAudience.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#methods.inherited.from.class.java.lang.Object">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li>Method</li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.annotations</div>
+<h2 title="Class InterfaceAudience" class="title">Class InterfaceAudience</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.annotations.InterfaceAudience</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Evolving
+public class <span class="typeNameLabel">InterfaceAudience</span>
+extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></pre>
+<div class="block">Annotation to inform users of a package, class or method's intended audience.
+ Currently the audience can be <code>InterfaceAudience.Public</code>, <code>InterfaceAudience.LimitedPrivate</code> or
+ <code>InterfaceAudience.Private</code>. <br>
+ All public classes must have InterfaceAudience annotation. <br>
+ <ul>
+ <li>Public classes that are not marked with this annotation must be
+ considered by default as <code>InterfaceAudience.Private</code>.</li>
+
+ <li>External applications must only use classes that are marked
+ <code>InterfaceAudience.Public</code>. Avoid using non public classes as these classes
+ could be removed or change in incompatible ways.</li>
+
+ <li>Hadoop projects must only use classes that are marked
+ <code>InterfaceAudience.LimitedPrivate</code> or <code>InterfaceAudience.Public</code></li>
+
+ <li> Methods may have a different annotation that it is more restrictive
+ compared to the audience classification of the class. Example: A class
+ might be <code>InterfaceAudience.Public</code>, but a method may be <code>InterfaceAudience.LimitedPrivate</code>
+ </li></ul></div>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/InterfaceAudience.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev&nbsp;Class</li>
+<li><a href="../../../../org/apache/kudu/annotations/InterfaceStability.html" title="class in org.apache.kudu.annotations"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/annotations/InterfaceAudience.html" target="_top">Frames</a></li>
+<li><a href="InterfaceAudience.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#methods.inherited.from.class.java.lang.Object">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li>Method</li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/annotations/InterfaceStability.html b/releases/1.4.0/apidocs/org/apache/kudu/annotations/InterfaceStability.html
new file mode 100644
index 0000000..1b38e37
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/annotations/InterfaceStability.html
@@ -0,0 +1,250 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>InterfaceStability (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="InterfaceStability (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/InterfaceStability.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/annotations/InterfaceAudience.html" title="class in org.apache.kudu.annotations"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li>Next&nbsp;Class</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/annotations/InterfaceStability.html" target="_top">Frames</a></li>
+<li><a href="InterfaceStability.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#methods.inherited.from.class.java.lang.Object">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li>Method</li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.annotations</div>
+<h2 title="Class InterfaceStability" class="title">Class InterfaceStability</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.annotations.InterfaceStability</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Evolving
+public class <span class="typeNameLabel">InterfaceStability</span>
+extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></pre>
+<div class="block">Annotation to inform users of how much to rely on a particular package,
+ class or method not changing over time. Currently the stability can be
+ <code>InterfaceStability.Stable</code>, <code>InterfaceStability.Evolving</code> or <code>InterfaceStability.Unstable</code>. <br>
+
+ <ul><li>All classes that are annotated with <code>InterfaceAudience.Public</code> or
+ <code>InterfaceAudience.LimitedPrivate</code> must have InterfaceStability annotation. </li>
+ <li>Classes that are <code>InterfaceAudience.Private</code> are to be considered unstable unless
+ a different InterfaceStability annotation states otherwise.</li>
+ <li>Incompatible changes must not be made to classes marked as stable.</li>
+ </ul></div>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="constructor.summary">
+<!--   -->
+</a>
+<h3>Constructor Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
+<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colOne" scope="col">Constructor and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/annotations/InterfaceStability.html#InterfaceStability--">InterfaceStability</a></span>()</code>&nbsp;</td>
+</tr>
+</table>
+</li>
+</ul>
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="constructor.detail">
+<!--   -->
+</a>
+<h3>Constructor Detail</h3>
+<a name="InterfaceStability--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>InterfaceStability</h4>
+<pre>public&nbsp;InterfaceStability()</pre>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/InterfaceStability.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/annotations/InterfaceAudience.html" title="class in org.apache.kudu.annotations"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li>Next&nbsp;Class</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/annotations/InterfaceStability.html" target="_top">Frames</a></li>
+<li><a href="InterfaceStability.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#methods.inherited.from.class.java.lang.Object">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li>Method</li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/annotations/class-use/InterfaceAudience.html b/releases/1.4.0/apidocs/org/apache/kudu/annotations/class-use/InterfaceAudience.html
new file mode 100644
index 0000000..5156edc
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/annotations/class-use/InterfaceAudience.html
@@ -0,0 +1,125 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.annotations.InterfaceAudience (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.annotations.InterfaceAudience (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/annotations/InterfaceAudience.html" title="class in org.apache.kudu.annotations">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/annotations/class-use/InterfaceAudience.html" target="_top">Frames</a></li>
+<li><a href="InterfaceAudience.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.annotations.InterfaceAudience" class="title">Uses of Class<br>org.apache.kudu.annotations.InterfaceAudience</h2>
+</div>
+<div class="classUseContainer">No usage of org.apache.kudu.annotations.InterfaceAudience</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/annotations/InterfaceAudience.html" title="class in org.apache.kudu.annotations">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/annotations/class-use/InterfaceAudience.html" target="_top">Frames</a></li>
+<li><a href="InterfaceAudience.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/annotations/class-use/InterfaceStability.html b/releases/1.4.0/apidocs/org/apache/kudu/annotations/class-use/InterfaceStability.html
new file mode 100644
index 0000000..fd67169
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/annotations/class-use/InterfaceStability.html
@@ -0,0 +1,125 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.annotations.InterfaceStability (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.annotations.InterfaceStability (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/annotations/InterfaceStability.html" title="class in org.apache.kudu.annotations">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/annotations/class-use/InterfaceStability.html" target="_top">Frames</a></li>
+<li><a href="InterfaceStability.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.annotations.InterfaceStability" class="title">Uses of Class<br>org.apache.kudu.annotations.InterfaceStability</h2>
+</div>
+<div class="classUseContainer">No usage of org.apache.kudu.annotations.InterfaceStability</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/annotations/InterfaceStability.html" title="class in org.apache.kudu.annotations">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/annotations/class-use/InterfaceStability.html" target="_top">Frames</a></li>
+<li><a href="InterfaceStability.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/annotations/package-frame.html b/releases/1.4.0/apidocs/org/apache/kudu/annotations/package-frame.html
new file mode 100644
index 0000000..1e2f0e6
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/annotations/package-frame.html
@@ -0,0 +1,21 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>org.apache.kudu.annotations (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<h1 class="bar"><a href="../../../../org/apache/kudu/annotations/package-summary.html" target="classFrame">org.apache.kudu.annotations</a></h1>
+<div class="indexContainer">
+<h2 title="Classes">Classes</h2>
+<ul title="Classes">
+<li><a href="InterfaceAudience.html" title="class in org.apache.kudu.annotations" target="classFrame">InterfaceAudience</a></li>
+<li><a href="InterfaceStability.html" title="class in org.apache.kudu.annotations" target="classFrame">InterfaceStability</a></li>
+</ul>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/annotations/package-summary.html b/releases/1.4.0/apidocs/org/apache/kudu/annotations/package-summary.html
new file mode 100644
index 0000000..9be5c5d
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/annotations/package-summary.html
@@ -0,0 +1,152 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>org.apache.kudu.annotations (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="org.apache.kudu.annotations (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li class="navBarCell1Rev">Package</li>
+<li>Class</li>
+<li><a href="package-use.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/package-summary.html">Prev&nbsp;Package</a></li>
+<li><a href="../../../../org/apache/kudu/client/package-summary.html">Next&nbsp;Package</a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/annotations/package-summary.html" target="_top">Frames</a></li>
+<li><a href="package-summary.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h1 title="Package" class="title">Package&nbsp;org.apache.kudu.annotations</h1>
+</div>
+<div class="contentContainer">
+<ul class="blockList">
+<li class="blockList">
+<table class="typeSummary" border="0" cellpadding="3" cellspacing="0" summary="Class Summary table, listing classes, and an explanation">
+<caption><span>Class Summary</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Class</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="../../../../org/apache/kudu/annotations/InterfaceAudience.html" title="class in org.apache.kudu.annotations">InterfaceAudience</a></td>
+<td class="colLast">
+<div class="block">Annotation to inform users of a package, class or method's intended audience.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a href="../../../../org/apache/kudu/annotations/InterfaceStability.html" title="class in org.apache.kudu.annotations">InterfaceStability</a></td>
+<td class="colLast">
+<div class="block">Annotation to inform users of how much to rely on a particular package,
+ class or method not changing over time.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li class="navBarCell1Rev">Package</li>
+<li>Class</li>
+<li><a href="package-use.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/package-summary.html">Prev&nbsp;Package</a></li>
+<li><a href="../../../../org/apache/kudu/client/package-summary.html">Next&nbsp;Package</a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/annotations/package-summary.html" target="_top">Frames</a></li>
+<li><a href="package-summary.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/annotations/package-tree.html b/releases/1.4.0/apidocs/org/apache/kudu/annotations/package-tree.html
new file mode 100644
index 0000000..464d8b1
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/annotations/package-tree.html
@@ -0,0 +1,139 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>org.apache.kudu.annotations Class Hierarchy (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="org.apache.kudu.annotations Class Hierarchy (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li>Class</li>
+<li>Use</li>
+<li class="navBarCell1Rev">Tree</li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/package-tree.html">Prev</a></li>
+<li><a href="../../../../org/apache/kudu/client/package-tree.html">Next</a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/annotations/package-tree.html" target="_top">Frames</a></li>
+<li><a href="package-tree.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h1 class="title">Hierarchy For Package org.apache.kudu.annotations</h1>
+<span class="packageHierarchyLabel">Package Hierarchies:</span>
+<ul class="horizontal">
+<li><a href="../../../../overview-tree.html">All Packages</a></li>
+</ul>
+</div>
+<div class="contentContainer">
+<h2 title="Class Hierarchy">Class Hierarchy</h2>
+<ul>
+<li type="circle">java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Object</span></a>
+<ul>
+<li type="circle">org.apache.kudu.annotations.<a href="../../../../org/apache/kudu/annotations/InterfaceAudience.html" title="class in org.apache.kudu.annotations"><span class="typeNameLink">InterfaceAudience</span></a></li>
+<li type="circle">org.apache.kudu.annotations.<a href="../../../../org/apache/kudu/annotations/InterfaceStability.html" title="class in org.apache.kudu.annotations"><span class="typeNameLink">InterfaceStability</span></a></li>
+</ul>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li>Class</li>
+<li>Use</li>
+<li class="navBarCell1Rev">Tree</li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/package-tree.html">Prev</a></li>
+<li><a href="../../../../org/apache/kudu/client/package-tree.html">Next</a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/annotations/package-tree.html" target="_top">Frames</a></li>
+<li><a href="package-tree.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/annotations/package-use.html b/releases/1.4.0/apidocs/org/apache/kudu/annotations/package-use.html
new file mode 100644
index 0000000..ac696ca
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/annotations/package-use.html
@@ -0,0 +1,125 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Package org.apache.kudu.annotations (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Package org.apache.kudu.annotations (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li>Class</li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/annotations/package-use.html" target="_top">Frames</a></li>
+<li><a href="package-use.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h1 title="Uses of Package org.apache.kudu.annotations" class="title">Uses of Package<br>org.apache.kudu.annotations</h1>
+</div>
+<div class="contentContainer">No usage of org.apache.kudu.annotations</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li>Class</li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/annotations/package-use.html" target="_top">Frames</a></li>
+<li><a href="package-use.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/class-use/ColumnSchema.html b/releases/1.4.0/apidocs/org/apache/kudu/class-use/ColumnSchema.html
new file mode 100644
index 0000000..cd646d4
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/class-use/ColumnSchema.html
@@ -0,0 +1,334 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.ColumnSchema (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.ColumnSchema (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/class-use/ColumnSchema.html" target="_top">Frames</a></li>
+<li><a href="ColumnSchema.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.ColumnSchema" class="title">Uses of Class<br>org.apache.kudu.ColumnSchema</h2>
+</div>
+<div class="classUseContainer">
+<ul class="blockList">
+<li class="blockList">
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing packages, and an explanation">
+<caption><span>Packages that use <a href="../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Package</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="#org.apache.kudu">org.apache.kudu</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a href="#org.apache.kudu.client">org.apache.kudu.client</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList">
+<ul class="blockList">
+<li class="blockList"><a name="org.apache.kudu">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a> in <a href="../../../../org/apache/kudu/package-summary.html">org.apache.kudu</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../org/apache/kudu/package-summary.html">org.apache.kudu</a> that return <a href="../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Schema.</span><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/Schema.html#getColumn-java.lang.String-">getColumn</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</code>
+<div class="block">Get the column associated with the specified name</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Schema.</span><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/Schema.html#getColumnByIndex-int-">getColumnByIndex</a></span>(int&nbsp;idx)</code>
+<div class="block">Get the column at the specified index in the original list</div>
+</td>
+</tr>
+</tbody>
+</table>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../org/apache/kudu/package-summary.html">org.apache.kudu</a> that return types with arguments of type <a href="../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">Schema.</span><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/Schema.html#getColumns--">getColumns</a></span>()</code>
+<div class="block">Get the list of columns used to create this schema</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">Schema.</span><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/Schema.html#getPrimaryKeyColumns--">getPrimaryKeyColumns</a></span>()</code>
+<div class="block">Get the primary key columns.</div>
+</td>
+</tr>
+</tbody>
+</table>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing constructors, and an explanation">
+<caption><span>Constructor parameters in <a href="../../../../org/apache/kudu/package-summary.html">org.apache.kudu</a> with type arguments of type <a href="../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colOne" scope="col">Constructor and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/Schema.html#Schema-java.util.List-">Schema</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a>&gt;&nbsp;columns)</code>
+<div class="block">Constructs a schema using the specified columns and does some internal accounting</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/Schema.html#Schema-java.util.List-java.util.List-">Schema</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a>&gt;&nbsp;columns,
+      <a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a>&gt;&nbsp;columnIds)</code>
+<div class="block">Constructs a schema using the specified columns and IDs.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList"><a name="org.apache.kudu.client">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a> in <a href="../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> that return <a href="../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ColumnRangePredicate.</span><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/ColumnRangePredicate.html#getColumn--">getColumn</a></span>()</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+<div class="block">Get the column used by this predicate</div>
+</td>
+</tr>
+</tbody>
+</table>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> with parameters of type <a href="../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AlterTableOptions.</span><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AlterTableOptions.html#addColumn-org.apache.kudu.ColumnSchema-">addColumn</a></span>(<a href="../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a>&nbsp;colSchema)</code>
+<div class="block">Add a new column.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduPredicate.</span><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduPredicate.html#newComparisonPredicate-org.apache.kudu.ColumnSchema-org.apache.kudu.client.KuduPredicate.ComparisonOp-boolean-">newComparisonPredicate</a></span>(<a href="../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a>&nbsp;column,
+                      <a href="../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html" title="enum in org.apache.kudu.client">KuduPredicate.ComparisonOp</a>&nbsp;op,
+                      boolean&nbsp;value)</code>
+<div class="block">Creates a new <code>KuduPredicate</code> on a boolean column.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduPredicate.</span><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduPredicate.html#newComparisonPredicate-org.apache.kudu.ColumnSchema-org.apache.kudu.client.KuduPredicate.ComparisonOp-byte:A-">newComparisonPredicate</a></span>(<a href="../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a>&nbsp;column,
+                      <a href="../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html" title="enum in org.apache.kudu.client">KuduPredicate.ComparisonOp</a>&nbsp;op,
+                      byte[]&nbsp;value)</code>
+<div class="block">Creates a new comparison predicate on a binary column.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduPredicate.</span><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduPredicate.html#newComparisonPredicate-org.apache.kudu.ColumnSchema-org.apache.kudu.client.KuduPredicate.ComparisonOp-double-">newComparisonPredicate</a></span>(<a href="../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a>&nbsp;column,
+                      <a href="../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html" title="enum in org.apache.kudu.client">KuduPredicate.ComparisonOp</a>&nbsp;op,
+                      double&nbsp;value)</code>
+<div class="block">Creates a new comparison predicate on a double column.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduPredicate.</span><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduPredicate.html#newComparisonPredicate-org.apache.kudu.ColumnSchema-org.apache.kudu.client.KuduPredicate.ComparisonOp-float-">newComparisonPredicate</a></span>(<a href="../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a>&nbsp;column,
+                      <a href="../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html" title="enum in org.apache.kudu.client">KuduPredicate.ComparisonOp</a>&nbsp;op,
+                      float&nbsp;value)</code>
+<div class="block">Creates a new comparison predicate on a float column.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduPredicate.</span><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduPredicate.html#newComparisonPredicate-org.apache.kudu.ColumnSchema-org.apache.kudu.client.KuduPredicate.ComparisonOp-long-">newComparisonPredicate</a></span>(<a href="../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a>&nbsp;column,
+                      <a href="../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html" title="enum in org.apache.kudu.client">KuduPredicate.ComparisonOp</a>&nbsp;op,
+                      long&nbsp;value)</code>
+<div class="block">Creates a new comparison predicate on an integer or timestamp column.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduPredicate.</span><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduPredicate.html#newComparisonPredicate-org.apache.kudu.ColumnSchema-org.apache.kudu.client.KuduPredicate.ComparisonOp-java.lang.String-">newComparisonPredicate</a></span>(<a href="../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a>&nbsp;column,
+                      <a href="../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html" title="enum in org.apache.kudu.client">KuduPredicate.ComparisonOp</a>&nbsp;op,
+                      <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;value)</code>
+<div class="block">Creates a new comparison predicate on a string column.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static &lt;T&gt;&nbsp;<a href="../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduPredicate.</span><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduPredicate.html#newInListPredicate-org.apache.kudu.ColumnSchema-java.util.List-">newInListPredicate</a></span>(<a href="../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a>&nbsp;column,
+                  <a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;T&gt;&nbsp;values)</code>
+<div class="block">Creates a new IN list predicate.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduPredicate.</span><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduPredicate.html#newIsNotNullPredicate-org.apache.kudu.ColumnSchema-">newIsNotNullPredicate</a></span>(<a href="../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a>&nbsp;column)</code>
+<div class="block">Creates a new <code>IS NOT NULL</code> predicate.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduPredicate.</span><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduPredicate.html#newIsNullPredicate-org.apache.kudu.ColumnSchema-">newIsNullPredicate</a></span>(<a href="../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a>&nbsp;column)</code>
+<div class="block">Creates a new <code>IS NULL</code> predicate.</div>
+</td>
+</tr>
+</tbody>
+</table>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing constructors, and an explanation">
+<caption><span>Constructors in <a href="../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> with parameters of type <a href="../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colOne" scope="col">Constructor and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/ColumnRangePredicate.html#ColumnRangePredicate-org.apache.kudu.ColumnSchema-">ColumnRangePredicate</a></span>(<a href="../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a>&nbsp;column)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+<div class="block">Create the predicate on the specified column</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/class-use/ColumnSchema.html" target="_top">Frames</a></li>
+<li><a href="ColumnSchema.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/class-use/Schema.html b/releases/1.4.0/apidocs/org/apache/kudu/class-use/Schema.html
new file mode 100644
index 0000000..e28befc
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/class-use/Schema.html
@@ -0,0 +1,303 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.Schema (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.Schema (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/class-use/Schema.html" target="_top">Frames</a></li>
+<li><a href="Schema.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.Schema" class="title">Uses of Class<br>org.apache.kudu.Schema</h2>
+</div>
+<div class="classUseContainer">
+<ul class="blockList">
+<li class="blockList">
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing packages, and an explanation">
+<caption><span>Packages that use <a href="../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Package</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="#org.apache.kudu">org.apache.kudu</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a href="#org.apache.kudu.client">org.apache.kudu.client</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a href="#org.apache.kudu.mapreduce.tools">org.apache.kudu.mapreduce.tools</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList">
+<ul class="blockList">
+<li class="blockList"><a name="org.apache.kudu">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a> in <a href="../../../../org/apache/kudu/package-summary.html">org.apache.kudu</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../org/apache/kudu/package-summary.html">org.apache.kudu</a> that return <a href="../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Schema.</span><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/Schema.html#getRowKeyProjection--">getRowKeyProjection</a></span>()</code>
+<div class="block">Get a schema that only contains the columns which are part of the key</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList"><a name="org.apache.kudu.client">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a> in <a href="../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> that return <a href="../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RowResult.</span><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/RowResult.html#getColumnProjection--">getColumnProjection</a></span>()</code>
+<div class="block">Get the schema used for this scanner's column projection.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduScanner.</span><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduScanner.html#getProjectionSchema--">getProjectionSchema</a></span>()</code>
+<div class="block">Returns the projection schema of this scanner.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncKuduScanner.</span><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduScanner.html#getProjectionSchema--">getProjectionSchema</a></span>()</code>
+<div class="block">Returns the projection schema of this scanner.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RowResult.</span><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/RowResult.html#getSchema--">getSchema</a></span>()</code>
+<div class="block">Get the schema associated with this result.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduTable.</span><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduTable.html#getSchema--">getSchema</a></span>()</code>
+<div class="block">Get this table's schema, as of the moment this instance was created.</div>
+</td>
+</tr>
+</tbody>
+</table>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> with parameters of type <a href="../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduClient.</span><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduClient.html#createTable-java.lang.String-org.apache.kudu.Schema-org.apache.kudu.client.CreateTableOptions-">createTable</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
+           <a href="../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a>&nbsp;schema,
+           <a href="../../../../org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client">CreateTableOptions</a>&nbsp;builder)</code>
+<div class="block">Create a table on the cluster with the specified name, schema, and table configurations.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>com.stumbleupon.async.Deferred&lt;<a href="../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncKuduClient.</span><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduClient.html#createTable-java.lang.String-org.apache.kudu.Schema-org.apache.kudu.client.CreateTableOptions-">createTable</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
+           <a href="../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a>&nbsp;schema,
+           <a href="../../../../org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client">CreateTableOptions</a>&nbsp;builder)</code>
+<div class="block">Create a table on the cluster with the specified name, schema, and table configurations.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduPredicate.</span><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduPredicate.html#fromPB-org.apache.kudu.Schema-org.apache.kudu.Common.ColumnPredicatePB-">fromPB</a></span>(<a href="../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a>&nbsp;schema,
+      org.apache.kudu.Common.ColumnPredicatePB&nbsp;pb)</code>
+<div class="block">Convert a column predicate protobuf message into a predicate.</div>
+</td>
+</tr>
+</tbody>
+</table>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing constructors, and an explanation">
+<caption><span>Constructors in <a href="../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> with parameters of type <a href="../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colOne" scope="col">Constructor and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#PartialRow-org.apache.kudu.Schema-">PartialRow</a></span>(<a href="../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a>&nbsp;schema)</code>
+<div class="block">This is not a stable API, prefer using <a href="../../../../org/apache/kudu/Schema.html#newPartialRow--"><code>newPartialRow()</code></a>
+ to create a new partial row.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList"><a name="org.apache.kudu.mapreduce.tools">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a> in <a href="../../../../org/apache/kudu/mapreduce/tools/package-summary.html">org.apache.kudu.mapreduce.tools</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../org/apache/kudu/mapreduce/tools/package-summary.html">org.apache.kudu.mapreduce.tools</a> that return <a href="../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a></code></td>
+<td class="colLast"><span class="typeNameLabel">BigLinkedListCommon.</span><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#getHeadsTableSchema--">getHeadsTableSchema</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a></code></td>
+<td class="colLast"><span class="typeNameLabel">BigLinkedListCommon.</span><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#getTableSchema--">getTableSchema</a></span>()</code>&nbsp;</td>
+</tr>
+</tbody>
+</table>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../org/apache/kudu/mapreduce/tools/package-summary.html">org.apache.kudu.mapreduce.tools</a> with parameters of type <a href="../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client">CreateTableOptions</a></code></td>
+<td class="colLast"><span class="typeNameLabel">BigLinkedListCommon.</span><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#getCreateTableOptions-org.apache.kudu.Schema-int-int-int-">getCreateTableOptions</a></span>(<a href="../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a>&nbsp;schema,
+                     int&nbsp;numReplicas,
+                     int&nbsp;rangePartitions,
+                     int&nbsp;hashPartitions)</code>&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/class-use/Schema.html" target="_top">Frames</a></li>
+<li><a href="Schema.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/class-use/Type.html b/releases/1.4.0/apidocs/org/apache/kudu/class-use/Type.html
new file mode 100644
index 0000000..5b54ead
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/class-use/Type.html
@@ -0,0 +1,248 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.Type (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.Type (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../org/apache/kudu/Type.html" title="enum in org.apache.kudu">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/class-use/Type.html" target="_top">Frames</a></li>
+<li><a href="Type.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.Type" class="title">Uses of Class<br>org.apache.kudu.Type</h2>
+</div>
+<div class="classUseContainer">
+<ul class="blockList">
+<li class="blockList">
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing packages, and an explanation">
+<caption><span>Packages that use <a href="../../../../org/apache/kudu/Type.html" title="enum in org.apache.kudu">Type</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Package</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="#org.apache.kudu">org.apache.kudu</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a href="#org.apache.kudu.client">org.apache.kudu.client</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList">
+<ul class="blockList">
+<li class="blockList"><a name="org.apache.kudu">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../org/apache/kudu/Type.html" title="enum in org.apache.kudu">Type</a> in <a href="../../../../org/apache/kudu/package-summary.html">org.apache.kudu</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../org/apache/kudu/package-summary.html">org.apache.kudu</a> that return <a href="../../../../org/apache/kudu/Type.html" title="enum in org.apache.kudu">Type</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/Type.html" title="enum in org.apache.kudu">Type</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ColumnSchema.</span><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/ColumnSchema.html#getType--">getType</a></span>()</code>
+<div class="block">Get the column's Type</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/Type.html" title="enum in org.apache.kudu">Type</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Type.</span><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/Type.html#getTypeForDataType-org.apache.kudu.Common.DataType-">getTypeForDataType</a></span>(org.apache.kudu.Common.DataType&nbsp;type)</code>
+<div class="block">Convert the pb DataType to a Type</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/Type.html" title="enum in org.apache.kudu">Type</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Type.</span><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/Type.html#valueOf-java.lang.String-">valueOf</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
+<div class="block">Returns the enum constant of this type with the specified name.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/Type.html" title="enum in org.apache.kudu">Type</a>[]</code></td>
+<td class="colLast"><span class="typeNameLabel">Type.</span><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/Type.html#values--">values</a></span>()</code>
+<div class="block">Returns an array containing the constants of this enum type, in
+the order they are declared.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList"><a name="org.apache.kudu.client">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../org/apache/kudu/Type.html" title="enum in org.apache.kudu">Type</a> in <a href="../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> that return <a href="../../../../org/apache/kudu/Type.html" title="enum in org.apache.kudu">Type</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/Type.html" title="enum in org.apache.kudu">Type</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RowResult.</span><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/RowResult.html#getColumnType-int-">getColumnType</a></span>(int&nbsp;columnIndex)</code>
+<div class="block">Get the type of a column in this result.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/Type.html" title="enum in org.apache.kudu">Type</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RowResult.</span><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/RowResult.html#getColumnType-java.lang.String-">getColumnType</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</code>
+<div class="block">Get the type of a column in this result.</div>
+</td>
+</tr>
+</tbody>
+</table>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> with parameters of type <a href="../../../../org/apache/kudu/Type.html" title="enum in org.apache.kudu">Type</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AlterTableOptions.</span><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AlterTableOptions.html#addColumn-java.lang.String-org.apache.kudu.Type-java.lang.Object-">addColumn</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
+         <a href="../../../../org/apache/kudu/Type.html" title="enum in org.apache.kudu">Type</a>&nbsp;type,
+         <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;defaultVal)</code>
+<div class="block">Add a new column that's not nullable.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AlterTableOptions.</span><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AlterTableOptions.html#addNullableColumn-java.lang.String-org.apache.kudu.Type-">addNullableColumn</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
+                 <a href="../../../../org/apache/kudu/Type.html" title="enum in org.apache.kudu">Type</a>&nbsp;type)</code>
+<div class="block">Add a new column that's nullable and has no default value.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AlterTableOptions.</span><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AlterTableOptions.html#addNullableColumn-java.lang.String-org.apache.kudu.Type-java.lang.Object-">addNullableColumn</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
+                 <a href="../../../../org/apache/kudu/Type.html" title="enum in org.apache.kudu">Type</a>&nbsp;type,
+                 <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;defaultVal)</code>
+<div class="block">Add a new column that's nullable.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../org/apache/kudu/Type.html" title="enum in org.apache.kudu">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/class-use/Type.html" target="_top">Frames</a></li>
+<li><a href="Type.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/AbstractKuduScannerBuilder.html b/releases/1.4.0/apidocs/org/apache/kudu/client/AbstractKuduScannerBuilder.html
new file mode 100644
index 0000000..f24245c
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/AbstractKuduScannerBuilder.html
@@ -0,0 +1,692 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>AbstractKuduScannerBuilder (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="AbstractKuduScannerBuilder (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":42,"i1":42,"i2":10,"i3":10,"i4":6,"i5":10,"i6":10,"i7":42,"i8":10,"i9":10,"i10":42,"i11":10,"i12":10,"i13":10,"i14":10,"i15":10,"i16":10,"i17":10,"i18":10};
+var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"],8:["t4","Concrete Methods"],32:["t6","Deprecated Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/AbstractKuduScannerBuilder.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev&nbsp;Class</li>
+<li><a href="../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/AbstractKuduScannerBuilder.html" target="_top">Frames</a></li>
+<li><a href="AbstractKuduScannerBuilder.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.client</div>
+<h2 title="Class AbstractKuduScannerBuilder" class="title">Class AbstractKuduScannerBuilder&lt;S extends AbstractKuduScannerBuilder&lt;? super S,T&gt;,T&gt;</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.client.AbstractKuduScannerBuilder&lt;S,T&gt;</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<dl>
+<dt>Direct Known Subclasses:</dt>
+<dd><a href="../../../../org/apache/kudu/client/AsyncKuduScanner.AsyncKuduScannerBuilder.html" title="class in org.apache.kudu.client">AsyncKuduScanner.AsyncKuduScannerBuilder</a>, <a href="../../../../org/apache/kudu/client/KuduScanner.KuduScannerBuilder.html" title="class in org.apache.kudu.client">KuduScanner.KuduScannerBuilder</a>, <a href="../../../../org/apache/kudu/client/KuduScanToken.KuduScanTokenBuilder.html" title="class in org.apache.kudu.client">KuduScanToken.KuduScanTokenBuilder</a></dd>
+</dl>
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Evolving
+public abstract class <span class="typeNameLabel">AbstractKuduScannerBuilder&lt;S extends AbstractKuduScannerBuilder&lt;? super S,T&gt;,T&gt;</span>
+extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></pre>
+<div class="block">Abstract class to extend in order to create builders for scanners.</div>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t6" class="tableTab"><span><a href="javascript:show(32);">Deprecated Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="type parameter in AbstractKuduScannerBuilder">S</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#addColumnRangePredicate-org.apache.kudu.client.ColumnRangePredicate-">addColumnRangePredicate</a></span>(<a href="../../../../org/apache/kudu/client/ColumnRangePredicate.html" title="class in org.apache.kudu.client">ColumnRangePredicate</a>&nbsp;predicate)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;
+<div class="block"><span class="deprecationComment">use <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#addPredicate-org.apache.kudu.client.KuduPredicate-"><code>addPredicate(KuduPredicate)</code></a></span></div>
+</div>
+</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="type parameter in AbstractKuduScannerBuilder">S</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#addColumnRangePredicatesRaw-byte:A-">addColumnRangePredicatesRaw</a></span>(byte[]&nbsp;predicateBytes)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;
+<div class="block"><span class="deprecationComment">use <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#addPredicate-org.apache.kudu.client.KuduPredicate-"><code>addPredicate(org.apache.kudu.client.KuduPredicate)</code></a></span></div>
+</div>
+</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="type parameter in AbstractKuduScannerBuilder">S</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#addPredicate-org.apache.kudu.client.KuduPredicate-">addPredicate</a></span>(<a href="../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a>&nbsp;predicate)</code>
+<div class="block">Adds a predicate to the scan.</div>
+</td>
+</tr>
+<tr id="i3" class="rowColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="type parameter in AbstractKuduScannerBuilder">S</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#batchSizeBytes-int-">batchSizeBytes</a></span>(int&nbsp;batchSizeBytes)</code>
+<div class="block">Sets the maximum number of bytes returned by the scanner, on each batch.</div>
+</td>
+</tr>
+<tr id="i4" class="altColor">
+<td class="colFirst"><code>abstract <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="type parameter in AbstractKuduScannerBuilder">T</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#build--">build</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i5" class="rowColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="type parameter in AbstractKuduScannerBuilder">S</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#cacheBlocks-boolean-">cacheBlocks</a></span>(boolean&nbsp;cacheBlocks)</code>
+<div class="block">Sets the block caching policy for the scanner.</div>
+</td>
+</tr>
+<tr id="i6" class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="type parameter in AbstractKuduScannerBuilder">S</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#exclusiveUpperBound-org.apache.kudu.client.PartialRow-">exclusiveUpperBound</a></span>(<a href="../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;partialRow)</code>
+<div class="block">Add an upper bound (exclusive) primary key for the scan.</div>
+</td>
+</tr>
+<tr id="i7" class="rowColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="type parameter in AbstractKuduScannerBuilder">S</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#exclusiveUpperBoundRaw-byte:A-">exclusiveUpperBoundRaw</a></span>(byte[]&nbsp;endPrimaryKey)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;
+<div class="block"><span class="deprecationComment">use <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#exclusiveUpperBound-org.apache.kudu.client.PartialRow-"><code>exclusiveUpperBound(PartialRow)</code></a></span></div>
+</div>
+</td>
+</tr>
+<tr id="i8" class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="type parameter in AbstractKuduScannerBuilder">S</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#limit-long-">limit</a></span>(long&nbsp;limit)</code>
+<div class="block">Sets a limit on the number of rows that will be returned by the scanner.</div>
+</td>
+</tr>
+<tr id="i9" class="rowColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="type parameter in AbstractKuduScannerBuilder">S</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#lowerBound-org.apache.kudu.client.PartialRow-">lowerBound</a></span>(<a href="../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;partialRow)</code>
+<div class="block">Add a lower bound (inclusive) primary key for the scan.</div>
+</td>
+</tr>
+<tr id="i10" class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="type parameter in AbstractKuduScannerBuilder">S</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#lowerBoundRaw-byte:A-">lowerBoundRaw</a></span>(byte[]&nbsp;startPrimaryKey)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;
+<div class="block"><span class="deprecationComment">use <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#lowerBound-org.apache.kudu.client.PartialRow-"><code>lowerBound(PartialRow)</code></a></span></div>
+</div>
+</td>
+</tr>
+<tr id="i11" class="rowColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="type parameter in AbstractKuduScannerBuilder">S</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#prefetching-boolean-">prefetching</a></span>(boolean&nbsp;prefetching)</code>
+<div class="block">Enables prefetching of rows for the scanner, i.e.</div>
+</td>
+</tr>
+<tr id="i12" class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="type parameter in AbstractKuduScannerBuilder">S</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#readMode-org.apache.kudu.client.AsyncKuduScanner.ReadMode-">readMode</a></span>(<a href="../../../../org/apache/kudu/client/AsyncKuduScanner.ReadMode.html" title="enum in org.apache.kudu.client">AsyncKuduScanner.ReadMode</a>&nbsp;readMode)</code>
+<div class="block">Sets the read mode, the default is to read the latest values.</div>
+</td>
+</tr>
+<tr id="i13" class="rowColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="type parameter in AbstractKuduScannerBuilder">S</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#replicaSelection-org.apache.kudu.client.ReplicaSelection-">replicaSelection</a></span>(<a href="../../../../org/apache/kudu/client/ReplicaSelection.html" title="enum in org.apache.kudu.client">ReplicaSelection</a>&nbsp;replicaSelection)</code>
+<div class="block">Sets the replica selection mechanism for this scanner.</div>
+</td>
+</tr>
+<tr id="i14" class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="type parameter in AbstractKuduScannerBuilder">S</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#scanRequestTimeout-long-">scanRequestTimeout</a></span>(long&nbsp;scanRequestTimeout)</code>
+<div class="block">Sets how long each scan request to a server can last.</div>
+</td>
+</tr>
+<tr id="i15" class="rowColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="type parameter in AbstractKuduScannerBuilder">S</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#setFaultTolerant-boolean-">setFaultTolerant</a></span>(boolean&nbsp;isFaultTolerant)</code>
+<div class="block">Make scans resumable at another tablet server if current server fails if
+ isFaultTolerant is true.</div>
+</td>
+</tr>
+<tr id="i16" class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="type parameter in AbstractKuduScannerBuilder">S</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#setProjectedColumnIndexes-java.util.List-">setProjectedColumnIndexes</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a>&gt;&nbsp;columnIndexes)</code>
+<div class="block">Set which columns will be read by the Scanner.</div>
+</td>
+</tr>
+<tr id="i17" class="rowColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="type parameter in AbstractKuduScannerBuilder">S</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#setProjectedColumnNames-java.util.List-">setProjectedColumnNames</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;columnNames)</code>
+<div class="block">Set which columns will be read by the Scanner.</div>
+</td>
+</tr>
+<tr id="i18" class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="type parameter in AbstractKuduScannerBuilder">S</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#snapshotTimestampMicros-long-">snapshotTimestampMicros</a></span>(long&nbsp;timestamp)</code>
+<div class="block">Sets the timestamp the scan must be executed at, in microseconds since the Unix epoch.</div>
+</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="readMode-org.apache.kudu.client.AsyncKuduScanner.ReadMode-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>readMode</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="type parameter in AbstractKuduScannerBuilder">S</a>&nbsp;readMode(<a href="../../../../org/apache/kudu/client/AsyncKuduScanner.ReadMode.html" title="enum in org.apache.kudu.client">AsyncKuduScanner.ReadMode</a>&nbsp;readMode)</pre>
+<div class="block">Sets the read mode, the default is to read the latest values.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>readMode</code> - a read mode for the scanner</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>this instance</dd>
+</dl>
+</li>
+</ul>
+<a name="setFaultTolerant-boolean-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setFaultTolerant</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="type parameter in AbstractKuduScannerBuilder">S</a>&nbsp;setFaultTolerant(boolean&nbsp;isFaultTolerant)</pre>
+<div class="block">Make scans resumable at another tablet server if current server fails if
+ isFaultTolerant is true.
+ <p>
+ Scans are by default non fault-tolerant, and scans will fail
+ if scanning an individual tablet fails (for example, if a tablet server
+ crashes in the middle of a tablet scan). If isFaultTolerant is set to true,
+ scans will be resumed at another tablet server in the case of failure.
+
+ Fault-tolerant scans typically have lower throughput than non
+ fault-tolerant scans. Fault tolerant scans use READ_AT_SNAPSHOT read mode.
+ If no snapshot timestamp is provided, the server will pick one.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>isFaultTolerant</code> - a boolean that indicates if scan is fault-tolerant</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>this instance</dd>
+</dl>
+</li>
+</ul>
+<a name="addColumnRangePredicate-org.apache.kudu.client.ColumnRangePredicate-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>addColumnRangePredicate</h4>
+<pre><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang">@Deprecated</a>
+public&nbsp;<a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="type parameter in AbstractKuduScannerBuilder">S</a>&nbsp;addColumnRangePredicate(<a href="../../../../org/apache/kudu/client/ColumnRangePredicate.html" title="class in org.apache.kudu.client">ColumnRangePredicate</a>&nbsp;predicate)</pre>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;<span class="deprecationComment">use <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#addPredicate-org.apache.kudu.client.KuduPredicate-"><code>addPredicate(KuduPredicate)</code></a></span></div>
+<div class="block">Adds a predicate for a column.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>predicate</code> - predicate for a column to add</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>this instance</dd>
+</dl>
+</li>
+</ul>
+<a name="addColumnRangePredicatesRaw-byte:A-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>addColumnRangePredicatesRaw</h4>
+<pre><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang">@Deprecated</a>
+public&nbsp;<a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="type parameter in AbstractKuduScannerBuilder">S</a>&nbsp;addColumnRangePredicatesRaw(byte[]&nbsp;predicateBytes)</pre>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;<span class="deprecationComment">use <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#addPredicate-org.apache.kudu.client.KuduPredicate-"><code>addPredicate(org.apache.kudu.client.KuduPredicate)</code></a></span></div>
+<div class="block">Adds a list of predicates in their raw format,
+ as given by <a href="../../../../org/apache/kudu/client/ColumnRangePredicate.html#toByteArray-java.util.List-"><code>ColumnRangePredicate.toByteArray(List)</code></a>.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>predicateBytes</code> - predicates to add</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>this instance</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - thrown when the passed bytes aren't valid</dd>
+</dl>
+</li>
+</ul>
+<a name="addPredicate-org.apache.kudu.client.KuduPredicate-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>addPredicate</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="type parameter in AbstractKuduScannerBuilder">S</a>&nbsp;addPredicate(<a href="../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a>&nbsp;predicate)</pre>
+<div class="block">Adds a predicate to the scan.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>predicate</code> - predicate to add</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>this instance</dd>
+</dl>
+</li>
+</ul>
+<a name="setProjectedColumnNames-java.util.List-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setProjectedColumnNames</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="type parameter in AbstractKuduScannerBuilder">S</a>&nbsp;setProjectedColumnNames(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;columnNames)</pre>
+<div class="block">Set which columns will be read by the Scanner.
+ Calling this method after <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#setProjectedColumnIndexes-java.util.List-"><code>setProjectedColumnIndexes(List)</code></a> will reset the projected
+ columns to those specified in <code>columnNames</code>.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnNames</code> - the names of columns to read, or 'null' to read all columns
+ (the default)</dd>
+</dl>
+</li>
+</ul>
+<a name="setProjectedColumnIndexes-java.util.List-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setProjectedColumnIndexes</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="type parameter in AbstractKuduScannerBuilder">S</a>&nbsp;setProjectedColumnIndexes(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a>&gt;&nbsp;columnIndexes)</pre>
+<div class="block">Set which columns will be read by the Scanner.
+ Calling this method after <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#setProjectedColumnNames-java.util.List-"><code>setProjectedColumnNames(List)</code></a> will reset the projected
+ columns to those specified in <code>columnIndexes</code>.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnIndexes</code> - the indexes of columns to read, or 'null' to read all columns
+ (the default)</dd>
+</dl>
+</li>
+</ul>
+<a name="batchSizeBytes-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>batchSizeBytes</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="type parameter in AbstractKuduScannerBuilder">S</a>&nbsp;batchSizeBytes(int&nbsp;batchSizeBytes)</pre>
+<div class="block">Sets the maximum number of bytes returned by the scanner, on each batch. The default is 1MB.
+ <p>
+ Kudu may actually return more than this many bytes because it will not
+ truncate a rowResult in the middle.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>batchSizeBytes</code> - a strictly positive number of bytes</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>this instance</dd>
+</dl>
+</li>
+</ul>
+<a name="limit-long-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>limit</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="type parameter in AbstractKuduScannerBuilder">S</a>&nbsp;limit(long&nbsp;limit)</pre>
+<div class="block">Sets a limit on the number of rows that will be returned by the scanner. There's no limit
+ by default.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>limit</code> - a positive long</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>this instance</dd>
+</dl>
+</li>
+</ul>
+<a name="prefetching-boolean-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>prefetching</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="type parameter in AbstractKuduScannerBuilder">S</a>&nbsp;prefetching(boolean&nbsp;prefetching)</pre>
+<div class="block">Enables prefetching of rows for the scanner, i.e. whether to send a request for more data
+ to the server immediately after we receive a response (instead of waiting for the user
+ to call <code>nextRows()</code>). Disabled by default.
+ NOTE: This is risky until KUDU-1260 is resolved.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>prefetching</code> - a boolean that indicates if the scanner should prefetch rows</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>this instance</dd>
+</dl>
+</li>
+</ul>
+<a name="cacheBlocks-boolean-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>cacheBlocks</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="type parameter in AbstractKuduScannerBuilder">S</a>&nbsp;cacheBlocks(boolean&nbsp;cacheBlocks)</pre>
+<div class="block">Sets the block caching policy for the scanner. If true, scanned data blocks will be cached
+ in memory and made available for future scans. Enabled by default.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>cacheBlocks</code> - a boolean that indicates if data blocks should be cached or not</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>this instance</dd>
+</dl>
+</li>
+</ul>
+<a name="snapshotTimestampMicros-long-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>snapshotTimestampMicros</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="type parameter in AbstractKuduScannerBuilder">S</a>&nbsp;snapshotTimestampMicros(long&nbsp;timestamp)</pre>
+<div class="block">Sets the timestamp the scan must be executed at, in microseconds since the Unix epoch. None is
+ used by default.
+ Requires that the ReadMode is READ_AT_SNAPSHOT.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>timestamp</code> - a long representing an instant in microseconds since the unix epoch.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>this instance</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - on build(), if the timestamp is less than 0 or if the
+                                  read mode was not set to READ_AT_SNAPSHOT</dd>
+</dl>
+</li>
+</ul>
+<a name="scanRequestTimeout-long-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>scanRequestTimeout</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="type parameter in AbstractKuduScannerBuilder">S</a>&nbsp;scanRequestTimeout(long&nbsp;scanRequestTimeout)</pre>
+<div class="block">Sets how long each scan request to a server can last.
+ Defaults to <a href="../../../../org/apache/kudu/client/KuduClient.html#getDefaultOperationTimeoutMs--"><code>KuduClient.getDefaultOperationTimeoutMs()</code></a>.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>scanRequestTimeout</code> - a long representing time in milliseconds</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>this instance</dd>
+</dl>
+</li>
+</ul>
+<a name="lowerBound-org.apache.kudu.client.PartialRow-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>lowerBound</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="type parameter in AbstractKuduScannerBuilder">S</a>&nbsp;lowerBound(<a href="../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;partialRow)</pre>
+<div class="block">Add a lower bound (inclusive) primary key for the scan.
+ If any bound is already added, this bound is intersected with that one.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>partialRow</code> - a partial row with specified key columns</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>this instance</dd>
+</dl>
+</li>
+</ul>
+<a name="lowerBoundRaw-byte:A-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>lowerBoundRaw</h4>
+<pre><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang">@Deprecated</a>
+public&nbsp;<a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="type parameter in AbstractKuduScannerBuilder">S</a>&nbsp;lowerBoundRaw(byte[]&nbsp;startPrimaryKey)</pre>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;<span class="deprecationComment">use <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#lowerBound-org.apache.kudu.client.PartialRow-"><code>lowerBound(PartialRow)</code></a></span></div>
+<div class="block">Like lowerBoundPrimaryKey() but the encoded primary key is an opaque byte
+ array obtained elsewhere.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>startPrimaryKey</code> - bytes containing an encoded start key</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>this instance</dd>
+</dl>
+</li>
+</ul>
+<a name="exclusiveUpperBound-org.apache.kudu.client.PartialRow-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>exclusiveUpperBound</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="type parameter in AbstractKuduScannerBuilder">S</a>&nbsp;exclusiveUpperBound(<a href="../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;partialRow)</pre>
+<div class="block">Add an upper bound (exclusive) primary key for the scan.
+ If any bound is already added, this bound is intersected with that one.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>partialRow</code> - a partial row with specified key columns</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>this instance</dd>
+</dl>
+</li>
+</ul>
+<a name="exclusiveUpperBoundRaw-byte:A-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>exclusiveUpperBoundRaw</h4>
+<pre><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang">@Deprecated</a>
+public&nbsp;<a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="type parameter in AbstractKuduScannerBuilder">S</a>&nbsp;exclusiveUpperBoundRaw(byte[]&nbsp;endPrimaryKey)</pre>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;<span class="deprecationComment">use <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#exclusiveUpperBound-org.apache.kudu.client.PartialRow-"><code>exclusiveUpperBound(PartialRow)</code></a></span></div>
+<div class="block">Like exclusiveUpperBound() but the encoded primary key is an opaque byte
+ array obtained elsewhere.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>endPrimaryKey</code> - bytes containing an encoded end key</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>this instance</dd>
+</dl>
+</li>
+</ul>
+<a name="replicaSelection-org.apache.kudu.client.ReplicaSelection-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>replicaSelection</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="type parameter in AbstractKuduScannerBuilder">S</a>&nbsp;replicaSelection(<a href="../../../../org/apache/kudu/client/ReplicaSelection.html" title="enum in org.apache.kudu.client">ReplicaSelection</a>&nbsp;replicaSelection)</pre>
+<div class="block">Sets the replica selection mechanism for this scanner. The default is to read from the
+ currently known leader.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>replicaSelection</code> - replication selection mechanism to use</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>this instance</dd>
+</dl>
+</li>
+</ul>
+<a name="build--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>build</h4>
+<pre>public abstract&nbsp;<a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="type parameter in AbstractKuduScannerBuilder">T</a>&nbsp;build()</pre>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/AbstractKuduScannerBuilder.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev&nbsp;Class</li>
+<li><a href="../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/AbstractKuduScannerBuilder.html" target="_top">Frames</a></li>
+<li><a href="AbstractKuduScannerBuilder.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/AlterTableOptions.html b/releases/1.4.0/apidocs/org/apache/kudu/client/AlterTableOptions.html
new file mode 100644
index 0000000..98f59ee
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/AlterTableOptions.html
@@ -0,0 +1,711 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>AlterTableOptions (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="AlterTableOptions (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10,"i15":10};
+var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/AlterTableOptions.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/AlterTableResponse.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/AlterTableOptions.html" target="_top">Frames</a></li>
+<li><a href="AlterTableOptions.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.client</div>
+<h2 title="Class AlterTableOptions" class="title">Class AlterTableOptions</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.client.AlterTableOptions</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Unstable
+public class <span class="typeNameLabel">AlterTableOptions</span>
+extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></pre>
+<div class="block">This builder must be used to alter a table. At least one change must be specified.</div>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="constructor.summary">
+<!--   -->
+</a>
+<h3>Constructor Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
+<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colOne" scope="col">Constructor and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AlterTableOptions.html#AlterTableOptions--">AlterTableOptions</a></span>()</code>&nbsp;</td>
+</tr>
+</table>
+</li>
+</ul>
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AlterTableOptions.html#addColumn-org.apache.kudu.ColumnSchema-">addColumn</a></span>(<a href="../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a>&nbsp;colSchema)</code>
+<div class="block">Add a new column.</div>
+</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AlterTableOptions.html#addColumn-java.lang.String-org.apache.kudu.Type-java.lang.Object-">addColumn</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
+         <a href="../../../../org/apache/kudu/Type.html" title="enum in org.apache.kudu">Type</a>&nbsp;type,
+         <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;defaultVal)</code>
+<div class="block">Add a new column that's not nullable.</div>
+</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AlterTableOptions.html#addNullableColumn-java.lang.String-org.apache.kudu.Type-">addNullableColumn</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
+                 <a href="../../../../org/apache/kudu/Type.html" title="enum in org.apache.kudu">Type</a>&nbsp;type)</code>
+<div class="block">Add a new column that's nullable and has no default value.</div>
+</td>
+</tr>
+<tr id="i3" class="rowColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AlterTableOptions.html#addNullableColumn-java.lang.String-org.apache.kudu.Type-java.lang.Object-">addNullableColumn</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
+                 <a href="../../../../org/apache/kudu/Type.html" title="enum in org.apache.kudu">Type</a>&nbsp;type,
+                 <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;defaultVal)</code>
+<div class="block">Add a new column that's nullable.</div>
+</td>
+</tr>
+<tr id="i4" class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AlterTableOptions.html#addRangePartition-org.apache.kudu.client.PartialRow-org.apache.kudu.client.PartialRow-">addRangePartition</a></span>(<a href="../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;lowerBound,
+                 <a href="../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;upperBound)</code>
+<div class="block">Add a range partition to the table with an inclusive lower bound and an exclusive upper bound.</div>
+</td>
+</tr>
+<tr id="i5" class="rowColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AlterTableOptions.html#addRangePartition-org.apache.kudu.client.PartialRow-org.apache.kudu.client.PartialRow-org.apache.kudu.client.RangePartitionBound-org.apache.kudu.client.RangePartitionBound-">addRangePartition</a></span>(<a href="../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;lowerBound,
+                 <a href="../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;upperBound,
+                 <a href="../../../../org/apache/kudu/client/RangePartitionBound.html" title="enum in org.apache.kudu.client">RangePartitionBound</a>&nbsp;lowerBoundType,
+                 <a href="../../../../org/apache/kudu/client/RangePartitionBound.html" title="enum in org.apache.kudu.client">RangePartitionBound</a>&nbsp;upperBoundType)</code>
+<div class="block">Add a range partition to the table with a lower bound and upper bound.</div>
+</td>
+</tr>
+<tr id="i6" class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AlterTableOptions.html#changeCompressionAlgorithm-java.lang.String-org.apache.kudu.ColumnSchema.CompressionAlgorithm-">changeCompressionAlgorithm</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
+                          org.apache.kudu.ColumnSchema.CompressionAlgorithm&nbsp;ca)</code>
+<div class="block">Change the compression used for a column.</div>
+</td>
+</tr>
+<tr id="i7" class="rowColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AlterTableOptions.html#changeDefault-java.lang.String-java.lang.Object-">changeDefault</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
+             <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;newDefault)</code>
+<div class="block">Change the default value for a column.</div>
+</td>
+</tr>
+<tr id="i8" class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AlterTableOptions.html#changeDesiredBlockSize-java.lang.String-int-">changeDesiredBlockSize</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
+                      int&nbsp;blockSize)</code>
+<div class="block">Change the block size of a column's storage.</div>
+</td>
+</tr>
+<tr id="i9" class="rowColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AlterTableOptions.html#changeEncoding-java.lang.String-org.apache.kudu.ColumnSchema.Encoding-">changeEncoding</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
+              org.apache.kudu.ColumnSchema.Encoding&nbsp;encoding)</code>
+<div class="block">Change the encoding used for a column.</div>
+</td>
+</tr>
+<tr id="i10" class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AlterTableOptions.html#dropColumn-java.lang.String-">dropColumn</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
+<div class="block">Drop a column.</div>
+</td>
+</tr>
+<tr id="i11" class="rowColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AlterTableOptions.html#dropRangePartition-org.apache.kudu.client.PartialRow-org.apache.kudu.client.PartialRow-">dropRangePartition</a></span>(<a href="../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;lowerBound,
+                  <a href="../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;upperBound)</code>
+<div class="block">Drop the range partition from the table with the specified inclusive lower bound and exclusive
+ upper bound.</div>
+</td>
+</tr>
+<tr id="i12" class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AlterTableOptions.html#dropRangePartition-org.apache.kudu.client.PartialRow-org.apache.kudu.client.PartialRow-org.apache.kudu.client.RangePartitionBound-org.apache.kudu.client.RangePartitionBound-">dropRangePartition</a></span>(<a href="../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;lowerBound,
+                  <a href="../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;upperBound,
+                  <a href="../../../../org/apache/kudu/client/RangePartitionBound.html" title="enum in org.apache.kudu.client">RangePartitionBound</a>&nbsp;lowerBoundType,
+                  <a href="../../../../org/apache/kudu/client/RangePartitionBound.html" title="enum in org.apache.kudu.client">RangePartitionBound</a>&nbsp;upperBoundType)</code>
+<div class="block">Drop the range partition from the table with the specified lower bound and upper bound.</div>
+</td>
+</tr>
+<tr id="i13" class="rowColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AlterTableOptions.html#removeDefault-java.lang.String-">removeDefault</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
+<div class="block">Remove the default value for a column.</div>
+</td>
+</tr>
+<tr id="i14" class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AlterTableOptions.html#renameColumn-java.lang.String-java.lang.String-">renameColumn</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;oldName,
+            <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;newName)</code>
+<div class="block">Change the name of a column.</div>
+</td>
+</tr>
+<tr id="i15" class="rowColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AlterTableOptions.html#renameTable-java.lang.String-">renameTable</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;newName)</code>
+<div class="block">Change a table's name.</div>
+</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="constructor.detail">
+<!--   -->
+</a>
+<h3>Constructor Detail</h3>
+<a name="AlterTableOptions--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>AlterTableOptions</h4>
+<pre>public&nbsp;AlterTableOptions()</pre>
+</li>
+</ul>
+</li>
+</ul>
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="renameTable-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>renameTable</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a>&nbsp;renameTable(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;newName)</pre>
+<div class="block">Change a table's name.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>newName</code> - new table's name, must be used to check progress</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>this instance</dd>
+</dl>
+</li>
+</ul>
+<a name="addColumn-org.apache.kudu.ColumnSchema-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>addColumn</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a>&nbsp;addColumn(<a href="../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a>&nbsp;colSchema)</pre>
+<div class="block">Add a new column.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>colSchema</code> - the schema of the new column</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>this instance</dd>
+</dl>
+</li>
+</ul>
+<a name="addColumn-java.lang.String-org.apache.kudu.Type-java.lang.Object-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>addColumn</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a>&nbsp;addColumn(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
+                                   <a href="../../../../org/apache/kudu/Type.html" title="enum in org.apache.kudu">Type</a>&nbsp;type,
+                                   <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;defaultVal)</pre>
+<div class="block">Add a new column that's not nullable.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>name</code> - name of the new column</dd>
+<dd><code>type</code> - type of the new column</dd>
+<dd><code>defaultVal</code> - default value used for the currently existing rows</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>this instance</dd>
+</dl>
+</li>
+</ul>
+<a name="addNullableColumn-java.lang.String-org.apache.kudu.Type-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>addNullableColumn</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a>&nbsp;addNullableColumn(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
+                                           <a href="../../../../org/apache/kudu/Type.html" title="enum in org.apache.kudu">Type</a>&nbsp;type)</pre>
+<div class="block">Add a new column that's nullable and has no default value.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>name</code> - name of the new column</dd>
+<dd><code>type</code> - type of the new column</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>this instance</dd>
+</dl>
+</li>
+</ul>
+<a name="addNullableColumn-java.lang.String-org.apache.kudu.Type-java.lang.Object-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>addNullableColumn</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a>&nbsp;addNullableColumn(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
+                                           <a href="../../../../org/apache/kudu/Type.html" title="enum in org.apache.kudu">Type</a>&nbsp;type,
+                                           <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;defaultVal)</pre>
+<div class="block">Add a new column that's nullable.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>name</code> - name of the new column</dd>
+<dd><code>type</code> - type of the new column</dd>
+<dd><code>defaultVal</code> - the default value of the new column</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>this instance</dd>
+</dl>
+</li>
+</ul>
+<a name="dropColumn-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>dropColumn</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a>&nbsp;dropColumn(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
+<div class="block">Drop a column.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>name</code> - name of the column</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>this instance</dd>
+</dl>
+</li>
+</ul>
+<a name="renameColumn-java.lang.String-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>renameColumn</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a>&nbsp;renameColumn(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;oldName,
+                                      <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;newName)</pre>
+<div class="block">Change the name of a column.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>oldName</code> - old column's name, must exist</dd>
+<dd><code>newName</code> - new name to use</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>this instance</dd>
+</dl>
+</li>
+</ul>
+<a name="removeDefault-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>removeDefault</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a>&nbsp;removeDefault(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
+<div class="block">Remove the default value for a column.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>name</code> - name of the column</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>this instance</dd>
+</dl>
+</li>
+</ul>
+<a name="changeDefault-java.lang.String-java.lang.Object-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>changeDefault</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a>&nbsp;changeDefault(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
+                                       <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;newDefault)</pre>
+<div class="block">Change the default value for a column. `newDefault` must not be null or
+ else throws <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang"><code>IllegalArgumentException</code></a>.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>name</code> - name of the column</dd>
+<dd><code>newDefault</code> - the new default value</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>this instance</dd>
+</dl>
+</li>
+</ul>
+<a name="changeDesiredBlockSize-java.lang.String-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>changeDesiredBlockSize</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a>&nbsp;changeDesiredBlockSize(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
+                                                int&nbsp;blockSize)</pre>
+<div class="block">Change the block size of a column's storage. A nonpositive value indicates
+ a server-side default.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>name</code> - name of the column</dd>
+<dd><code>blockSize</code> - the new block size</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>this instance</dd>
+</dl>
+</li>
+</ul>
+<a name="changeEncoding-java.lang.String-org.apache.kudu.ColumnSchema.Encoding-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>changeEncoding</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a>&nbsp;changeEncoding(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
+                                        org.apache.kudu.ColumnSchema.Encoding&nbsp;encoding)</pre>
+<div class="block">Change the encoding used for a column.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>name</code> - name of the column</dd>
+<dd><code>encoding</code> - the new encoding</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>this instance</dd>
+</dl>
+</li>
+</ul>
+<a name="changeCompressionAlgorithm-java.lang.String-org.apache.kudu.ColumnSchema.CompressionAlgorithm-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>changeCompressionAlgorithm</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a>&nbsp;changeCompressionAlgorithm(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
+                                                    org.apache.kudu.ColumnSchema.CompressionAlgorithm&nbsp;ca)</pre>
+<div class="block">Change the compression used for a column.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>name</code> - the name of the column</dd>
+<dd><code>ca</code> - the new compression algorithm</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>this instance</dd>
+</dl>
+</li>
+</ul>
+<a name="addRangePartition-org.apache.kudu.client.PartialRow-org.apache.kudu.client.PartialRow-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>addRangePartition</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a>&nbsp;addRangePartition(<a href="../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;lowerBound,
+                                           <a href="../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;upperBound)</pre>
+<div class="block">Add a range partition to the table with an inclusive lower bound and an exclusive upper bound.
+
+ If either row is empty, then that end of the range will be unbounded. If a range column is
+ missing a value, the logical minimum value for that column type will be used as the default.
+
+ Multiple range partitions may be added as part of a single alter table transaction by calling
+ this method multiple times. Added range partitions must not overlap with each
+ other or any existing range partitions (unless the existing range partitions are dropped as
+ part of the alter transaction first). The lower bound must be less than the upper bound.
+
+ This client will immediately be able to write and scan the new tablets when the alter table
+ operation returns success, however other existing clients may have to wait for a timeout period
+ to elapse before the tablets become visible. This period is configured by the master's
+ 'table_locations_ttl_ms' flag, and defaults to 5 minutes.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>lowerBound</code> - inclusive lower bound, may be empty but not null</dd>
+<dd><code>upperBound</code> - exclusive upper bound, may be empty but not null</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>this instance</dd>
+</dl>
+</li>
+</ul>
+<a name="addRangePartition-org.apache.kudu.client.PartialRow-org.apache.kudu.client.PartialRow-org.apache.kudu.client.RangePartitionBound-org.apache.kudu.client.RangePartitionBound-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>addRangePartition</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a>&nbsp;addRangePartition(<a href="../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;lowerBound,
+                                           <a href="../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;upperBound,
+                                           <a href="../../../../org/apache/kudu/client/RangePartitionBound.html" title="enum in org.apache.kudu.client">RangePartitionBound</a>&nbsp;lowerBoundType,
+                                           <a href="../../../../org/apache/kudu/client/RangePartitionBound.html" title="enum in org.apache.kudu.client">RangePartitionBound</a>&nbsp;upperBoundType)</pre>
+<div class="block">Add a range partition to the table with a lower bound and upper bound.
+
+ If either row is empty, then that end of the range will be unbounded. If a range column is
+ missing a value, the logical minimum value for that column type will be used as the default.
+
+ Multiple range partitions may be added as part of a single alter table transaction by calling
+ this method multiple times. Added range partitions must not overlap with each
+ other or any existing range partitions (unless the existing range partitions are dropped as
+ part of the alter transaction first). The lower bound must be less than the upper bound.
+
+ This client will immediately be able to write and scan the new tablets when the alter table
+ operation returns success, however other existing clients may have to wait for a timeout period
+ to elapse before the tablets become visible. This period is configured by the master's
+ 'table_locations_ttl_ms' flag, and defaults to 5 minutes.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>lowerBound</code> - lower bound, may be empty but not null</dd>
+<dd><code>upperBound</code> - upper bound, may be empty but not null</dd>
+<dd><code>lowerBoundType</code> - the type of the lower bound, either inclusive or exclusive</dd>
+<dd><code>upperBoundType</code> - the type of the upper bound, either inclusive or exclusive</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>this instance</dd>
+</dl>
+</li>
+</ul>
+<a name="dropRangePartition-org.apache.kudu.client.PartialRow-org.apache.kudu.client.PartialRow-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>dropRangePartition</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a>&nbsp;dropRangePartition(<a href="../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;lowerBound,
+                                            <a href="../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;upperBound)</pre>
+<div class="block">Drop the range partition from the table with the specified inclusive lower bound and exclusive
+ upper bound. The bounds must match exactly, and may not span multiple range partitions.
+
+ If either row is empty, then that end of the range will be unbounded. If a range column is
+ missing a value, the logical minimum value for that column type will be used as the default.
+
+ Multiple range partitions may be dropped as part of a single alter table transaction by calling
+ this method multiple times.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>lowerBound</code> - inclusive lower bound, can be empty but not null</dd>
+<dd><code>upperBound</code> - exclusive upper bound, can be empty but not null</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>this instance</dd>
+</dl>
+</li>
+</ul>
+<a name="dropRangePartition-org.apache.kudu.client.PartialRow-org.apache.kudu.client.PartialRow-org.apache.kudu.client.RangePartitionBound-org.apache.kudu.client.RangePartitionBound-">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>dropRangePartition</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a>&nbsp;dropRangePartition(<a href="../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;lowerBound,
+                                            <a href="../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;upperBound,
+                                            <a href="../../../../org/apache/kudu/client/RangePartitionBound.html" title="enum in org.apache.kudu.client">RangePartitionBound</a>&nbsp;lowerBoundType,
+                                            <a href="../../../../org/apache/kudu/client/RangePartitionBound.html" title="enum in org.apache.kudu.client">RangePartitionBound</a>&nbsp;upperBoundType)</pre>
+<div class="block">Drop the range partition from the table with the specified lower bound and upper bound.
+ The bounds must match exactly, and may not span multiple range partitions.
+
+ If either row is empty, then that end of the range will be unbounded. If a range column is
+ missing a value, the logical minimum value for that column type will be used as the default.
+
+ Multiple range partitions may be dropped as part of a single alter table transaction by calling
+ this method multiple times.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>lowerBound</code> - inclusive lower bound, can be empty but not null</dd>
+<dd><code>upperBound</code> - exclusive upper bound, can be empty but not null</dd>
+<dd><code>lowerBoundType</code> - the type of the lower bound, either inclusive or exclusive</dd>
+<dd><code>upperBoundType</code> - the type of the upper bound, either inclusive or exclusive</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>this instance</dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/AlterTableOptions.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/AlterTableResponse.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/AlterTableOptions.html" target="_top">Frames</a></li>
+<li><a href="AlterTableOptions.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/AlterTableResponse.html b/releases/1.4.0/apidocs/org/apache/kudu/client/AlterTableResponse.html
new file mode 100644
index 0000000..b0a2a71
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/AlterTableResponse.html
@@ -0,0 +1,287 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>AlterTableResponse (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="AlterTableResponse (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":10,"i1":10,"i2":10};
+var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/AlterTableResponse.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/AlterTableResponse.html" target="_top">Frames</a></li>
+<li><a href="AlterTableResponse.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.client</div>
+<h2 title="Class AlterTableResponse" class="title">Class AlterTableResponse</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.client.AlterTableResponse</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Evolving
+public class <span class="typeNameLabel">AlterTableResponse</span>
+extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></pre>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code>long</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AlterTableResponse.html#getElapsedMillis--">getElapsedMillis</a></span>()</code>
+<div class="block">Get the number of milliseconds elapsed since the RPC was created up to the moment when this
+ response was created.</div>
+</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AlterTableResponse.html#getTableId--">getTableId</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AlterTableResponse.html#getTsUUID--">getTsUUID</a></span>()</code>
+<div class="block">Get the identifier of the tablet server that sent the response.</div>
+</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="getTableId--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getTableId</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getTableId()</pre>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the ID of the altered table, or null if the master version is too old</dd>
+</dl>
+</li>
+</ul>
+<a name="getElapsedMillis--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getElapsedMillis</h4>
+<pre>public&nbsp;long&nbsp;getElapsedMillis()</pre>
+<div class="block">Get the number of milliseconds elapsed since the RPC was created up to the moment when this
+ response was created.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>elapsed time in milliseconds</dd>
+</dl>
+</li>
+</ul>
+<a name="getTsUUID--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>getTsUUID</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getTsUUID()</pre>
+<div class="block">Get the identifier of the tablet server that sent the response. May be
+ <code>null</code> if the RPC failed before tablet location lookup succeeded.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a string containing a UUID</dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/AlterTableResponse.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/AlterTableResponse.html" target="_top">Frames</a></li>
+<li><a href="AlterTableResponse.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html b/releases/1.4.0/apidocs/org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html
new file mode 100644
index 0000000..ce07f54
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html
@@ -0,0 +1,482 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>AsyncKuduClient.AsyncKuduClientBuilder (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="AsyncKuduClient.AsyncKuduClientBuilder (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10};
+var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/AsyncKuduClient.AsyncKuduClientBuilder.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/AsyncKuduScanner.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html" target="_top">Frames</a></li>
+<li><a href="AsyncKuduClient.AsyncKuduClientBuilder.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.client</div>
+<h2 title="Class AsyncKuduClient.AsyncKuduClientBuilder" class="title">Class AsyncKuduClient.AsyncKuduClientBuilder</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.client.AsyncKuduClient.AsyncKuduClientBuilder</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<dl>
+<dt>Enclosing class:</dt>
+<dd><a href="../../../../org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client">AsyncKuduClient</a></dd>
+</dl>
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Evolving
+public static final class <span class="typeNameLabel">AsyncKuduClient.AsyncKuduClientBuilder</span>
+extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></pre>
+<div class="block">Builder class to use in order to connect to Kudu.
+ All the parameters beyond those in the constructors are optional.</div>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="constructor.summary">
+<!--   -->
+</a>
+<h3>Constructor Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
+<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colOne" scope="col">Constructor and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html#AsyncKuduClientBuilder-java.util.List-">AsyncKuduClientBuilder</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;masterAddresses)</code>
+<div class="block">Creates a new builder for a client that will connect to the specified masters.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html#AsyncKuduClientBuilder-java.lang.String-">AsyncKuduClientBuilder</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;masterAddresses)</code>
+<div class="block">Creates a new builder for a client that will connect to the specified masters.</div>
+</td>
+</tr>
+</table>
+</li>
+</ul>
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html" title="class in org.apache.kudu.client">AsyncKuduClient.AsyncKuduClientBuilder</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html#bossCount-int-">bossCount</a></span>(int&nbsp;bossCount)</code>
+<div class="block">Set the maximum number of boss threads.</div>
+</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client">AsyncKuduClient</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html#build--">build</a></span>()</code>
+<div class="block">Creates a new client that connects to the masters.</div>
+</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html" title="class in org.apache.kudu.client">AsyncKuduClient.AsyncKuduClientBuilder</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html#defaultAdminOperationTimeoutMs-long-">defaultAdminOperationTimeoutMs</a></span>(long&nbsp;timeoutMs)</code>
+<div class="block">Sets the default timeout used for administrative operations (e.g.</div>
+</td>
+</tr>
+<tr id="i3" class="rowColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html" title="class in org.apache.kudu.client">AsyncKuduClient.AsyncKuduClientBuilder</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html#defaultOperationTimeoutMs-long-">defaultOperationTimeoutMs</a></span>(long&nbsp;timeoutMs)</code>
+<div class="block">Sets the default timeout used for user operations (using sessions and scanners).</div>
+</td>
+</tr>
+<tr id="i4" class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html" title="class in org.apache.kudu.client">AsyncKuduClient.AsyncKuduClientBuilder</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html#defaultSocketReadTimeoutMs-long-">defaultSocketReadTimeoutMs</a></span>(long&nbsp;timeoutMs)</code>
+<div class="block">Sets the default timeout to use when waiting on data from a socket.</div>
+</td>
+</tr>
+<tr id="i5" class="rowColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html" title="class in org.apache.kudu.client">AsyncKuduClient.AsyncKuduClientBuilder</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html#disableStatistics--">disableStatistics</a></span>()</code>
+<div class="block">Disable this client's collection of statistics.</div>
+</td>
+</tr>
+<tr id="i6" class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html" title="class in org.apache.kudu.client">AsyncKuduClient.AsyncKuduClientBuilder</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html#nioExecutors-java.util.concurrent.Executor-java.util.concurrent.Executor-">nioExecutors</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/concurrent/Executor.html?is-external=true" title="class or interface in java.util.concurrent">Executor</a>&nbsp;bossExecutor,
+            <a href="http://docs.oracle.com/javase/7/docs/api/java/util/concurrent/Executor.html?is-external=true" title="class or interface in java.util.concurrent">Executor</a>&nbsp;workerExecutor)</code>
+<div class="block">Set the executors which will be used for the embedded Netty boss and workers.</div>
+</td>
+</tr>
+<tr id="i7" class="rowColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html" title="class in org.apache.kudu.client">AsyncKuduClient.AsyncKuduClientBuilder</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html#workerCount-int-">workerCount</a></span>(int&nbsp;workerCount)</code>
+<div class="block">Set the maximum number of worker threads.</div>
+</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="constructor.detail">
+<!--   -->
+</a>
+<h3>Constructor Detail</h3>
+<a name="AsyncKuduClientBuilder-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>AsyncKuduClientBuilder</h4>
+<pre>public&nbsp;AsyncKuduClientBuilder(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;masterAddresses)</pre>
+<div class="block">Creates a new builder for a client that will connect to the specified masters.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>masterAddresses</code> - comma-separated list of "host:port" pairs of the masters</dd>
+</dl>
+</li>
+</ul>
+<a name="AsyncKuduClientBuilder-java.util.List-">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>AsyncKuduClientBuilder</h4>
+<pre>public&nbsp;AsyncKuduClientBuilder(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;masterAddresses)</pre>
+<div class="block">Creates a new builder for a client that will connect to the specified masters.
+
+ <p>Here are some examples of recognized formats:
+ <ul>
+   <li>example.com
+   <li>example.com:80
+   <li>192.0.2.1
+   <li>192.0.2.1:80
+   <li>[2001:db8::1]
+   <li>[2001:db8::1]:80
+   <li>2001:db8::1
+ </ul></div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>masterAddresses</code> - list of master addresses</dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="defaultAdminOperationTimeoutMs-long-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>defaultAdminOperationTimeoutMs</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html" title="class in org.apache.kudu.client">AsyncKuduClient.AsyncKuduClientBuilder</a>&nbsp;defaultAdminOperationTimeoutMs(long&nbsp;timeoutMs)</pre>
+<div class="block">Sets the default timeout used for administrative operations (e.g. createTable, deleteTable,
+ etc).
+ Optional.
+ If not provided, defaults to 30s.
+ A value of 0 disables the timeout.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>timeoutMs</code> - a timeout in milliseconds</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>this builder</dd>
+</dl>
+</li>
+</ul>
+<a name="defaultOperationTimeoutMs-long-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>defaultOperationTimeoutMs</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html" title="class in org.apache.kudu.client">AsyncKuduClient.AsyncKuduClientBuilder</a>&nbsp;defaultOperationTimeoutMs(long&nbsp;timeoutMs)</pre>
+<div class="block">Sets the default timeout used for user operations (using sessions and scanners).
+ Optional.
+ If not provided, defaults to 30s.
+ A value of 0 disables the timeout.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>timeoutMs</code> - a timeout in milliseconds</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>this builder</dd>
+</dl>
+</li>
+</ul>
+<a name="defaultSocketReadTimeoutMs-long-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>defaultSocketReadTimeoutMs</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html" title="class in org.apache.kudu.client">AsyncKuduClient.AsyncKuduClientBuilder</a>&nbsp;defaultSocketReadTimeoutMs(long&nbsp;timeoutMs)</pre>
+<div class="block">Sets the default timeout to use when waiting on data from a socket.
+ Optional.
+ If not provided, defaults to 10s.
+ A value of 0 disables the timeout.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>timeoutMs</code> - a timeout in milliseconds</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>this builder</dd>
+</dl>
+</li>
+</ul>
+<a name="nioExecutors-java.util.concurrent.Executor-java.util.concurrent.Executor-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>nioExecutors</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html" title="class in org.apache.kudu.client">AsyncKuduClient.AsyncKuduClientBuilder</a>&nbsp;nioExecutors(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/concurrent/Executor.html?is-external=true" title="class or interface in java.util.concurrent">Executor</a>&nbsp;bossExecutor,
+                                                           <a href="http://docs.oracle.com/javase/7/docs/api/java/util/concurrent/Executor.html?is-external=true" title="class or interface in java.util.concurrent">Executor</a>&nbsp;workerExecutor)</pre>
+<div class="block">Set the executors which will be used for the embedded Netty boss and workers.
+ Optional.
+ If not provided, uses a simple cached threadpool. If either argument is null,
+ then such a thread pool will be used in place of that argument.
+ Note: executor's max thread number must be greater or equal to corresponding
+ worker count, or netty cannot start enough threads, and client will get stuck.
+ If not sure, please just use CachedThreadPool.</div>
+</li>
+</ul>
+<a name="bossCount-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>bossCount</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html" title="class in org.apache.kudu.client">AsyncKuduClient.AsyncKuduClientBuilder</a>&nbsp;bossCount(int&nbsp;bossCount)</pre>
+<div class="block">Set the maximum number of boss threads.
+ Optional.
+ If not provided, 1 is used.</div>
+</li>
+</ul>
+<a name="workerCount-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>workerCount</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html" title="class in org.apache.kudu.client">AsyncKuduClient.AsyncKuduClientBuilder</a>&nbsp;workerCount(int&nbsp;workerCount)</pre>
+<div class="block">Set the maximum number of worker threads.
+ Optional.
+ If not provided, (2 * the number of available processors) is used.</div>
+</li>
+</ul>
+<a name="disableStatistics--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>disableStatistics</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html" title="class in org.apache.kudu.client">AsyncKuduClient.AsyncKuduClientBuilder</a>&nbsp;disableStatistics()</pre>
+<div class="block">Disable this client's collection of statistics.
+ Statistics are enabled by default.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>this builder</dd>
+</dl>
+</li>
+</ul>
+<a name="build--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>build</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client">AsyncKuduClient</a>&nbsp;build()</pre>
+<div class="block">Creates a new client that connects to the masters.
+ Doesn't block and won't throw an exception if the masters don't exist.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a new asynchronous Kudu client</dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/AsyncKuduClient.AsyncKuduClientBuilder.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/AsyncKuduScanner.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html" target="_top">Frames</a></li>
+<li><a href="AsyncKuduClient.AsyncKuduClientBuilder.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/AsyncKuduClient.html b/releases/1.4.0/apidocs/org/apache/kudu/client/AsyncKuduClient.html
new file mode 100644
index 0000000..8d4d334
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/AsyncKuduClient.html
@@ -0,0 +1,957 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>AsyncKuduClient (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="AsyncKuduClient (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10,"i15":10,"i16":10,"i17":10,"i18":10,"i19":10,"i20":10,"i21":10,"i22":10,"i23":10};
+var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/AsyncKuduClient.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/AlterTableResponse.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/AsyncKuduClient.html" target="_top">Frames</a></li>
+<li><a href="AsyncKuduClient.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
+<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.client</div>
+<h2 title="Class AsyncKuduClient" class="title">Class AsyncKuduClient</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.client.AsyncKuduClient</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<dl>
+<dt>All Implemented Interfaces:</dt>
+<dd><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/AutoCloseable.html?is-external=true" title="class or interface in java.lang">AutoCloseable</a></dd>
+</dl>
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Unstable
+public class <span class="typeNameLabel">AsyncKuduClient</span>
+extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>
+implements <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/AutoCloseable.html?is-external=true" title="class or interface in java.lang">AutoCloseable</a></pre>
+<div class="block">A fully asynchronous and thread-safe client for Kudu.
+ <p>
+ This client should be
+ instantiated only once. You can use it with any number of tables at the
+ same time. The only case where you should have multiple instances is when
+ you want to use multiple different clusters at the same time.
+ <p>
+ If you play by the rules, this client is completely
+ thread-safe. Read the documentation carefully to know what the requirements
+ are for this guarantee to apply.
+ <p>
+ This client is fully non-blocking, any blocking operation will return a
+ <code>Deferred</code> instance to which you can attach a <code>Callback</code> chain
+ that will execute when the asynchronous operation completes.
+
+ <h1>Note regarding <code>KuduRpc</code> instances passed to this class</h1>
+ Every <code>KuduRpc</code> passed to a method of this class should not be
+ changed or re-used until the <code>Deferred</code> returned by that method
+ calls you back.  <strong>Changing or re-using any <code>KuduRpc</code> for
+ an RPC in flight will lead to <em>unpredictable</em> results and voids
+ your warranty</strong>.
+
+ <h1><code>throws</code> clauses</h1>
+ None of the asynchronous methods in this API are expected to throw an
+ exception.  But the <code>Deferred</code> object they return to you can carry an
+ exception that you should handle (using "errbacks", see the javadoc of
+ <code>Deferred</code>).  In order to be able to do proper asynchronous error
+ handling, you need to know what types of exceptions you're expected to face
+ in your errbacks.  In order to document that, the methods of this API use
+ javadoc's <code>@throws</code> to spell out the exception types you should
+ handle in your errback.  Asynchronous exceptions will be indicated as such
+ in the javadoc with "(deferred)".</div>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- ======== NESTED CLASS SUMMARY ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="nested.class.summary">
+<!--   -->
+</a>
+<h3>Nested Class Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Nested Class Summary table, listing nested classes, and an explanation">
+<caption><span>Nested Classes</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Class and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static class&nbsp;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html" title="class in org.apache.kudu.client">AsyncKuduClient.AsyncKuduClientBuilder</a></span></code>
+<div class="block">Builder class to use in order to connect to Kudu.</div>
+</td>
+</tr>
+</table>
+</li>
+</ul>
+<!-- =========== FIELD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="field.summary">
+<!--   -->
+</a>
+<h3>Field Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
+<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Field and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static long</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduClient.html#DEFAULT_OPERATION_TIMEOUT_MS">DEFAULT_OPERATION_TIMEOUT_MS</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static long</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduClient.html#DEFAULT_SOCKET_READ_TIMEOUT_MS">DEFAULT_SOCKET_READ_TIMEOUT_MS</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static byte[]</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduClient.html#EMPTY_ARRAY">EMPTY_ARRAY</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static org.slf4j.Logger</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduClient.html#LOG">LOG</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static long</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduClient.html#NO_TIMESTAMP">NO_TIMESTAMP</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static int</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduClient.html#SLEEP_TIME">SLEEP_TIME</a></span></code>&nbsp;</td>
+</tr>
+</table>
+</li>
+</ul>
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code>com.stumbleupon.async.Deferred&lt;<a href="../../../../org/apache/kudu/client/AlterTableResponse.html" title="class in org.apache.kudu.client">AlterTableResponse</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduClient.html#alterTable-java.lang.String-org.apache.kudu.client.AlterTableOptions-">alterTable</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
+          <a href="../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a>&nbsp;ato)</code>
+<div class="block">Alter a table on the cluster as specified by the builder.</div>
+</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduClient.html#close--">close</a></span>()</code>
+<div class="block">Invokes <a href="../../../../org/apache/kudu/client/AsyncKuduClient.html#shutdown--"><code>shutdown()</code></a> and waits.</div>
+</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code>com.stumbleupon.async.Deferred&lt;<a href="../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduClient.html#createTable-java.lang.String-org.apache.kudu.Schema-org.apache.kudu.client.CreateTableOptions-">createTable</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
+           <a href="../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a>&nbsp;schema,
+           <a href="../../../../org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client">CreateTableOptions</a>&nbsp;builder)</code>
+<div class="block">Create a table on the cluster with the specified name, schema, and table configurations.</div>
+</td>
+</tr>
+<tr id="i3" class="rowColor">
+<td class="colFirst"><code>com.stumbleupon.async.Deferred&lt;<a href="../../../../org/apache/kudu/client/DeleteTableResponse.html" title="class in org.apache.kudu.client">DeleteTableResponse</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduClient.html#deleteTable-java.lang.String-">deleteTable</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
+<div class="block">Delete a table on the cluster with the specified name.</div>
+</td>
+</tr>
+<tr id="i4" class="altColor">
+<td class="colFirst"><code>com.stumbleupon.async.Deferred&lt;byte[]&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduClient.html#exportAuthenticationCredentials--">exportAuthenticationCredentials</a></span>()</code>
+<div class="block">Export serialized authentication data that may be passed to a different
+ client instance and imported to provide that client the ability to connect
+ to the cluster.</div>
+</td>
+</tr>
+<tr id="i5" class="rowColor">
+<td class="colFirst"><code>long</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduClient.html#getDefaultAdminOperationTimeoutMs--">getDefaultAdminOperationTimeoutMs</a></span>()</code>
+<div class="block">Get the timeout used for admin operations.</div>
+</td>
+</tr>
+<tr id="i6" class="altColor">
+<td class="colFirst"><code>long</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduClient.html#getDefaultOperationTimeoutMs--">getDefaultOperationTimeoutMs</a></span>()</code>
+<div class="block">Get the timeout used for operations on sessions and scanners.</div>
+</td>
+</tr>
+<tr id="i7" class="rowColor">
+<td class="colFirst"><code>long</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduClient.html#getDefaultSocketReadTimeoutMs--">getDefaultSocketReadTimeoutMs</a></span>()</code>
+<div class="block">Get the timeout used when waiting to read data from a socket.</div>
+</td>
+</tr>
+<tr id="i8" class="altColor">
+<td class="colFirst"><code>long</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduClient.html#getLastPropagatedTimestamp--">getLastPropagatedTimestamp</a></span>()</code>
+<div class="block">Returns the last timestamp received from a server.</div>
+</td>
+</tr>
+<tr id="i9" class="rowColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduClient.html#getMasterAddressesAsString--">getMasterAddressesAsString</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i10" class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/Statistics.html" title="class in org.apache.kudu.client">Statistics</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduClient.html#getStatistics--">getStatistics</a></span>()</code>
+<div class="block">Get the statistics object of this client.</div>
+</td>
+</tr>
+<tr id="i11" class="rowColor">
+<td class="colFirst"><code>com.stumbleupon.async.Deferred&lt;<a href="../../../../org/apache/kudu/client/ListTablesResponse.html" title="class in org.apache.kudu.client">ListTablesResponse</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduClient.html#getTablesList--">getTablesList</a></span>()</code>
+<div class="block">Get the list of all the tables.</div>
+</td>
+</tr>
+<tr id="i12" class="altColor">
+<td class="colFirst"><code>com.stumbleupon.async.Deferred&lt;<a href="../../../../org/apache/kudu/client/ListTablesResponse.html" title="class in org.apache.kudu.client">ListTablesResponse</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduClient.html#getTablesList-java.lang.String-">getTablesList</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;nameFilter)</code>
+<div class="block">Get a list of table names.</div>
+</td>
+</tr>
+<tr id="i13" class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduClient.html#importAuthenticationCredentials-byte:A-">importAuthenticationCredentials</a></span>(byte[]&nbsp;authnData)</code>
+<div class="block">Import data allowing this client to authenticate to the cluster.</div>
+</td>
+</tr>
+<tr id="i14" class="altColor">
+<td class="colFirst"><code>com.stumbleupon.async.Deferred&lt;<a href="../../../../org/apache/kudu/client/IsAlterTableDoneResponse.html" title="class in org.apache.kudu.client">IsAlterTableDoneResponse</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduClient.html#isAlterTableDone-java.lang.String-">isAlterTableDone</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
+<div class="block">Helper method that checks and waits until the completion of an alter command.</div>
+</td>
+</tr>
+<tr id="i15" class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduClient.html#isStatisticsEnabled--">isStatisticsEnabled</a></span>()</code>
+<div class="block">Check if statistics collection is enabled for this client.</div>
+</td>
+</tr>
+<tr id="i16" class="altColor">
+<td class="colFirst"><code>com.stumbleupon.async.Deferred&lt;<a href="../../../../org/apache/kudu/client/ListTabletServersResponse.html" title="class in org.apache.kudu.client">ListTabletServersResponse</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduClient.html#listTabletServers--">listTabletServers</a></span>()</code>
+<div class="block">Get the list of running tablet servers.</div>
+</td>
+</tr>
+<tr id="i17" class="rowColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AsyncKuduScanner.AsyncKuduScannerBuilder.html" title="class in org.apache.kudu.client">AsyncKuduScanner.AsyncKuduScannerBuilder</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduClient.html#newScannerBuilder-org.apache.kudu.client.KuduTable-">newScannerBuilder</a></span>(<a href="../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a>&nbsp;table)</code>
+<div class="block">Creates a new <a href="../../../../org/apache/kudu/client/AsyncKuduScanner.AsyncKuduScannerBuilder.html" title="class in org.apache.kudu.client"><code>AsyncKuduScanner.AsyncKuduScannerBuilder</code></a> for a particular table.</div>
+</td>
+</tr>
+<tr id="i18" class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AsyncKuduSession.html" title="class in org.apache.kudu.client">AsyncKuduSession</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduClient.html#newSession--">newSession</a></span>()</code>
+<div class="block">Create a new session for interacting with the cluster.</div>
+</td>
+</tr>
+<tr id="i19" class="rowColor">
+<td class="colFirst"><code>com.stumbleupon.async.Deferred&lt;<a href="../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduClient.html#openTable-java.lang.String-">openTable</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
+<div class="block">Open the table with the given name.</div>
+</td>
+</tr>
+<tr id="i20" class="altColor">
+<td class="colFirst"><code>com.stumbleupon.async.Deferred&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduClient.html#shutdown--">shutdown</a></span>()</code>
+<div class="block">Performs a graceful shutdown of this instance.</div>
+</td>
+</tr>
+<tr id="i21" class="rowColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduClient.html#syncClient--">syncClient</a></span>()</code>
+<div class="block">Returns a synchronous <a href="../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client"><code>KuduClient</code></a> which wraps this asynchronous client.</div>
+</td>
+</tr>
+<tr id="i22" class="altColor">
+<td class="colFirst"><code>com.stumbleupon.async.Deferred&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduClient.html#tableExists-java.lang.String-">tableExists</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
+<div class="block">Test if a table exists.</div>
+</td>
+</tr>
+<tr id="i23" class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduClient.html#updateLastPropagatedTimestamp-long-">updateLastPropagatedTimestamp</a></span>(long&nbsp;lastPropagatedTimestamp)</code>
+<div class="block">Updates the last timestamp received from a server.</div>
+</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ============ FIELD DETAIL =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="field.detail">
+<!--   -->
+</a>
+<h3>Field Detail</h3>
+<a name="LOG">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>LOG</h4>
+<pre>public static final&nbsp;org.slf4j.Logger LOG</pre>
+</li>
+</ul>
+<a name="SLEEP_TIME">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>SLEEP_TIME</h4>
+<pre>public static final&nbsp;int SLEEP_TIME</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../constant-values.html#org.apache.kudu.client.AsyncKuduClient.SLEEP_TIME">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="EMPTY_ARRAY">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>EMPTY_ARRAY</h4>
+<pre>public static final&nbsp;byte[] EMPTY_ARRAY</pre>
+</li>
+</ul>
+<a name="NO_TIMESTAMP">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>NO_TIMESTAMP</h4>
+<pre>public static final&nbsp;long NO_TIMESTAMP</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../constant-values.html#org.apache.kudu.client.AsyncKuduClient.NO_TIMESTAMP">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="DEFAULT_OPERATION_TIMEOUT_MS">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>DEFAULT_OPERATION_TIMEOUT_MS</h4>
+<pre>public static final&nbsp;long DEFAULT_OPERATION_TIMEOUT_MS</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../constant-values.html#org.apache.kudu.client.AsyncKuduClient.DEFAULT_OPERATION_TIMEOUT_MS">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="DEFAULT_SOCKET_READ_TIMEOUT_MS">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>DEFAULT_SOCKET_READ_TIMEOUT_MS</h4>
+<pre>public static final&nbsp;long DEFAULT_SOCKET_READ_TIMEOUT_MS</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../constant-values.html#org.apache.kudu.client.AsyncKuduClient.DEFAULT_SOCKET_READ_TIMEOUT_MS">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="updateLastPropagatedTimestamp-long-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>updateLastPropagatedTimestamp</h4>
+<pre>public&nbsp;void&nbsp;updateLastPropagatedTimestamp(long&nbsp;lastPropagatedTimestamp)</pre>
+<div class="block">Updates the last timestamp received from a server. Used for CLIENT_PROPAGATED
+ external consistency.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>lastPropagatedTimestamp</code> - the last timestamp received from a server</dd>
+</dl>
+</li>
+</ul>
+<a name="getLastPropagatedTimestamp--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getLastPropagatedTimestamp</h4>
+<pre>public&nbsp;long&nbsp;getLastPropagatedTimestamp()</pre>
+<div class="block">Returns the last timestamp received from a server. Used for CLIENT_PROPAGATED
+ external consistency. Note that the returned timestamp is encoded and cannot be
+ interpreted as a raw timestamp.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a long indicating the specially-encoded last timestamp received from a server</dd>
+</dl>
+</li>
+</ul>
+<a name="syncClient--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>syncClient</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a>&nbsp;syncClient()</pre>
+<div class="block">Returns a synchronous <a href="../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client"><code>KuduClient</code></a> which wraps this asynchronous client.
+ Calling <a href="../../../../org/apache/kudu/client/KuduClient.html#close--"><code>KuduClient.close()</code></a> on the returned client will close this client.
+ If this asynchronous client should outlive the returned synchronous client,
+ then do not close the synchronous client.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a new synchronous <code>KuduClient</code></dd>
+</dl>
+</li>
+</ul>
+<a name="createTable-java.lang.String-org.apache.kudu.Schema-org.apache.kudu.client.CreateTableOptions-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>createTable</h4>
+<pre>public&nbsp;com.stumbleupon.async.Deferred&lt;<a href="../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a>&gt;&nbsp;createTable(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
+                                                             <a href="../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a>&nbsp;schema,
+                                                             <a href="../../../../org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client">CreateTableOptions</a>&nbsp;builder)</pre>
+<div class="block">Create a table on the cluster with the specified name, schema, and table configurations.
+ If the primary key columns of the table schema aren't specified first, the deferred result
+ will be a <code>NonRecoverableException</code></div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>name</code> - the table's name</dd>
+<dd><code>schema</code> - the table's schema</dd>
+<dd><code>builder</code> - a builder containing the table's configurations</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a deferred object to track the progress of the createTable command that gives
+ an object to communicate with the created table</dd>
+</dl>
+</li>
+</ul>
+<a name="deleteTable-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>deleteTable</h4>
+<pre>public&nbsp;com.stumbleupon.async.Deferred&lt;<a href="../../../../org/apache/kudu/client/DeleteTableResponse.html" title="class in org.apache.kudu.client">DeleteTableResponse</a>&gt;&nbsp;deleteTable(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
+<div class="block">Delete a table on the cluster with the specified name.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>name</code> - the table's name</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a deferred object to track the progress of the deleteTable command</dd>
+</dl>
+</li>
+</ul>
+<a name="alterTable-java.lang.String-org.apache.kudu.client.AlterTableOptions-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>alterTable</h4>
+<pre>public&nbsp;com.stumbleupon.async.Deferred&lt;<a href="../../../../org/apache/kudu/client/AlterTableResponse.html" title="class in org.apache.kudu.client">AlterTableResponse</a>&gt;&nbsp;alterTable(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
+                                                                     <a href="../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a>&nbsp;ato)</pre>
+<div class="block">Alter a table on the cluster as specified by the builder.
+
+ When the returned deferred completes it only indicates that the master accepted the alter
+ command, use <a href="../../../../org/apache/kudu/client/AsyncKuduClient.html#isAlterTableDone-java.lang.String-"><code>isAlterTableDone(String)</code></a> to know when the alter finishes.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>name</code> - the table's name, if this is a table rename then the old table name must be passed</dd>
+<dd><code>ato</code> - the alter table builder</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a deferred object to track the progress of the alter command</dd>
+</dl>
+</li>
+</ul>
+<a name="isAlterTableDone-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>isAlterTableDone</h4>
+<pre>public&nbsp;com.stumbleupon.async.Deferred&lt;<a href="../../../../org/apache/kudu/client/IsAlterTableDoneResponse.html" title="class in org.apache.kudu.client">IsAlterTableDoneResponse</a>&gt;&nbsp;isAlterTableDone(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
+<div class="block">Helper method that checks and waits until the completion of an alter command.
+ It will block until the alter command is done or the deadline is reached.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>name</code> - the table's name, if the table was renamed then that name must be checked against</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a deferred object to track the progress of the isAlterTableDone command</dd>
+</dl>
+</li>
+</ul>
+<a name="listTabletServers--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>listTabletServers</h4>
+<pre>public&nbsp;com.stumbleupon.async.Deferred&lt;<a href="../../../../org/apache/kudu/client/ListTabletServersResponse.html" title="class in org.apache.kudu.client">ListTabletServersResponse</a>&gt;&nbsp;listTabletServers()</pre>
+<div class="block">Get the list of running tablet servers.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a deferred object that yields a list of tablet servers</dd>
+</dl>
+</li>
+</ul>
+<a name="getTablesList--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getTablesList</h4>
+<pre>public&nbsp;com.stumbleupon.async.Deferred&lt;<a href="../../../../org/apache/kudu/client/ListTablesResponse.html" title="class in org.apache.kudu.client">ListTablesResponse</a>&gt;&nbsp;getTablesList()</pre>
+<div class="block">Get the list of all the tables.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a deferred object that yields a list of all the tables</dd>
+</dl>
+</li>
+</ul>
+<a name="getTablesList-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getTablesList</h4>
+<pre>public&nbsp;com.stumbleupon.async.Deferred&lt;<a href="../../../../org/apache/kudu/client/ListTablesResponse.html" title="class in org.apache.kudu.client">ListTablesResponse</a>&gt;&nbsp;getTablesList(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;nameFilter)</pre>
+<div class="block">Get a list of table names. Passing a null filter returns all the tables. When a filter is
+ specified, it only returns tables that satisfy a substring match.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>nameFilter</code> - an optional table name filter</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a deferred that yields the list of table names</dd>
+</dl>
+</li>
+</ul>
+<a name="tableExists-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>tableExists</h4>
+<pre>public&nbsp;com.stumbleupon.async.Deferred&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;tableExists(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
+<div class="block">Test if a table exists.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>name</code> - a non-null table name</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>true if the table exists, else false</dd>
+</dl>
+</li>
+</ul>
+<a name="openTable-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>openTable</h4>
+<pre>public&nbsp;com.stumbleupon.async.Deferred&lt;<a href="../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a>&gt;&nbsp;openTable(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
+<div class="block">Open the table with the given name. If the table was just created, the
+ Deferred will only get called back when all the tablets have been
+ successfully created.
+
+ New range partitions created by other clients will immediately be available
+ after opening the table.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>name</code> - table to open</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a KuduTable if the table exists, else a MasterErrorException</dd>
+</dl>
+</li>
+</ul>
+<a name="exportAuthenticationCredentials--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>exportAuthenticationCredentials</h4>
+<pre>@InterfaceStability.Unstable
+public&nbsp;com.stumbleupon.async.Deferred&lt;byte[]&gt;&nbsp;exportAuthenticationCredentials()</pre>
+<div class="block">Export serialized authentication data that may be passed to a different
+ client instance and imported to provide that client the ability to connect
+ to the cluster.</div>
+</li>
+</ul>
+<a name="importAuthenticationCredentials-byte:A-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>importAuthenticationCredentials</h4>
+<pre>@InterfaceStability.Unstable
+public&nbsp;void&nbsp;importAuthenticationCredentials(byte[]&nbsp;authnData)</pre>
+<div class="block">Import data allowing this client to authenticate to the cluster.
+ This will typically be used before making any connections to servers
+ in the cluster.
+
+ Note that, if this client has already been used by one user, this
+ method cannot be used to switch authenticated users. Attempts to
+ do so have undefined results, and may throw an exception.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>authnData</code> - then authentication data provided by a prior call to
+ <a href="../../../../org/apache/kudu/client/AsyncKuduClient.html#exportAuthenticationCredentials--"><code>exportAuthenticationCredentials()</code></a></dd>
+</dl>
+</li>
+</ul>
+<a name="getDefaultOperationTimeoutMs--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getDefaultOperationTimeoutMs</h4>
+<pre>public&nbsp;long&nbsp;getDefaultOperationTimeoutMs()</pre>
+<div class="block">Get the timeout used for operations on sessions and scanners.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a timeout in milliseconds</dd>
+</dl>
+</li>
+</ul>
+<a name="getDefaultAdminOperationTimeoutMs--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getDefaultAdminOperationTimeoutMs</h4>
+<pre>public&nbsp;long&nbsp;getDefaultAdminOperationTimeoutMs()</pre>
+<div class="block">Get the timeout used for admin operations.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a timeout in milliseconds</dd>
+</dl>
+</li>
+</ul>
+<a name="getDefaultSocketReadTimeoutMs--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getDefaultSocketReadTimeoutMs</h4>
+<pre>public&nbsp;long&nbsp;getDefaultSocketReadTimeoutMs()</pre>
+<div class="block">Get the timeout used when waiting to read data from a socket. Will be triggered when nothing
+ has been read on a socket connected to a tablet server for <code>timeout</code> milliseconds.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a timeout in milliseconds</dd>
+</dl>
+</li>
+</ul>
+<a name="getMasterAddressesAsString--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getMasterAddressesAsString</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getMasterAddressesAsString()</pre>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the list of master addresses, stringified using commas to separate
+ them</dd>
+</dl>
+</li>
+</ul>
+<a name="isStatisticsEnabled--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>isStatisticsEnabled</h4>
+<pre>public&nbsp;boolean&nbsp;isStatisticsEnabled()</pre>
+<div class="block">Check if statistics collection is enabled for this client.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>true if it is enabled, else false</dd>
+</dl>
+</li>
+</ul>
+<a name="getStatistics--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getStatistics</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/Statistics.html" title="class in org.apache.kudu.client">Statistics</a>&nbsp;getStatistics()</pre>
+<div class="block">Get the statistics object of this client.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>this client's Statistics object</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - thrown if statistics collection has been disabled</dd>
+</dl>
+</li>
+</ul>
+<a name="newScannerBuilder-org.apache.kudu.client.KuduTable-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>newScannerBuilder</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/AsyncKuduScanner.AsyncKuduScannerBuilder.html" title="class in org.apache.kudu.client">AsyncKuduScanner.AsyncKuduScannerBuilder</a>&nbsp;newScannerBuilder(<a href="../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a>&nbsp;table)</pre>
+<div class="block">Creates a new <a href="../../../../org/apache/kudu/client/AsyncKuduScanner.AsyncKuduScannerBuilder.html" title="class in org.apache.kudu.client"><code>AsyncKuduScanner.AsyncKuduScannerBuilder</code></a> for a particular table.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>table</code> - the name of the table you intend to scan.
+ The string is assumed to use the platform's default charset.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a new scanner builder for this table</dd>
+</dl>
+</li>
+</ul>
+<a name="newSession--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>newSession</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/AsyncKuduSession.html" title="class in org.apache.kudu.client">AsyncKuduSession</a>&nbsp;newSession()</pre>
+<div class="block">Create a new session for interacting with the cluster.
+ User is responsible for destroying the session object.
+ This is a fully local operation (no RPCs or blocking).</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a new AsyncKuduSession</dd>
+</dl>
+</li>
+</ul>
+<a name="close--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>close</h4>
+<pre>public&nbsp;void&nbsp;close()
+           throws <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
+<div class="block">Invokes <a href="../../../../org/apache/kudu/client/AsyncKuduClient.html#shutdown--"><code>shutdown()</code></a> and waits. This method returns
+ void, so consider invoking shutdown directly if there's a need to handle dangling RPCs.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/AutoCloseable.html?is-external=true#close--" title="class or interface in java.lang">close</a></code>&nbsp;in interface&nbsp;<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/AutoCloseable.html?is-external=true" title="class or interface in java.lang">AutoCloseable</a></code></dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></code> - if an error happens while closing the connections</dd>
+</dl>
+</li>
+</ul>
+<a name="shutdown--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>shutdown</h4>
+<pre>public&nbsp;com.stumbleupon.async.Deferred&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&gt;&nbsp;shutdown()</pre>
+<div class="block">Performs a graceful shutdown of this instance.
+ <p>
+ <ul>
+   <li><a href="../../../../org/apache/kudu/client/AsyncKuduSession.html#flush--"><code>Flushes</code></a> all buffered edits.</li>
+   <li>Cancels all the other requests.</li>
+   <li>Terminates all connections.</li>
+   <li>Releases all other resources.</li>
+ </ul>
+ <strong>Not calling this method before losing the last reference to this
+ instance may result in data loss and other unwanted side effects</strong></div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>A <code>Deferred</code>, whose callback chain will be invoked once all
+ of the above have been done. If this callback chain doesn't fail, then
+ the clean shutdown will be successful, and all the data will be safe on
+ the Kudu side. In case of a failure (the "errback" is invoked) you will have
+ to open a new AsyncKuduClient if you want to retry those operations.
+ The Deferred doesn't actually hold any content.</dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/AsyncKuduClient.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/AlterTableResponse.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/AsyncKuduClient.html" target="_top">Frames</a></li>
+<li><a href="AsyncKuduClient.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
+<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/AsyncKuduScanner.AsyncKuduScannerBuilder.html b/releases/1.4.0/apidocs/org/apache/kudu/client/AsyncKuduScanner.AsyncKuduScannerBuilder.html
new file mode 100644
index 0000000..98b9488
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/AsyncKuduScanner.AsyncKuduScannerBuilder.html
@@ -0,0 +1,267 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>AsyncKuduScanner.AsyncKuduScannerBuilder (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="AsyncKuduScanner.AsyncKuduScannerBuilder (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":10};
+var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/AsyncKuduScanner.AsyncKuduScannerBuilder.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/AsyncKuduScanner.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/AsyncKuduScanner.ReadMode.html" title="enum in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/AsyncKuduScanner.AsyncKuduScannerBuilder.html" target="_top">Frames</a></li>
+<li><a href="AsyncKuduScanner.AsyncKuduScannerBuilder.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.client</div>
+<h2 title="Class AsyncKuduScanner.AsyncKuduScannerBuilder" class="title">Class AsyncKuduScanner.AsyncKuduScannerBuilder</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="class in org.apache.kudu.client">org.apache.kudu.client.AbstractKuduScannerBuilder</a>&lt;<a href="../../../../org/apache/kudu/client/AsyncKuduScanner.AsyncKuduScannerBuilder.html" title="class in org.apache.kudu.client">AsyncKuduScanner.AsyncKuduScannerBuilder</a>,<a href="../../../../org/apache/kudu/client/AsyncKuduScanner.html" title="class in org.apache.kudu.client">AsyncKuduScanner</a>&gt;</li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.client.AsyncKuduScanner.AsyncKuduScannerBuilder</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<dl>
+<dt>Enclosing class:</dt>
+<dd><a href="../../../../org/apache/kudu/client/AsyncKuduScanner.html" title="class in org.apache.kudu.client">AsyncKuduScanner</a></dd>
+</dl>
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Evolving
+public static class <span class="typeNameLabel">AsyncKuduScanner.AsyncKuduScannerBuilder</span>
+extends <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="class in org.apache.kudu.client">AbstractKuduScannerBuilder</a>&lt;<a href="../../../../org/apache/kudu/client/AsyncKuduScanner.AsyncKuduScannerBuilder.html" title="class in org.apache.kudu.client">AsyncKuduScanner.AsyncKuduScannerBuilder</a>,<a href="../../../../org/apache/kudu/client/AsyncKuduScanner.html" title="class in org.apache.kudu.client">AsyncKuduScanner</a>&gt;</pre>
+<div class="block">A Builder class to build <a href="../../../../org/apache/kudu/client/AsyncKuduScanner.html" title="class in org.apache.kudu.client"><code>AsyncKuduScanner</code></a>.
+ Use <a href="../../../../org/apache/kudu/client/AsyncKuduClient.html#newScannerBuilder-org.apache.kudu.client.KuduTable-"><code>AsyncKuduClient.newScannerBuilder(org.apache.kudu.client.KuduTable)</code></a> in order to get a builder instance.</div>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AsyncKuduScanner.html" title="class in org.apache.kudu.client">AsyncKuduScanner</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduScanner.AsyncKuduScannerBuilder.html#build--">build</a></span>()</code>
+<div class="block">Builds an <a href="../../../../org/apache/kudu/client/AsyncKuduScanner.html" title="class in org.apache.kudu.client"><code>AsyncKuduScanner</code></a> using the passed configurations.</div>
+</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.org.apache.kudu.client.AbstractKuduScannerBuilder">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;org.apache.kudu.client.<a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="class in org.apache.kudu.client">AbstractKuduScannerBuilder</a></h3>
+<code><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#addColumnRangePredicate-org.apache.kudu.client.ColumnRangePredicate-">addColumnRangePredicate</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#addColumnRangePredicatesRaw-byte:A-">addColumnRangePredicatesRaw</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#addPredicate-org.apache.kudu.client.KuduPredicate-">addPredicate</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#batchSizeBytes-int-">batchSizeBytes</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#cacheBlocks-boolean-">cacheBlocks</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#exclusiveUpperBound-org.apache.kudu.client.PartialRow-">exclusiveUpperBound</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#exclusiveUpperBoundRaw-byte:A-">exclusiveUpperBoundRaw</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#limit-long-">limit</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#lowerBound-org.apache.kudu.client.PartialRow-">lowerBound</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#lowerBoundRaw-byte:A-">lowerBoundRaw</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#prefetching-boolean-">prefetching</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#readMode-org.apache.kudu.client.AsyncKuduScanner.ReadMode-">readMode</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#replicaSelection-org.apache.kudu.client.ReplicaSelection-">replicaSelection</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#scanRequestTimeout-long-">scanRequestTimeout</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#setFaultTolerant-boolean-">setFaultTolerant</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#setProjectedColumnIndexes-java.util.List-">setProjectedColumnIndexes</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#setProjectedColumnNames-java.util.List-">setProjectedColumnNames</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#snapshotTimestampMicros-long-">snapshotTimestampMicros</a></code></li>
+</ul>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="build--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>build</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/AsyncKuduScanner.html" title="class in org.apache.kudu.client">AsyncKuduScanner</a>&nbsp;build()</pre>
+<div class="block">Builds an <a href="../../../../org/apache/kudu/client/AsyncKuduScanner.html" title="class in org.apache.kudu.client"><code>AsyncKuduScanner</code></a> using the passed configurations.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#build--">build</a></code>&nbsp;in class&nbsp;<code><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="class in org.apache.kudu.client">AbstractKuduScannerBuilder</a>&lt;<a href="../../../../org/apache/kudu/client/AsyncKuduScanner.AsyncKuduScannerBuilder.html" title="class in org.apache.kudu.client">AsyncKuduScanner.AsyncKuduScannerBuilder</a>,<a href="../../../../org/apache/kudu/client/AsyncKuduScanner.html" title="class in org.apache.kudu.client">AsyncKuduScanner</a>&gt;</code></dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a new <a href="../../../../org/apache/kudu/client/AsyncKuduScanner.html" title="class in org.apache.kudu.client"><code>AsyncKuduScanner</code></a></dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/AsyncKuduScanner.AsyncKuduScannerBuilder.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/AsyncKuduScanner.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/AsyncKuduScanner.ReadMode.html" title="enum in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/AsyncKuduScanner.AsyncKuduScannerBuilder.html" target="_top">Frames</a></li>
+<li><a href="AsyncKuduScanner.AsyncKuduScannerBuilder.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/AsyncKuduScanner.ReadMode.html b/releases/1.4.0/apidocs/org/apache/kudu/client/AsyncKuduScanner.ReadMode.html
new file mode 100644
index 0000000..16b8c1d
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/AsyncKuduScanner.ReadMode.html
@@ -0,0 +1,377 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>AsyncKuduScanner.ReadMode (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="AsyncKuduScanner.ReadMode (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":9,"i1":9};
+var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/AsyncKuduScanner.ReadMode.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/AsyncKuduScanner.AsyncKuduScannerBuilder.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/AsyncKuduSession.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/AsyncKuduScanner.ReadMode.html" target="_top">Frames</a></li>
+<li><a href="AsyncKuduScanner.ReadMode.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#enum.constant.summary">Enum Constants</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li><a href="#enum.constant.detail">Enum Constants</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.client</div>
+<h2 title="Enum AsyncKuduScanner.ReadMode" class="title">Enum AsyncKuduScanner.ReadMode</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang">java.lang.Enum</a>&lt;<a href="../../../../org/apache/kudu/client/AsyncKuduScanner.ReadMode.html" title="enum in org.apache.kudu.client">AsyncKuduScanner.ReadMode</a>&gt;</li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.client.AsyncKuduScanner.ReadMode</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<dl>
+<dt>All Implemented Interfaces:</dt>
+<dd><a href="http://docs.oracle.com/javase/7/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;<a href="../../../../org/apache/kudu/client/AsyncKuduScanner.ReadMode.html" title="enum in org.apache.kudu.client">AsyncKuduScanner.ReadMode</a>&gt;</dd>
+</dl>
+<dl>
+<dt>Enclosing class:</dt>
+<dd><a href="../../../../org/apache/kudu/client/AsyncKuduScanner.html" title="class in org.apache.kudu.client">AsyncKuduScanner</a></dd>
+</dl>
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Evolving
+public static enum <span class="typeNameLabel">AsyncKuduScanner.ReadMode</span>
+extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang">Enum</a>&lt;<a href="../../../../org/apache/kudu/client/AsyncKuduScanner.ReadMode.html" title="enum in org.apache.kudu.client">AsyncKuduScanner.ReadMode</a>&gt;</pre>
+<div class="block">The possible read modes for scanners.</div>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- =========== ENUM CONSTANT SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="enum.constant.summary">
+<!--   -->
+</a>
+<h3>Enum Constant Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Enum Constant Summary table, listing enum constants, and an explanation">
+<caption><span>Enum Constants</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colOne" scope="col">Enum Constant and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduScanner.ReadMode.html#READ_AT_SNAPSHOT">READ_AT_SNAPSHOT</a></span></code>
+<div class="block">When READ_AT_SNAPSHOT is specified the server will attempt to perform a read
+ at the provided timestamp.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduScanner.ReadMode.html#READ_LATEST">READ_LATEST</a></span></code>
+<div class="block">When READ_LATEST is specified the server will always return committed writes at
+ the time the request was received.</div>
+</td>
+</tr>
+</table>
+</li>
+</ul>
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/AsyncKuduScanner.ReadMode.html" title="enum in org.apache.kudu.client">AsyncKuduScanner.ReadMode</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduScanner.ReadMode.html#valueOf-java.lang.String-">valueOf</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
+<div class="block">Returns the enum constant of this type with the specified name.</div>
+</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/AsyncKuduScanner.ReadMode.html" title="enum in org.apache.kudu.client">AsyncKuduScanner.ReadMode</a>[]</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduScanner.ReadMode.html#values--">values</a></span>()</code>
+<div class="block">Returns an array containing the constants of this enum type, in
+the order they are declared.</div>
+</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Enum">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang">Enum</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#compareTo-E-" title="class or interface in java.lang">compareTo</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#getDeclaringClass--" title="class or interface in java.lang">getDeclaringClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#name--" title="class or interface in java.lang">name</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#ordinal--" title="class or interface in java.lang">ordinal</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#valueOf-java.lang.Class-java.lang.String-" title="class or interface in java.lang">valueOf</a></code></li>
+</ul>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ============ ENUM CONSTANT DETAIL =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="enum.constant.detail">
+<!--   -->
+</a>
+<h3>Enum Constant Detail</h3>
+<a name="READ_LATEST">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>READ_LATEST</h4>
+<pre>public static final&nbsp;<a href="../../../../org/apache/kudu/client/AsyncKuduScanner.ReadMode.html" title="enum in org.apache.kudu.client">AsyncKuduScanner.ReadMode</a> READ_LATEST</pre>
+<div class="block">When READ_LATEST is specified the server will always return committed writes at
+ the time the request was received. This type of read does not return a snapshot
+ timestamp and is not repeatable.
+
+ In ACID terms this corresponds to Isolation mode: "Read Committed"
+
+ This is the default mode.</div>
+</li>
+</ul>
+<a name="READ_AT_SNAPSHOT">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>READ_AT_SNAPSHOT</h4>
+<pre>public static final&nbsp;<a href="../../../../org/apache/kudu/client/AsyncKuduScanner.ReadMode.html" title="enum in org.apache.kudu.client">AsyncKuduScanner.ReadMode</a> READ_AT_SNAPSHOT</pre>
+<div class="block">When READ_AT_SNAPSHOT is specified the server will attempt to perform a read
+ at the provided timestamp. If no timestamp is provided the server will take the
+ current time as the snapshot timestamp. In this mode reads are repeatable, i.e.
+ all future reads at the same timestamp will yield the same data. This is
+ performed at the expense of waiting for in-flight transactions whose timestamp
+ is lower than the snapshot's timestamp to complete, so it might incur a latency
+ penalty.
+
+ In ACID terms this, by itself, corresponds to Isolation mode "Repeatable
+ Read". If all writes to the scanned tablet are made externally consistent,
+ then this corresponds to Isolation mode "Strict-Serializable".
+
+ Note: there currently "holes", which happen in rare edge conditions, by which writes
+ are sometimes not externally consistent even when action was taken to make them so.
+ In these cases Isolation may degenerate to mode "Read Committed". See KUDU-430.</div>
+</li>
+</ul>
+</li>
+</ul>
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="values--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>values</h4>
+<pre>public static&nbsp;<a href="../../../../org/apache/kudu/client/AsyncKuduScanner.ReadMode.html" title="enum in org.apache.kudu.client">AsyncKuduScanner.ReadMode</a>[]&nbsp;values()</pre>
+<div class="block">Returns an array containing the constants of this enum type, in
+the order they are declared.  This method may be used to iterate
+over the constants as follows:
+<pre>
+for (AsyncKuduScanner.ReadMode c : AsyncKuduScanner.ReadMode.values())
+&nbsp;   System.out.println(c);
+</pre></div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>an array containing the constants of this enum type, in the order they are declared</dd>
+</dl>
+</li>
+</ul>
+<a name="valueOf-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>valueOf</h4>
+<pre>public static&nbsp;<a href="../../../../org/apache/kudu/client/AsyncKuduScanner.ReadMode.html" title="enum in org.apache.kudu.client">AsyncKuduScanner.ReadMode</a>&nbsp;valueOf(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
+<div class="block">Returns the enum constant of this type with the specified name.
+The string must match <i>exactly</i> an identifier used to declare an
+enum constant in this type.  (Extraneous whitespace characters are 
+not permitted.)</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>name</code> - the name of the enum constant to be returned.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the enum constant with the specified name</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if this enum type has no constant with the specified name</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/NullPointerException.html?is-external=true" title="class or interface in java.lang">NullPointerException</a></code> - if the argument is null</dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/AsyncKuduScanner.ReadMode.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/AsyncKuduScanner.AsyncKuduScannerBuilder.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/AsyncKuduSession.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/AsyncKuduScanner.ReadMode.html" target="_top">Frames</a></li>
+<li><a href="AsyncKuduScanner.ReadMode.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#enum.constant.summary">Enum Constants</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li><a href="#enum.constant.detail">Enum Constants</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/AsyncKuduScanner.html b/releases/1.4.0/apidocs/org/apache/kudu/client/AsyncKuduScanner.html
new file mode 100644
index 0000000..3e6abc6
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/AsyncKuduScanner.html
@@ -0,0 +1,465 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>AsyncKuduScanner (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="AsyncKuduScanner (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10};
+var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/AsyncKuduScanner.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/AsyncKuduScanner.AsyncKuduScannerBuilder.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/AsyncKuduScanner.html" target="_top">Frames</a></li>
+<li><a href="AsyncKuduScanner.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.client</div>
+<h2 title="Class AsyncKuduScanner" class="title">Class AsyncKuduScanner</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.client.AsyncKuduScanner</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Unstable
+public final class <span class="typeNameLabel">AsyncKuduScanner</span>
+extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></pre>
+<div class="block">Creates a scanner to read data from Kudu.
+ <p>
+ This class is <strong>not synchronized</strong> as it's expected to be
+ used from a single thread at a time. It's rarely (if ever?) useful to
+ scan concurrently from a shared scanner using multiple threads. If you
+ want to optimize large table scans using extra parallelism, create a few
+ scanners through the <a href="../../../../org/apache/kudu/client/KuduScanToken.html" title="class in org.apache.kudu.client"><code>KuduScanToken</code></a> API. Or use MapReduce.
+ <p>
+ There's no method in this class to explicitly open the scanner. It will open
+ itself automatically when you start scanning by calling <a href="../../../../org/apache/kudu/client/AsyncKuduScanner.html#nextRows--"><code>nextRows()</code></a>.
+ Also, the scanner will automatically call <a href="../../../../org/apache/kudu/client/AsyncKuduScanner.html#close--"><code>close()</code></a> when it reaches the
+ end key. If, however, you would like to stop scanning <i>before reaching the
+ end key</i>, you <b>must</b> call <a href="../../../../org/apache/kudu/client/AsyncKuduScanner.html#close--"><code>close()</code></a> before disposing of the scanner.
+ Note that it's always safe to call <a href="../../../../org/apache/kudu/client/AsyncKuduScanner.html#close--"><code>close()</code></a> on a scanner.
+ <p>
+ A <code>AsyncKuduScanner</code> is not re-usable. Should you want to scan the same rows
+ or the same table again, you must create a new one.
+
+ <h1>A note on passing <code>byte</code> arrays in argument</h1>
+ None of the method that receive a <code>byte[]</code> in argument will copy it.
+ For more info, please refer to the documentation of <code>KuduRpc</code>.
+ <h1>A note on passing <code>String</code>s in argument</h1>
+ All strings are assumed to use the platform's default charset.</div>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- ======== NESTED CLASS SUMMARY ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="nested.class.summary">
+<!--   -->
+</a>
+<h3>Nested Class Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Nested Class Summary table, listing nested classes, and an explanation">
+<caption><span>Nested Classes</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Class and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static class&nbsp;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduScanner.AsyncKuduScannerBuilder.html" title="class in org.apache.kudu.client">AsyncKuduScanner.AsyncKuduScannerBuilder</a></span></code>
+<div class="block">A Builder class to build <a href="../../../../org/apache/kudu/client/AsyncKuduScanner.html" title="class in org.apache.kudu.client"><code>AsyncKuduScanner</code></a>.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static class&nbsp;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduScanner.ReadMode.html" title="enum in org.apache.kudu.client">AsyncKuduScanner.ReadMode</a></span></code>
+<div class="block">The possible read modes for scanners.</div>
+</td>
+</tr>
+</table>
+</li>
+</ul>
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code>com.stumbleupon.async.Deferred&lt;<a href="../../../../org/apache/kudu/client/RowResultIterator.html" title="class in org.apache.kudu.client">RowResultIterator</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduScanner.html#close--">close</a></span>()</code>
+<div class="block">Closes this scanner (don't forget to call this when you're done with it!).</div>
+</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code>long</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduScanner.html#getBatchSizeBytes--">getBatchSizeBytes</a></span>()</code>
+<div class="block">Returns the maximum number of bytes returned by the scanner, on each batch.</div>
+</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduScanner.html#getCacheBlocks--">getCacheBlocks</a></span>()</code>
+<div class="block">Returns if this scanner was configured to cache data blocks or not.</div>
+</td>
+</tr>
+<tr id="i3" class="rowColor">
+<td class="colFirst"><code>long</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduScanner.html#getLimit--">getLimit</a></span>()</code>
+<div class="block">Returns the maximum number of rows that this scanner was configured to return.</div>
+</td>
+</tr>
+<tr id="i4" class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduScanner.html#getProjectionSchema--">getProjectionSchema</a></span>()</code>
+<div class="block">Returns the projection schema of this scanner.</div>
+</td>
+</tr>
+<tr id="i5" class="rowColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AsyncKuduScanner.ReadMode.html" title="enum in org.apache.kudu.client">AsyncKuduScanner.ReadMode</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduScanner.html#getReadMode--">getReadMode</a></span>()</code>
+<div class="block">Returns the ReadMode for this scanner.</div>
+</td>
+</tr>
+<tr id="i6" class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduScanner.html#hasMoreRows--">hasMoreRows</a></span>()</code>
+<div class="block">Tells if the last rpc returned that there might be more rows to scan.</div>
+</td>
+</tr>
+<tr id="i7" class="rowColor">
+<td class="colFirst"><code>com.stumbleupon.async.Deferred&lt;<a href="../../../../org/apache/kudu/client/RowResultIterator.html" title="class in org.apache.kudu.client">RowResultIterator</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduScanner.html#nextRows--">nextRows</a></span>()</code>
+<div class="block">Scans a number of rows.</div>
+</td>
+</tr>
+<tr id="i8" class="altColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduScanner.html#toString--">toString</a></span>()</code>&nbsp;</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="getLimit--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getLimit</h4>
+<pre>public&nbsp;long&nbsp;getLimit()</pre>
+<div class="block">Returns the maximum number of rows that this scanner was configured to return.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a long representing the maximum number of rows that can be returned</dd>
+</dl>
+</li>
+</ul>
+<a name="hasMoreRows--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>hasMoreRows</h4>
+<pre>public&nbsp;boolean&nbsp;hasMoreRows()</pre>
+<div class="block">Tells if the last rpc returned that there might be more rows to scan.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>true if there might be more data to scan, else false</dd>
+</dl>
+</li>
+</ul>
+<a name="getCacheBlocks--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getCacheBlocks</h4>
+<pre>public&nbsp;boolean&nbsp;getCacheBlocks()</pre>
+<div class="block">Returns if this scanner was configured to cache data blocks or not.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>true if this scanner will cache blocks, else else.</dd>
+</dl>
+</li>
+</ul>
+<a name="getBatchSizeBytes--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getBatchSizeBytes</h4>
+<pre>public&nbsp;long&nbsp;getBatchSizeBytes()</pre>
+<div class="block">Returns the maximum number of bytes returned by the scanner, on each batch.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a long representing the maximum number of bytes that a scanner can receive at once
+ from a tablet server</dd>
+</dl>
+</li>
+</ul>
+<a name="getReadMode--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getReadMode</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/AsyncKuduScanner.ReadMode.html" title="enum in org.apache.kudu.client">AsyncKuduScanner.ReadMode</a>&nbsp;getReadMode()</pre>
+<div class="block">Returns the ReadMode for this scanner.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the configured read mode for this scanner</dd>
+</dl>
+</li>
+</ul>
+<a name="getProjectionSchema--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getProjectionSchema</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a>&nbsp;getProjectionSchema()</pre>
+<div class="block">Returns the projection schema of this scanner. If specific columns were
+ not specified during scanner creation, the table schema is returned.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the projection schema for this scanner</dd>
+</dl>
+</li>
+</ul>
+<a name="nextRows--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>nextRows</h4>
+<pre>public&nbsp;com.stumbleupon.async.Deferred&lt;<a href="../../../../org/apache/kudu/client/RowResultIterator.html" title="class in org.apache.kudu.client">RowResultIterator</a>&gt;&nbsp;nextRows()</pre>
+<div class="block">Scans a number of rows.
+ <p>
+ Once this method returns <code>null</code> once (which indicates that this
+ <code>Scanner</code> is done scanning), calling it again leads to an undefined
+ behavior.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a deferred list of rows.</dd>
+</dl>
+</li>
+</ul>
+<a name="close--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>close</h4>
+<pre>public&nbsp;com.stumbleupon.async.Deferred&lt;<a href="../../../../org/apache/kudu/client/RowResultIterator.html" title="class in org.apache.kudu.client">RowResultIterator</a>&gt;&nbsp;close()</pre>
+<div class="block">Closes this scanner (don't forget to call this when you're done with it!).
+ <p>
+ Closing a scanner already closed has no effect.  The deferred returned
+ will be called back immediately.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>A deferred object that indicates the completion of the request.
+ The <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang"><code>Object</code></a> can be null, a RowResultIterator if there was data left
+ in the scanner, or an Exception.</dd>
+</dl>
+</li>
+</ul>
+<a name="toString--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>toString</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;toString()</pre>
+<dl>
+<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a></code>&nbsp;in class&nbsp;<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/AsyncKuduScanner.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/AsyncKuduScanner.AsyncKuduScannerBuilder.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/AsyncKuduScanner.html" target="_top">Frames</a></li>
+<li><a href="AsyncKuduScanner.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/AsyncKuduSession.html b/releases/1.4.0/apidocs/org/apache/kudu/client/AsyncKuduSession.html
new file mode 100644
index 0000000..f758d43
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/AsyncKuduSession.html
@@ -0,0 +1,754 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>AsyncKuduSession (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="AsyncKuduSession (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10,"i15":10,"i16":10};
+var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/AsyncKuduSession.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/AsyncKuduScanner.ReadMode.html" title="enum in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/ColumnRangePredicate.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/AsyncKuduSession.html" target="_top">Frames</a></li>
+<li><a href="AsyncKuduSession.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.client</div>
+<h2 title="Class AsyncKuduSession" class="title">Class AsyncKuduSession</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.client.AsyncKuduSession</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<dl>
+<dt>All Implemented Interfaces:</dt>
+<dd><a href="../../../../org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client">SessionConfiguration</a></dd>
+</dl>
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Unstable
+ <a href="http://docs.oracle.com/javase/7/docs/api/javax/annotation/concurrent.NotThreadSafe.html?is-external=true" title="class or interface in javax.annotation">@NotThreadSafe</a>
+public class <span class="typeNameLabel">AsyncKuduSession</span>
+extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>
+implements <a href="../../../../org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client">SessionConfiguration</a></pre>
+<div class="block">An <code>AsyncKuduSession</code> belongs to a specific <a href="../../../../org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client"><code>AsyncKuduClient</code></a>, and represents a
+ context in which all write data access should take place. Within a session,
+ multiple operations may be accumulated and batched together for better
+ efficiency. Settings like timeouts, priorities, and trace IDs are also set
+ per session.
+
+ <p><code>AsyncKuduSession</code> is separate from <a href="../../../../org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client"><code>AsyncKuduClient</code></a> because, in a multi-threaded
+ application, different threads may need to concurrently execute
+ transactions. Similar to a JDBC "session", transaction boundaries will be
+ delineated on a per-session basis -- in between a "BeginTransaction" and
+ "Commit" call on a given session, all operations will be part of the same
+ transaction. Meanwhile another concurrent session object can safely run
+ non-transactional work or other transactions without interfering.
+
+ <p>Therefore, this class is <b>not</b> thread-safe.
+
+ <p>Additionally, there is a guarantee that writes from different sessions do not
+ get batched together into the same RPCs -- this means that latency-sensitive
+ clients can run through the same <a href="../../../../org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client"><code>AsyncKuduClient</code></a> object as throughput-oriented
+ clients, perhaps by setting the latency-sensitive session's timeouts low and
+ priorities high. Without the separation of batches, a latency-sensitive
+ single-row insert might get batched along with 10MB worth of inserts from the
+ batch writer, thus delaying the response significantly.
+
+ <p>Timeouts are handled differently depending on the flush mode.
+ With <a href="../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html#AUTO_FLUSH_SYNC"><code>AUTO_FLUSH_SYNC</code></a>, the timeout is set
+ on each <a href="../../../../org/apache/kudu/client/AsyncKuduSession.html#apply-org.apache.kudu.client.Operation-">apply</a>()'d operation.
+ With <a href="../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html#AUTO_FLUSH_BACKGROUND"><code>AUTO_FLUSH_BACKGROUND</code></a> and
+ <a href="../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html#MANUAL_FLUSH"><code>MANUAL_FLUSH</code></a>, the timeout is assigned to a
+ whole batch of operations upon <a href="../../../../org/apache/kudu/client/AsyncKuduSession.html#flush--">flush</a>()'ing. It means that in a situation
+ with a timeout of 500ms and a flush interval of 1000ms, an operation can be outstanding for up to
+ 1500ms before being timed out.
+
+ <p><strong>Warning: a note on out-of-order operations</strong>
+
+ <p>When using <code>AsyncKuduSession</code>, it is not difficult to trigger concurrent flushes on
+ the same session. The result is that operations applied in a particular order within a single
+ session may be applied in a different order on the server side, even for a single tablet. To
+ prevent this behavior, ensure that only one flush is outstanding at a given time (the maximum
+ concurrent flushes per <code>AsyncKuduSession</code> is hard-coded to 2).
+
+ <p>If operation interleaving would be unacceptable for your application, consider using one of
+ the following strategies to avoid it:
+
+ <ol>
+ <li>When using <a href="../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html#MANUAL_FLUSH"><code>MANUAL_FLUSH</code></a> mode,
+ wait for one <a href="../../../../org/apache/kudu/client/AsyncKuduSession.html#flush--"><code>flush()</code></a> to <code>join()</code> before triggering another flush.
+ <li>When using <a href="../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html#AUTO_FLUSH_SYNC"><code>AUTO_FLUSH_SYNC</code></a>
+ mode, wait for each <a href="../../../../org/apache/kudu/client/AsyncKuduSession.html#apply-org.apache.kudu.client.Operation-"><code>apply()</code></a> to <code>join()</code> before applying another operation.
+ <li>Consider not using
+ <a href="../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html#AUTO_FLUSH_BACKGROUND"><code>AUTO_FLUSH_BACKGROUND</code></a> mode.
+ <li>Make your application resilient to out-of-order application of writes.
+ <li>Avoid applying an <a href="../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client"><code>Operation</code></a> on a particular row until any previous write to that
+ row has been successfully flushed.
+ </ol>
+
+ <p>For more information on per-session operation interleaving, see
+ <a href="https://issues.apache.org/jira/browse/KUDU-1767">KUDU-1767</a>.</div>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- ======== NESTED CLASS SUMMARY ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="nested.class.summary">
+<!--   -->
+</a>
+<h3>Nested Class Summary</h3>
+<ul class="blockList">
+<li class="blockList"><a name="nested.classes.inherited.from.class.org.apache.kudu.client.SessionConfiguration">
+<!--   -->
+</a>
+<h3>Nested classes/interfaces inherited from interface&nbsp;org.apache.kudu.client.<a href="../../../../org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client">SessionConfiguration</a></h3>
+<code><a href="../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html" title="enum in org.apache.kudu.client">SessionConfiguration.FlushMode</a></code></li>
+</ul>
+</li>
+</ul>
+<!-- =========== FIELD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="field.summary">
+<!--   -->
+</a>
+<h3>Field Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
+<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Field and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static org.slf4j.Logger</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduSession.html#LOG">LOG</a></span></code>&nbsp;</td>
+</tr>
+</table>
+</li>
+</ul>
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code>com.stumbleupon.async.Deferred&lt;<a href="../../../../org/apache/kudu/client/OperationResponse.html" title="class in org.apache.kudu.client">OperationResponse</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduSession.html#apply-org.apache.kudu.client.Operation-">apply</a></span>(<a href="../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">Operation</a>&nbsp;operation)</code>
+<div class="block">Apply the given operation.</div>
+</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code>com.stumbleupon.async.Deferred&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/apache/kudu/client/OperationResponse.html" title="class in org.apache.kudu.client">OperationResponse</a>&gt;&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduSession.html#close--">close</a></span>()</code>
+<div class="block">Flushes the buffered operations and marks this session as closed.</div>
+</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduSession.html#countPendingErrors--">countPendingErrors</a></span>()</code>
+<div class="block">Return the number of errors which are pending.</div>
+</td>
+</tr>
+<tr id="i3" class="rowColor">
+<td class="colFirst"><code>com.stumbleupon.async.Deferred&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/apache/kudu/client/OperationResponse.html" title="class in org.apache.kudu.client">OperationResponse</a>&gt;&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduSession.html#flush--">flush</a></span>()</code>
+<div class="block">Flush buffered writes.</div>
+</td>
+</tr>
+<tr id="i4" class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html" title="enum in org.apache.kudu.client">SessionConfiguration.FlushMode</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduSession.html#getFlushMode--">getFlushMode</a></span>()</code>
+<div class="block">Get the current flush mode.</div>
+</td>
+</tr>
+<tr id="i5" class="rowColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/RowErrorsAndOverflowStatus.html" title="class in org.apache.kudu.client">RowErrorsAndOverflowStatus</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduSession.html#getPendingErrors--">getPendingErrors</a></span>()</code>
+<div class="block">Return any errors from previous calls.</div>
+</td>
+</tr>
+<tr id="i6" class="altColor">
+<td class="colFirst"><code>long</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduSession.html#getTimeoutMillis--">getTimeoutMillis</a></span>()</code>
+<div class="block">Get the current timeout.</div>
+</td>
+</tr>
+<tr id="i7" class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduSession.html#hasPendingOperations--">hasPendingOperations</a></span>()</code>
+<div class="block">Check if there are operations that haven't been completely applied.</div>
+</td>
+</tr>
+<tr id="i8" class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduSession.html#isClosed--">isClosed</a></span>()</code>
+<div class="block">Returns true if this session has already been closed.</div>
+</td>
+</tr>
+<tr id="i9" class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduSession.html#isIgnoreAllDuplicateRows--">isIgnoreAllDuplicateRows</a></span>()</code>
+<div class="block">Tells if the session is currently ignoring row errors when the whole list returned by a tablet
+ server is of the AlreadyPresent type.</div>
+</td>
+</tr>
+<tr id="i10" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduSession.html#setExternalConsistencyMode-org.apache.kudu.client.ExternalConsistencyMode-">setExternalConsistencyMode</a></span>(<a href="../../../../org/apache/kudu/client/ExternalConsistencyMode.html" title="enum in org.apache.kudu.client">ExternalConsistencyMode</a>&nbsp;consistencyMode)</code>
+<div class="block">Set the new external consistency mode for this session.</div>
+</td>
+</tr>
+<tr id="i11" class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduSession.html#setFlushInterval-int-">setFlushInterval</a></span>(int&nbsp;interval)</code>
+<div class="block">Set the flush interval, which will be used for the next scheduling decision.</div>
+</td>
+</tr>
+<tr id="i12" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduSession.html#setFlushMode-org.apache.kudu.client.SessionConfiguration.FlushMode-">setFlushMode</a></span>(<a href="../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html" title="enum in org.apache.kudu.client">SessionConfiguration.FlushMode</a>&nbsp;flushMode)</code>
+<div class="block">Set the new flush mode for this session.</div>
+</td>
+</tr>
+<tr id="i13" class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduSession.html#setIgnoreAllDuplicateRows-boolean-">setIgnoreAllDuplicateRows</a></span>(boolean&nbsp;ignoreAllDuplicateRows)</code>
+<div class="block">Configures the option to ignore all the row errors if they are all of the AlreadyPresent type.</div>
+</td>
+</tr>
+<tr id="i14" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduSession.html#setMutationBufferLowWatermark-float-">setMutationBufferLowWatermark</a></span>(float&nbsp;mutationBufferLowWatermarkPercentage)</code>
+<div class="block">Set the low watermark for this session.</div>
+</td>
+</tr>
+<tr id="i15" class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduSession.html#setMutationBufferSpace-int-">setMutationBufferSpace</a></span>(int&nbsp;size)</code>
+<div class="block">Set the number of operations that can be buffered.</div>
+</td>
+</tr>
+<tr id="i16" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/AsyncKuduSession.html#setTimeoutMillis-long-">setTimeoutMillis</a></span>(long&nbsp;timeout)</code>
+<div class="block">Sets the timeout for the next applied operations.</div>
+</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ============ FIELD DETAIL =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="field.detail">
+<!--   -->
+</a>
+<h3>Field Detail</h3>
+<a name="LOG">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>LOG</h4>
+<pre>public static final&nbsp;org.slf4j.Logger LOG</pre>
+</li>
+</ul>
+</li>
+</ul>
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="getFlushMode--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getFlushMode</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html" title="enum in org.apache.kudu.client">SessionConfiguration.FlushMode</a>&nbsp;getFlushMode()</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#getFlushMode--">SessionConfiguration</a></code></span></div>
+<div class="block">Get the current flush mode.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#getFlushMode--">getFlushMode</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client">SessionConfiguration</a></code></dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>flush mode, <a href="../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html#AUTO_FLUSH_SYNC"><code>AUTO_FLUSH_SYNC</code></a> by default</dd>
+</dl>
+</li>
+</ul>
+<a name="setFlushMode-org.apache.kudu.client.SessionConfiguration.FlushMode-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setFlushMode</h4>
+<pre>public&nbsp;void&nbsp;setFlushMode(<a href="../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html" title="enum in org.apache.kudu.client">SessionConfiguration.FlushMode</a>&nbsp;flushMode)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#setFlushMode-org.apache.kudu.client.SessionConfiguration.FlushMode-">SessionConfiguration</a></code></span></div>
+<div class="block">Set the new flush mode for this session.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#setFlushMode-org.apache.kudu.client.SessionConfiguration.FlushMode-">setFlushMode</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client">SessionConfiguration</a></code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>flushMode</code> - new flush mode, can be the same as the previous one.</dd>
+</dl>
+</li>
+</ul>
+<a name="setExternalConsistencyMode-org.apache.kudu.client.ExternalConsistencyMode-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setExternalConsistencyMode</h4>
+<pre>public&nbsp;void&nbsp;setExternalConsistencyMode(<a href="../../../../org/apache/kudu/client/ExternalConsistencyMode.html" title="enum in org.apache.kudu.client">ExternalConsistencyMode</a>&nbsp;consistencyMode)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#setExternalConsistencyMode-org.apache.kudu.client.ExternalConsistencyMode-">SessionConfiguration</a></code></span></div>
+<div class="block">Set the new external consistency mode for this session.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#setExternalConsistencyMode-org.apache.kudu.client.ExternalConsistencyMode-">setExternalConsistencyMode</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client">SessionConfiguration</a></code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>consistencyMode</code> - new external consistency mode, can the same as the previous one.</dd>
+</dl>
+</li>
+</ul>
+<a name="setMutationBufferSpace-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setMutationBufferSpace</h4>
+<pre>public&nbsp;void&nbsp;setMutationBufferSpace(int&nbsp;size)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#setMutationBufferSpace-int-">SessionConfiguration</a></code></span></div>
+<div class="block">Set the number of operations that can be buffered.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#setMutationBufferSpace-int-">setMutationBufferSpace</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client">SessionConfiguration</a></code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>size</code> - number of ops.</dd>
+</dl>
+</li>
+</ul>
+<a name="setMutationBufferLowWatermark-float-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setMutationBufferLowWatermark</h4>
+<pre>public&nbsp;void&nbsp;setMutationBufferLowWatermark(float&nbsp;mutationBufferLowWatermarkPercentage)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#setMutationBufferLowWatermark-float-">SessionConfiguration</a></code></span></div>
+<div class="block">Set the low watermark for this session. The default is set to half the mutation buffer space.
+ For example, a buffer space of 1000 with a low watermark set to 50% (0.5) will start randomly
+ sending PleaseRetryExceptions once there's an outstanding flush and the buffer is over 500.
+ As the buffer gets fuller, it becomes likelier to hit the exception.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#setMutationBufferLowWatermark-float-">setMutationBufferLowWatermark</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client">SessionConfiguration</a></code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>mutationBufferLowWatermarkPercentage</code> - a new low watermark as a percentage,
+                             has to be between 0  and 1 (inclusive). A value of 1 disables
+                             the low watermark since it's the same as the high one</dd>
+</dl>
+</li>
+</ul>
+<a name="setFlushInterval-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setFlushInterval</h4>
+<pre>public&nbsp;void&nbsp;setFlushInterval(int&nbsp;interval)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#setFlushInterval-int-">SessionConfiguration</a></code></span></div>
+<div class="block">Set the flush interval, which will be used for the next scheduling decision.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#setFlushInterval-int-">setFlushInterval</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client">SessionConfiguration</a></code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>interval</code> - interval in milliseconds.</dd>
+</dl>
+</li>
+</ul>
+<a name="setTimeoutMillis-long-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setTimeoutMillis</h4>
+<pre>public&nbsp;void&nbsp;setTimeoutMillis(long&nbsp;timeout)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#setTimeoutMillis-long-">SessionConfiguration</a></code></span></div>
+<div class="block">Sets the timeout for the next applied operations.
+ The default timeout is 0, which disables the timeout functionality.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#setTimeoutMillis-long-">setTimeoutMillis</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client">SessionConfiguration</a></code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>timeout</code> - Timeout in milliseconds.</dd>
+</dl>
+</li>
+</ul>
+<a name="getTimeoutMillis--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getTimeoutMillis</h4>
+<pre>public&nbsp;long&nbsp;getTimeoutMillis()</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#getTimeoutMillis--">SessionConfiguration</a></code></span></div>
+<div class="block">Get the current timeout.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#getTimeoutMillis--">getTimeoutMillis</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client">SessionConfiguration</a></code></dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>operation timeout in milliseconds, 0 if none was configured.</dd>
+</dl>
+</li>
+</ul>
+<a name="isClosed--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>isClosed</h4>
+<pre>public&nbsp;boolean&nbsp;isClosed()</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#isClosed--">SessionConfiguration</a></code></span></div>
+<div class="block">Returns true if this session has already been closed.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#isClosed--">isClosed</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client">SessionConfiguration</a></code></dd>
+</dl>
+</li>
+</ul>
+<a name="isIgnoreAllDuplicateRows--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>isIgnoreAllDuplicateRows</h4>
+<pre>public&nbsp;boolean&nbsp;isIgnoreAllDuplicateRows()</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#isIgnoreAllDuplicateRows--">SessionConfiguration</a></code></span></div>
+<div class="block">Tells if the session is currently ignoring row errors when the whole list returned by a tablet
+ server is of the AlreadyPresent type.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#isIgnoreAllDuplicateRows--">isIgnoreAllDuplicateRows</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client">SessionConfiguration</a></code></dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>true if the session is enforcing this, else false</dd>
+</dl>
+</li>
+</ul>
+<a name="setIgnoreAllDuplicateRows-boolean-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setIgnoreAllDuplicateRows</h4>
+<pre>public&nbsp;void&nbsp;setIgnoreAllDuplicateRows(boolean&nbsp;ignoreAllDuplicateRows)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#setIgnoreAllDuplicateRows-boolean-">SessionConfiguration</a></code></span></div>
+<div class="block">Configures the option to ignore all the row errors if they are all of the AlreadyPresent type.
+ This can be needed when facing KUDU-568. The effect of enabling this is that operation
+ responses that match this pattern will be cleared of their row errors, meaning that we consider
+ them successful.
+
+ <p>Disabled by default.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#setIgnoreAllDuplicateRows-boolean-">setIgnoreAllDuplicateRows</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client">SessionConfiguration</a></code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>ignoreAllDuplicateRows</code> - true if this session should enforce this, else false</dd>
+</dl>
+</li>
+</ul>
+<a name="countPendingErrors--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>countPendingErrors</h4>
+<pre>public&nbsp;int&nbsp;countPendingErrors()</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#countPendingErrors--">SessionConfiguration</a></code></span></div>
+<div class="block">Return the number of errors which are pending. Errors may accumulate when
+ using <a href="../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html#AUTO_FLUSH_BACKGROUND"><code>AUTO_FLUSH_BACKGROUND</code></a> mode.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#countPendingErrors--">countPendingErrors</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client">SessionConfiguration</a></code></dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a count of errors</dd>
+</dl>
+</li>
+</ul>
+<a name="getPendingErrors--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getPendingErrors</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/RowErrorsAndOverflowStatus.html" title="class in org.apache.kudu.client">RowErrorsAndOverflowStatus</a>&nbsp;getPendingErrors()</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#getPendingErrors--">SessionConfiguration</a></code></span></div>
+<div class="block">Return any errors from previous calls. If there were more errors
+ than could be held in the session's error storage, the overflow state is set to true.
+
+ <p>Clears the pending errors.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#getPendingErrors--">getPendingErrors</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client">SessionConfiguration</a></code></dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>an object that contains the errors and the overflow status</dd>
+</dl>
+</li>
+</ul>
+<a name="close--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>close</h4>
+<pre>public&nbsp;com.stumbleupon.async.Deferred&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/apache/kudu/client/OperationResponse.html" title="class in org.apache.kudu.client">OperationResponse</a>&gt;&gt;&nbsp;close()</pre>
+<div class="block">Flushes the buffered operations and marks this session as closed.
+ See the javadoc on <a href="../../../../org/apache/kudu/client/AsyncKuduSession.html#flush--"><code>flush()</code></a> on how to deal with exceptions coming out of this method.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a Deferred whose callback chain will be invoked when.
+ everything that was buffered at the time of the call has been flushed.</dd>
+</dl>
+</li>
+</ul>
+<a name="flush--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>flush</h4>
+<pre>public&nbsp;com.stumbleupon.async.Deferred&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/apache/kudu/client/OperationResponse.html" title="class in org.apache.kudu.client">OperationResponse</a>&gt;&gt;&nbsp;flush()</pre>
+<div class="block">Flush buffered writes.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a <code>Deferred</code> whose callback chain will be invoked when all applied operations at
+         the time of the call have been flushed.</dd>
+</dl>
+</li>
+</ul>
+<a name="hasPendingOperations--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>hasPendingOperations</h4>
+<pre>public&nbsp;boolean&nbsp;hasPendingOperations()</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#hasPendingOperations--">SessionConfiguration</a></code></span></div>
+<div class="block">Check if there are operations that haven't been completely applied.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#hasPendingOperations--">hasPendingOperations</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client">SessionConfiguration</a></code></dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>true if operations are pending, else false.</dd>
+</dl>
+</li>
+</ul>
+<a name="apply-org.apache.kudu.client.Operation-">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>apply</h4>
+<pre>public&nbsp;com.stumbleupon.async.Deferred&lt;<a href="../../../../org/apache/kudu/client/OperationResponse.html" title="class in org.apache.kudu.client">OperationResponse</a>&gt;&nbsp;apply(<a href="../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">Operation</a>&nbsp;operation)
+                                                        throws <a href="../../../../org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client">KuduException</a></pre>
+<div class="block">Apply the given operation.
+ <p>
+ The behavior of this method depends on the configured
+ <a href="../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html" title="enum in org.apache.kudu.client"><code>FlushMode</code></a>. Regardless
+ of flush mode, however, <code>apply()</code> may begin to perform processing in the background
+ for the call (e.g looking up the tablet location, etc).</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>operation</code> - operation to apply</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a Deferred to track this operation</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="../../../../org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client">KuduException</a></code> - if an error happens or <a href="../../../../org/apache/kudu/client/PleaseThrottleException.html" title="class in org.apache.kudu.client"><code>PleaseThrottleException</code></a> is triggered</dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html" title="enum in org.apache.kudu.client"><code>FlushMode</code></a></dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/AsyncKuduSession.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/AsyncKuduScanner.ReadMode.html" title="enum in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/ColumnRangePredicate.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/AsyncKuduSession.html" target="_top">Frames</a></li>
+<li><a href="AsyncKuduSession.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/ColumnRangePredicate.html b/releases/1.4.0/apidocs/org/apache/kudu/client/ColumnRangePredicate.html
new file mode 100644
index 0000000..3a989d8
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/ColumnRangePredicate.html
@@ -0,0 +1,796 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>ColumnRangePredicate (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="ColumnRangePredicate (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":42,"i1":42,"i2":42,"i3":42,"i4":42,"i5":42,"i6":42,"i7":42,"i8":42,"i9":42,"i10":42,"i11":42,"i12":42,"i13":42,"i14":42,"i15":42,"i16":42,"i17":42,"i18":42,"i19":42,"i20":42,"i21":41,"i22":42};
+var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"],32:["t6","Deprecated Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/ColumnRangePredicate.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/AsyncKuduSession.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/ColumnRangePredicate.html" target="_top">Frames</a></li>
+<li><a href="ColumnRangePredicate.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.client</div>
+<h2 title="Class ColumnRangePredicate" class="title">Class ColumnRangePredicate</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.client.ColumnRangePredicate</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<hr>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;
+<div class="block"><span class="deprecationComment">use the <a href="../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client"><code>KuduPredicate</code></a> class instead.</span></div>
+</div>
+<br>
+<pre>@InterfaceAudience.Public
+ <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang">@Deprecated</a>
+public class <span class="typeNameLabel">ColumnRangePredicate</span>
+extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></pre>
+<div class="block">A range predicate on one of the columns in the underlying data.
+ Both boundaries are inclusive.</div>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="constructor.summary">
+<!--   -->
+</a>
+<h3>Constructor Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
+<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colOne" scope="col">Constructor and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/ColumnRangePredicate.html#ColumnRangePredicate-org.apache.kudu.ColumnSchema-">ColumnRangePredicate</a></span>(<a href="../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a>&nbsp;column)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+<div class="block">Create the predicate on the specified column</div>
+</td>
+</tr>
+</table>
+</li>
+</ul>
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t6" class="tableTab"><span><a href="javascript:show(32);">Deprecated Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/ColumnRangePredicate.html#getColumn--">getColumn</a></span>()</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+<div class="block">Get the column used by this predicate</div>
+</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code>byte[]</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/ColumnRangePredicate.html#getLowerBound--">getLowerBound</a></span>()</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+<div class="block">Get the lower bound in its raw representation</div>
+</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code>byte[]</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/ColumnRangePredicate.html#getUpperBound--">getUpperBound</a></span>()</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+<div class="block">Get the upper bound in its raw representation</div>
+</td>
+</tr>
+<tr id="i3" class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/ColumnRangePredicate.html#setLowerBound-boolean-">setLowerBound</a></span>(boolean&nbsp;lowerBound)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+<div class="block">Set a boolean for the lower bound</div>
+</td>
+</tr>
+<tr id="i4" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/ColumnRangePredicate.html#setLowerBound-byte-">setLowerBound</a></span>(byte&nbsp;lowerBound)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+<div class="block">Set a byte for the lower bound</div>
+</td>
+</tr>
+<tr id="i5" class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/ColumnRangePredicate.html#setLowerBound-byte:A-">setLowerBound</a></span>(byte[]&nbsp;lowerBound)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+<div class="block">Set a binary value for the lower bound</div>
+</td>
+</tr>
+<tr id="i6" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/ColumnRangePredicate.html#setLowerBound-double-">setLowerBound</a></span>(double&nbsp;lowerBound)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+<div class="block">Set a double for the lower bound</div>
+</td>
+</tr>
+<tr id="i7" class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/ColumnRangePredicate.html#setLowerBound-float-">setLowerBound</a></span>(float&nbsp;lowerBound)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+<div class="block">Set a float for the lower bound</div>
+</td>
+</tr>
+<tr id="i8" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/ColumnRangePredicate.html#setLowerBound-int-">setLowerBound</a></span>(int&nbsp;lowerBound)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+<div class="block">Set an int for the lower bound</div>
+</td>
+</tr>
+<tr id="i9" class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/ColumnRangePredicate.html#setLowerBound-long-">setLowerBound</a></span>(long&nbsp;lowerBound)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+<div class="block">Set a long for the lower bound
+
+ If 'lowerBound' is a timestamp see <a href="../../../../org/apache/kudu/client/PartialRow.html#addLong-java.lang.String-long-"><code>PartialRow.addLong(String, long)</code></a> for the
+ format.</div>
+</td>
+</tr>
+<tr id="i10" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/ColumnRangePredicate.html#setLowerBound-short-">setLowerBound</a></span>(short&nbsp;lowerBound)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+<div class="block">Set a short for the lower bound</div>
+</td>
+</tr>
+<tr id="i11" class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/ColumnRangePredicate.html#setLowerBound-java.lang.String-">setLowerBound</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;lowerBound)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+<div class="block">Set a string for the lower bound</div>
+</td>
+</tr>
+<tr id="i12" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/ColumnRangePredicate.html#setUpperBound-boolean-">setUpperBound</a></span>(boolean&nbsp;upperBound)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+<div class="block">Set a boolean for the upper bound</div>
+</td>
+</tr>
+<tr id="i13" class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/ColumnRangePredicate.html#setUpperBound-byte-">setUpperBound</a></span>(byte&nbsp;upperBound)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+<div class="block">Set a byte for the upper bound</div>
+</td>
+</tr>
+<tr id="i14" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/ColumnRangePredicate.html#setUpperBound-byte:A-">setUpperBound</a></span>(byte[]&nbsp;upperBound)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+<div class="block">Set a binary value for the upper bound</div>
+</td>
+</tr>
+<tr id="i15" class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/ColumnRangePredicate.html#setUpperBound-double-">setUpperBound</a></span>(double&nbsp;upperBound)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+<div class="block">Set a double for the upper bound</div>
+</td>
+</tr>
+<tr id="i16" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/ColumnRangePredicate.html#setUpperBound-float-">setUpperBound</a></span>(float&nbsp;upperBound)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+<div class="block">Set a float for the upper bound</div>
+</td>
+</tr>
+<tr id="i17" class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/ColumnRangePredicate.html#setUpperBound-int-">setUpperBound</a></span>(int&nbsp;upperBound)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+<div class="block">Set an int for the upper bound</div>
+</td>
+</tr>
+<tr id="i18" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/ColumnRangePredicate.html#setUpperBound-long-">setUpperBound</a></span>(long&nbsp;upperBound)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+<div class="block">Set a long for the upper bound
+
+ If 'upperBound' is a timestamp see <a href="../../../../org/apache/kudu/client/PartialRow.html#addLong-java.lang.String-long-"><code>PartialRow.addLong(String, long)</code></a> for the
+ format.</div>
+</td>
+</tr>
+<tr id="i19" class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/ColumnRangePredicate.html#setUpperBound-short-">setUpperBound</a></span>(short&nbsp;upperBound)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+<div class="block">Set a short for the upper bound</div>
+</td>
+</tr>
+<tr id="i20" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/ColumnRangePredicate.html#setUpperBound-java.lang.String-">setUpperBound</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;upperBound)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+<div class="block">Set a string for the upper bound</div>
+</td>
+</tr>
+<tr id="i21" class="rowColor">
+<td class="colFirst"><code>static byte[]</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/ColumnRangePredicate.html#toByteArray-java.util.List-">toByteArray</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/apache/kudu/client/ColumnRangePredicate.html" title="class in org.apache.kudu.client">ColumnRangePredicate</a>&gt;&nbsp;predicates)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+<div class="block">Converts a list of predicates into an opaque byte array.</div>
+</td>
+</tr>
+<tr id="i22" class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/ColumnRangePredicate.html#toKuduPredicate--">toKuduPredicate</a></span>()</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+<div class="block">Convert this column range predicate into a <a href="../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client"><code>KuduPredicate</code></a>.</div>
+</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="constructor.detail">
+<!--   -->
+</a>
+<h3>Constructor Detail</h3>
+<a name="ColumnRangePredicate-org.apache.kudu.ColumnSchema-">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>ColumnRangePredicate</h4>
+<pre>public&nbsp;ColumnRangePredicate(<a href="../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a>&nbsp;column)</pre>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+<div class="block">Create the predicate on the specified column</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>column</code> - </dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="toKuduPredicate--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>toKuduPredicate</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a>&nbsp;toKuduPredicate()</pre>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+<div class="block">Convert this column range predicate into a <a href="../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client"><code>KuduPredicate</code></a>.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the column predicate.</dd>
+</dl>
+</li>
+</ul>
+<a name="setLowerBound-boolean-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setLowerBound</h4>
+<pre>public&nbsp;void&nbsp;setLowerBound(boolean&nbsp;lowerBound)</pre>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+<div class="block">Set a boolean for the lower bound</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>lowerBound</code> - value for the lower bound</dd>
+</dl>
+</li>
+</ul>
+<a name="setLowerBound-byte-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setLowerBound</h4>
+<pre>public&nbsp;void&nbsp;setLowerBound(byte&nbsp;lowerBound)</pre>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+<div class="block">Set a byte for the lower bound</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>lowerBound</code> - value for the lower bound</dd>
+</dl>
+</li>
+</ul>
+<a name="setLowerBound-short-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setLowerBound</h4>
+<pre>public&nbsp;void&nbsp;setLowerBound(short&nbsp;lowerBound)</pre>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+<div class="block">Set a short for the lower bound</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>lowerBound</code> - value for the lower bound</dd>
+</dl>
+</li>
+</ul>
+<a name="setLowerBound-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setLowerBound</h4>
+<pre>public&nbsp;void&nbsp;setLowerBound(int&nbsp;lowerBound)</pre>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+<div class="block">Set an int for the lower bound</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>lowerBound</code> - value for the lower bound</dd>
+</dl>
+</li>
+</ul>
+<a name="setLowerBound-long-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setLowerBound</h4>
+<pre>public&nbsp;void&nbsp;setLowerBound(long&nbsp;lowerBound)</pre>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+<div class="block">Set a long for the lower bound
+
+ If 'lowerBound' is a timestamp see <a href="../../../../org/apache/kudu/client/PartialRow.html#addLong-java.lang.String-long-"><code>PartialRow.addLong(String, long)</code></a> for the
+ format.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>lowerBound</code> - value for the lower bound</dd>
+</dl>
+</li>
+</ul>
+<a name="setLowerBound-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setLowerBound</h4>
+<pre>public&nbsp;void&nbsp;setLowerBound(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;lowerBound)</pre>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+<div class="block">Set a string for the lower bound</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>lowerBound</code> - value for the lower bound</dd>
+</dl>
+</li>
+</ul>
+<a name="setLowerBound-byte:A-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setLowerBound</h4>
+<pre>public&nbsp;void&nbsp;setLowerBound(byte[]&nbsp;lowerBound)</pre>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+<div class="block">Set a binary value for the lower bound</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>lowerBound</code> - value for the lower bound</dd>
+</dl>
+</li>
+</ul>
+<a name="setLowerBound-float-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setLowerBound</h4>
+<pre>public&nbsp;void&nbsp;setLowerBound(float&nbsp;lowerBound)</pre>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+<div class="block">Set a float for the lower bound</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>lowerBound</code> - value for the lower bound</dd>
+</dl>
+</li>
+</ul>
+<a name="setLowerBound-double-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setLowerBound</h4>
+<pre>public&nbsp;void&nbsp;setLowerBound(double&nbsp;lowerBound)</pre>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+<div class="block">Set a double for the lower bound</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>lowerBound</code> - value for the lower bound</dd>
+</dl>
+</li>
+</ul>
+<a name="setUpperBound-boolean-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setUpperBound</h4>
+<pre>public&nbsp;void&nbsp;setUpperBound(boolean&nbsp;upperBound)</pre>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+<div class="block">Set a boolean for the upper bound</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>upperBound</code> - value for the upper bound</dd>
+</dl>
+</li>
+</ul>
+<a name="setUpperBound-byte-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setUpperBound</h4>
+<pre>public&nbsp;void&nbsp;setUpperBound(byte&nbsp;upperBound)</pre>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+<div class="block">Set a byte for the upper bound</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>upperBound</code> - value for the upper bound</dd>
+</dl>
+</li>
+</ul>
+<a name="setUpperBound-short-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setUpperBound</h4>
+<pre>public&nbsp;void&nbsp;setUpperBound(short&nbsp;upperBound)</pre>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+<div class="block">Set a short for the upper bound</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>upperBound</code> - value for the upper bound</dd>
+</dl>
+</li>
+</ul>
+<a name="setUpperBound-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setUpperBound</h4>
+<pre>public&nbsp;void&nbsp;setUpperBound(int&nbsp;upperBound)</pre>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+<div class="block">Set an int for the upper bound</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>upperBound</code> - value for the upper bound</dd>
+</dl>
+</li>
+</ul>
+<a name="setUpperBound-long-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setUpperBound</h4>
+<pre>public&nbsp;void&nbsp;setUpperBound(long&nbsp;upperBound)</pre>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+<div class="block">Set a long for the upper bound
+
+ If 'upperBound' is a timestamp see <a href="../../../../org/apache/kudu/client/PartialRow.html#addLong-java.lang.String-long-"><code>PartialRow.addLong(String, long)</code></a> for the
+ format.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>upperBound</code> - value for the upper bound</dd>
+</dl>
+</li>
+</ul>
+<a name="setUpperBound-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setUpperBound</h4>
+<pre>public&nbsp;void&nbsp;setUpperBound(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;upperBound)</pre>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+<div class="block">Set a string for the upper bound</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>upperBound</code> - value for the upper bound</dd>
+</dl>
+</li>
+</ul>
+<a name="setUpperBound-byte:A-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setUpperBound</h4>
+<pre>public&nbsp;void&nbsp;setUpperBound(byte[]&nbsp;upperBound)</pre>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+<div class="block">Set a binary value for the upper bound</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>upperBound</code> - value for the upper bound</dd>
+</dl>
+</li>
+</ul>
+<a name="setUpperBound-float-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setUpperBound</h4>
+<pre>public&nbsp;void&nbsp;setUpperBound(float&nbsp;upperBound)</pre>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+<div class="block">Set a float for the upper bound</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>upperBound</code> - value for the upper bound</dd>
+</dl>
+</li>
+</ul>
+<a name="setUpperBound-double-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setUpperBound</h4>
+<pre>public&nbsp;void&nbsp;setUpperBound(double&nbsp;upperBound)</pre>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+<div class="block">Set a double for the upper bound</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>upperBound</code> - value for the upper bound</dd>
+</dl>
+</li>
+</ul>
+<a name="getColumn--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getColumn</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a>&nbsp;getColumn()</pre>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+<div class="block">Get the column used by this predicate</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the column</dd>
+</dl>
+</li>
+</ul>
+<a name="getLowerBound--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getLowerBound</h4>
+<pre>public&nbsp;byte[]&nbsp;getLowerBound()</pre>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+<div class="block">Get the lower bound in its raw representation</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>lower bound as a byte array</dd>
+</dl>
+</li>
+</ul>
+<a name="getUpperBound--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getUpperBound</h4>
+<pre>public&nbsp;byte[]&nbsp;getUpperBound()</pre>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+<div class="block">Get the upper bound in its raw representation</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>upper bound as a byte array</dd>
+</dl>
+</li>
+</ul>
+<a name="toByteArray-java.util.List-">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>toByteArray</h4>
+<pre>public static&nbsp;byte[]&nbsp;toByteArray(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/apache/kudu/client/ColumnRangePredicate.html" title="class in org.apache.kudu.client">ColumnRangePredicate</a>&gt;&nbsp;predicates)</pre>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+<div class="block">Converts a list of predicates into an opaque byte array. This is a convenience method for use
+ cases that require passing predicates as messages.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>predicates</code> - a list of predicates</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>an opaque byte array, or null if the list was empty</dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/ColumnRangePredicate.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/AsyncKuduSession.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/ColumnRangePredicate.html" target="_top">Frames</a></li>
+<li><a href="ColumnRangePredicate.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/CreateTableOptions.html b/releases/1.4.0/apidocs/org/apache/kudu/client/CreateTableOptions.html
new file mode 100644
index 0000000..19ecddb
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/CreateTableOptions.html
@@ -0,0 +1,488 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>CreateTableOptions (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="CreateTableOptions (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10};
+var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/CreateTableOptions.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/ColumnRangePredicate.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/Delete.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/CreateTableOptions.html" target="_top">Frames</a></li>
+<li><a href="CreateTableOptions.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.client</div>
+<h2 title="Class CreateTableOptions" class="title">Class CreateTableOptions</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.client.CreateTableOptions</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Evolving
+public class <span class="typeNameLabel">CreateTableOptions</span>
+extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></pre>
+<div class="block">This is a builder class for all the options that can be provided while creating a table.</div>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="constructor.summary">
+<!--   -->
+</a>
+<h3>Constructor Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
+<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colOne" scope="col">Constructor and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/CreateTableOptions.html#CreateTableOptions--">CreateTableOptions</a></span>()</code>&nbsp;</td>
+</tr>
+</table>
+</li>
+</ul>
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client">CreateTableOptions</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/CreateTableOptions.html#addHashPartitions-java.util.List-int-">addHashPartitions</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;columns,
+                 int&nbsp;buckets)</code>
+<div class="block">Add a set of hash partitions to the table.</div>
+</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client">CreateTableOptions</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/CreateTableOptions.html#addHashPartitions-java.util.List-int-int-">addHashPartitions</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;columns,
+                 int&nbsp;buckets,
+                 int&nbsp;seed)</code>
+<div class="block">Add a set of hash partitions to the table.</div>
+</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client">CreateTableOptions</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/CreateTableOptions.html#addRangePartition-org.apache.kudu.client.PartialRow-org.apache.kudu.client.PartialRow-">addRangePartition</a></span>(<a href="../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;lower,
+                 <a href="../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;upper)</code>
+<div class="block">Add a range partition partition to the table with an inclusive lower bound
+ and an exclusive upper bound.</div>
+</td>
+</tr>
+<tr id="i3" class="rowColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client">CreateTableOptions</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/CreateTableOptions.html#addRangePartition-org.apache.kudu.client.PartialRow-org.apache.kudu.client.PartialRow-org.apache.kudu.client.RangePartitionBound-org.apache.kudu.client.RangePartitionBound-">addRangePartition</a></span>(<a href="../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;lower,
+                 <a href="../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;upper,
+                 <a href="../../../../org/apache/kudu/client/RangePartitionBound.html" title="enum in org.apache.kudu.client">RangePartitionBound</a>&nbsp;lowerBoundType,
+                 <a href="../../../../org/apache/kudu/client/RangePartitionBound.html" title="enum in org.apache.kudu.client">RangePartitionBound</a>&nbsp;upperBoundType)</code>
+<div class="block">Add a range partition partition to the table with a lower bound and upper
+ bound.</div>
+</td>
+</tr>
+<tr id="i4" class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client">CreateTableOptions</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/CreateTableOptions.html#addSplitRow-org.apache.kudu.client.PartialRow-">addSplitRow</a></span>(<a href="../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;row)</code>
+<div class="block">Add a range partition split.</div>
+</td>
+</tr>
+<tr id="i5" class="rowColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client">CreateTableOptions</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/CreateTableOptions.html#setNumReplicas-int-">setNumReplicas</a></span>(int&nbsp;numReplicas)</code>
+<div class="block">Sets the number of replicas that each tablet will have.</div>
+</td>
+</tr>
+<tr id="i6" class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client">CreateTableOptions</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/CreateTableOptions.html#setRangePartitionColumns-java.util.List-">setRangePartitionColumns</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;columns)</code>
+<div class="block">Set the columns on which the table will be range-partitioned.</div>
+</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="constructor.detail">
+<!--   -->
+</a>
+<h3>Constructor Detail</h3>
+<a name="CreateTableOptions--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>CreateTableOptions</h4>
+<pre>public&nbsp;CreateTableOptions()</pre>
+</li>
+</ul>
+</li>
+</ul>
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="addHashPartitions-java.util.List-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>addHashPartitions</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client">CreateTableOptions</a>&nbsp;addHashPartitions(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;columns,
+                                            int&nbsp;buckets)</pre>
+<div class="block">Add a set of hash partitions to the table.
+
+ Each column must be a part of the table's primary key, and an individual
+ column may only appear in a single hash component.
+
+ For each set of hash partitions added to the table, the total number of
+ table partitions is multiplied by the number of buckets. For example, if a
+ table is created with 3 split rows, and two hash partitions with 4 and 5
+ buckets respectively, the total number of table partitions will be 80
+ (4 range partitions * 4 hash buckets * 5 hash buckets).</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columns</code> - the columns to hash</dd>
+<dd><code>buckets</code> - the number of buckets to hash into</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>this instance</dd>
+</dl>
+</li>
+</ul>
+<a name="addHashPartitions-java.util.List-int-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>addHashPartitions</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client">CreateTableOptions</a>&nbsp;addHashPartitions(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;columns,
+                                            int&nbsp;buckets,
+                                            int&nbsp;seed)</pre>
+<div class="block">Add a set of hash partitions to the table.
+
+ This constructor takes a seed value, which can be used to randomize the
+ mapping of rows to hash buckets. Setting the seed may provide some
+ amount of protection against denial of service attacks when the hashed
+ columns contain user provided values.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columns</code> - the columns to hash</dd>
+<dd><code>buckets</code> - the number of buckets to hash into</dd>
+<dd><code>seed</code> - a hash seed</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>this instance</dd>
+</dl>
+</li>
+</ul>
+<a name="setRangePartitionColumns-java.util.List-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setRangePartitionColumns</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client">CreateTableOptions</a>&nbsp;setRangePartitionColumns(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;columns)</pre>
+<div class="block">Set the columns on which the table will be range-partitioned.
+
+ Every column must be a part of the table's primary key. If not set or if
+ called with an empty vector, the table will be created without range
+ partitioning.
+
+ Tables must be created with either range, hash, or range and hash
+ partitioning. To force the use of a single tablet (not recommended),
+ call this method with an empty list and set no split rows and no hash
+ partitions.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columns</code> - the range partitioned columns</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>this instance</dd>
+</dl>
+</li>
+</ul>
+<a name="addRangePartition-org.apache.kudu.client.PartialRow-org.apache.kudu.client.PartialRow-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>addRangePartition</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client">CreateTableOptions</a>&nbsp;addRangePartition(<a href="../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;lower,
+                                            <a href="../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;upper)</pre>
+<div class="block">Add a range partition partition to the table with an inclusive lower bound
+ and an exclusive upper bound.
+
+ If either row is empty, then that end of the range will be unbounded. If a
+ range column is missing a value, the logical minimum value for that column
+ type will be used as the default.
+
+ Multiple range bounds may be added, but they must not overlap. All split
+ rows must fall in one of the range bounds. The lower bound must be less
+ than the upper bound.
+
+ If not provided, the table's range will be unbounded.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>lower</code> - the inclusive lower bound</dd>
+<dd><code>upper</code> - the exclusive upper bound</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>this instance</dd>
+</dl>
+</li>
+</ul>
+<a name="addRangePartition-org.apache.kudu.client.PartialRow-org.apache.kudu.client.PartialRow-org.apache.kudu.client.RangePartitionBound-org.apache.kudu.client.RangePartitionBound-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>addRangePartition</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client">CreateTableOptions</a>&nbsp;addRangePartition(<a href="../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;lower,
+                                            <a href="../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;upper,
+                                            <a href="../../../../org/apache/kudu/client/RangePartitionBound.html" title="enum in org.apache.kudu.client">RangePartitionBound</a>&nbsp;lowerBoundType,
+                                            <a href="../../../../org/apache/kudu/client/RangePartitionBound.html" title="enum in org.apache.kudu.client">RangePartitionBound</a>&nbsp;upperBoundType)</pre>
+<div class="block">Add a range partition partition to the table with a lower bound and upper
+ bound.
+
+ If either row is empty, then that end of the range will be unbounded. If a
+ range column is missing a value, the logical minimum value for that column
+ type will be used as the default.
+
+ Multiple range bounds may be added, but they must not overlap. All split
+ rows must fall in one of the range bounds. The lower bound must be less
+ than the upper bound.
+
+ If not provided, the table's range will be unbounded.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>lower</code> - the lower bound</dd>
+<dd><code>upper</code> - the upper bound</dd>
+<dd><code>lowerBoundType</code> - the type of the lower bound, either inclusive or exclusive</dd>
+<dd><code>upperBoundType</code> - the type of the upper bound, either inclusive or exclusive</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>this instance</dd>
+</dl>
+</li>
+</ul>
+<a name="addSplitRow-org.apache.kudu.client.PartialRow-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>addSplitRow</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client">CreateTableOptions</a>&nbsp;addSplitRow(<a href="../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;row)</pre>
+<div class="block">Add a range partition split. The split row must fall in a range partition,
+ and causes the range partition to split into two contiguous range partitions.
+ The row may be reused or modified safely after this call without changing
+ the split point.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>row</code> - a key row for the split point</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>this instance</dd>
+</dl>
+</li>
+</ul>
+<a name="setNumReplicas-int-">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>setNumReplicas</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client">CreateTableOptions</a>&nbsp;setNumReplicas(int&nbsp;numReplicas)</pre>
+<div class="block">Sets the number of replicas that each tablet will have. If not specified, it uses the
+ server-side default which is usually 3 unless changed by an administrator.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>numReplicas</code> - the number of replicas to use</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>this instance</dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/CreateTableOptions.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/ColumnRangePredicate.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/Delete.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/CreateTableOptions.html" target="_top">Frames</a></li>
+<li><a href="CreateTableOptions.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/Delete.html b/releases/1.4.0/apidocs/org/apache/kudu/client/Delete.html
new file mode 100644
index 0000000..9a7bc9b
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/Delete.html
@@ -0,0 +1,242 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Delete (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Delete (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/Delete.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/DeleteTableResponse.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/Delete.html" target="_top">Frames</a></li>
+<li><a href="Delete.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#fields.inherited.from.class.org.apache.kudu.client.KuduRpc">Field</a>&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#methods.inherited.from.class.org.apache.kudu.client.Operation">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li>Method</li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.client</div>
+<h2 title="Class Delete" class="title">Class Delete</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.client.KuduRpc&lt;<a href="../../../../org/apache/kudu/client/OperationResponse.html" title="class in org.apache.kudu.client">OperationResponse</a>&gt;</li>
+<li>
+<ul class="inheritance">
+<li><a href="../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">org.apache.kudu.client.Operation</a></li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.client.Delete</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Evolving
+public class <span class="typeNameLabel">Delete</span>
+extends <a href="../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">Operation</a></pre>
+<div class="block">Class of Operation for whole row removals.
+ Only columns which are part of the key can be set.
+ Instances of this class should not be reused.</div>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- =========== FIELD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="field.summary">
+<!--   -->
+</a>
+<h3>Field Summary</h3>
+<ul class="blockList">
+<li class="blockList"><a name="fields.inherited.from.class.org.apache.kudu.client.KuduRpc">
+<!--   -->
+</a>
+<h3>Fields inherited from class&nbsp;org.apache.kudu.client.KuduRpc</h3>
+<code>externalConsistencyMode, MASTER_SERVICE_NAME, MAX_TRACES_SIZE, propagatedTimestamp, TABLET_SERVER_SERVICE_NAME</code></li>
+</ul>
+</li>
+</ul>
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.org.apache.kudu.client.Operation">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;org.apache.kudu.client.<a href="../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">Operation</a></h3>
+<code><a href="../../../../org/apache/kudu/client/Operation.html#getRow--">getRow</a>, <a href="../../../../org/apache/kudu/client/Operation.html#partitionKey--">partitionKey</a></code></li>
+</ul>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.org.apache.kudu.client.KuduRpc">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;org.apache.kudu.client.KuduRpc</h3>
+<code>getExternalConsistencyMode, getTable, setExternalConsistencyMode, setPropagatedTimestamp, toString</code></li>
+</ul>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/Delete.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/DeleteTableResponse.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/Delete.html" target="_top">Frames</a></li>
+<li><a href="Delete.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#fields.inherited.from.class.org.apache.kudu.client.KuduRpc">Field</a>&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#methods.inherited.from.class.org.apache.kudu.client.Operation">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li>Method</li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/DeleteTableResponse.html b/releases/1.4.0/apidocs/org/apache/kudu/client/DeleteTableResponse.html
new file mode 100644
index 0000000..8f74a84
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/DeleteTableResponse.html
@@ -0,0 +1,270 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>DeleteTableResponse (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="DeleteTableResponse (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":10,"i1":10};
+var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/DeleteTableResponse.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/Delete.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/ExternalConsistencyMode.html" title="enum in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/DeleteTableResponse.html" target="_top">Frames</a></li>
+<li><a href="DeleteTableResponse.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.client</div>
+<h2 title="Class DeleteTableResponse" class="title">Class DeleteTableResponse</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.client.DeleteTableResponse</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Evolving
+public class <span class="typeNameLabel">DeleteTableResponse</span>
+extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></pre>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code>long</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/DeleteTableResponse.html#getElapsedMillis--">getElapsedMillis</a></span>()</code>
+<div class="block">Get the number of milliseconds elapsed since the RPC was created up to the moment when this
+ response was created.</div>
+</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/DeleteTableResponse.html#getTsUUID--">getTsUUID</a></span>()</code>
+<div class="block">Get the identifier of the tablet server that sent the response.</div>
+</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="getElapsedMillis--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getElapsedMillis</h4>
+<pre>public&nbsp;long&nbsp;getElapsedMillis()</pre>
+<div class="block">Get the number of milliseconds elapsed since the RPC was created up to the moment when this
+ response was created.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>elapsed time in milliseconds</dd>
+</dl>
+</li>
+</ul>
+<a name="getTsUUID--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>getTsUUID</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getTsUUID()</pre>
+<div class="block">Get the identifier of the tablet server that sent the response. May be
+ <code>null</code> if the RPC failed before tablet location lookup succeeded.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a string containing a UUID</dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/DeleteTableResponse.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/Delete.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/ExternalConsistencyMode.html" title="enum in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/DeleteTableResponse.html" target="_top">Frames</a></li>
+<li><a href="DeleteTableResponse.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/ExternalConsistencyMode.html b/releases/1.4.0/apidocs/org/apache/kudu/client/ExternalConsistencyMode.html
new file mode 100644
index 0000000..cfec26d
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/ExternalConsistencyMode.html
@@ -0,0 +1,347 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>ExternalConsistencyMode (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="ExternalConsistencyMode (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":9,"i1":9};
+var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/ExternalConsistencyMode.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/DeleteTableResponse.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/HasFailedRpcException.html" title="interface in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/ExternalConsistencyMode.html" target="_top">Frames</a></li>
+<li><a href="ExternalConsistencyMode.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#enum.constant.summary">Enum Constants</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li><a href="#enum.constant.detail">Enum Constants</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.client</div>
+<h2 title="Enum ExternalConsistencyMode" class="title">Enum ExternalConsistencyMode</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang">java.lang.Enum</a>&lt;<a href="../../../../org/apache/kudu/client/ExternalConsistencyMode.html" title="enum in org.apache.kudu.client">ExternalConsistencyMode</a>&gt;</li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.client.ExternalConsistencyMode</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<dl>
+<dt>All Implemented Interfaces:</dt>
+<dd><a href="http://docs.oracle.com/javase/7/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;<a href="../../../../org/apache/kudu/client/ExternalConsistencyMode.html" title="enum in org.apache.kudu.client">ExternalConsistencyMode</a>&gt;</dd>
+</dl>
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Evolving
+public enum <span class="typeNameLabel">ExternalConsistencyMode</span>
+extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang">Enum</a>&lt;<a href="../../../../org/apache/kudu/client/ExternalConsistencyMode.html" title="enum in org.apache.kudu.client">ExternalConsistencyMode</a>&gt;</pre>
+<div class="block">The possible external consistency modes on which Kudu operates.
+ See <code>src/kudu/common/common.proto</code> for a detailed explanations on the
+      meaning and implications of each mode.</div>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- =========== ENUM CONSTANT SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="enum.constant.summary">
+<!--   -->
+</a>
+<h3>Enum Constant Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Enum Constant Summary table, listing enum constants, and an explanation">
+<caption><span>Enum Constants</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colOne" scope="col">Enum Constant and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/ExternalConsistencyMode.html#CLIENT_PROPAGATED">CLIENT_PROPAGATED</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/ExternalConsistencyMode.html#COMMIT_WAIT">COMMIT_WAIT</a></span></code>&nbsp;</td>
+</tr>
+</table>
+</li>
+</ul>
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/ExternalConsistencyMode.html" title="enum in org.apache.kudu.client">ExternalConsistencyMode</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/ExternalConsistencyMode.html#valueOf-java.lang.String-">valueOf</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
+<div class="block">Returns the enum constant of this type with the specified name.</div>
+</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/ExternalConsistencyMode.html" title="enum in org.apache.kudu.client">ExternalConsistencyMode</a>[]</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/ExternalConsistencyMode.html#values--">values</a></span>()</code>
+<div class="block">Returns an array containing the constants of this enum type, in
+the order they are declared.</div>
+</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Enum">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang">Enum</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#compareTo-E-" title="class or interface in java.lang">compareTo</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#getDeclaringClass--" title="class or interface in java.lang">getDeclaringClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#name--" title="class or interface in java.lang">name</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#ordinal--" title="class or interface in java.lang">ordinal</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#valueOf-java.lang.Class-java.lang.String-" title="class or interface in java.lang">valueOf</a></code></li>
+</ul>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ============ ENUM CONSTANT DETAIL =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="enum.constant.detail">
+<!--   -->
+</a>
+<h3>Enum Constant Detail</h3>
+<a name="CLIENT_PROPAGATED">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>CLIENT_PROPAGATED</h4>
+<pre>public static final&nbsp;<a href="../../../../org/apache/kudu/client/ExternalConsistencyMode.html" title="enum in org.apache.kudu.client">ExternalConsistencyMode</a> CLIENT_PROPAGATED</pre>
+</li>
+</ul>
+<a name="COMMIT_WAIT">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>COMMIT_WAIT</h4>
+<pre>public static final&nbsp;<a href="../../../../org/apache/kudu/client/ExternalConsistencyMode.html" title="enum in org.apache.kudu.client">ExternalConsistencyMode</a> COMMIT_WAIT</pre>
+</li>
+</ul>
+</li>
+</ul>
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="values--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>values</h4>
+<pre>public static&nbsp;<a href="../../../../org/apache/kudu/client/ExternalConsistencyMode.html" title="enum in org.apache.kudu.client">ExternalConsistencyMode</a>[]&nbsp;values()</pre>
+<div class="block">Returns an array containing the constants of this enum type, in
+the order they are declared.  This method may be used to iterate
+over the constants as follows:
+<pre>
+for (ExternalConsistencyMode c : ExternalConsistencyMode.values())
+&nbsp;   System.out.println(c);
+</pre></div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>an array containing the constants of this enum type, in the order they are declared</dd>
+</dl>
+</li>
+</ul>
+<a name="valueOf-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>valueOf</h4>
+<pre>public static&nbsp;<a href="../../../../org/apache/kudu/client/ExternalConsistencyMode.html" title="enum in org.apache.kudu.client">ExternalConsistencyMode</a>&nbsp;valueOf(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
+<div class="block">Returns the enum constant of this type with the specified name.
+The string must match <i>exactly</i> an identifier used to declare an
+enum constant in this type.  (Extraneous whitespace characters are 
+not permitted.)</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>name</code> - the name of the enum constant to be returned.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the enum constant with the specified name</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if this enum type has no constant with the specified name</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/NullPointerException.html?is-external=true" title="class or interface in java.lang">NullPointerException</a></code> - if the argument is null</dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/ExternalConsistencyMode.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/DeleteTableResponse.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/HasFailedRpcException.html" title="interface in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/ExternalConsistencyMode.html" target="_top">Frames</a></li>
+<li><a href="ExternalConsistencyMode.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#enum.constant.summary">Enum Constants</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li><a href="#enum.constant.detail">Enum Constants</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/HasFailedRpcException.html b/releases/1.4.0/apidocs/org/apache/kudu/client/HasFailedRpcException.html
new file mode 100644
index 0000000..7913e27
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/HasFailedRpcException.html
@@ -0,0 +1,233 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>HasFailedRpcException (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="HasFailedRpcException (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":6};
+var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/HasFailedRpcException.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/ExternalConsistencyMode.html" title="enum in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/Insert.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/HasFailedRpcException.html" target="_top">Frames</a></li>
+<li><a href="HasFailedRpcException.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.client</div>
+<h2 title="Interface HasFailedRpcException" class="title">Interface HasFailedRpcException</h2>
+</div>
+<div class="contentContainer">
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<dl>
+<dt>All Known Implementing Classes:</dt>
+<dd><a href="../../../../org/apache/kudu/client/PleaseThrottleException.html" title="class in org.apache.kudu.client">PleaseThrottleException</a></dd>
+</dl>
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Evolving
+public interface <span class="typeNameLabel">HasFailedRpcException</span></pre>
+<div class="block">Interface implemented by <a href="../../../../org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client"><code>KuduException</code></a>s that can tell you which
+ RPC failed.</div>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code>org.apache.kudu.client.KuduRpc&lt;?&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/HasFailedRpcException.html#getFailedRpc--">getFailedRpc</a></span>()</code>
+<div class="block">Returns the RPC that caused this exception.</div>
+</td>
+</tr>
+</table>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="getFailedRpc--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>getFailedRpc</h4>
+<pre>org.apache.kudu.client.KuduRpc&lt;?&gt;&nbsp;getFailedRpc()</pre>
+<div class="block">Returns the RPC that caused this exception.</div>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/HasFailedRpcException.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/ExternalConsistencyMode.html" title="enum in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/Insert.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/HasFailedRpcException.html" target="_top">Frames</a></li>
+<li><a href="HasFailedRpcException.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/Insert.html b/releases/1.4.0/apidocs/org/apache/kudu/client/Insert.html
new file mode 100644
index 0000000..12d2ba8
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/Insert.html
@@ -0,0 +1,240 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Insert (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Insert (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/Insert.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/HasFailedRpcException.html" title="interface in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/IsAlterTableDoneResponse.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/Insert.html" target="_top">Frames</a></li>
+<li><a href="Insert.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#fields.inherited.from.class.org.apache.kudu.client.KuduRpc">Field</a>&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#methods.inherited.from.class.org.apache.kudu.client.Operation">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li>Method</li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.client</div>
+<h2 title="Class Insert" class="title">Class Insert</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.client.KuduRpc&lt;<a href="../../../../org/apache/kudu/client/OperationResponse.html" title="class in org.apache.kudu.client">OperationResponse</a>&gt;</li>
+<li>
+<ul class="inheritance">
+<li><a href="../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">org.apache.kudu.client.Operation</a></li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.client.Insert</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Evolving
+public class <span class="typeNameLabel">Insert</span>
+extends <a href="../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">Operation</a></pre>
+<div class="block">Represents a single row insert. Instances of this class should not be reused.</div>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- =========== FIELD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="field.summary">
+<!--   -->
+</a>
+<h3>Field Summary</h3>
+<ul class="blockList">
+<li class="blockList"><a name="fields.inherited.from.class.org.apache.kudu.client.KuduRpc">
+<!--   -->
+</a>
+<h3>Fields inherited from class&nbsp;org.apache.kudu.client.KuduRpc</h3>
+<code>externalConsistencyMode, MASTER_SERVICE_NAME, MAX_TRACES_SIZE, propagatedTimestamp, TABLET_SERVER_SERVICE_NAME</code></li>
+</ul>
+</li>
+</ul>
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.org.apache.kudu.client.Operation">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;org.apache.kudu.client.<a href="../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">Operation</a></h3>
+<code><a href="../../../../org/apache/kudu/client/Operation.html#getRow--">getRow</a>, <a href="../../../../org/apache/kudu/client/Operation.html#partitionKey--">partitionKey</a></code></li>
+</ul>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.org.apache.kudu.client.KuduRpc">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;org.apache.kudu.client.KuduRpc</h3>
+<code>getExternalConsistencyMode, getTable, setExternalConsistencyMode, setPropagatedTimestamp, toString</code></li>
+</ul>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/Insert.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/HasFailedRpcException.html" title="interface in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/IsAlterTableDoneResponse.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/Insert.html" target="_top">Frames</a></li>
+<li><a href="Insert.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#fields.inherited.from.class.org.apache.kudu.client.KuduRpc">Field</a>&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#methods.inherited.from.class.org.apache.kudu.client.Operation">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li>Method</li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/IsAlterTableDoneResponse.html b/releases/1.4.0/apidocs/org/apache/kudu/client/IsAlterTableDoneResponse.html
new file mode 100644
index 0000000..3b67a54
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/IsAlterTableDoneResponse.html
@@ -0,0 +1,292 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>IsAlterTableDoneResponse (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="IsAlterTableDoneResponse (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":10,"i1":10,"i2":10};
+var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/IsAlterTableDoneResponse.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/Insert.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/IsAlterTableDoneResponse.html" target="_top">Frames</a></li>
+<li><a href="IsAlterTableDoneResponse.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.client</div>
+<h2 title="Class IsAlterTableDoneResponse" class="title">Class IsAlterTableDoneResponse</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.client.IsAlterTableDoneResponse</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Evolving
+public class <span class="typeNameLabel">IsAlterTableDoneResponse</span>
+extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></pre>
+<div class="block">Response to a isAlterTableDone command to use to know if an alter table is currently running on
+ the specified table.</div>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code>long</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/IsAlterTableDoneResponse.html#getElapsedMillis--">getElapsedMillis</a></span>()</code>
+<div class="block">Get the number of milliseconds elapsed since the RPC was created up to the moment when this
+ response was created.</div>
+</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/IsAlterTableDoneResponse.html#getTsUUID--">getTsUUID</a></span>()</code>
+<div class="block">Get the identifier of the tablet server that sent the response.</div>
+</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/IsAlterTableDoneResponse.html#isDone--">isDone</a></span>()</code>
+<div class="block">Tells if the table is done being altered or not.</div>
+</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="isDone--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>isDone</h4>
+<pre>public&nbsp;boolean&nbsp;isDone()</pre>
+<div class="block">Tells if the table is done being altered or not.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>whether the table alter is done</dd>
+</dl>
+</li>
+</ul>
+<a name="getElapsedMillis--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getElapsedMillis</h4>
+<pre>public&nbsp;long&nbsp;getElapsedMillis()</pre>
+<div class="block">Get the number of milliseconds elapsed since the RPC was created up to the moment when this
+ response was created.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>elapsed time in milliseconds</dd>
+</dl>
+</li>
+</ul>
+<a name="getTsUUID--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>getTsUUID</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getTsUUID()</pre>
+<div class="block">Get the identifier of the tablet server that sent the response. May be
+ <code>null</code> if the RPC failed before tablet location lookup succeeded.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a string containing a UUID</dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/IsAlterTableDoneResponse.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/Insert.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/IsAlterTableDoneResponse.html" target="_top">Frames</a></li>
+<li><a href="IsAlterTableDoneResponse.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/KuduClient.KuduClientBuilder.html b/releases/1.4.0/apidocs/org/apache/kudu/client/KuduClient.KuduClientBuilder.html
new file mode 100644
index 0000000..ae5ebe7
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/KuduClient.KuduClientBuilder.html
@@ -0,0 +1,482 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>KuduClient.KuduClientBuilder (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="KuduClient.KuduClientBuilder (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10};
+var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/KuduClient.KuduClientBuilder.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/KuduClient.KuduClientBuilder.html" target="_top">Frames</a></li>
+<li><a href="KuduClient.KuduClientBuilder.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.client</div>
+<h2 title="Class KuduClient.KuduClientBuilder" class="title">Class KuduClient.KuduClientBuilder</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.client.KuduClient.KuduClientBuilder</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<dl>
+<dt>Enclosing class:</dt>
+<dd><a href="../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a></dd>
+</dl>
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Evolving
+public static final class <span class="typeNameLabel">KuduClient.KuduClientBuilder</span>
+extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></pre>
+<div class="block">Builder class to use in order to connect to Kudu.
+ All the parameters beyond those in the constructors are optional.</div>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="constructor.summary">
+<!--   -->
+</a>
+<h3>Constructor Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
+<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colOne" scope="col">Constructor and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduClient.KuduClientBuilder.html#KuduClientBuilder-java.util.List-">KuduClientBuilder</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;masterAddresses)</code>
+<div class="block">Creates a new builder for a client that will connect to the specified masters.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduClient.KuduClientBuilder.html#KuduClientBuilder-java.lang.String-">KuduClientBuilder</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;masterAddresses)</code>
+<div class="block">Creates a new builder for a client that will connect to the specified masters.</div>
+</td>
+</tr>
+</table>
+</li>
+</ul>
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/KuduClient.KuduClientBuilder.html" title="class in org.apache.kudu.client">KuduClient.KuduClientBuilder</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduClient.KuduClientBuilder.html#bossCount-int-">bossCount</a></span>(int&nbsp;bossCount)</code>
+<div class="block">Set the maximum number of boss threads.</div>
+</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduClient.KuduClientBuilder.html#build--">build</a></span>()</code>
+<div class="block">Creates a new client that connects to the masters.</div>
+</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/KuduClient.KuduClientBuilder.html" title="class in org.apache.kudu.client">KuduClient.KuduClientBuilder</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduClient.KuduClientBuilder.html#defaultAdminOperationTimeoutMs-long-">defaultAdminOperationTimeoutMs</a></span>(long&nbsp;timeoutMs)</code>
+<div class="block">Sets the default timeout used for administrative operations (e.g.</div>
+</td>
+</tr>
+<tr id="i3" class="rowColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/KuduClient.KuduClientBuilder.html" title="class in org.apache.kudu.client">KuduClient.KuduClientBuilder</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduClient.KuduClientBuilder.html#defaultOperationTimeoutMs-long-">defaultOperationTimeoutMs</a></span>(long&nbsp;timeoutMs)</code>
+<div class="block">Sets the default timeout used for user operations (using sessions and scanners).</div>
+</td>
+</tr>
+<tr id="i4" class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/KuduClient.KuduClientBuilder.html" title="class in org.apache.kudu.client">KuduClient.KuduClientBuilder</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduClient.KuduClientBuilder.html#defaultSocketReadTimeoutMs-long-">defaultSocketReadTimeoutMs</a></span>(long&nbsp;timeoutMs)</code>
+<div class="block">Sets the default timeout to use when waiting on data from a socket.</div>
+</td>
+</tr>
+<tr id="i5" class="rowColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/KuduClient.KuduClientBuilder.html" title="class in org.apache.kudu.client">KuduClient.KuduClientBuilder</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduClient.KuduClientBuilder.html#disableStatistics--">disableStatistics</a></span>()</code>
+<div class="block">Disable this client's collection of statistics.</div>
+</td>
+</tr>
+<tr id="i6" class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/KuduClient.KuduClientBuilder.html" title="class in org.apache.kudu.client">KuduClient.KuduClientBuilder</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduClient.KuduClientBuilder.html#nioExecutors-java.util.concurrent.Executor-java.util.concurrent.Executor-">nioExecutors</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/concurrent/Executor.html?is-external=true" title="class or interface in java.util.concurrent">Executor</a>&nbsp;bossExecutor,
+            <a href="http://docs.oracle.com/javase/7/docs/api/java/util/concurrent/Executor.html?is-external=true" title="class or interface in java.util.concurrent">Executor</a>&nbsp;workerExecutor)</code>
+<div class="block">Set the executors which will be used for the embedded Netty boss and workers.</div>
+</td>
+</tr>
+<tr id="i7" class="rowColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/KuduClient.KuduClientBuilder.html" title="class in org.apache.kudu.client">KuduClient.KuduClientBuilder</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduClient.KuduClientBuilder.html#workerCount-int-">workerCount</a></span>(int&nbsp;workerCount)</code>
+<div class="block">Set the maximum number of worker threads.</div>
+</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="constructor.detail">
+<!--   -->
+</a>
+<h3>Constructor Detail</h3>
+<a name="KuduClientBuilder-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>KuduClientBuilder</h4>
+<pre>public&nbsp;KuduClientBuilder(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;masterAddresses)</pre>
+<div class="block">Creates a new builder for a client that will connect to the specified masters.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>masterAddresses</code> - comma-separated list of "host:port" pairs of the masters</dd>
+</dl>
+</li>
+</ul>
+<a name="KuduClientBuilder-java.util.List-">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>KuduClientBuilder</h4>
+<pre>public&nbsp;KuduClientBuilder(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;masterAddresses)</pre>
+<div class="block">Creates a new builder for a client that will connect to the specified masters.
+
+ <p>Here are some examples of recognized formats:
+ <ul>
+   <li>example.com
+   <li>example.com:80
+   <li>192.0.2.1
+   <li>192.0.2.1:80
+   <li>[2001:db8::1]
+   <li>[2001:db8::1]:80
+   <li>2001:db8::1
+ </ul></div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>masterAddresses</code> - list of master addresses</dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="defaultAdminOperationTimeoutMs-long-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>defaultAdminOperationTimeoutMs</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/KuduClient.KuduClientBuilder.html" title="class in org.apache.kudu.client">KuduClient.KuduClientBuilder</a>&nbsp;defaultAdminOperationTimeoutMs(long&nbsp;timeoutMs)</pre>
+<div class="block">Sets the default timeout used for administrative operations (e.g. createTable, deleteTable,
+ etc).
+ Optional.
+ If not provided, defaults to 30s.
+ A value of 0 disables the timeout.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>timeoutMs</code> - a timeout in milliseconds</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>this builder</dd>
+</dl>
+</li>
+</ul>
+<a name="defaultOperationTimeoutMs-long-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>defaultOperationTimeoutMs</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/KuduClient.KuduClientBuilder.html" title="class in org.apache.kudu.client">KuduClient.KuduClientBuilder</a>&nbsp;defaultOperationTimeoutMs(long&nbsp;timeoutMs)</pre>
+<div class="block">Sets the default timeout used for user operations (using sessions and scanners).
+ Optional.
+ If not provided, defaults to 30s.
+ A value of 0 disables the timeout.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>timeoutMs</code> - a timeout in milliseconds</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>this builder</dd>
+</dl>
+</li>
+</ul>
+<a name="defaultSocketReadTimeoutMs-long-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>defaultSocketReadTimeoutMs</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/KuduClient.KuduClientBuilder.html" title="class in org.apache.kudu.client">KuduClient.KuduClientBuilder</a>&nbsp;defaultSocketReadTimeoutMs(long&nbsp;timeoutMs)</pre>
+<div class="block">Sets the default timeout to use when waiting on data from a socket.
+ Optional.
+ If not provided, defaults to 10s.
+ A value of 0 disables the timeout.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>timeoutMs</code> - a timeout in milliseconds</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>this builder</dd>
+</dl>
+</li>
+</ul>
+<a name="disableStatistics--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>disableStatistics</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/KuduClient.KuduClientBuilder.html" title="class in org.apache.kudu.client">KuduClient.KuduClientBuilder</a>&nbsp;disableStatistics()</pre>
+<div class="block">Disable this client's collection of statistics.
+ Statistics are enabled by default.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>this builder</dd>
+</dl>
+</li>
+</ul>
+<a name="nioExecutors-java.util.concurrent.Executor-java.util.concurrent.Executor-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>nioExecutors</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/KuduClient.KuduClientBuilder.html" title="class in org.apache.kudu.client">KuduClient.KuduClientBuilder</a>&nbsp;nioExecutors(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/concurrent/Executor.html?is-external=true" title="class or interface in java.util.concurrent">Executor</a>&nbsp;bossExecutor,
+                                                 <a href="http://docs.oracle.com/javase/7/docs/api/java/util/concurrent/Executor.html?is-external=true" title="class or interface in java.util.concurrent">Executor</a>&nbsp;workerExecutor)</pre>
+<div class="block">Set the executors which will be used for the embedded Netty boss and workers.
+ Optional.
+ If not provided, uses a simple cached threadpool. If either argument is null,
+ then such a thread pool will be used in place of that argument.
+ Note: executor's max thread number must be greater or equal to corresponding
+ worker count, or netty cannot start enough threads, and client will get stuck.
+ If not sure, please just use CachedThreadPool.</div>
+</li>
+</ul>
+<a name="bossCount-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>bossCount</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/KuduClient.KuduClientBuilder.html" title="class in org.apache.kudu.client">KuduClient.KuduClientBuilder</a>&nbsp;bossCount(int&nbsp;bossCount)</pre>
+<div class="block">Set the maximum number of boss threads.
+ Optional.
+ If not provided, 1 is used.</div>
+</li>
+</ul>
+<a name="workerCount-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>workerCount</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/KuduClient.KuduClientBuilder.html" title="class in org.apache.kudu.client">KuduClient.KuduClientBuilder</a>&nbsp;workerCount(int&nbsp;workerCount)</pre>
+<div class="block">Set the maximum number of worker threads.
+ Optional.
+ If not provided, (2 * the number of available processors) is used.</div>
+</li>
+</ul>
+<a name="build--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>build</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a>&nbsp;build()</pre>
+<div class="block">Creates a new client that connects to the masters.
+ Doesn't block and won't throw an exception if the masters don't exist.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a new asynchronous Kudu client</dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/KuduClient.KuduClientBuilder.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/KuduClient.KuduClientBuilder.html" target="_top">Frames</a></li>
+<li><a href="KuduClient.KuduClientBuilder.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/KuduClient.html b/releases/1.4.0/apidocs/org/apache/kudu/client/KuduClient.html
new file mode 100644
index 0000000..712eeb1
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/KuduClient.html
@@ -0,0 +1,858 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>KuduClient (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="KuduClient (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10,"i15":10,"i16":10,"i17":10,"i18":10,"i19":10,"i20":10,"i21":10,"i22":10};
+var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/KuduClient.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/IsAlterTableDoneResponse.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/KuduClient.KuduClientBuilder.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/KuduClient.html" target="_top">Frames</a></li>
+<li><a href="KuduClient.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
+<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.client</div>
+<h2 title="Class KuduClient" class="title">Class KuduClient</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.client.KuduClient</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<dl>
+<dt>All Implemented Interfaces:</dt>
+<dd><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/AutoCloseable.html?is-external=true" title="class or interface in java.lang">AutoCloseable</a></dd>
+</dl>
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Evolving
+public class <span class="typeNameLabel">KuduClient</span>
+extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>
+implements <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/AutoCloseable.html?is-external=true" title="class or interface in java.lang">AutoCloseable</a></pre>
+<div class="block">A synchronous and thread-safe client for Kudu.
+ <p>
+ This class acts as a wrapper around <a href="../../../../org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client"><code>AsyncKuduClient</code></a> which contains all the relevant
+ documentation.</div>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- ======== NESTED CLASS SUMMARY ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="nested.class.summary">
+<!--   -->
+</a>
+<h3>Nested Class Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Nested Class Summary table, listing nested classes, and an explanation">
+<caption><span>Nested Classes</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Class and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static class&nbsp;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduClient.KuduClientBuilder.html" title="class in org.apache.kudu.client">KuduClient.KuduClientBuilder</a></span></code>
+<div class="block">Builder class to use in order to connect to Kudu.</div>
+</td>
+</tr>
+</table>
+</li>
+</ul>
+<!-- =========== FIELD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="field.summary">
+<!--   -->
+</a>
+<h3>Field Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
+<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Field and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static org.slf4j.Logger</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduClient.html#LOG">LOG</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static long</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduClient.html#NO_TIMESTAMP">NO_TIMESTAMP</a></span></code>&nbsp;</td>
+</tr>
+</table>
+</li>
+</ul>
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AlterTableResponse.html" title="class in org.apache.kudu.client">AlterTableResponse</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduClient.html#alterTable-java.lang.String-org.apache.kudu.client.AlterTableOptions-">alterTable</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
+          <a href="../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a>&nbsp;ato)</code>
+<div class="block">Alter a table on the cluster as specified by the builder.</div>
+</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduClient.html#close--">close</a></span>()</code>
+<div class="block">Analogous to <a href="../../../../org/apache/kudu/client/KuduClient.html#shutdown--"><code>shutdown()</code></a>.</div>
+</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduClient.html#createTable-java.lang.String-org.apache.kudu.Schema-org.apache.kudu.client.CreateTableOptions-">createTable</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
+           <a href="../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a>&nbsp;schema,
+           <a href="../../../../org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client">CreateTableOptions</a>&nbsp;builder)</code>
+<div class="block">Create a table on the cluster with the specified name, schema, and table configurations.</div>
+</td>
+</tr>
+<tr id="i3" class="rowColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/DeleteTableResponse.html" title="class in org.apache.kudu.client">DeleteTableResponse</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduClient.html#deleteTable-java.lang.String-">deleteTable</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
+<div class="block">Delete a table on the cluster with the specified name.</div>
+</td>
+</tr>
+<tr id="i4" class="altColor">
+<td class="colFirst"><code>byte[]</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduClient.html#exportAuthenticationCredentials--">exportAuthenticationCredentials</a></span>()</code>
+<div class="block">Export serialized authentication data that may be passed to a different
+ client instance and imported to provide that client the ability to connect
+ to the cluster.</div>
+</td>
+</tr>
+<tr id="i5" class="rowColor">
+<td class="colFirst"><code>long</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduClient.html#getDefaultAdminOperationTimeoutMs--">getDefaultAdminOperationTimeoutMs</a></span>()</code>
+<div class="block">Get the timeout used for admin operations.</div>
+</td>
+</tr>
+<tr id="i6" class="altColor">
+<td class="colFirst"><code>long</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduClient.html#getDefaultOperationTimeoutMs--">getDefaultOperationTimeoutMs</a></span>()</code>
+<div class="block">Get the timeout used for operations on sessions and scanners.</div>
+</td>
+</tr>
+<tr id="i7" class="rowColor">
+<td class="colFirst"><code>long</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduClient.html#getLastPropagatedTimestamp--">getLastPropagatedTimestamp</a></span>()</code>
+<div class="block">Returns the last timestamp received from a server.</div>
+</td>
+</tr>
+<tr id="i8" class="altColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduClient.html#getMasterAddressesAsString--">getMasterAddressesAsString</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i9" class="rowColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/Statistics.html" title="class in org.apache.kudu.client">Statistics</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduClient.html#getStatistics--">getStatistics</a></span>()</code>
+<div class="block">Get the statistics object of this client.</div>
+</td>
+</tr>
+<tr id="i10" class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/ListTablesResponse.html" title="class in org.apache.kudu.client">ListTablesResponse</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduClient.html#getTablesList--">getTablesList</a></span>()</code>
+<div class="block">Get the list of all the tables.</div>
+</td>
+</tr>
+<tr id="i11" class="rowColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/ListTablesResponse.html" title="class in org.apache.kudu.client">ListTablesResponse</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduClient.html#getTablesList-java.lang.String-">getTablesList</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;nameFilter)</code>
+<div class="block">Get a list of table names.</div>
+</td>
+</tr>
+<tr id="i12" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduClient.html#importAuthenticationCredentials-byte:A-">importAuthenticationCredentials</a></span>(byte[]&nbsp;authnData)</code>
+<div class="block">Import data allowing this client to authenticate to the cluster.</div>
+</td>
+</tr>
+<tr id="i13" class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduClient.html#isAlterTableDone-java.lang.String-">isAlterTableDone</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
+<div class="block">Helper method that checks and waits until the completion of an alter command.</div>
+</td>
+</tr>
+<tr id="i14" class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduClient.html#isStatisticsEnabled--">isStatisticsEnabled</a></span>()</code>
+<div class="block">Check if statistics collection is enabled for this client.</div>
+</td>
+</tr>
+<tr id="i15" class="rowColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/ListTabletServersResponse.html" title="class in org.apache.kudu.client">ListTabletServersResponse</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduClient.html#listTabletServers--">listTabletServers</a></span>()</code>
+<div class="block">Get the list of running tablet servers.</div>
+</td>
+</tr>
+<tr id="i16" class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/KuduScanner.KuduScannerBuilder.html" title="class in org.apache.kudu.client">KuduScanner.KuduScannerBuilder</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduClient.html#newScannerBuilder-org.apache.kudu.client.KuduTable-">newScannerBuilder</a></span>(<a href="../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a>&nbsp;table)</code>
+<div class="block">Creates a new <a href="../../../../org/apache/kudu/client/KuduScanner.KuduScannerBuilder.html" title="class in org.apache.kudu.client"><code>KuduScanner.KuduScannerBuilder</code></a> for a particular table.</div>
+</td>
+</tr>
+<tr id="i17" class="rowColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/KuduScanToken.KuduScanTokenBuilder.html" title="class in org.apache.kudu.client">KuduScanToken.KuduScanTokenBuilder</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduClient.html#newScanTokenBuilder-org.apache.kudu.client.KuduTable-">newScanTokenBuilder</a></span>(<a href="../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a>&nbsp;table)</code>
+<div class="block">Creates a new <a href="../../../../org/apache/kudu/client/KuduScanToken.KuduScanTokenBuilder.html" title="class in org.apache.kudu.client"><code>KuduScanToken.KuduScanTokenBuilder</code></a> for a particular table.</div>
+</td>
+</tr>
+<tr id="i18" class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/KuduSession.html" title="class in org.apache.kudu.client">KuduSession</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduClient.html#newSession--">newSession</a></span>()</code>
+<div class="block">Create a new session for interacting with the cluster.</div>
+</td>
+</tr>
+<tr id="i19" class="rowColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduClient.html#openTable-java.lang.String-">openTable</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
+<div class="block">Open the table with the given name.</div>
+</td>
+</tr>
+<tr id="i20" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduClient.html#shutdown--">shutdown</a></span>()</code>
+<div class="block">Performs a graceful shutdown of this instance.</div>
+</td>
+</tr>
+<tr id="i21" class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduClient.html#tableExists-java.lang.String-">tableExists</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
+<div class="block">Test if a table exists.</div>
+</td>
+</tr>
+<tr id="i22" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduClient.html#updateLastPropagatedTimestamp-long-">updateLastPropagatedTimestamp</a></span>(long&nbsp;lastPropagatedTimestamp)</code>
+<div class="block">Updates the last timestamp received from a server.</div>
+</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ============ FIELD DETAIL =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="field.detail">
+<!--   -->
+</a>
+<h3>Field Detail</h3>
+<a name="LOG">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>LOG</h4>
+<pre>public static final&nbsp;org.slf4j.Logger LOG</pre>
+</li>
+</ul>
+<a name="NO_TIMESTAMP">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>NO_TIMESTAMP</h4>
+<pre>public static final&nbsp;long NO_TIMESTAMP</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../constant-values.html#org.apache.kudu.client.KuduClient.NO_TIMESTAMP">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="updateLastPropagatedTimestamp-long-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>updateLastPropagatedTimestamp</h4>
+<pre>public&nbsp;void&nbsp;updateLastPropagatedTimestamp(long&nbsp;lastPropagatedTimestamp)</pre>
+<div class="block">Updates the last timestamp received from a server. Used for CLIENT_PROPAGATED
+ external consistency.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>lastPropagatedTimestamp</code> - the last timestamp received from a server.</dd>
+</dl>
+</li>
+</ul>
+<a name="getLastPropagatedTimestamp--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getLastPropagatedTimestamp</h4>
+<pre>public&nbsp;long&nbsp;getLastPropagatedTimestamp()</pre>
+<div class="block">Returns the last timestamp received from a server. Used for CLIENT_PROPAGATED
+ external consistency. Note that the returned timestamp is encoded and cannot be
+ interpreted as a raw timestamp.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a long indicating the specially-encoded last timestamp received from a server</dd>
+</dl>
+</li>
+</ul>
+<a name="createTable-java.lang.String-org.apache.kudu.Schema-org.apache.kudu.client.CreateTableOptions-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>createTable</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a>&nbsp;createTable(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
+                             <a href="../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a>&nbsp;schema,
+                             <a href="../../../../org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client">CreateTableOptions</a>&nbsp;builder)
+                      throws <a href="../../../../org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client">KuduException</a></pre>
+<div class="block">Create a table on the cluster with the specified name, schema, and table configurations.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>name</code> - the table's name</dd>
+<dd><code>schema</code> - the table's schema</dd>
+<dd><code>builder</code> - a builder containing the table's configurations</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>an object to communicate with the created table</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="../../../../org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client">KuduException</a></code> - if anything went wrong</dd>
+</dl>
+</li>
+</ul>
+<a name="deleteTable-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>deleteTable</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/DeleteTableResponse.html" title="class in org.apache.kudu.client">DeleteTableResponse</a>&nbsp;deleteTable(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)
+                                throws <a href="../../../../org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client">KuduException</a></pre>
+<div class="block">Delete a table on the cluster with the specified name.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>name</code> - the table's name</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>an rpc response object</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="../../../../org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client">KuduException</a></code> - if anything went wrong</dd>
+</dl>
+</li>
+</ul>
+<a name="alterTable-java.lang.String-org.apache.kudu.client.AlterTableOptions-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>alterTable</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/AlterTableResponse.html" title="class in org.apache.kudu.client">AlterTableResponse</a>&nbsp;alterTable(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
+                                     <a href="../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a>&nbsp;ato)
+                              throws <a href="../../../../org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client">KuduException</a></pre>
+<div class="block">Alter a table on the cluster as specified by the builder.
+
+ When the method returns it only indicates that the master accepted the alter
+ command, use <a href="../../../../org/apache/kudu/client/KuduClient.html#isAlterTableDone-java.lang.String-"><code>isAlterTableDone(String)</code></a> to know when the alter finishes.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>name</code> - the table's name, if this is a table rename then the old table name must be passed</dd>
+<dd><code>ato</code> - the alter table builder</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>an rpc response object</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="../../../../org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client">KuduException</a></code> - if anything went wrong</dd>
+</dl>
+</li>
+</ul>
+<a name="isAlterTableDone-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>isAlterTableDone</h4>
+<pre>public&nbsp;boolean&nbsp;isAlterTableDone(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)
+                         throws <a href="../../../../org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client">KuduException</a></pre>
+<div class="block">Helper method that checks and waits until the completion of an alter command.
+ It will block until the alter command is done or the timeout is reached.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>name</code> - Table's name, if the table was renamed then that name must be checked against</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a boolean indicating if the table is done being altered</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="../../../../org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client">KuduException</a></code> - for any error returned by sending RPCs to the master</dd>
+</dl>
+</li>
+</ul>
+<a name="listTabletServers--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>listTabletServers</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/ListTabletServersResponse.html" title="class in org.apache.kudu.client">ListTabletServersResponse</a>&nbsp;listTabletServers()
+                                            throws <a href="../../../../org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client">KuduException</a></pre>
+<div class="block">Get the list of running tablet servers.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a list of tablet servers</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="../../../../org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client">KuduException</a></code> - if anything went wrong</dd>
+</dl>
+</li>
+</ul>
+<a name="getTablesList--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getTablesList</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/ListTablesResponse.html" title="class in org.apache.kudu.client">ListTablesResponse</a>&nbsp;getTablesList()
+                                 throws <a href="../../../../org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client">KuduException</a></pre>
+<div class="block">Get the list of all the tables.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a list of all the tables</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="../../../../org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client">KuduException</a></code> - if anything went wrong</dd>
+</dl>
+</li>
+</ul>
+<a name="getTablesList-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getTablesList</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/ListTablesResponse.html" title="class in org.apache.kudu.client">ListTablesResponse</a>&nbsp;getTablesList(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;nameFilter)
+                                 throws <a href="../../../../org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client">KuduException</a></pre>
+<div class="block">Get a list of table names. Passing a null filter returns all the tables. When a filter is
+ specified, it only returns tables that satisfy a substring match.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>nameFilter</code> - an optional table name filter</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a deferred that contains the list of table names</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="../../../../org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client">KuduException</a></code> - if anything went wrong</dd>
+</dl>
+</li>
+</ul>
+<a name="tableExists-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>tableExists</h4>
+<pre>public&nbsp;boolean&nbsp;tableExists(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)
+                    throws <a href="../../../../org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client">KuduException</a></pre>
+<div class="block">Test if a table exists.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>name</code> - a non-null table name</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>true if the table exists, else false</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="../../../../org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client">KuduException</a></code> - if anything went wrong</dd>
+</dl>
+</li>
+</ul>
+<a name="openTable-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>openTable</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a>&nbsp;openTable(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)
+                    throws <a href="../../../../org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client">KuduException</a></pre>
+<div class="block">Open the table with the given name. If the table was just created, this
+ method will block until all its tablets have also been created.
+
+ New range partitions created by other clients will immediately be available
+ after opening the table.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>name</code> - table to open</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a KuduTable if the table exists</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="../../../../org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client">KuduException</a></code> - if anything went wrong</dd>
+</dl>
+</li>
+</ul>
+<a name="newSession--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>newSession</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/KuduSession.html" title="class in org.apache.kudu.client">KuduSession</a>&nbsp;newSession()</pre>
+<div class="block">Create a new session for interacting with the cluster.
+ User is responsible for destroying the session object.
+ This is a fully local operation (no RPCs or blocking).</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a synchronous wrapper around KuduSession.</dd>
+</dl>
+</li>
+</ul>
+<a name="isStatisticsEnabled--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>isStatisticsEnabled</h4>
+<pre>public&nbsp;boolean&nbsp;isStatisticsEnabled()</pre>
+<div class="block">Check if statistics collection is enabled for this client.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>true if it is enabled, else false</dd>
+</dl>
+</li>
+</ul>
+<a name="getStatistics--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getStatistics</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/Statistics.html" title="class in org.apache.kudu.client">Statistics</a>&nbsp;getStatistics()</pre>
+<div class="block">Get the statistics object of this client.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>this client's Statistics object</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - thrown if statistics collection has been disabled</dd>
+</dl>
+</li>
+</ul>
+<a name="newScannerBuilder-org.apache.kudu.client.KuduTable-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>newScannerBuilder</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/KuduScanner.KuduScannerBuilder.html" title="class in org.apache.kudu.client">KuduScanner.KuduScannerBuilder</a>&nbsp;newScannerBuilder(<a href="../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a>&nbsp;table)</pre>
+<div class="block">Creates a new <a href="../../../../org/apache/kudu/client/KuduScanner.KuduScannerBuilder.html" title="class in org.apache.kudu.client"><code>KuduScanner.KuduScannerBuilder</code></a> for a particular table.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>table</code> - the table you intend to scan.
+ The string is assumed to use the platform's default charset.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a new scanner builder for the table</dd>
+</dl>
+</li>
+</ul>
+<a name="newScanTokenBuilder-org.apache.kudu.client.KuduTable-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>newScanTokenBuilder</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/KuduScanToken.KuduScanTokenBuilder.html" title="class in org.apache.kudu.client">KuduScanToken.KuduScanTokenBuilder</a>&nbsp;newScanTokenBuilder(<a href="../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a>&nbsp;table)</pre>
+<div class="block">Creates a new <a href="../../../../org/apache/kudu/client/KuduScanToken.KuduScanTokenBuilder.html" title="class in org.apache.kudu.client"><code>KuduScanToken.KuduScanTokenBuilder</code></a> for a particular table.
+ Used for integrations with compute frameworks.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>table</code> - the table you intend to scan</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a new scan token builder for the table</dd>
+</dl>
+</li>
+</ul>
+<a name="close--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>close</h4>
+<pre>public&nbsp;void&nbsp;close()
+           throws <a href="../../../../org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client">KuduException</a></pre>
+<div class="block">Analogous to <a href="../../../../org/apache/kudu/client/KuduClient.html#shutdown--"><code>shutdown()</code></a>.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/AutoCloseable.html?is-external=true#close--" title="class or interface in java.lang">close</a></code>&nbsp;in interface&nbsp;<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/AutoCloseable.html?is-external=true" title="class or interface in java.lang">AutoCloseable</a></code></dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="../../../../org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client">KuduException</a></code> - if an error happens while closing the connections</dd>
+</dl>
+</li>
+</ul>
+<a name="shutdown--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>shutdown</h4>
+<pre>public&nbsp;void&nbsp;shutdown()
+              throws <a href="../../../../org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client">KuduException</a></pre>
+<div class="block">Performs a graceful shutdown of this instance.</div>
+<dl>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="../../../../org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client">KuduException</a></code> - if anything went wrong</dd>
+</dl>
+</li>
+</ul>
+<a name="exportAuthenticationCredentials--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>exportAuthenticationCredentials</h4>
+<pre>@InterfaceStability.Unstable
+public&nbsp;byte[]&nbsp;exportAuthenticationCredentials()
+                                                                    throws <a href="../../../../org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client">KuduException</a></pre>
+<div class="block">Export serialized authentication data that may be passed to a different
+ client instance and imported to provide that client the ability to connect
+ to the cluster.</div>
+<dl>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="../../../../org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client">KuduException</a></code></dd>
+</dl>
+</li>
+</ul>
+<a name="importAuthenticationCredentials-byte:A-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>importAuthenticationCredentials</h4>
+<pre>@InterfaceStability.Unstable
+public&nbsp;void&nbsp;importAuthenticationCredentials(byte[]&nbsp;authnData)</pre>
+<div class="block">Import data allowing this client to authenticate to the cluster.
+ This will typically be used before making any connections to servers
+ in the cluster.
+
+ Note that, if this client has already been used by one user, this
+ method cannot be used to switch authenticated users. Attempts to
+ do so have undefined results, and may throw an exception.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>authnData</code> - then authentication data provided by a prior call to
+ <a href="../../../../org/apache/kudu/client/KuduClient.html#exportAuthenticationCredentials--"><code>exportAuthenticationCredentials()</code></a></dd>
+</dl>
+</li>
+</ul>
+<a name="getDefaultOperationTimeoutMs--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getDefaultOperationTimeoutMs</h4>
+<pre>public&nbsp;long&nbsp;getDefaultOperationTimeoutMs()</pre>
+<div class="block">Get the timeout used for operations on sessions and scanners.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a timeout in milliseconds</dd>
+</dl>
+</li>
+</ul>
+<a name="getDefaultAdminOperationTimeoutMs--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getDefaultAdminOperationTimeoutMs</h4>
+<pre>public&nbsp;long&nbsp;getDefaultAdminOperationTimeoutMs()</pre>
+<div class="block">Get the timeout used for admin operations.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a timeout in milliseconds</dd>
+</dl>
+</li>
+</ul>
+<a name="getMasterAddressesAsString--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>getMasterAddressesAsString</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getMasterAddressesAsString()</pre>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the list of master addresses, stringified using commas to separate
+ them</dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/KuduClient.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/IsAlterTableDoneResponse.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/KuduClient.KuduClientBuilder.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/KuduClient.html" target="_top">Frames</a></li>
+<li><a href="KuduClient.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
+<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/KuduException.html b/releases/1.4.0/apidocs/org/apache/kudu/client/KuduException.html
new file mode 100644
index 0000000..a1aaf75
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/KuduException.html
@@ -0,0 +1,286 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>KuduException (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="KuduException (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":10};
+var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/KuduException.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/KuduClient.KuduClientBuilder.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/KuduException.html" target="_top">Frames</a></li>
+<li><a href="KuduException.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.client</div>
+<h2 title="Class KuduException" class="title">Class KuduException</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">java.lang.Throwable</a></li>
+<li>
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">java.lang.Exception</a></li>
+<li>
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">java.io.IOException</a></li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.client.KuduException</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<dl>
+<dt>All Implemented Interfaces:</dt>
+<dd><a href="http://docs.oracle.com/javase/7/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a></dd>
+</dl>
+<dl>
+<dt>Direct Known Subclasses:</dt>
+<dd><a href="../../../../org/apache/kudu/client/PleaseThrottleException.html" title="class in org.apache.kudu.client">PleaseThrottleException</a></dd>
+</dl>
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Evolving
+public abstract class <span class="typeNameLabel">KuduException</span>
+extends <a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
+<div class="block">The parent class of all exceptions sent by the Kudu client. This is the only exception you will
+ see if you're using the non-async API, such as <a href="../../../../org/apache/kudu/client/KuduSession.html" title="class in org.apache.kudu.client"><code>KuduSession</code></a> instead of
+ <a href="../../../../org/apache/kudu/client/AsyncKuduSession.html" title="class in org.apache.kudu.client"><code>AsyncKuduSession</code></a>.
+
+ Each instance of this class has a <a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client"><code>Status</code></a> which gives more information about the error.</div>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../serialized-form.html#org.apache.kudu.client.KuduException">Serialized Form</a></dd>
+</dl>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduException.html#getStatus--">getStatus</a></span>()</code>
+<div class="block">Get the Status object for this exception.</div>
+</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Throwable">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Throwable.html?is-external=true#addSuppressed-java.lang.Throwable-" title="class or interface in java.lang">addSuppressed</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Throwable.html?is-external=true#fillInStackTrace--" title="class or interface in java.lang">fillInStackTrace</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Throwable.html?is-external=true#getCause--" title="class or interface in java.lang">getCause</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Throwable.html?is-external=true#getLocalizedMessage--" title="class or interface in java.lang">getLocalizedMessage</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Throwable.html?is-external=true#getMessage--" title="class or interface in java.lang">getMessage</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Throwable.html?is-external=true#getStackTrace--" title="class or interface in java.lang">getStackTrace</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Throwable.html?is-external=true#getSuppressed--" title="class or interface in java.lang">getSuppressed</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Throwable.html?is-external=true#initCause-java.lang.Throwable-" title="class or interface in java.lang">initCause</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Throwable.html?is-external=true#printStackTrace--" title="class or interface in java.lang">printStackTrace</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Throwable.html?is-external=true#printStackTrace-java.io.PrintStream-" title="class or interface in java.lang">printStackTrace</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Throwable.html?is-external=true#printStackTrace-java.io.PrintWriter-" title="class or interface in java.lang">printStackTrace</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Throwable.html?is-external=true#setStackTrace-java.lang.StackTraceElement:A-" title="class or interface in java.lang">setStackTrace</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Throwable.html?is-external=true#toString--" title="class or interface in java.lang">toString</a></code></li>
+</ul>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="getStatus--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>getStatus</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a>&nbsp;getStatus()</pre>
+<div class="block">Get the Status object for this exception.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a status object indicating the reason for the exception</dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/KuduException.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/KuduClient.KuduClientBuilder.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/KuduException.html" target="_top">Frames</a></li>
+<li><a href="KuduException.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/KuduPredicate.ComparisonOp.html b/releases/1.4.0/apidocs/org/apache/kudu/client/KuduPredicate.ComparisonOp.html
new file mode 100644
index 0000000..9a33ae8
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/KuduPredicate.ComparisonOp.html
@@ -0,0 +1,385 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>KuduPredicate.ComparisonOp (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="KuduPredicate.ComparisonOp (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":9,"i1":9};
+var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/KuduPredicate.ComparisonOp.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/KuduScanner.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/KuduPredicate.ComparisonOp.html" target="_top">Frames</a></li>
+<li><a href="KuduPredicate.ComparisonOp.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#enum.constant.summary">Enum Constants</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li><a href="#enum.constant.detail">Enum Constants</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.client</div>
+<h2 title="Enum KuduPredicate.ComparisonOp" class="title">Enum KuduPredicate.ComparisonOp</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang">java.lang.Enum</a>&lt;<a href="../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html" title="enum in org.apache.kudu.client">KuduPredicate.ComparisonOp</a>&gt;</li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.client.KuduPredicate.ComparisonOp</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<dl>
+<dt>All Implemented Interfaces:</dt>
+<dd><a href="http://docs.oracle.com/javase/7/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;<a href="../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html" title="enum in org.apache.kudu.client">KuduPredicate.ComparisonOp</a>&gt;</dd>
+</dl>
+<dl>
+<dt>Enclosing class:</dt>
+<dd><a href="../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a></dd>
+</dl>
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Evolving
+public static enum <span class="typeNameLabel">KuduPredicate.ComparisonOp</span>
+extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang">Enum</a>&lt;<a href="../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html" title="enum in org.apache.kudu.client">KuduPredicate.ComparisonOp</a>&gt;</pre>
+<div class="block">The comparison operator of a predicate.</div>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- =========== ENUM CONSTANT SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="enum.constant.summary">
+<!--   -->
+</a>
+<h3>Enum Constant Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Enum Constant Summary table, listing enum constants, and an explanation">
+<caption><span>Enum Constants</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colOne" scope="col">Enum Constant and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html#EQUAL">EQUAL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html#GREATER">GREATER</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html#GREATER_EQUAL">GREATER_EQUAL</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html#LESS">LESS</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html#LESS_EQUAL">LESS_EQUAL</a></span></code>&nbsp;</td>
+</tr>
+</table>
+</li>
+</ul>
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html" title="enum in org.apache.kudu.client">KuduPredicate.ComparisonOp</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html#valueOf-java.lang.String-">valueOf</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
+<div class="block">Returns the enum constant of this type with the specified name.</div>
+</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html" title="enum in org.apache.kudu.client">KuduPredicate.ComparisonOp</a>[]</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html#values--">values</a></span>()</code>
+<div class="block">Returns an array containing the constants of this enum type, in
+the order they are declared.</div>
+</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Enum">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang">Enum</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#compareTo-E-" title="class or interface in java.lang">compareTo</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#getDeclaringClass--" title="class or interface in java.lang">getDeclaringClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#name--" title="class or interface in java.lang">name</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#ordinal--" title="class or interface in java.lang">ordinal</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#valueOf-java.lang.Class-java.lang.String-" title="class or interface in java.lang">valueOf</a></code></li>
+</ul>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ============ ENUM CONSTANT DETAIL =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="enum.constant.detail">
+<!--   -->
+</a>
+<h3>Enum Constant Detail</h3>
+<a name="GREATER">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>GREATER</h4>
+<pre>public static final&nbsp;<a href="../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html" title="enum in org.apache.kudu.client">KuduPredicate.ComparisonOp</a> GREATER</pre>
+</li>
+</ul>
+<a name="GREATER_EQUAL">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>GREATER_EQUAL</h4>
+<pre>public static final&nbsp;<a href="../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html" title="enum in org.apache.kudu.client">KuduPredicate.ComparisonOp</a> GREATER_EQUAL</pre>
+</li>
+</ul>
+<a name="EQUAL">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>EQUAL</h4>
+<pre>public static final&nbsp;<a href="../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html" title="enum in org.apache.kudu.client">KuduPredicate.ComparisonOp</a> EQUAL</pre>
+</li>
+</ul>
+<a name="LESS">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>LESS</h4>
+<pre>public static final&nbsp;<a href="../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html" title="enum in org.apache.kudu.client">KuduPredicate.ComparisonOp</a> LESS</pre>
+</li>
+</ul>
+<a name="LESS_EQUAL">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>LESS_EQUAL</h4>
+<pre>public static final&nbsp;<a href="../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html" title="enum in org.apache.kudu.client">KuduPredicate.ComparisonOp</a> LESS_EQUAL</pre>
+</li>
+</ul>
+</li>
+</ul>
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="values--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>values</h4>
+<pre>public static&nbsp;<a href="../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html" title="enum in org.apache.kudu.client">KuduPredicate.ComparisonOp</a>[]&nbsp;values()</pre>
+<div class="block">Returns an array containing the constants of this enum type, in
+the order they are declared.  This method may be used to iterate
+over the constants as follows:
+<pre>
+for (KuduPredicate.ComparisonOp c : KuduPredicate.ComparisonOp.values())
+&nbsp;   System.out.println(c);
+</pre></div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>an array containing the constants of this enum type, in the order they are declared</dd>
+</dl>
+</li>
+</ul>
+<a name="valueOf-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>valueOf</h4>
+<pre>public static&nbsp;<a href="../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html" title="enum in org.apache.kudu.client">KuduPredicate.ComparisonOp</a>&nbsp;valueOf(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
+<div class="block">Returns the enum constant of this type with the specified name.
+The string must match <i>exactly</i> an identifier used to declare an
+enum constant in this type.  (Extraneous whitespace characters are 
+not permitted.)</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>name</code> - the name of the enum constant to be returned.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the enum constant with the specified name</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if this enum type has no constant with the specified name</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/NullPointerException.html?is-external=true" title="class or interface in java.lang">NullPointerException</a></code> - if the argument is null</dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/KuduPredicate.ComparisonOp.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/KuduScanner.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/KuduPredicate.ComparisonOp.html" target="_top">Frames</a></li>
+<li><a href="KuduPredicate.ComparisonOp.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#enum.constant.summary">Enum Constants</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li><a href="#enum.constant.detail">Enum Constants</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/KuduPredicate.html b/releases/1.4.0/apidocs/org/apache/kudu/client/KuduPredicate.html
new file mode 100644
index 0000000..35db0b1
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/KuduPredicate.html
@@ -0,0 +1,529 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>KuduPredicate (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="KuduPredicate (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":10,"i1":10,"i2":9,"i3":9,"i4":9,"i5":9,"i6":9,"i7":9,"i8":9,"i9":9,"i10":9,"i11":10};
+var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/KuduPredicate.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html" title="enum in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/KuduPredicate.html" target="_top">Frames</a></li>
+<li><a href="KuduPredicate.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.client</div>
+<h2 title="Class KuduPredicate" class="title">Class KuduPredicate</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.client.KuduPredicate</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Evolving
+public class <span class="typeNameLabel">KuduPredicate</span>
+extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></pre>
+<div class="block">A predicate which can be used to filter rows based on the value of a column.</div>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- ======== NESTED CLASS SUMMARY ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="nested.class.summary">
+<!--   -->
+</a>
+<h3>Nested Class Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Nested Class Summary table, listing nested classes, and an explanation">
+<caption><span>Nested Classes</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Class and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static class&nbsp;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html" title="enum in org.apache.kudu.client">KuduPredicate.ComparisonOp</a></span></code>
+<div class="block">The comparison operator of a predicate.</div>
+</td>
+</tr>
+</table>
+</li>
+</ul>
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduPredicate.html#equals-java.lang.Object-">equals</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o)</code>&nbsp;</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduPredicate.html#hashCode--">hashCode</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduPredicate.html#newComparisonPredicate-org.apache.kudu.ColumnSchema-org.apache.kudu.client.KuduPredicate.ComparisonOp-boolean-">newComparisonPredicate</a></span>(<a href="../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a>&nbsp;column,
+                      <a href="../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html" title="enum in org.apache.kudu.client">KuduPredicate.ComparisonOp</a>&nbsp;op,
+                      boolean&nbsp;value)</code>
+<div class="block">Creates a new <code>KuduPredicate</code> on a boolean column.</div>
+</td>
+</tr>
+<tr id="i3" class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduPredicate.html#newComparisonPredicate-org.apache.kudu.ColumnSchema-org.apache.kudu.client.KuduPredicate.ComparisonOp-byte:A-">newComparisonPredicate</a></span>(<a href="../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a>&nbsp;column,
+                      <a href="../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html" title="enum in org.apache.kudu.client">KuduPredicate.ComparisonOp</a>&nbsp;op,
+                      byte[]&nbsp;value)</code>
+<div class="block">Creates a new comparison predicate on a binary column.</div>
+</td>
+</tr>
+<tr id="i4" class="altColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduPredicate.html#newComparisonPredicate-org.apache.kudu.ColumnSchema-org.apache.kudu.client.KuduPredicate.ComparisonOp-double-">newComparisonPredicate</a></span>(<a href="../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a>&nbsp;column,
+                      <a href="../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html" title="enum in org.apache.kudu.client">KuduPredicate.ComparisonOp</a>&nbsp;op,
+                      double&nbsp;value)</code>
+<div class="block">Creates a new comparison predicate on a double column.</div>
+</td>
+</tr>
+<tr id="i5" class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduPredicate.html#newComparisonPredicate-org.apache.kudu.ColumnSchema-org.apache.kudu.client.KuduPredicate.ComparisonOp-float-">newComparisonPredicate</a></span>(<a href="../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a>&nbsp;column,
+                      <a href="../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html" title="enum in org.apache.kudu.client">KuduPredicate.ComparisonOp</a>&nbsp;op,
+                      float&nbsp;value)</code>
+<div class="block">Creates a new comparison predicate on a float column.</div>
+</td>
+</tr>
+<tr id="i6" class="altColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduPredicate.html#newComparisonPredicate-org.apache.kudu.ColumnSchema-org.apache.kudu.client.KuduPredicate.ComparisonOp-long-">newComparisonPredicate</a></span>(<a href="../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a>&nbsp;column,
+                      <a href="../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html" title="enum in org.apache.kudu.client">KuduPredicate.ComparisonOp</a>&nbsp;op,
+                      long&nbsp;value)</code>
+<div class="block">Creates a new comparison predicate on an integer or timestamp column.</div>
+</td>
+</tr>
+<tr id="i7" class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduPredicate.html#newComparisonPredicate-org.apache.kudu.ColumnSchema-org.apache.kudu.client.KuduPredicate.ComparisonOp-java.lang.String-">newComparisonPredicate</a></span>(<a href="../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a>&nbsp;column,
+                      <a href="../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html" title="enum in org.apache.kudu.client">KuduPredicate.ComparisonOp</a>&nbsp;op,
+                      <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;value)</code>
+<div class="block">Creates a new comparison predicate on a string column.</div>
+</td>
+</tr>
+<tr id="i8" class="altColor">
+<td class="colFirst"><code>static &lt;T&gt;&nbsp;<a href="../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduPredicate.html#newInListPredicate-org.apache.kudu.ColumnSchema-java.util.List-">newInListPredicate</a></span>(<a href="../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a>&nbsp;column,
+                  <a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;T&gt;&nbsp;values)</code>
+<div class="block">Creates a new IN list predicate.</div>
+</td>
+</tr>
+<tr id="i9" class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduPredicate.html#newIsNotNullPredicate-org.apache.kudu.ColumnSchema-">newIsNotNullPredicate</a></span>(<a href="../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a>&nbsp;column)</code>
+<div class="block">Creates a new <code>IS NOT NULL</code> predicate.</div>
+</td>
+</tr>
+<tr id="i10" class="altColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduPredicate.html#newIsNullPredicate-org.apache.kudu.ColumnSchema-">newIsNullPredicate</a></span>(<a href="../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a>&nbsp;column)</code>
+<div class="block">Creates a new <code>IS NULL</code> predicate.</div>
+</td>
+</tr>
+<tr id="i11" class="rowColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduPredicate.html#toString--">toString</a></span>()</code>&nbsp;</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="newComparisonPredicate-org.apache.kudu.ColumnSchema-org.apache.kudu.client.KuduPredicate.ComparisonOp-boolean-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>newComparisonPredicate</h4>
+<pre>public static&nbsp;<a href="../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a>&nbsp;newComparisonPredicate(<a href="../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a>&nbsp;column,
+                                                   <a href="../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html" title="enum in org.apache.kudu.client">KuduPredicate.ComparisonOp</a>&nbsp;op,
+                                                   boolean&nbsp;value)</pre>
+<div class="block">Creates a new <code>KuduPredicate</code> on a boolean column.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>column</code> - the column schema</dd>
+<dd><code>op</code> - the comparison operation</dd>
+<dd><code>value</code> - the value to compare against</dd>
+</dl>
+</li>
+</ul>
+<a name="newComparisonPredicate-org.apache.kudu.ColumnSchema-org.apache.kudu.client.KuduPredicate.ComparisonOp-long-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>newComparisonPredicate</h4>
+<pre>public static&nbsp;<a href="../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a>&nbsp;newComparisonPredicate(<a href="../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a>&nbsp;column,
+                                                   <a href="../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html" title="enum in org.apache.kudu.client">KuduPredicate.ComparisonOp</a>&nbsp;op,
+                                                   long&nbsp;value)</pre>
+<div class="block">Creates a new comparison predicate on an integer or timestamp column.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>column</code> - the column schema</dd>
+<dd><code>op</code> - the comparison operation</dd>
+<dd><code>value</code> - the value to compare against</dd>
+</dl>
+</li>
+</ul>
+<a name="newComparisonPredicate-org.apache.kudu.ColumnSchema-org.apache.kudu.client.KuduPredicate.ComparisonOp-float-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>newComparisonPredicate</h4>
+<pre>public static&nbsp;<a href="../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a>&nbsp;newComparisonPredicate(<a href="../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a>&nbsp;column,
+                                                   <a href="../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html" title="enum in org.apache.kudu.client">KuduPredicate.ComparisonOp</a>&nbsp;op,
+                                                   float&nbsp;value)</pre>
+<div class="block">Creates a new comparison predicate on a float column.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>column</code> - the column schema</dd>
+<dd><code>op</code> - the comparison operation</dd>
+<dd><code>value</code> - the value to compare against</dd>
+</dl>
+</li>
+</ul>
+<a name="newComparisonPredicate-org.apache.kudu.ColumnSchema-org.apache.kudu.client.KuduPredicate.ComparisonOp-double-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>newComparisonPredicate</h4>
+<pre>public static&nbsp;<a href="../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a>&nbsp;newComparisonPredicate(<a href="../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a>&nbsp;column,
+                                                   <a href="../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html" title="enum in org.apache.kudu.client">KuduPredicate.ComparisonOp</a>&nbsp;op,
+                                                   double&nbsp;value)</pre>
+<div class="block">Creates a new comparison predicate on a double column.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>column</code> - the column schema</dd>
+<dd><code>op</code> - the comparison operation</dd>
+<dd><code>value</code> - the value to compare against</dd>
+</dl>
+</li>
+</ul>
+<a name="newComparisonPredicate-org.apache.kudu.ColumnSchema-org.apache.kudu.client.KuduPredicate.ComparisonOp-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>newComparisonPredicate</h4>
+<pre>public static&nbsp;<a href="../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a>&nbsp;newComparisonPredicate(<a href="../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a>&nbsp;column,
+                                                   <a href="../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html" title="enum in org.apache.kudu.client">KuduPredicate.ComparisonOp</a>&nbsp;op,
+                                                   <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;value)</pre>
+<div class="block">Creates a new comparison predicate on a string column.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>column</code> - the column schema</dd>
+<dd><code>op</code> - the comparison operation</dd>
+<dd><code>value</code> - the value to compare against</dd>
+</dl>
+</li>
+</ul>
+<a name="newComparisonPredicate-org.apache.kudu.ColumnSchema-org.apache.kudu.client.KuduPredicate.ComparisonOp-byte:A-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>newComparisonPredicate</h4>
+<pre>public static&nbsp;<a href="../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a>&nbsp;newComparisonPredicate(<a href="../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a>&nbsp;column,
+                                                   <a href="../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html" title="enum in org.apache.kudu.client">KuduPredicate.ComparisonOp</a>&nbsp;op,
+                                                   byte[]&nbsp;value)</pre>
+<div class="block">Creates a new comparison predicate on a binary column.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>column</code> - the column schema</dd>
+<dd><code>op</code> - the comparison operation</dd>
+<dd><code>value</code> - the value to compare against</dd>
+</dl>
+</li>
+</ul>
+<a name="newInListPredicate-org.apache.kudu.ColumnSchema-java.util.List-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>newInListPredicate</h4>
+<pre>public static&nbsp;&lt;T&gt;&nbsp;<a href="../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a>&nbsp;newInListPredicate(<a href="../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a>&nbsp;column,
+                                                   <a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;T&gt;&nbsp;values)</pre>
+<div class="block">Creates a new IN list predicate.
+
+ The list must contain values of the correct type for the column.</div>
+<dl>
+<dt><span class="paramLabel">Type Parameters:</span></dt>
+<dd><code>T</code> - the type of values, must match the type of the column</dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>column</code> - the column that the predicate applies to</dd>
+<dd><code>values</code> - list of values which the column values must match</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>an IN list predicate</dd>
+</dl>
+</li>
+</ul>
+<a name="newIsNotNullPredicate-org.apache.kudu.ColumnSchema-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>newIsNotNullPredicate</h4>
+<pre>public static&nbsp;<a href="../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a>&nbsp;newIsNotNullPredicate(<a href="../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a>&nbsp;column)</pre>
+<div class="block">Creates a new <code>IS NOT NULL</code> predicate.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>column</code> - the column that the predicate applies to</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>an <code>IS NOT NULL</code> predicate</dd>
+</dl>
+</li>
+</ul>
+<a name="newIsNullPredicate-org.apache.kudu.ColumnSchema-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>newIsNullPredicate</h4>
+<pre>public static&nbsp;<a href="../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a>&nbsp;newIsNullPredicate(<a href="../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a>&nbsp;column)</pre>
+<div class="block">Creates a new <code>IS NULL</code> predicate.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>column</code> - the column that the predicate applies to</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>an <code>IS NULL</code> predicate</dd>
+</dl>
+</li>
+</ul>
+<a name="toString--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>toString</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;toString()</pre>
+<dl>
+<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a></code>&nbsp;in class&nbsp;<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></dd>
+</dl>
+</li>
+</ul>
+<a name="equals-java.lang.Object-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>equals</h4>
+<pre>public&nbsp;boolean&nbsp;equals(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o)</pre>
+<dl>
+<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a></code>&nbsp;in class&nbsp;<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></dd>
+</dl>
+</li>
+</ul>
+<a name="hashCode--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>hashCode</h4>
+<pre>public&nbsp;int&nbsp;hashCode()</pre>
+<dl>
+<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a></code>&nbsp;in class&nbsp;<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/KuduPredicate.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html" title="enum in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/KuduPredicate.html" target="_top">Frames</a></li>
+<li><a href="KuduPredicate.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/KuduScanToken.KuduScanTokenBuilder.html b/releases/1.4.0/apidocs/org/apache/kudu/client/KuduScanToken.KuduScanTokenBuilder.html
new file mode 100644
index 0000000..e646b55
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/KuduScanToken.KuduScanTokenBuilder.html
@@ -0,0 +1,282 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>KuduScanToken.KuduScanTokenBuilder (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="KuduScanToken.KuduScanTokenBuilder (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":10,"i1":10};
+var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/KuduScanToken.KuduScanTokenBuilder.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/KuduScanToken.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/KuduSession.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/KuduScanToken.KuduScanTokenBuilder.html" target="_top">Frames</a></li>
+<li><a href="KuduScanToken.KuduScanTokenBuilder.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.client</div>
+<h2 title="Class KuduScanToken.KuduScanTokenBuilder" class="title">Class KuduScanToken.KuduScanTokenBuilder</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="class in org.apache.kudu.client">org.apache.kudu.client.AbstractKuduScannerBuilder</a>&lt;<a href="../../../../org/apache/kudu/client/KuduScanToken.KuduScanTokenBuilder.html" title="class in org.apache.kudu.client">KuduScanToken.KuduScanTokenBuilder</a>,<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/apache/kudu/client/KuduScanToken.html" title="class in org.apache.kudu.client">KuduScanToken</a>&gt;&gt;</li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.client.KuduScanToken.KuduScanTokenBuilder</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<dl>
+<dt>Enclosing class:</dt>
+<dd><a href="../../../../org/apache/kudu/client/KuduScanToken.html" title="class in org.apache.kudu.client">KuduScanToken</a></dd>
+</dl>
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Unstable
+public static class <span class="typeNameLabel">KuduScanToken.KuduScanTokenBuilder</span>
+extends <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="class in org.apache.kudu.client">AbstractKuduScannerBuilder</a>&lt;<a href="../../../../org/apache/kudu/client/KuduScanToken.KuduScanTokenBuilder.html" title="class in org.apache.kudu.client">KuduScanToken.KuduScanTokenBuilder</a>,<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/apache/kudu/client/KuduScanToken.html" title="class in org.apache.kudu.client">KuduScanToken</a>&gt;&gt;</pre>
+<div class="block">Builds a sequence of scan tokens.</div>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/apache/kudu/client/KuduScanToken.html" title="class in org.apache.kudu.client">KuduScanToken</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduScanToken.KuduScanTokenBuilder.html#build--">build</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/KuduScanToken.KuduScanTokenBuilder.html" title="class in org.apache.kudu.client">KuduScanToken.KuduScanTokenBuilder</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduScanToken.KuduScanTokenBuilder.html#setTimeout-long-">setTimeout</a></span>(long&nbsp;timeoutMs)</code>
+<div class="block">Sets a timeout value to use when building the list of scan tokens.</div>
+</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.org.apache.kudu.client.AbstractKuduScannerBuilder">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;org.apache.kudu.client.<a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="class in org.apache.kudu.client">AbstractKuduScannerBuilder</a></h3>
+<code><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#addColumnRangePredicate-org.apache.kudu.client.ColumnRangePredicate-">addColumnRangePredicate</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#addColumnRangePredicatesRaw-byte:A-">addColumnRangePredicatesRaw</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#addPredicate-org.apache.kudu.client.KuduPredicate-">addPredicate</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#batchSizeBytes-int-">batchSizeBytes</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#cacheBlocks-boolean-">cacheBlocks</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#exclusiveUpperBound-org.apache.kudu.client.PartialRow-">exclusiveUpperBound</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#exclusiveUpperBoundRaw-byte:A-">exclusiveUpperBoundRaw</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#limit-long-">limit</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#lowerBound-org.apache.kudu.client.PartialRow-">lowerBound</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#lowerBoundRaw-byte:A-">lowerBoundRaw</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#prefetching-boolean-">prefetching</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#readMode-org.apache.kudu.client.AsyncKuduScanner.ReadMode-">readMode</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#replicaSelection-org.apache.kudu.client.ReplicaSelection-">replicaSelection</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#scanRequestTimeout-long-">scanRequestTimeout</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#setFaultTolerant-boolean-">setFaultTolerant</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#setProjectedColumnIndexes-java.util.List-">setProjectedColumnIndexes</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#setProjectedColumnNames-java.util.List-">setProjectedColumnNames</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#snapshotTimestampMicros-long-">snapshotTimestampMicros</a></code></li>
+</ul>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="setTimeout-long-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setTimeout</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/KuduScanToken.KuduScanTokenBuilder.html" title="class in org.apache.kudu.client">KuduScanToken.KuduScanTokenBuilder</a>&nbsp;setTimeout(long&nbsp;timeoutMs)</pre>
+<div class="block">Sets a timeout value to use when building the list of scan tokens. If
+ unset, the client operation timeout will be used.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>timeoutMs</code> - the timeout in milliseconds.</dd>
+</dl>
+</li>
+</ul>
+<a name="build--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>build</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/apache/kudu/client/KuduScanToken.html" title="class in org.apache.kudu.client">KuduScanToken</a>&gt;&nbsp;build()</pre>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#build--">build</a></code>&nbsp;in class&nbsp;<code><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="class in org.apache.kudu.client">AbstractKuduScannerBuilder</a>&lt;<a href="../../../../org/apache/kudu/client/KuduScanToken.KuduScanTokenBuilder.html" title="class in org.apache.kudu.client">KuduScanToken.KuduScanTokenBuilder</a>,<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/apache/kudu/client/KuduScanToken.html" title="class in org.apache.kudu.client">KuduScanToken</a>&gt;&gt;</code></dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/KuduScanToken.KuduScanTokenBuilder.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/KuduScanToken.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/KuduSession.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/KuduScanToken.KuduScanTokenBuilder.html" target="_top">Frames</a></li>
+<li><a href="KuduScanToken.KuduScanTokenBuilder.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/KuduScanToken.html b/releases/1.4.0/apidocs/org/apache/kudu/client/KuduScanToken.html
new file mode 100644
index 0000000..e1e1b51
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/KuduScanToken.html
@@ -0,0 +1,411 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>KuduScanToken (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="KuduScanToken (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":10,"i1":9,"i2":10,"i3":10,"i4":10,"i5":9};
+var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/KuduScanToken.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/KuduScanner.KuduScannerBuilder.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/KuduScanToken.KuduScanTokenBuilder.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/KuduScanToken.html" target="_top">Frames</a></li>
+<li><a href="KuduScanToken.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.client</div>
+<h2 title="Class KuduScanToken" class="title">Class KuduScanToken</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.client.KuduScanToken</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<dl>
+<dt>All Implemented Interfaces:</dt>
+<dd><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;<a href="../../../../org/apache/kudu/client/KuduScanToken.html" title="class in org.apache.kudu.client">KuduScanToken</a>&gt;</dd>
+</dl>
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Unstable
+public class <span class="typeNameLabel">KuduScanToken</span>
+extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>
+implements <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;<a href="../../../../org/apache/kudu/client/KuduScanToken.html" title="class in org.apache.kudu.client">KuduScanToken</a>&gt;</pre>
+<div class="block">A scan token describes a partial scan of a Kudu table limited to a single
+ contiguous physical location. Using the <a href="../../../../org/apache/kudu/client/KuduScanToken.KuduScanTokenBuilder.html" title="class in org.apache.kudu.client"><code>KuduScanToken.KuduScanTokenBuilder</code></a>, clients can
+ describe the desired scan, including predicates, bounds, timestamps, and
+ caching, and receive back a collection of scan tokens.
+
+ Each scan token may be separately turned into a scanner using
+ <a href="../../../../org/apache/kudu/client/KuduScanToken.html#intoScanner-org.apache.kudu.client.KuduClient-"><code>intoScanner(org.apache.kudu.client.KuduClient)</code></a>, with each scanner responsible for a disjoint section
+ of the table.
+
+ Scan tokens may be serialized using the <a href="../../../../org/apache/kudu/client/KuduScanToken.html#serialize--"><code>serialize()</code></a> method and
+ deserialized back into a scanner using the <a href="../../../../org/apache/kudu/client/KuduScanToken.html#deserializeIntoScanner-byte:A-org.apache.kudu.client.KuduClient-"><code>deserializeIntoScanner(byte[], org.apache.kudu.client.KuduClient)</code></a>
+ method. This allows use cases such as generating scan tokens in the planner
+ component of a query engine, then sending the tokens to execution nodes based
+ on locality, and then instantiating the scanners on those nodes.
+
+ Scan token locality information can be inspected using the <a href="../../../../org/apache/kudu/client/KuduScanToken.html#getTablet--"><code>getTablet()</code></a>
+ method.</div>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- ======== NESTED CLASS SUMMARY ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="nested.class.summary">
+<!--   -->
+</a>
+<h3>Nested Class Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Nested Class Summary table, listing nested classes, and an explanation">
+<caption><span>Nested Classes</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Class and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static class&nbsp;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduScanToken.KuduScanTokenBuilder.html" title="class in org.apache.kudu.client">KuduScanToken.KuduScanTokenBuilder</a></span></code>
+<div class="block">Builds a sequence of scan tokens.</div>
+</td>
+</tr>
+</table>
+</li>
+</ul>
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduScanToken.html#compareTo-org.apache.kudu.client.KuduScanToken-">compareTo</a></span>(<a href="../../../../org/apache/kudu/client/KuduScanToken.html" title="class in org.apache.kudu.client">KuduScanToken</a>&nbsp;other)</code>&nbsp;</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/KuduScanner.html" title="class in org.apache.kudu.client">KuduScanner</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduScanToken.html#deserializeIntoScanner-byte:A-org.apache.kudu.client.KuduClient-">deserializeIntoScanner</a></span>(byte[]&nbsp;buf,
+                      <a href="../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a>&nbsp;client)</code>
+<div class="block">Deserializes a <code>KuduScanToken</code> into a <a href="../../../../org/apache/kudu/client/KuduScanner.html" title="class in org.apache.kudu.client"><code>KuduScanner</code></a>.</div>
+</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/LocatedTablet.html" title="class in org.apache.kudu.client">LocatedTablet</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduScanToken.html#getTablet--">getTablet</a></span>()</code>
+<div class="block">Returns the tablet which the scanner created from this token will access.</div>
+</td>
+</tr>
+<tr id="i3" class="rowColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/KuduScanner.html" title="class in org.apache.kudu.client">KuduScanner</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduScanToken.html#intoScanner-org.apache.kudu.client.KuduClient-">intoScanner</a></span>(<a href="../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a>&nbsp;client)</code>
+<div class="block">Creates a <a href="../../../../org/apache/kudu/client/KuduScanner.html" title="class in org.apache.kudu.client"><code>KuduScanner</code></a> from this scan token.</div>
+</td>
+</tr>
+<tr id="i4" class="altColor">
+<td class="colFirst"><code>byte[]</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduScanToken.html#serialize--">serialize</a></span>()</code>
+<div class="block">Serializes this <code>KuduScanToken</code> into a byte array.</div>
+</td>
+</tr>
+<tr id="i5" class="rowColor">
+<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduScanToken.html#stringifySerializedToken-byte:A-org.apache.kudu.client.KuduClient-">stringifySerializedToken</a></span>(byte[]&nbsp;buf,
+                        <a href="../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a>&nbsp;client)</code>
+<div class="block">Formats the serialized token for debug printing.</div>
+</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="getTablet--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getTablet</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/LocatedTablet.html" title="class in org.apache.kudu.client">LocatedTablet</a>&nbsp;getTablet()</pre>
+<div class="block">Returns the tablet which the scanner created from this token will access.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the located tablet</dd>
+</dl>
+</li>
+</ul>
+<a name="intoScanner-org.apache.kudu.client.KuduClient-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>intoScanner</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/KuduScanner.html" title="class in org.apache.kudu.client">KuduScanner</a>&nbsp;intoScanner(<a href="../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a>&nbsp;client)
+                        throws <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
+<div class="block">Creates a <a href="../../../../org/apache/kudu/client/KuduScanner.html" title="class in org.apache.kudu.client"><code>KuduScanner</code></a> from this scan token.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>client</code> - a Kudu client for the cluster</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a scanner for the scan token</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></code></dd>
+</dl>
+</li>
+</ul>
+<a name="serialize--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>serialize</h4>
+<pre>public&nbsp;byte[]&nbsp;serialize()
+                 throws <a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
+<div class="block">Serializes this <code>KuduScanToken</code> into a byte array.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the serialized scan token</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
+</dl>
+</li>
+</ul>
+<a name="deserializeIntoScanner-byte:A-org.apache.kudu.client.KuduClient-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>deserializeIntoScanner</h4>
+<pre>public static&nbsp;<a href="../../../../org/apache/kudu/client/KuduScanner.html" title="class in org.apache.kudu.client">KuduScanner</a>&nbsp;deserializeIntoScanner(byte[]&nbsp;buf,
+                                                 <a href="../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a>&nbsp;client)
+                                          throws <a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
+<div class="block">Deserializes a <code>KuduScanToken</code> into a <a href="../../../../org/apache/kudu/client/KuduScanner.html" title="class in org.apache.kudu.client"><code>KuduScanner</code></a>.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>buf</code> - a byte array containing the serialized scan token.</dd>
+<dd><code>client</code> - a Kudu client for the cluster</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a scanner for the serialized scan token</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
+</dl>
+</li>
+</ul>
+<a name="stringifySerializedToken-byte:A-org.apache.kudu.client.KuduClient-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>stringifySerializedToken</h4>
+<pre>public static&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;stringifySerializedToken(byte[]&nbsp;buf,
+                                              <a href="../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a>&nbsp;client)
+                                       throws <a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
+<div class="block">Formats the serialized token for debug printing.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>buf</code> - the serialized token</dd>
+<dd><code>client</code> - a Kudu client for the cluster to which the token belongs</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a debug string</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
+</dl>
+</li>
+</ul>
+<a name="compareTo-org.apache.kudu.client.KuduScanToken-">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>compareTo</h4>
+<pre>public&nbsp;int&nbsp;compareTo(<a href="../../../../org/apache/kudu/client/KuduScanToken.html" title="class in org.apache.kudu.client">KuduScanToken</a>&nbsp;other)</pre>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Comparable.html?is-external=true#compareTo-T-" title="class or interface in java.lang">compareTo</a></code>&nbsp;in interface&nbsp;<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;<a href="../../../../org/apache/kudu/client/KuduScanToken.html" title="class in org.apache.kudu.client">KuduScanToken</a>&gt;</code></dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/KuduScanToken.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/KuduScanner.KuduScannerBuilder.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/KuduScanToken.KuduScanTokenBuilder.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/KuduScanToken.html" target="_top">Frames</a></li>
+<li><a href="KuduScanToken.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/KuduScanner.KuduScannerBuilder.html b/releases/1.4.0/apidocs/org/apache/kudu/client/KuduScanner.KuduScannerBuilder.html
new file mode 100644
index 0000000..c67c214
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/KuduScanner.KuduScannerBuilder.html
@@ -0,0 +1,267 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>KuduScanner.KuduScannerBuilder (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="KuduScanner.KuduScannerBuilder (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":10};
+var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/KuduScanner.KuduScannerBuilder.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/KuduScanner.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/KuduScanToken.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/KuduScanner.KuduScannerBuilder.html" target="_top">Frames</a></li>
+<li><a href="KuduScanner.KuduScannerBuilder.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.client</div>
+<h2 title="Class KuduScanner.KuduScannerBuilder" class="title">Class KuduScanner.KuduScannerBuilder</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="class in org.apache.kudu.client">org.apache.kudu.client.AbstractKuduScannerBuilder</a>&lt;<a href="../../../../org/apache/kudu/client/KuduScanner.KuduScannerBuilder.html" title="class in org.apache.kudu.client">KuduScanner.KuduScannerBuilder</a>,<a href="../../../../org/apache/kudu/client/KuduScanner.html" title="class in org.apache.kudu.client">KuduScanner</a>&gt;</li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.client.KuduScanner.KuduScannerBuilder</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<dl>
+<dt>Enclosing class:</dt>
+<dd><a href="../../../../org/apache/kudu/client/KuduScanner.html" title="class in org.apache.kudu.client">KuduScanner</a></dd>
+</dl>
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Evolving
+public static class <span class="typeNameLabel">KuduScanner.KuduScannerBuilder</span>
+extends <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="class in org.apache.kudu.client">AbstractKuduScannerBuilder</a>&lt;<a href="../../../../org/apache/kudu/client/KuduScanner.KuduScannerBuilder.html" title="class in org.apache.kudu.client">KuduScanner.KuduScannerBuilder</a>,<a href="../../../../org/apache/kudu/client/KuduScanner.html" title="class in org.apache.kudu.client">KuduScanner</a>&gt;</pre>
+<div class="block">A Builder class to build <a href="../../../../org/apache/kudu/client/KuduScanner.html" title="class in org.apache.kudu.client"><code>KuduScanner</code></a>.
+ Use <a href="../../../../org/apache/kudu/client/KuduClient.html#newScannerBuilder-org.apache.kudu.client.KuduTable-"><code>KuduClient.newScannerBuilder(org.apache.kudu.client.KuduTable)</code></a> in order to get a builder instance.</div>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/KuduScanner.html" title="class in org.apache.kudu.client">KuduScanner</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduScanner.KuduScannerBuilder.html#build--">build</a></span>()</code>
+<div class="block">Builds a <a href="../../../../org/apache/kudu/client/KuduScanner.html" title="class in org.apache.kudu.client"><code>KuduScanner</code></a> using the passed configurations.</div>
+</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.org.apache.kudu.client.AbstractKuduScannerBuilder">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;org.apache.kudu.client.<a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="class in org.apache.kudu.client">AbstractKuduScannerBuilder</a></h3>
+<code><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#addColumnRangePredicate-org.apache.kudu.client.ColumnRangePredicate-">addColumnRangePredicate</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#addColumnRangePredicatesRaw-byte:A-">addColumnRangePredicatesRaw</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#addPredicate-org.apache.kudu.client.KuduPredicate-">addPredicate</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#batchSizeBytes-int-">batchSizeBytes</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#cacheBlocks-boolean-">cacheBlocks</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#exclusiveUpperBound-org.apache.kudu.client.PartialRow-">exclusiveUpperBound</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#exclusiveUpperBoundRaw-byte:A-">exclusiveUpperBoundRaw</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#limit-long-">limit</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#lowerBound-org.apache.kudu.client.PartialRow-">lowerBound</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#lowerBoundRaw-byte:A-">lowerBoundRaw</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#prefetching-boolean-">prefetching</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#readMode-org.apache.kudu.client.AsyncKuduScanner.ReadMode-">readMode</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#replicaSelection-org.apache.kudu.client.ReplicaSelection-">replicaSelection</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#scanRequestTimeout-long-">scanRequestTimeout</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#setFaultTolerant-boolean-">setFaultTolerant</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#setProjectedColumnIndexes-java.util.List-">setProjectedColumnIndexes</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#setProjectedColumnNames-java.util.List-">setProjectedColumnNames</a>, <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#snapshotTimestampMicros-long-">snapshotTimestampMicros</a></code></li>
+</ul>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="build--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>build</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/KuduScanner.html" title="class in org.apache.kudu.client">KuduScanner</a>&nbsp;build()</pre>
+<div class="block">Builds a <a href="../../../../org/apache/kudu/client/KuduScanner.html" title="class in org.apache.kudu.client"><code>KuduScanner</code></a> using the passed configurations.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#build--">build</a></code>&nbsp;in class&nbsp;<code><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="class in org.apache.kudu.client">AbstractKuduScannerBuilder</a>&lt;<a href="../../../../org/apache/kudu/client/KuduScanner.KuduScannerBuilder.html" title="class in org.apache.kudu.client">KuduScanner.KuduScannerBuilder</a>,<a href="../../../../org/apache/kudu/client/KuduScanner.html" title="class in org.apache.kudu.client">KuduScanner</a>&gt;</code></dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a new <a href="../../../../org/apache/kudu/client/KuduScanner.html" title="class in org.apache.kudu.client"><code>KuduScanner</code></a></dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/KuduScanner.KuduScannerBuilder.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/KuduScanner.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/KuduScanToken.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/KuduScanner.KuduScannerBuilder.html" target="_top">Frames</a></li>
+<li><a href="KuduScanner.KuduScannerBuilder.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/KuduScanner.html b/releases/1.4.0/apidocs/org/apache/kudu/client/KuduScanner.html
new file mode 100644
index 0000000..2b06b8f
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/KuduScanner.html
@@ -0,0 +1,423 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>KuduScanner (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="KuduScanner (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10};
+var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/KuduScanner.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html" title="enum in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/KuduScanner.KuduScannerBuilder.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/KuduScanner.html" target="_top">Frames</a></li>
+<li><a href="KuduScanner.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.client</div>
+<h2 title="Class KuduScanner" class="title">Class KuduScanner</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.client.KuduScanner</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Evolving
+public class <span class="typeNameLabel">KuduScanner</span>
+extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></pre>
+<div class="block">Synchronous version of <a href="../../../../org/apache/kudu/client/AsyncKuduScanner.html" title="class in org.apache.kudu.client"><code>AsyncKuduScanner</code></a>. Offers the same API but with blocking methods.</div>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- ======== NESTED CLASS SUMMARY ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="nested.class.summary">
+<!--   -->
+</a>
+<h3>Nested Class Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Nested Class Summary table, listing nested classes, and an explanation">
+<caption><span>Nested Classes</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Class and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static class&nbsp;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduScanner.KuduScannerBuilder.html" title="class in org.apache.kudu.client">KuduScanner.KuduScannerBuilder</a></span></code>
+<div class="block">A Builder class to build <a href="../../../../org/apache/kudu/client/KuduScanner.html" title="class in org.apache.kudu.client"><code>KuduScanner</code></a>.</div>
+</td>
+</tr>
+</table>
+</li>
+</ul>
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/RowResultIterator.html" title="class in org.apache.kudu.client">RowResultIterator</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduScanner.html#close--">close</a></span>()</code>
+<div class="block">Closes this scanner (don't forget to call this when you're done with it!).</div>
+</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code>long</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduScanner.html#getBatchSizeBytes--">getBatchSizeBytes</a></span>()</code>
+<div class="block">Returns the maximum number of bytes returned by the scanner, on each batch.</div>
+</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduScanner.html#getCacheBlocks--">getCacheBlocks</a></span>()</code>
+<div class="block">Returns if this scanner was configured to cache data blocks or not.</div>
+</td>
+</tr>
+<tr id="i3" class="rowColor">
+<td class="colFirst"><code>long</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduScanner.html#getLimit--">getLimit</a></span>()</code>
+<div class="block">Returns the maximum number of rows that this scanner was configured to return.</div>
+</td>
+</tr>
+<tr id="i4" class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduScanner.html#getProjectionSchema--">getProjectionSchema</a></span>()</code>
+<div class="block">Returns the projection schema of this scanner.</div>
+</td>
+</tr>
+<tr id="i5" class="rowColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AsyncKuduScanner.ReadMode.html" title="enum in org.apache.kudu.client">AsyncKuduScanner.ReadMode</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduScanner.html#getReadMode--">getReadMode</a></span>()</code>
+<div class="block">Returns the ReadMode for this scanner.</div>
+</td>
+</tr>
+<tr id="i6" class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduScanner.html#hasMoreRows--">hasMoreRows</a></span>()</code>
+<div class="block">Tells if the last rpc returned that there might be more rows to scan.</div>
+</td>
+</tr>
+<tr id="i7" class="rowColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/RowResultIterator.html" title="class in org.apache.kudu.client">RowResultIterator</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduScanner.html#nextRows--">nextRows</a></span>()</code>
+<div class="block">Scans a number of rows.</div>
+</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="hasMoreRows--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>hasMoreRows</h4>
+<pre>public&nbsp;boolean&nbsp;hasMoreRows()</pre>
+<div class="block">Tells if the last rpc returned that there might be more rows to scan.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>true if there might be more data to scan, else false</dd>
+</dl>
+</li>
+</ul>
+<a name="nextRows--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>nextRows</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/RowResultIterator.html" title="class in org.apache.kudu.client">RowResultIterator</a>&nbsp;nextRows()
+                           throws <a href="../../../../org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client">KuduException</a></pre>
+<div class="block">Scans a number of rows.
+ <p>
+ Once this method returns <code>null</code> once (which indicates that this
+ <code>Scanner</code> is done scanning), calling it again leads to an undefined
+ behavior.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a list of rows.</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="../../../../org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client">KuduException</a></code> - if anything went wrong</dd>
+</dl>
+</li>
+</ul>
+<a name="close--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>close</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/RowResultIterator.html" title="class in org.apache.kudu.client">RowResultIterator</a>&nbsp;close()
+                        throws <a href="../../../../org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client">KuduException</a></pre>
+<div class="block">Closes this scanner (don't forget to call this when you're done with it!).
+ <p>
+ Closing a scanner already closed has no effect.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a deferred object that indicates the completion of the request</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="../../../../org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client">KuduException</a></code> - if anything went wrong</dd>
+</dl>
+</li>
+</ul>
+<a name="getLimit--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getLimit</h4>
+<pre>public&nbsp;long&nbsp;getLimit()</pre>
+<div class="block">Returns the maximum number of rows that this scanner was configured to return.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a long representing the maximum number of rows that can be returned</dd>
+</dl>
+</li>
+</ul>
+<a name="getCacheBlocks--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getCacheBlocks</h4>
+<pre>public&nbsp;boolean&nbsp;getCacheBlocks()</pre>
+<div class="block">Returns if this scanner was configured to cache data blocks or not.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>true if this scanner will cache blocks, else else.</dd>
+</dl>
+</li>
+</ul>
+<a name="getBatchSizeBytes--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getBatchSizeBytes</h4>
+<pre>public&nbsp;long&nbsp;getBatchSizeBytes()</pre>
+<div class="block">Returns the maximum number of bytes returned by the scanner, on each batch.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a long representing the maximum number of bytes that a scanner can receive at once
+ from a tablet server</dd>
+</dl>
+</li>
+</ul>
+<a name="getReadMode--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getReadMode</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/AsyncKuduScanner.ReadMode.html" title="enum in org.apache.kudu.client">AsyncKuduScanner.ReadMode</a>&nbsp;getReadMode()</pre>
+<div class="block">Returns the ReadMode for this scanner.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the configured read mode for this scanner</dd>
+</dl>
+</li>
+</ul>
+<a name="getProjectionSchema--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>getProjectionSchema</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a>&nbsp;getProjectionSchema()</pre>
+<div class="block">Returns the projection schema of this scanner. If specific columns were
+ not specified during scanner creation, the table schema is returned.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the projection schema for this scanner</dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/KuduScanner.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html" title="enum in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/KuduScanner.KuduScannerBuilder.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/KuduScanner.html" target="_top">Frames</a></li>
+<li><a href="KuduScanner.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/KuduSession.html b/releases/1.4.0/apidocs/org/apache/kudu/client/KuduSession.html
new file mode 100644
index 0000000..8f4d582
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/KuduSession.html
@@ -0,0 +1,721 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>KuduSession (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="KuduSession (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10,"i15":10,"i16":10};
+var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/KuduSession.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/KuduScanToken.KuduScanTokenBuilder.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/KuduSession.html" target="_top">Frames</a></li>
+<li><a href="KuduSession.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.client</div>
+<h2 title="Class KuduSession" class="title">Class KuduSession</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.client.KuduSession</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<dl>
+<dt>All Implemented Interfaces:</dt>
+<dd><a href="../../../../org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client">SessionConfiguration</a></dd>
+</dl>
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Evolving
+public class <span class="typeNameLabel">KuduSession</span>
+extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>
+implements <a href="../../../../org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client">SessionConfiguration</a></pre>
+<div class="block">Synchronous version of <a href="../../../../org/apache/kudu/client/AsyncKuduSession.html" title="class in org.apache.kudu.client"><code>AsyncKuduSession</code></a>.
+ Offers the same API but with blocking methods.<p>
+
+ This class is <b>not</b> thread-safe.<p></div>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- ======== NESTED CLASS SUMMARY ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="nested.class.summary">
+<!--   -->
+</a>
+<h3>Nested Class Summary</h3>
+<ul class="blockList">
+<li class="blockList"><a name="nested.classes.inherited.from.class.org.apache.kudu.client.SessionConfiguration">
+<!--   -->
+</a>
+<h3>Nested classes/interfaces inherited from interface&nbsp;org.apache.kudu.client.<a href="../../../../org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client">SessionConfiguration</a></h3>
+<code><a href="../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html" title="enum in org.apache.kudu.client">SessionConfiguration.FlushMode</a></code></li>
+</ul>
+</li>
+</ul>
+<!-- =========== FIELD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="field.summary">
+<!--   -->
+</a>
+<h3>Field Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
+<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Field and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static org.slf4j.Logger</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduSession.html#LOG">LOG</a></span></code>&nbsp;</td>
+</tr>
+</table>
+</li>
+</ul>
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/OperationResponse.html" title="class in org.apache.kudu.client">OperationResponse</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduSession.html#apply-org.apache.kudu.client.Operation-">apply</a></span>(<a href="../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">Operation</a>&nbsp;operation)</code>
+<div class="block">Apply a given <a href="../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client"><code>Operation</code></a> to Kudu as part of this session.</div>
+</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/apache/kudu/client/OperationResponse.html" title="class in org.apache.kudu.client">OperationResponse</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduSession.html#close--">close</a></span>()</code>
+<div class="block">Blocking call that flushes the buffers (see <a href="../../../../org/apache/kudu/client/KuduSession.html#flush--"><code>flush()</code></a> and closes the sessions.</div>
+</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduSession.html#countPendingErrors--">countPendingErrors</a></span>()</code>
+<div class="block">Return the number of errors which are pending.</div>
+</td>
+</tr>
+<tr id="i3" class="rowColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/apache/kudu/client/OperationResponse.html" title="class in org.apache.kudu.client">OperationResponse</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduSession.html#flush--">flush</a></span>()</code>
+<div class="block">Blocking call that force flushes this session's buffers.</div>
+</td>
+</tr>
+<tr id="i4" class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html" title="enum in org.apache.kudu.client">SessionConfiguration.FlushMode</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduSession.html#getFlushMode--">getFlushMode</a></span>()</code>
+<div class="block">Get the current flush mode.</div>
+</td>
+</tr>
+<tr id="i5" class="rowColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/RowErrorsAndOverflowStatus.html" title="class in org.apache.kudu.client">RowErrorsAndOverflowStatus</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduSession.html#getPendingErrors--">getPendingErrors</a></span>()</code>
+<div class="block">Return any errors from previous calls.</div>
+</td>
+</tr>
+<tr id="i6" class="altColor">
+<td class="colFirst"><code>long</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduSession.html#getTimeoutMillis--">getTimeoutMillis</a></span>()</code>
+<div class="block">Get the current timeout.</div>
+</td>
+</tr>
+<tr id="i7" class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduSession.html#hasPendingOperations--">hasPendingOperations</a></span>()</code>
+<div class="block">Check if there are operations that haven't been completely applied.</div>
+</td>
+</tr>
+<tr id="i8" class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduSession.html#isClosed--">isClosed</a></span>()</code>
+<div class="block">Returns true if this session has already been closed.</div>
+</td>
+</tr>
+<tr id="i9" class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduSession.html#isIgnoreAllDuplicateRows--">isIgnoreAllDuplicateRows</a></span>()</code>
+<div class="block">Tells if the session is currently ignoring row errors when the whole list returned by a tablet
+ server is of the AlreadyPresent type.</div>
+</td>
+</tr>
+<tr id="i10" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduSession.html#setExternalConsistencyMode-org.apache.kudu.client.ExternalConsistencyMode-">setExternalConsistencyMode</a></span>(<a href="../../../../org/apache/kudu/client/ExternalConsistencyMode.html" title="enum in org.apache.kudu.client">ExternalConsistencyMode</a>&nbsp;consistencyMode)</code>
+<div class="block">Set the new external consistency mode for this session.</div>
+</td>
+</tr>
+<tr id="i11" class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduSession.html#setFlushInterval-int-">setFlushInterval</a></span>(int&nbsp;interval)</code>
+<div class="block">Set the flush interval, which will be used for the next scheduling decision.</div>
+</td>
+</tr>
+<tr id="i12" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduSession.html#setFlushMode-org.apache.kudu.client.SessionConfiguration.FlushMode-">setFlushMode</a></span>(<a href="../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html" title="enum in org.apache.kudu.client">SessionConfiguration.FlushMode</a>&nbsp;flushMode)</code>
+<div class="block">Set the new flush mode for this session.</div>
+</td>
+</tr>
+<tr id="i13" class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduSession.html#setIgnoreAllDuplicateRows-boolean-">setIgnoreAllDuplicateRows</a></span>(boolean&nbsp;ignoreAllDuplicateRows)</code>
+<div class="block">Configures the option to ignore all the row errors if they are all of the AlreadyPresent type.</div>
+</td>
+</tr>
+<tr id="i14" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduSession.html#setMutationBufferLowWatermark-float-">setMutationBufferLowWatermark</a></span>(float&nbsp;mutationBufferLowWatermarkPercentage)</code>
+<div class="block">Set the low watermark for this session.</div>
+</td>
+</tr>
+<tr id="i15" class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduSession.html#setMutationBufferSpace-int-">setMutationBufferSpace</a></span>(int&nbsp;size)</code>
+<div class="block">Set the number of operations that can be buffered.</div>
+</td>
+</tr>
+<tr id="i16" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduSession.html#setTimeoutMillis-long-">setTimeoutMillis</a></span>(long&nbsp;timeout)</code>
+<div class="block">Sets the timeout for the next applied operations.</div>
+</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ============ FIELD DETAIL =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="field.detail">
+<!--   -->
+</a>
+<h3>Field Detail</h3>
+<a name="LOG">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>LOG</h4>
+<pre>public static final&nbsp;org.slf4j.Logger LOG</pre>
+</li>
+</ul>
+</li>
+</ul>
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="apply-org.apache.kudu.client.Operation-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>apply</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/OperationResponse.html" title="class in org.apache.kudu.client">OperationResponse</a>&nbsp;apply(<a href="../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">Operation</a>&nbsp;operation)
+                        throws <a href="../../../../org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client">KuduException</a></pre>
+<div class="block">Apply a given <a href="../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client"><code>Operation</code></a> to Kudu as part of this session.
+
+ <p>
+ This is a blocking call that has different behavior based on the configured flush mode:
+
+ <ul>
+ <li><a href="../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html#AUTO_FLUSH_SYNC"><code>AUTO_FLUSH_SYNC</code></a>:
+ the call returns when the operation is persisted, else it throws an exception.
+
+ <li><a href="../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html#AUTO_FLUSH_BACKGROUND"><code>AUTO_FLUSH_BACKGROUND</code></a>:
+ the call returns when the operation has been added to the buffer.
+ This call should normally perform only fast in-memory operations but
+ it may have to wait when the buffer is full and there's another buffer being flushed. Row
+ errors can be checked by calling <a href="../../../../org/apache/kudu/client/KuduSession.html#countPendingErrors--"><code>countPendingErrors()</code></a> and can be retrieved by calling
+ <a href="../../../../org/apache/kudu/client/KuduSession.html#getPendingErrors--"><code>getPendingErrors()</code></a>.
+
+ <li><a href="../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html#MANUAL_FLUSH"><code>MANUAL_FLUSH</code></a>:
+ the call returns when the operation has been added to the buffer, else it throws a
+ <a href="../../../../org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client"><code>KuduException</code></a> if the buffer is full.
+ </ul>
+
+ <p>
+ Note: <a href="../../../../org/apache/kudu/client/PleaseThrottleException.html" title="class in org.apache.kudu.client"><code>PleaseThrottleException</code></a> is handled by this method and will not be thrown, unlike
+ with <a href="../../../../org/apache/kudu/client/AsyncKuduSession.html#apply-org.apache.kudu.client.Operation-"><code>AsyncKuduSession.apply()</code></a>.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>operation</code> - operation to apply</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>an OperationResponse for the applied Operation</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="../../../../org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client">KuduException</a></code> - if anything went wrong</dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html" title="enum in org.apache.kudu.client"><code>FlushMode</code></a></dd>
+</dl>
+</li>
+</ul>
+<a name="flush--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>flush</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/apache/kudu/client/OperationResponse.html" title="class in org.apache.kudu.client">OperationResponse</a>&gt;&nbsp;flush()
+                              throws <a href="../../../../org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client">KuduException</a></pre>
+<div class="block">Blocking call that force flushes this session's buffers. Data is persisted when this call
+ returns, else it will throw an exception.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a list of OperationResponse, one per operation that was flushed</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="../../../../org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client">KuduException</a></code> - if anything went wrong</dd>
+</dl>
+</li>
+</ul>
+<a name="close--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>close</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/apache/kudu/client/OperationResponse.html" title="class in org.apache.kudu.client">OperationResponse</a>&gt;&nbsp;close()
+                              throws <a href="../../../../org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client">KuduException</a></pre>
+<div class="block">Blocking call that flushes the buffers (see <a href="../../../../org/apache/kudu/client/KuduSession.html#flush--"><code>flush()</code></a> and closes the sessions.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>List of OperationResponse, one per operation that was flushed</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="../../../../org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client">KuduException</a></code> - if anything went wrong</dd>
+</dl>
+</li>
+</ul>
+<a name="getFlushMode--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getFlushMode</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html" title="enum in org.apache.kudu.client">SessionConfiguration.FlushMode</a>&nbsp;getFlushMode()</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#getFlushMode--">SessionConfiguration</a></code></span></div>
+<div class="block">Get the current flush mode.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#getFlushMode--">getFlushMode</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client">SessionConfiguration</a></code></dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>flush mode, <a href="../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html#AUTO_FLUSH_SYNC"><code>AUTO_FLUSH_SYNC</code></a> by default</dd>
+</dl>
+</li>
+</ul>
+<a name="setFlushMode-org.apache.kudu.client.SessionConfiguration.FlushMode-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setFlushMode</h4>
+<pre>public&nbsp;void&nbsp;setFlushMode(<a href="../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html" title="enum in org.apache.kudu.client">SessionConfiguration.FlushMode</a>&nbsp;flushMode)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#setFlushMode-org.apache.kudu.client.SessionConfiguration.FlushMode-">SessionConfiguration</a></code></span></div>
+<div class="block">Set the new flush mode for this session.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#setFlushMode-org.apache.kudu.client.SessionConfiguration.FlushMode-">setFlushMode</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client">SessionConfiguration</a></code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>flushMode</code> - new flush mode, can be the same as the previous one.</dd>
+</dl>
+</li>
+</ul>
+<a name="setMutationBufferSpace-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setMutationBufferSpace</h4>
+<pre>public&nbsp;void&nbsp;setMutationBufferSpace(int&nbsp;size)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#setMutationBufferSpace-int-">SessionConfiguration</a></code></span></div>
+<div class="block">Set the number of operations that can be buffered.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#setMutationBufferSpace-int-">setMutationBufferSpace</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client">SessionConfiguration</a></code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>size</code> - number of ops.</dd>
+</dl>
+</li>
+</ul>
+<a name="setMutationBufferLowWatermark-float-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setMutationBufferLowWatermark</h4>
+<pre>public&nbsp;void&nbsp;setMutationBufferLowWatermark(float&nbsp;mutationBufferLowWatermarkPercentage)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#setMutationBufferLowWatermark-float-">SessionConfiguration</a></code></span></div>
+<div class="block">Set the low watermark for this session. The default is set to half the mutation buffer space.
+ For example, a buffer space of 1000 with a low watermark set to 50% (0.5) will start randomly
+ sending PleaseRetryExceptions once there's an outstanding flush and the buffer is over 500.
+ As the buffer gets fuller, it becomes likelier to hit the exception.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#setMutationBufferLowWatermark-float-">setMutationBufferLowWatermark</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client">SessionConfiguration</a></code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>mutationBufferLowWatermarkPercentage</code> - a new low watermark as a percentage,
+                             has to be between 0  and 1 (inclusive). A value of 1 disables
+                             the low watermark since it's the same as the high one</dd>
+</dl>
+</li>
+</ul>
+<a name="setFlushInterval-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setFlushInterval</h4>
+<pre>public&nbsp;void&nbsp;setFlushInterval(int&nbsp;interval)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#setFlushInterval-int-">SessionConfiguration</a></code></span></div>
+<div class="block">Set the flush interval, which will be used for the next scheduling decision.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#setFlushInterval-int-">setFlushInterval</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client">SessionConfiguration</a></code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>interval</code> - interval in milliseconds.</dd>
+</dl>
+</li>
+</ul>
+<a name="getTimeoutMillis--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getTimeoutMillis</h4>
+<pre>public&nbsp;long&nbsp;getTimeoutMillis()</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#getTimeoutMillis--">SessionConfiguration</a></code></span></div>
+<div class="block">Get the current timeout.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#getTimeoutMillis--">getTimeoutMillis</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client">SessionConfiguration</a></code></dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>operation timeout in milliseconds, 0 if none was configured.</dd>
+</dl>
+</li>
+</ul>
+<a name="setTimeoutMillis-long-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setTimeoutMillis</h4>
+<pre>public&nbsp;void&nbsp;setTimeoutMillis(long&nbsp;timeout)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#setTimeoutMillis-long-">SessionConfiguration</a></code></span></div>
+<div class="block">Sets the timeout for the next applied operations.
+ The default timeout is 0, which disables the timeout functionality.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#setTimeoutMillis-long-">setTimeoutMillis</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client">SessionConfiguration</a></code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>timeout</code> - Timeout in milliseconds.</dd>
+</dl>
+</li>
+</ul>
+<a name="isClosed--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>isClosed</h4>
+<pre>public&nbsp;boolean&nbsp;isClosed()</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#isClosed--">SessionConfiguration</a></code></span></div>
+<div class="block">Returns true if this session has already been closed.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#isClosed--">isClosed</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client">SessionConfiguration</a></code></dd>
+</dl>
+</li>
+</ul>
+<a name="hasPendingOperations--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>hasPendingOperations</h4>
+<pre>public&nbsp;boolean&nbsp;hasPendingOperations()</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#hasPendingOperations--">SessionConfiguration</a></code></span></div>
+<div class="block">Check if there are operations that haven't been completely applied.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#hasPendingOperations--">hasPendingOperations</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client">SessionConfiguration</a></code></dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>true if operations are pending, else false.</dd>
+</dl>
+</li>
+</ul>
+<a name="setExternalConsistencyMode-org.apache.kudu.client.ExternalConsistencyMode-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setExternalConsistencyMode</h4>
+<pre>public&nbsp;void&nbsp;setExternalConsistencyMode(<a href="../../../../org/apache/kudu/client/ExternalConsistencyMode.html" title="enum in org.apache.kudu.client">ExternalConsistencyMode</a>&nbsp;consistencyMode)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#setExternalConsistencyMode-org.apache.kudu.client.ExternalConsistencyMode-">SessionConfiguration</a></code></span></div>
+<div class="block">Set the new external consistency mode for this session.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#setExternalConsistencyMode-org.apache.kudu.client.ExternalConsistencyMode-">setExternalConsistencyMode</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client">SessionConfiguration</a></code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>consistencyMode</code> - new external consistency mode, can the same as the previous one.</dd>
+</dl>
+</li>
+</ul>
+<a name="isIgnoreAllDuplicateRows--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>isIgnoreAllDuplicateRows</h4>
+<pre>public&nbsp;boolean&nbsp;isIgnoreAllDuplicateRows()</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#isIgnoreAllDuplicateRows--">SessionConfiguration</a></code></span></div>
+<div class="block">Tells if the session is currently ignoring row errors when the whole list returned by a tablet
+ server is of the AlreadyPresent type.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#isIgnoreAllDuplicateRows--">isIgnoreAllDuplicateRows</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client">SessionConfiguration</a></code></dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>true if the session is enforcing this, else false</dd>
+</dl>
+</li>
+</ul>
+<a name="setIgnoreAllDuplicateRows-boolean-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setIgnoreAllDuplicateRows</h4>
+<pre>public&nbsp;void&nbsp;setIgnoreAllDuplicateRows(boolean&nbsp;ignoreAllDuplicateRows)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#setIgnoreAllDuplicateRows-boolean-">SessionConfiguration</a></code></span></div>
+<div class="block">Configures the option to ignore all the row errors if they are all of the AlreadyPresent type.
+ This can be needed when facing KUDU-568. The effect of enabling this is that operation
+ responses that match this pattern will be cleared of their row errors, meaning that we consider
+ them successful.
+
+ <p>Disabled by default.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#setIgnoreAllDuplicateRows-boolean-">setIgnoreAllDuplicateRows</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client">SessionConfiguration</a></code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>ignoreAllDuplicateRows</code> - true if this session should enforce this, else false</dd>
+</dl>
+</li>
+</ul>
+<a name="countPendingErrors--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>countPendingErrors</h4>
+<pre>public&nbsp;int&nbsp;countPendingErrors()</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#countPendingErrors--">SessionConfiguration</a></code></span></div>
+<div class="block">Return the number of errors which are pending. Errors may accumulate when
+ using <a href="../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html#AUTO_FLUSH_BACKGROUND"><code>AUTO_FLUSH_BACKGROUND</code></a> mode.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#countPendingErrors--">countPendingErrors</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client">SessionConfiguration</a></code></dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a count of errors</dd>
+</dl>
+</li>
+</ul>
+<a name="getPendingErrors--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>getPendingErrors</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/RowErrorsAndOverflowStatus.html" title="class in org.apache.kudu.client">RowErrorsAndOverflowStatus</a>&nbsp;getPendingErrors()</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#getPendingErrors--">SessionConfiguration</a></code></span></div>
+<div class="block">Return any errors from previous calls. If there were more errors
+ than could be held in the session's error storage, the overflow state is set to true.
+
+ <p>Clears the pending errors.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#getPendingErrors--">getPendingErrors</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client">SessionConfiguration</a></code></dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>an object that contains the errors and the overflow status</dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/KuduSession.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/KuduScanToken.KuduScanTokenBuilder.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/KuduSession.html" target="_top">Frames</a></li>
+<li><a href="KuduSession.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/KuduTable.html b/releases/1.4.0/apidocs/org/apache/kudu/client/KuduTable.html
new file mode 100644
index 0000000..ffafe79
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/KuduTable.html
@@ -0,0 +1,528 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>KuduTable (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="KuduTable (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":42,"i1":42,"i2":10,"i3":10,"i4":10,"i5":10,"i6":42,"i7":42,"i8":10,"i9":10,"i10":10,"i11":10};
+var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"],32:["t6","Deprecated Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/KuduTable.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/KuduSession.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/ListTablesResponse.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/KuduTable.html" target="_top">Frames</a></li>
+<li><a href="KuduTable.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.client</div>
+<h2 title="Class KuduTable" class="title">Class KuduTable</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.client.KuduTable</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Evolving
+public class <span class="typeNameLabel">KuduTable</span>
+extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></pre>
+<div class="block">A KuduTable represents a table on a particular cluster. It holds the current
+ schema of the table. Any given KuduTable instance belongs to a specific AsyncKuduClient
+ instance.
+
+ Upon construction, the table is looked up in the catalog (or catalog cache),
+ and the schema fetched for introspection. The schema is not kept in sync with the master.
+
+ This class is thread-safe.</div>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t6" class="tableTab"><span><a href="javascript:show(32);">Deprecated Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code>com.stumbleupon.async.Deferred&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/apache/kudu/client/LocatedTablet.html" title="class in org.apache.kudu.client">LocatedTablet</a>&gt;&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduTable.html#asyncGetTabletsLocations-byte:A-byte:A-long-">asyncGetTabletsLocations</a></span>(byte[]&nbsp;startKey,
+                        byte[]&nbsp;endKey,
+                        long&nbsp;deadline)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;
+<div class="block"><span class="deprecationComment">use the <a href="../../../../org/apache/kudu/client/KuduScanToken.html" title="class in org.apache.kudu.client"><code>KuduScanToken</code></a> API</span></div>
+</div>
+</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code>com.stumbleupon.async.Deferred&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/apache/kudu/client/LocatedTablet.html" title="class in org.apache.kudu.client">LocatedTablet</a>&gt;&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduTable.html#asyncGetTabletsLocations-long-">asyncGetTabletsLocations</a></span>(long&nbsp;deadline)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;
+<div class="block"><span class="deprecationComment">use the <a href="../../../../org/apache/kudu/client/KuduScanToken.html" title="class in org.apache.kudu.client"><code>KuduScanToken</code></a> API</span></div>
+</div>
+</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client">AsyncKuduClient</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduTable.html#getAsyncClient--">getAsyncClient</a></span>()</code>
+<div class="block">Get the async client that created this instance.</div>
+</td>
+</tr>
+<tr id="i3" class="rowColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduTable.html#getName--">getName</a></span>()</code>
+<div class="block">Get this table's name.</div>
+</td>
+</tr>
+<tr id="i4" class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduTable.html#getSchema--">getSchema</a></span>()</code>
+<div class="block">Get this table's schema, as of the moment this instance was created.</div>
+</td>
+</tr>
+<tr id="i5" class="rowColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduTable.html#getTableId--">getTableId</a></span>()</code>
+<div class="block">Get this table's unique identifier.</div>
+</td>
+</tr>
+<tr id="i6" class="altColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/apache/kudu/client/LocatedTablet.html" title="class in org.apache.kudu.client">LocatedTablet</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduTable.html#getTabletsLocations-byte:A-byte:A-long-">getTabletsLocations</a></span>(byte[]&nbsp;startKey,
+                   byte[]&nbsp;endKey,
+                   long&nbsp;deadline)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;
+<div class="block"><span class="deprecationComment">use the <a href="../../../../org/apache/kudu/client/KuduScanToken.html" title="class in org.apache.kudu.client"><code>KuduScanToken</code></a> API</span></div>
+</div>
+</td>
+</tr>
+<tr id="i7" class="rowColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/apache/kudu/client/LocatedTablet.html" title="class in org.apache.kudu.client">LocatedTablet</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduTable.html#getTabletsLocations-long-">getTabletsLocations</a></span>(long&nbsp;deadline)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;
+<div class="block"><span class="deprecationComment">use the <a href="../../../../org/apache/kudu/client/KuduScanToken.html" title="class in org.apache.kudu.client"><code>KuduScanToken</code></a> API</span></div>
+</div>
+</td>
+</tr>
+<tr id="i8" class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/Delete.html" title="class in org.apache.kudu.client">Delete</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduTable.html#newDelete--">newDelete</a></span>()</code>
+<div class="block">Get a new delete configured with this table's schema.</div>
+</td>
+</tr>
+<tr id="i9" class="rowColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/Insert.html" title="class in org.apache.kudu.client">Insert</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduTable.html#newInsert--">newInsert</a></span>()</code>
+<div class="block">Get a new insert configured with this table's schema.</div>
+</td>
+</tr>
+<tr id="i10" class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/Update.html" title="class in org.apache.kudu.client">Update</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduTable.html#newUpdate--">newUpdate</a></span>()</code>
+<div class="block">Get a new update configured with this table's schema.</div>
+</td>
+</tr>
+<tr id="i11" class="rowColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/Upsert.html" title="class in org.apache.kudu.client">Upsert</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/KuduTable.html#newUpsert--">newUpsert</a></span>()</code>
+<div class="block">Get a new upsert configured with this table's schema.</div>
+</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="getSchema--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getSchema</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a>&nbsp;getSchema()</pre>
+<div class="block">Get this table's schema, as of the moment this instance was created.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>this table's schema</dd>
+</dl>
+</li>
+</ul>
+<a name="getName--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getName</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getName()</pre>
+<div class="block">Get this table's name.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>this table's name</dd>
+</dl>
+</li>
+</ul>
+<a name="getTableId--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getTableId</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getTableId()</pre>
+<div class="block">Get this table's unique identifier.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>this table's tableId</dd>
+</dl>
+</li>
+</ul>
+<a name="getAsyncClient--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getAsyncClient</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client">AsyncKuduClient</a>&nbsp;getAsyncClient()</pre>
+<div class="block">Get the async client that created this instance.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>an async kudu client</dd>
+</dl>
+</li>
+</ul>
+<a name="newInsert--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>newInsert</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/Insert.html" title="class in org.apache.kudu.client">Insert</a>&nbsp;newInsert()</pre>
+<div class="block">Get a new insert configured with this table's schema. The returned object should not be reused.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>an insert with this table's schema</dd>
+</dl>
+</li>
+</ul>
+<a name="newUpdate--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>newUpdate</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/Update.html" title="class in org.apache.kudu.client">Update</a>&nbsp;newUpdate()</pre>
+<div class="block">Get a new update configured with this table's schema. The returned object should not be reused.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>an update with this table's schema</dd>
+</dl>
+</li>
+</ul>
+<a name="newDelete--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>newDelete</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/Delete.html" title="class in org.apache.kudu.client">Delete</a>&nbsp;newDelete()</pre>
+<div class="block">Get a new delete configured with this table's schema. The returned object should not be reused.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a delete with this table's schema</dd>
+</dl>
+</li>
+</ul>
+<a name="newUpsert--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>newUpsert</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/Upsert.html" title="class in org.apache.kudu.client">Upsert</a>&nbsp;newUpsert()</pre>
+<div class="block">Get a new upsert configured with this table's schema. The returned object should not be reused.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>an upsert with this table's schema</dd>
+</dl>
+</li>
+</ul>
+<a name="asyncGetTabletsLocations-long-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>asyncGetTabletsLocations</h4>
+<pre><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang">@Deprecated</a>
+public&nbsp;com.stumbleupon.async.Deferred&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/apache/kudu/client/LocatedTablet.html" title="class in org.apache.kudu.client">LocatedTablet</a>&gt;&gt;&nbsp;asyncGetTabletsLocations(long&nbsp;deadline)</pre>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;<span class="deprecationComment">use the <a href="../../../../org/apache/kudu/client/KuduScanToken.html" title="class in org.apache.kudu.client"><code>KuduScanToken</code></a> API</span></div>
+<div class="block">Asynchronously get all the tablets for this table.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>deadline</code> - max time spent in milliseconds for the deferred result of this method to
+         get called back, if deadline is reached, the deferred result will get erred back</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a <code>Deferred</code> object that yields a list containing the metadata and
+ locations for each of the tablets in the table</dd>
+</dl>
+</li>
+</ul>
+<a name="asyncGetTabletsLocations-byte:A-byte:A-long-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>asyncGetTabletsLocations</h4>
+<pre><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang">@Deprecated</a>
+public&nbsp;com.stumbleupon.async.Deferred&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/apache/kudu/client/LocatedTablet.html" title="class in org.apache.kudu.client">LocatedTablet</a>&gt;&gt;&nbsp;asyncGetTabletsLocations(byte[]&nbsp;startKey,
+                                                                                                byte[]&nbsp;endKey,
+                                                                                                long&nbsp;deadline)</pre>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;<span class="deprecationComment">use the <a href="../../../../org/apache/kudu/client/KuduScanToken.html" title="class in org.apache.kudu.client"><code>KuduScanToken</code></a> API</span></div>
+<div class="block">Asynchronously get all or some tablets for this table.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>startKey</code> - where to start in the table, pass null to start at the beginning</dd>
+<dd><code>endKey</code> - where to stop in the table (exclusive), pass null to get all the tablets until
+               the end of the table</dd>
+<dd><code>deadline</code> - max time spent in milliseconds for the deferred result of this method to
+         get called back, if deadline is reached, the deferred result will get erred back</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a <code>Deferred</code> object that yields a list containing the metadata and locations
+           for each of the tablets in the table</dd>
+</dl>
+</li>
+</ul>
+<a name="getTabletsLocations-long-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getTabletsLocations</h4>
+<pre><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang">@Deprecated</a>
+public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/apache/kudu/client/LocatedTablet.html" title="class in org.apache.kudu.client">LocatedTablet</a>&gt;&nbsp;getTabletsLocations(long&nbsp;deadline)
+                                                    throws <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;<span class="deprecationComment">use the <a href="../../../../org/apache/kudu/client/KuduScanToken.html" title="class in org.apache.kudu.client"><code>KuduScanToken</code></a> API</span></div>
+<div class="block">Get all the tablets for this table. This may query the master multiple times if there
+ are a lot of tablets.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>deadline</code> - deadline in milliseconds for this method to finish</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a list containing the metadata and locations for each of the tablets in the
+         table</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></code></dd>
+</dl>
+</li>
+</ul>
+<a name="getTabletsLocations-byte:A-byte:A-long-">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>getTabletsLocations</h4>
+<pre><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang">@Deprecated</a>
+public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/apache/kudu/client/LocatedTablet.html" title="class in org.apache.kudu.client">LocatedTablet</a>&gt;&nbsp;getTabletsLocations(byte[]&nbsp;startKey,
+                                                           byte[]&nbsp;endKey,
+                                                           long&nbsp;deadline)
+                                                    throws <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;<span class="deprecationComment">use the <a href="../../../../org/apache/kudu/client/KuduScanToken.html" title="class in org.apache.kudu.client"><code>KuduScanToken</code></a> API</span></div>
+<div class="block">Get all or some tablets for this table. This may query the master multiple times if there
+ are a lot of tablets.
+ This method blocks until it gets all the tablets.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>startKey</code> - where to start in the table, pass null to start at the beginning</dd>
+<dd><code>endKey</code> - where to stop in the table (exclusive), pass null to get all the tablets until
+               the end of the table</dd>
+<dd><code>deadline</code> - deadline in milliseconds for this method to finish</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a list containing the metadata and locations for each of the tablets in the
+         table</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></code></dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/KuduTable.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/KuduSession.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/ListTablesResponse.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/KuduTable.html" target="_top">Frames</a></li>
+<li><a href="KuduTable.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/ListTablesResponse.html b/releases/1.4.0/apidocs/org/apache/kudu/client/ListTablesResponse.html
new file mode 100644
index 0000000..9c5fef6
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/ListTablesResponse.html
@@ -0,0 +1,290 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>ListTablesResponse (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="ListTablesResponse (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":10,"i1":10,"i2":10};
+var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/ListTablesResponse.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/ListTabletServersResponse.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/ListTablesResponse.html" target="_top">Frames</a></li>
+<li><a href="ListTablesResponse.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.client</div>
+<h2 title="Class ListTablesResponse" class="title">Class ListTablesResponse</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.client.ListTablesResponse</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Evolving
+public class <span class="typeNameLabel">ListTablesResponse</span>
+extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></pre>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code>long</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/ListTablesResponse.html#getElapsedMillis--">getElapsedMillis</a></span>()</code>
+<div class="block">Get the number of milliseconds elapsed since the RPC was created up to the moment when this
+ response was created.</div>
+</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/ListTablesResponse.html#getTablesList--">getTablesList</a></span>()</code>
+<div class="block">Get the list of tables as specified in the request.</div>
+</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/ListTablesResponse.html#getTsUUID--">getTsUUID</a></span>()</code>
+<div class="block">Get the identifier of the tablet server that sent the response.</div>
+</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="getTablesList--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getTablesList</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;getTablesList()</pre>
+<div class="block">Get the list of tables as specified in the request.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a list of table names</dd>
+</dl>
+</li>
+</ul>
+<a name="getElapsedMillis--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getElapsedMillis</h4>
+<pre>public&nbsp;long&nbsp;getElapsedMillis()</pre>
+<div class="block">Get the number of milliseconds elapsed since the RPC was created up to the moment when this
+ response was created.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>elapsed time in milliseconds</dd>
+</dl>
+</li>
+</ul>
+<a name="getTsUUID--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>getTsUUID</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getTsUUID()</pre>
+<div class="block">Get the identifier of the tablet server that sent the response. May be
+ <code>null</code> if the RPC failed before tablet location lookup succeeded.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a string containing a UUID</dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/ListTablesResponse.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/ListTabletServersResponse.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/ListTablesResponse.html" target="_top">Frames</a></li>
+<li><a href="ListTablesResponse.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/ListTabletServersResponse.html b/releases/1.4.0/apidocs/org/apache/kudu/client/ListTabletServersResponse.html
new file mode 100644
index 0000000..e5bdcf5
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/ListTabletServersResponse.html
@@ -0,0 +1,310 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>ListTabletServersResponse (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="ListTabletServersResponse (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":10,"i1":10,"i2":10,"i3":10};
+var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/ListTabletServersResponse.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/ListTablesResponse.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/LocatedTablet.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/ListTabletServersResponse.html" target="_top">Frames</a></li>
+<li><a href="ListTabletServersResponse.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.client</div>
+<h2 title="Class ListTabletServersResponse" class="title">Class ListTabletServersResponse</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.client.ListTabletServersResponse</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Evolving
+public class <span class="typeNameLabel">ListTabletServersResponse</span>
+extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></pre>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code>long</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/ListTabletServersResponse.html#getElapsedMillis--">getElapsedMillis</a></span>()</code>
+<div class="block">Get the number of milliseconds elapsed since the RPC was created up to the moment when this
+ response was created.</div>
+</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/ListTabletServersResponse.html#getTabletServersCount--">getTabletServersCount</a></span>()</code>
+<div class="block">Get the count of tablet servers as reported by the master.</div>
+</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/ListTabletServersResponse.html#getTabletServersList--">getTabletServersList</a></span>()</code>
+<div class="block">Get the list of tablet servers, as represented by their hostname.</div>
+</td>
+</tr>
+<tr id="i3" class="rowColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/ListTabletServersResponse.html#getTsUUID--">getTsUUID</a></span>()</code>
+<div class="block">Get the identifier of the tablet server that sent the response.</div>
+</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="getTabletServersCount--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getTabletServersCount</h4>
+<pre>public&nbsp;int&nbsp;getTabletServersCount()</pre>
+<div class="block">Get the count of tablet servers as reported by the master.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>TS count.</dd>
+</dl>
+</li>
+</ul>
+<a name="getTabletServersList--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getTabletServersList</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;getTabletServersList()</pre>
+<div class="block">Get the list of tablet servers, as represented by their hostname.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>List of hostnames, one per TS.</dd>
+</dl>
+</li>
+</ul>
+<a name="getElapsedMillis--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getElapsedMillis</h4>
+<pre>public&nbsp;long&nbsp;getElapsedMillis()</pre>
+<div class="block">Get the number of milliseconds elapsed since the RPC was created up to the moment when this
+ response was created.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>elapsed time in milliseconds</dd>
+</dl>
+</li>
+</ul>
+<a name="getTsUUID--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>getTsUUID</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getTsUUID()</pre>
+<div class="block">Get the identifier of the tablet server that sent the response. May be
+ <code>null</code> if the RPC failed before tablet location lookup succeeded.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a string containing a UUID</dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/ListTabletServersResponse.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/ListTablesResponse.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/LocatedTablet.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/ListTabletServersResponse.html" target="_top">Frames</a></li>
+<li><a href="ListTabletServersResponse.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/LocatedTablet.Replica.html b/releases/1.4.0/apidocs/org/apache/kudu/client/LocatedTablet.Replica.html
new file mode 100644
index 0000000..ee39984
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/LocatedTablet.Replica.html
@@ -0,0 +1,288 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>LocatedTablet.Replica (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="LocatedTablet.Replica (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":10,"i1":10,"i2":10,"i3":10};
+var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/LocatedTablet.Replica.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/LocatedTablet.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/LocatedTablet.Replica.html" target="_top">Frames</a></li>
+<li><a href="LocatedTablet.Replica.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.client</div>
+<h2 title="Class LocatedTablet.Replica" class="title">Class LocatedTablet.Replica</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.client.LocatedTablet.Replica</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<dl>
+<dt>Enclosing class:</dt>
+<dd><a href="../../../../org/apache/kudu/client/LocatedTablet.html" title="class in org.apache.kudu.client">LocatedTablet</a></dd>
+</dl>
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Evolving
+public static class <span class="typeNameLabel">LocatedTablet.Replica</span>
+extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></pre>
+<div class="block">One of the replicas of the tablet.</div>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/LocatedTablet.Replica.html#getRole--">getRole</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/LocatedTablet.Replica.html#getRpcHost--">getRpcHost</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/LocatedTablet.Replica.html#getRpcPort--">getRpcPort</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i3" class="rowColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/LocatedTablet.Replica.html#toString--">toString</a></span>()</code>&nbsp;</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="getRpcHost--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getRpcHost</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getRpcHost()</pre>
+</li>
+</ul>
+<a name="getRpcPort--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getRpcPort</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a>&nbsp;getRpcPort()</pre>
+</li>
+</ul>
+<a name="getRole--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getRole</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getRole()</pre>
+</li>
+</ul>
+<a name="toString--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>toString</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;toString()</pre>
+<dl>
+<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a></code>&nbsp;in class&nbsp;<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/LocatedTablet.Replica.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/LocatedTablet.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/LocatedTablet.Replica.html" target="_top">Frames</a></li>
+<li><a href="LocatedTablet.Replica.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/LocatedTablet.html b/releases/1.4.0/apidocs/org/apache/kudu/client/LocatedTablet.html
new file mode 100644
index 0000000..e5f3121
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/LocatedTablet.html
@@ -0,0 +1,359 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>LocatedTablet (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="LocatedTablet (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":42,"i1":10,"i2":10,"i3":10,"i4":42,"i5":10,"i6":10};
+var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"],32:["t6","Deprecated Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/LocatedTablet.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/ListTabletServersResponse.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/LocatedTablet.Replica.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/LocatedTablet.html" target="_top">Frames</a></li>
+<li><a href="LocatedTablet.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.client</div>
+<h2 title="Class LocatedTablet" class="title">Class LocatedTablet</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.client.LocatedTablet</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Evolving
+public class <span class="typeNameLabel">LocatedTablet</span>
+extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></pre>
+<div class="block">Information about the locations of tablets in a Kudu table.
+ This should be treated as immutable data (it does not reflect
+ any updates the client may have heard since being constructed).</div>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- ======== NESTED CLASS SUMMARY ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="nested.class.summary">
+<!--   -->
+</a>
+<h3>Nested Class Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Nested Class Summary table, listing nested classes, and an explanation">
+<caption><span>Nested Classes</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Class and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static class&nbsp;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/LocatedTablet.Replica.html" title="class in org.apache.kudu.client">LocatedTablet.Replica</a></span></code>
+<div class="block">One of the replicas of the tablet.</div>
+</td>
+</tr>
+</table>
+</li>
+</ul>
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t6" class="tableTab"><span><a href="javascript:show(32);">Deprecated Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code>byte[]</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/LocatedTablet.html#getEndKey--">getEndKey</a></span>()</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/LocatedTablet.Replica.html" title="class in org.apache.kudu.client">LocatedTablet.Replica</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/LocatedTablet.html#getLeaderReplica--">getLeaderReplica</a></span>()</code>
+<div class="block">Return the current leader, or null if there is none.</div>
+</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code>org.apache.kudu.client.Partition</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/LocatedTablet.html#getPartition--">getPartition</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i3" class="rowColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/apache/kudu/client/LocatedTablet.Replica.html" title="class in org.apache.kudu.client">LocatedTablet.Replica</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/LocatedTablet.html#getReplicas--">getReplicas</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i4" class="altColor">
+<td class="colFirst"><code>byte[]</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/LocatedTablet.html#getStartKey--">getStartKey</a></span>()</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+</td>
+</tr>
+<tr id="i5" class="rowColor">
+<td class="colFirst"><code>byte[]</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/LocatedTablet.html#getTabletId--">getTabletId</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i6" class="altColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/LocatedTablet.html#toString--">toString</a></span>()</code>&nbsp;</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="getReplicas--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getReplicas</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/apache/kudu/client/LocatedTablet.Replica.html" title="class in org.apache.kudu.client">LocatedTablet.Replica</a>&gt;&nbsp;getReplicas()</pre>
+</li>
+</ul>
+<a name="getPartition--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getPartition</h4>
+<pre>public&nbsp;org.apache.kudu.client.Partition&nbsp;getPartition()</pre>
+</li>
+</ul>
+<a name="getStartKey--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getStartKey</h4>
+<pre><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang">@Deprecated</a>
+public&nbsp;byte[]&nbsp;getStartKey()</pre>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+<div class="block">DEPRECATED: use <a href="../../../../org/apache/kudu/client/LocatedTablet.html#getPartition--"><code>getPartition()</code></a></div>
+</li>
+</ul>
+<a name="getEndKey--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getEndKey</h4>
+<pre><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang">@Deprecated</a>
+public&nbsp;byte[]&nbsp;getEndKey()</pre>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+<div class="block">DEPRECATED: use <a href="../../../../org/apache/kudu/client/LocatedTablet.html#getPartition--"><code>getPartition()</code></a></div>
+</li>
+</ul>
+<a name="getTabletId--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getTabletId</h4>
+<pre>public&nbsp;byte[]&nbsp;getTabletId()</pre>
+</li>
+</ul>
+<a name="getLeaderReplica--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getLeaderReplica</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/LocatedTablet.Replica.html" title="class in org.apache.kudu.client">LocatedTablet.Replica</a>&nbsp;getLeaderReplica()</pre>
+<div class="block">Return the current leader, or null if there is none.</div>
+</li>
+</ul>
+<a name="toString--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>toString</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;toString()</pre>
+<dl>
+<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a></code>&nbsp;in class&nbsp;<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/LocatedTablet.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/ListTabletServersResponse.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/LocatedTablet.Replica.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/LocatedTablet.html" target="_top">Frames</a></li>
+<li><a href="LocatedTablet.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/Operation.html b/releases/1.4.0/apidocs/org/apache/kudu/client/Operation.html
new file mode 100644
index 0000000..e6f4ed5
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/Operation.html
@@ -0,0 +1,305 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Operation (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Operation (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":10,"i1":10};
+var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/Operation.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/LocatedTablet.Replica.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/OperationResponse.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/Operation.html" target="_top">Frames</a></li>
+<li><a href="Operation.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#fields.inherited.from.class.org.apache.kudu.client.KuduRpc">Field</a>&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.client</div>
+<h2 title="Class Operation" class="title">Class Operation</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.client.KuduRpc&lt;<a href="../../../../org/apache/kudu/client/OperationResponse.html" title="class in org.apache.kudu.client">OperationResponse</a>&gt;</li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.client.Operation</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<dl>
+<dt>Direct Known Subclasses:</dt>
+<dd><a href="../../../../org/apache/kudu/client/Delete.html" title="class in org.apache.kudu.client">Delete</a>, <a href="../../../../org/apache/kudu/client/Insert.html" title="class in org.apache.kudu.client">Insert</a>, <a href="../../../../org/apache/kudu/client/Update.html" title="class in org.apache.kudu.client">Update</a>, <a href="../../../../org/apache/kudu/client/Upsert.html" title="class in org.apache.kudu.client">Upsert</a></dd>
+</dl>
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Evolving
+public abstract class <span class="typeNameLabel">Operation</span>
+extends org.apache.kudu.client.KuduRpc&lt;<a href="../../../../org/apache/kudu/client/OperationResponse.html" title="class in org.apache.kudu.client">OperationResponse</a>&gt;</pre>
+<div class="block">Base class for the RPCs that related to WriteRequestPB. It contains almost all the logic
+ and knows how to serialize its child classes.</div>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- =========== FIELD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="field.summary">
+<!--   -->
+</a>
+<h3>Field Summary</h3>
+<ul class="blockList">
+<li class="blockList"><a name="fields.inherited.from.class.org.apache.kudu.client.KuduRpc">
+<!--   -->
+</a>
+<h3>Fields inherited from class&nbsp;org.apache.kudu.client.KuduRpc</h3>
+<code>externalConsistencyMode, MASTER_SERVICE_NAME, MAX_TRACES_SIZE, propagatedTimestamp, TABLET_SERVER_SERVICE_NAME</code></li>
+</ul>
+</li>
+</ul>
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Operation.html#getRow--">getRow</a></span>()</code>
+<div class="block">Get the underlying row to modify.</div>
+</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code>byte[]</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Operation.html#partitionKey--">partitionKey</a></span>()</code>
+<div class="block">Returns the partition key this RPC is for, or <code>null</code> if the RPC is
+ not tablet specific.</div>
+</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.org.apache.kudu.client.KuduRpc">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;org.apache.kudu.client.KuduRpc</h3>
+<code>getExternalConsistencyMode, getTable, setExternalConsistencyMode, setPropagatedTimestamp, toString</code></li>
+</ul>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="partitionKey--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>partitionKey</h4>
+<pre>public&nbsp;byte[]&nbsp;partitionKey()</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code>org.apache.kudu.client.KuduRpc</code></span></div>
+<div class="block">Returns the partition key this RPC is for, or <code>null</code> if the RPC is
+ not tablet specific.
+ <p>
+ <strong>DO NOT MODIFY THE CONTENTS OF THE RETURNED ARRAY.</strong></div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
+<dd><code>partitionKey</code>&nbsp;in class&nbsp;<code>org.apache.kudu.client.KuduRpc&lt;<a href="../../../../org/apache/kudu/client/OperationResponse.html" title="class in org.apache.kudu.client">OperationResponse</a>&gt;</code></dd>
+</dl>
+</li>
+</ul>
+<a name="getRow--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>getRow</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;getRow()</pre>
+<div class="block">Get the underlying row to modify.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a partial row that will be sent with this Operation</dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/Operation.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/LocatedTablet.Replica.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/OperationResponse.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/Operation.html" target="_top">Frames</a></li>
+<li><a href="Operation.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#fields.inherited.from.class.org.apache.kudu.client.KuduRpc">Field</a>&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/OperationResponse.html b/releases/1.4.0/apidocs/org/apache/kudu/client/OperationResponse.html
new file mode 100644
index 0000000..3315588
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/OperationResponse.html
@@ -0,0 +1,332 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>OperationResponse (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="OperationResponse (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":9,"i1":10,"i2":10,"i3":10,"i4":10};
+var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/OperationResponse.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/OperationResponse.html" target="_top">Frames</a></li>
+<li><a href="OperationResponse.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.client</div>
+<h2 title="Class OperationResponse" class="title">Class OperationResponse</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.client.OperationResponse</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Evolving
+public class <span class="typeNameLabel">OperationResponse</span>
+extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></pre>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/apache/kudu/client/RowError.html" title="class in org.apache.kudu.client">RowError</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/OperationResponse.html#collectErrors-java.util.List-">collectErrors</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/apache/kudu/client/OperationResponse.html" title="class in org.apache.kudu.client">OperationResponse</a>&gt;&nbsp;responses)</code>
+<div class="block">Utility method that collects all the row errors from the given list of responses.</div>
+</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code>long</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/OperationResponse.html#getElapsedMillis--">getElapsedMillis</a></span>()</code>
+<div class="block">Get the number of milliseconds elapsed since the RPC was created up to the moment when this
+ response was created.</div>
+</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/RowError.html" title="class in org.apache.kudu.client">RowError</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/OperationResponse.html#getRowError--">getRowError</a></span>()</code>
+<div class="block">Returns a row error.</div>
+</td>
+</tr>
+<tr id="i3" class="rowColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/OperationResponse.html#getTsUUID--">getTsUUID</a></span>()</code>
+<div class="block">Get the identifier of the tablet server that sent the response.</div>
+</td>
+</tr>
+<tr id="i4" class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/OperationResponse.html#hasRowError--">hasRowError</a></span>()</code>
+<div class="block">Tells if this operation response contains a row error.</div>
+</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="collectErrors-java.util.List-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>collectErrors</h4>
+<pre>public static&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/apache/kudu/client/RowError.html" title="class in org.apache.kudu.client">RowError</a>&gt;&nbsp;collectErrors(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/apache/kudu/client/OperationResponse.html" title="class in org.apache.kudu.client">OperationResponse</a>&gt;&nbsp;responses)</pre>
+<div class="block">Utility method that collects all the row errors from the given list of responses.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>responses</code> - a list of operation responses to collect the row errors from</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a combined list of row errors</dd>
+</dl>
+</li>
+</ul>
+<a name="getRowError--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getRowError</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/RowError.html" title="class in org.apache.kudu.client">RowError</a>&nbsp;getRowError()</pre>
+<div class="block">Returns a row error. If <a href="../../../../org/apache/kudu/client/OperationResponse.html#hasRowError--"><code>hasRowError()</code></a> returns false, then this method returns null.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a row error, or null if the operation was successful</dd>
+</dl>
+</li>
+</ul>
+<a name="hasRowError--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>hasRowError</h4>
+<pre>public&nbsp;boolean&nbsp;hasRowError()</pre>
+<div class="block">Tells if this operation response contains a row error.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>true if this operation response has errors, else false</dd>
+</dl>
+</li>
+</ul>
+<a name="getElapsedMillis--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getElapsedMillis</h4>
+<pre>public&nbsp;long&nbsp;getElapsedMillis()</pre>
+<div class="block">Get the number of milliseconds elapsed since the RPC was created up to the moment when this
+ response was created.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>elapsed time in milliseconds</dd>
+</dl>
+</li>
+</ul>
+<a name="getTsUUID--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>getTsUUID</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getTsUUID()</pre>
+<div class="block">Get the identifier of the tablet server that sent the response. May be
+ <code>null</code> if the RPC failed before tablet location lookup succeeded.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a string containing a UUID</dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/OperationResponse.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/OperationResponse.html" target="_top">Frames</a></li>
+<li><a href="OperationResponse.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/PartialRow.html b/releases/1.4.0/apidocs/org/apache/kudu/client/PartialRow.html
new file mode 100644
index 0000000..4fe2463
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/PartialRow.html
@@ -0,0 +1,1614 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>PartialRow (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="PartialRow (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10,"i15":10,"i16":10,"i17":10,"i18":10,"i19":10,"i20":10,"i21":10,"i22":10,"i23":10,"i24":10,"i25":10,"i26":10,"i27":10,"i28":10,"i29":10,"i30":10,"i31":10,"i32":10,"i33":10,"i34":10,"i35":10,"i36":10,"i37":10,"i38":10,"i39":10,"i40":10,"i41":10,"i42":10,"i43":10,"i44":10,"i45":10,"i46":10,"i47":10,"i48":10,"i49":10,"i50":10};
+var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/PartialRow.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/OperationResponse.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/PleaseThrottleException.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/PartialRow.html" target="_top">Frames</a></li>
+<li><a href="PartialRow.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.client</div>
+<h2 title="Class PartialRow" class="title">Class PartialRow</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.client.PartialRow</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Evolving
+public class <span class="typeNameLabel">PartialRow</span>
+extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></pre>
+<div class="block">Class used to represent parts of a row along with its schema.<p>
+
+ Values can be replaced as often as needed, but once the enclosing <a href="../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client"><code>Operation</code></a> is applied
+ then they cannot be changed again. This means that a PartialRow cannot be reused.<p>
+
+ Each PartialRow is backed by an byte array where all the cells (except strings and binary data)
+ are written. The others are kept in a List.<p>
+
+ This class isn't thread-safe.</div>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="constructor.summary">
+<!--   -->
+</a>
+<h3>Constructor Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
+<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colOne" scope="col">Constructor and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#PartialRow-org.apache.kudu.Schema-">PartialRow</a></span>(<a href="../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a>&nbsp;schema)</code>
+<div class="block">This is not a stable API, prefer using <a href="../../../../org/apache/kudu/Schema.html#newPartialRow--"><code>Schema.newPartialRow()</code></a>
+ to create a new partial row.</div>
+</td>
+</tr>
+</table>
+</li>
+</ul>
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#addBinary-int-byte:A-">addBinary</a></span>(int&nbsp;columnIndex,
+         byte[]&nbsp;val)</code>
+<div class="block">Add binary data with the specified value.</div>
+</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#addBinary-int-java.nio.ByteBuffer-">addBinary</a></span>(int&nbsp;columnIndex,
+         <a href="http://docs.oracle.com/javase/7/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a>&nbsp;value)</code>
+<div class="block">Add binary data with the specified value, from the current ByteBuffer's position to its limit.</div>
+</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#addBinary-java.lang.String-byte:A-">addBinary</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName,
+         byte[]&nbsp;val)</code>
+<div class="block">Add binary data with the specified value.</div>
+</td>
+</tr>
+<tr id="i3" class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#addBinary-java.lang.String-java.nio.ByteBuffer-">addBinary</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName,
+         <a href="http://docs.oracle.com/javase/7/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a>&nbsp;value)</code>
+<div class="block">Add binary data with the specified value, from the current ByteBuffer's position to its limit.</div>
+</td>
+</tr>
+<tr id="i4" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#addBoolean-int-boolean-">addBoolean</a></span>(int&nbsp;columnIndex,
+          boolean&nbsp;val)</code>
+<div class="block">Add a boolean for the specified column.</div>
+</td>
+</tr>
+<tr id="i5" class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#addBoolean-java.lang.String-boolean-">addBoolean</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName,
+          boolean&nbsp;val)</code>
+<div class="block">Add a boolean for the specified column.</div>
+</td>
+</tr>
+<tr id="i6" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#addByte-int-byte-">addByte</a></span>(int&nbsp;columnIndex,
+       byte&nbsp;val)</code>
+<div class="block">Add a byte for the specified column.</div>
+</td>
+</tr>
+<tr id="i7" class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#addByte-java.lang.String-byte-">addByte</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName,
+       byte&nbsp;val)</code>
+<div class="block">Add a byte for the specified column.</div>
+</td>
+</tr>
+<tr id="i8" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#addDouble-int-double-">addDouble</a></span>(int&nbsp;columnIndex,
+         double&nbsp;val)</code>
+<div class="block">Add an double for the specified column.</div>
+</td>
+</tr>
+<tr id="i9" class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#addDouble-java.lang.String-double-">addDouble</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName,
+         double&nbsp;val)</code>
+<div class="block">Add an double for the specified column.</div>
+</td>
+</tr>
+<tr id="i10" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#addFloat-int-float-">addFloat</a></span>(int&nbsp;columnIndex,
+        float&nbsp;val)</code>
+<div class="block">Add an float for the specified column.</div>
+</td>
+</tr>
+<tr id="i11" class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#addFloat-java.lang.String-float-">addFloat</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName,
+        float&nbsp;val)</code>
+<div class="block">Add an float for the specified column.</div>
+</td>
+</tr>
+<tr id="i12" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#addInt-int-int-">addInt</a></span>(int&nbsp;columnIndex,
+      int&nbsp;val)</code>
+<div class="block">Add an int for the specified column.</div>
+</td>
+</tr>
+<tr id="i13" class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#addInt-java.lang.String-int-">addInt</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName,
+      int&nbsp;val)</code>
+<div class="block">Add an int for the specified column.</div>
+</td>
+</tr>
+<tr id="i14" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#addLong-int-long-">addLong</a></span>(int&nbsp;columnIndex,
+       long&nbsp;val)</code>
+<div class="block">Add an long for the specified column.</div>
+</td>
+</tr>
+<tr id="i15" class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#addLong-java.lang.String-long-">addLong</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName,
+       long&nbsp;val)</code>
+<div class="block">Add an long for the specified column.</div>
+</td>
+</tr>
+<tr id="i16" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#addShort-int-short-">addShort</a></span>(int&nbsp;columnIndex,
+        short&nbsp;val)</code>
+<div class="block">Add a short for the specified column.</div>
+</td>
+</tr>
+<tr id="i17" class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#addShort-java.lang.String-short-">addShort</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName,
+        short&nbsp;val)</code>
+<div class="block">Add a short for the specified column.</div>
+</td>
+</tr>
+<tr id="i18" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#addString-int-java.lang.String-">addString</a></span>(int&nbsp;columnIndex,
+         <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;val)</code>
+<div class="block">Add a String for the specified column.</div>
+</td>
+</tr>
+<tr id="i19" class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#addString-java.lang.String-java.lang.String-">addString</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName,
+         <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;val)</code>
+<div class="block">Add a String for the specified column.</div>
+</td>
+</tr>
+<tr id="i20" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#addStringUtf8-int-byte:A-">addStringUtf8</a></span>(int&nbsp;columnIndex,
+             byte[]&nbsp;val)</code>
+<div class="block">Add a String for the specified value, encoded as UTF8.</div>
+</td>
+</tr>
+<tr id="i21" class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#addStringUtf8-java.lang.String-byte:A-">addStringUtf8</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName,
+             byte[]&nbsp;val)</code>
+<div class="block">Add a String for the specified value, encoded as UTF8.</div>
+</td>
+</tr>
+<tr id="i22" class="altColor">
+<td class="colFirst"><code>byte[]</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#encodePrimaryKey--">encodePrimaryKey</a></span>()</code>
+<div class="block">Returns the encoded primary key of the row.</div>
+</td>
+</tr>
+<tr id="i23" class="rowColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#getBinary-int-">getBinary</a></span>(int&nbsp;columnIndex)</code>
+<div class="block">Get the specified column's binary data.</div>
+</td>
+</tr>
+<tr id="i24" class="altColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#getBinary-java.lang.String-">getBinary</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</code>
+<div class="block">Get the specified column's binary data.</div>
+</td>
+</tr>
+<tr id="i25" class="rowColor">
+<td class="colFirst"><code>byte[]</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#getBinaryCopy-int-">getBinaryCopy</a></span>(int&nbsp;columnIndex)</code>
+<div class="block">Get a copy of the specified column's binary data.</div>
+</td>
+</tr>
+<tr id="i26" class="altColor">
+<td class="colFirst"><code>byte[]</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#getBinaryCopy-java.lang.String-">getBinaryCopy</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</code>
+<div class="block">Get a copy of the specified column's binary data.</div>
+</td>
+</tr>
+<tr id="i27" class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#getBoolean-int-">getBoolean</a></span>(int&nbsp;columnIndex)</code>
+<div class="block">Get the specified column's boolean</div>
+</td>
+</tr>
+<tr id="i28" class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#getBoolean-java.lang.String-">getBoolean</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</code>
+<div class="block">Get the specified column's boolean</div>
+</td>
+</tr>
+<tr id="i29" class="rowColor">
+<td class="colFirst"><code>byte</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#getByte-int-">getByte</a></span>(int&nbsp;columnIndex)</code>
+<div class="block">Get the specified column's byte</div>
+</td>
+</tr>
+<tr id="i30" class="altColor">
+<td class="colFirst"><code>byte</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#getByte-java.lang.String-">getByte</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</code>
+<div class="block">Get the specified column's byte</div>
+</td>
+</tr>
+<tr id="i31" class="rowColor">
+<td class="colFirst"><code>double</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#getDouble-int-">getDouble</a></span>(int&nbsp;columnIndex)</code>
+<div class="block">Get the specified column's double</div>
+</td>
+</tr>
+<tr id="i32" class="altColor">
+<td class="colFirst"><code>double</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#getDouble-java.lang.String-">getDouble</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</code>
+<div class="block">Get the specified column's double</div>
+</td>
+</tr>
+<tr id="i33" class="rowColor">
+<td class="colFirst"><code>float</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#getFloat-int-">getFloat</a></span>(int&nbsp;columnIndex)</code>
+<div class="block">Get the specified column's float</div>
+</td>
+</tr>
+<tr id="i34" class="altColor">
+<td class="colFirst"><code>float</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#getFloat-java.lang.String-">getFloat</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</code>
+<div class="block">Get the specified column's float</div>
+</td>
+</tr>
+<tr id="i35" class="rowColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#getInt-int-">getInt</a></span>(int&nbsp;columnIndex)</code>
+<div class="block">Get the specified column's integer</div>
+</td>
+</tr>
+<tr id="i36" class="altColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#getInt-java.lang.String-">getInt</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</code>
+<div class="block">Get the specified column's integer</div>
+</td>
+</tr>
+<tr id="i37" class="rowColor">
+<td class="colFirst"><code>long</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#getLong-int-">getLong</a></span>(int&nbsp;columnIndex)</code>
+<div class="block">Get the specified column's long
+
+ If this is a UNIXTIME_MICROS column, the long value corresponds to a number of microseconds
+ since midnight, January 1, 1970 UTC.</div>
+</td>
+</tr>
+<tr id="i38" class="altColor">
+<td class="colFirst"><code>long</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#getLong-java.lang.String-">getLong</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</code>
+<div class="block">Get the specified column's long
+
+ If this is a UNIXTIME_MICROS column, the long value corresponds to a number of microseconds
+ since midnight, January 1, 1970 UTC.</div>
+</td>
+</tr>
+<tr id="i39" class="rowColor">
+<td class="colFirst"><code>short</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#getShort-int-">getShort</a></span>(int&nbsp;columnIndex)</code>
+<div class="block">Get the specified column's short</div>
+</td>
+</tr>
+<tr id="i40" class="altColor">
+<td class="colFirst"><code>short</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#getShort-java.lang.String-">getShort</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</code>
+<div class="block">Get the specified column's short</div>
+</td>
+</tr>
+<tr id="i41" class="rowColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#getString-int-">getString</a></span>(int&nbsp;columnIndex)</code>
+<div class="block">Get the specified column's string.</div>
+</td>
+</tr>
+<tr id="i42" class="altColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#getString-java.lang.String-">getString</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</code>
+<div class="block">Get the specified column's string.</div>
+</td>
+</tr>
+<tr id="i43" class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#isNull-int-">isNull</a></span>(int&nbsp;columnIndex)</code>
+<div class="block">Get if the specified column is NULL</div>
+</td>
+</tr>
+<tr id="i44" class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#isNull-java.lang.String-">isNull</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</code>
+<div class="block">Get if the specified column is NULL</div>
+</td>
+</tr>
+<tr id="i45" class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#isSet-int-">isSet</a></span>(int&nbsp;columnIndex)</code>
+<div class="block">Get if the specified column has been set</div>
+</td>
+</tr>
+<tr id="i46" class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#isSet-java.lang.String-">isSet</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</code>
+<div class="block">Get if the specified column has been set</div>
+</td>
+</tr>
+<tr id="i47" class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#setNull-int-">setNull</a></span>(int&nbsp;columnIndex)</code>
+<div class="block">Set the specified column to null</div>
+</td>
+</tr>
+<tr id="i48" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#setNull-java.lang.String-">setNull</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</code>
+<div class="block">Set the specified column to null</div>
+</td>
+</tr>
+<tr id="i49" class="rowColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#stringifyRowKey--">stringifyRowKey</a></span>()</code>
+<div class="block">Transforms the row key into a string representation where each column is in the format:
+ "type col_name=value".</div>
+</td>
+</tr>
+<tr id="i50" class="altColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PartialRow.html#toString--">toString</a></span>()</code></td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="constructor.detail">
+<!--   -->
+</a>
+<h3>Constructor Detail</h3>
+<a name="PartialRow-org.apache.kudu.Schema-">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>PartialRow</h4>
+<pre>public&nbsp;PartialRow(<a href="../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a>&nbsp;schema)</pre>
+<div class="block">This is not a stable API, prefer using <a href="../../../../org/apache/kudu/Schema.html#newPartialRow--"><code>Schema.newPartialRow()</code></a>
+ to create a new partial row.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>schema</code> - the schema to use for this row</dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="addBoolean-int-boolean-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>addBoolean</h4>
+<pre>public&nbsp;void&nbsp;addBoolean(int&nbsp;columnIndex,
+                       boolean&nbsp;val)</pre>
+<div class="block">Add a boolean for the specified column.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnIndex</code> - the column's index in the schema</dd>
+<dd><code>val</code> - value to add</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the value doesn't match the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the row was already applied</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
+</dl>
+</li>
+</ul>
+<a name="addBoolean-java.lang.String-boolean-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>addBoolean</h4>
+<pre>public&nbsp;void&nbsp;addBoolean(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName,
+                       boolean&nbsp;val)</pre>
+<div class="block">Add a boolean for the specified column.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnName</code> - Name of the column</dd>
+<dd><code>val</code> - value to add</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist
+ or if the value doesn't match the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the row was already applied</dd>
+</dl>
+</li>
+</ul>
+<a name="getBoolean-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getBoolean</h4>
+<pre>public&nbsp;boolean&nbsp;getBoolean(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</pre>
+<div class="block">Get the specified column's boolean</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnName</code> - name of the column to get data for</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a boolean</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist,
+ is null, is unset, or the type doesn't match the column's type</dd>
+</dl>
+</li>
+</ul>
+<a name="getBoolean-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getBoolean</h4>
+<pre>public&nbsp;boolean&nbsp;getBoolean(int&nbsp;columnIndex)</pre>
+<div class="block">Get the specified column's boolean</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnIndex</code> - Column index in the schema</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a boolean</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column is null, is unset,
+ or if the type doesn't match the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
+</dl>
+</li>
+</ul>
+<a name="addByte-int-byte-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>addByte</h4>
+<pre>public&nbsp;void&nbsp;addByte(int&nbsp;columnIndex,
+                    byte&nbsp;val)</pre>
+<div class="block">Add a byte for the specified column.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnIndex</code> - the column's index in the schema</dd>
+<dd><code>val</code> - value to add</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the value doesn't match the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the row was already applied</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
+</dl>
+</li>
+</ul>
+<a name="addByte-java.lang.String-byte-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>addByte</h4>
+<pre>public&nbsp;void&nbsp;addByte(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName,
+                    byte&nbsp;val)</pre>
+<div class="block">Add a byte for the specified column.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnName</code> - Name of the column</dd>
+<dd><code>val</code> - value to add</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist
+ or if the value doesn't match the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the row was already applied</dd>
+</dl>
+</li>
+</ul>
+<a name="getByte-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getByte</h4>
+<pre>public&nbsp;byte&nbsp;getByte(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</pre>
+<div class="block">Get the specified column's byte</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnName</code> - name of the column to get data for</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a byte</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist,
+ is null, is unset, or the type doesn't match the column's type</dd>
+</dl>
+</li>
+</ul>
+<a name="getByte-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getByte</h4>
+<pre>public&nbsp;byte&nbsp;getByte(int&nbsp;columnIndex)</pre>
+<div class="block">Get the specified column's byte</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnIndex</code> - Column index in the schema</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a byte</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column is null, is unset,
+ or if the type doesn't match the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
+</dl>
+</li>
+</ul>
+<a name="addShort-int-short-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>addShort</h4>
+<pre>public&nbsp;void&nbsp;addShort(int&nbsp;columnIndex,
+                     short&nbsp;val)</pre>
+<div class="block">Add a short for the specified column.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnIndex</code> - the column's index in the schema</dd>
+<dd><code>val</code> - value to add</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the value doesn't match the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the row was already applied</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
+</dl>
+</li>
+</ul>
+<a name="addShort-java.lang.String-short-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>addShort</h4>
+<pre>public&nbsp;void&nbsp;addShort(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName,
+                     short&nbsp;val)</pre>
+<div class="block">Add a short for the specified column.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnName</code> - Name of the column</dd>
+<dd><code>val</code> - value to add</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist
+ or if the value doesn't match the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the row was already applied</dd>
+</dl>
+</li>
+</ul>
+<a name="getShort-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getShort</h4>
+<pre>public&nbsp;short&nbsp;getShort(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</pre>
+<div class="block">Get the specified column's short</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnName</code> - name of the column to get data for</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a short</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist,
+ is null, is unset, or the type doesn't match the column's type</dd>
+</dl>
+</li>
+</ul>
+<a name="getShort-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getShort</h4>
+<pre>public&nbsp;short&nbsp;getShort(int&nbsp;columnIndex)</pre>
+<div class="block">Get the specified column's short</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnIndex</code> - Column index in the schema</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a short</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column is null, is unset,
+ or if the type doesn't match the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
+</dl>
+</li>
+</ul>
+<a name="addInt-int-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>addInt</h4>
+<pre>public&nbsp;void&nbsp;addInt(int&nbsp;columnIndex,
+                   int&nbsp;val)</pre>
+<div class="block">Add an int for the specified column.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnIndex</code> - the column's index in the schema</dd>
+<dd><code>val</code> - value to add</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the value doesn't match the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the row was already applied</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
+</dl>
+</li>
+</ul>
+<a name="addInt-java.lang.String-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>addInt</h4>
+<pre>public&nbsp;void&nbsp;addInt(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName,
+                   int&nbsp;val)</pre>
+<div class="block">Add an int for the specified column.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnName</code> - Name of the column</dd>
+<dd><code>val</code> - value to add</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist
+ or if the value doesn't match the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the row was already applied</dd>
+</dl>
+</li>
+</ul>
+<a name="getInt-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getInt</h4>
+<pre>public&nbsp;int&nbsp;getInt(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</pre>
+<div class="block">Get the specified column's integer</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnName</code> - name of the column to get data for</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>an integer</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist,
+ is null, is unset, or the type doesn't match the column's type</dd>
+</dl>
+</li>
+</ul>
+<a name="getInt-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getInt</h4>
+<pre>public&nbsp;int&nbsp;getInt(int&nbsp;columnIndex)</pre>
+<div class="block">Get the specified column's integer</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnIndex</code> - Column index in the schema</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>an integer</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column is null, is unset,
+ or if the type doesn't match the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
+</dl>
+</li>
+</ul>
+<a name="addLong-int-long-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>addLong</h4>
+<pre>public&nbsp;void&nbsp;addLong(int&nbsp;columnIndex,
+                    long&nbsp;val)</pre>
+<div class="block">Add an long for the specified column.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnIndex</code> - the column's index in the schema</dd>
+<dd><code>val</code> - value to add</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the value doesn't match the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the row was already applied</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
+</dl>
+</li>
+</ul>
+<a name="addLong-java.lang.String-long-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>addLong</h4>
+<pre>public&nbsp;void&nbsp;addLong(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName,
+                    long&nbsp;val)</pre>
+<div class="block">Add an long for the specified column.
+
+ If this is a UNIXTIME_MICROS column, the long value provided should be the number of
+ microseconds between a given time and January 1, 1970 UTC.
+ For example, to encode the current time, use setLong(System.currentTimeMillis() * 1000);</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnName</code> - Name of the column</dd>
+<dd><code>val</code> - value to add</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist
+ or if the value doesn't match the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the row was already applied</dd>
+</dl>
+</li>
+</ul>
+<a name="getLong-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getLong</h4>
+<pre>public&nbsp;long&nbsp;getLong(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</pre>
+<div class="block">Get the specified column's long
+
+ If this is a UNIXTIME_MICROS column, the long value corresponds to a number of microseconds
+ since midnight, January 1, 1970 UTC.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnName</code> - name of the column to get data for</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a long</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist,
+ is null, is unset, or the type doesn't match the column's type</dd>
+</dl>
+</li>
+</ul>
+<a name="getLong-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getLong</h4>
+<pre>public&nbsp;long&nbsp;getLong(int&nbsp;columnIndex)</pre>
+<div class="block">Get the specified column's long
+
+ If this is a UNIXTIME_MICROS column, the long value corresponds to a number of microseconds
+ since midnight, January 1, 1970 UTC.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnIndex</code> - Column index in the schema</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a long</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column is null, is unset,
+ or if the type doesn't match the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
+</dl>
+</li>
+</ul>
+<a name="addFloat-int-float-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>addFloat</h4>
+<pre>public&nbsp;void&nbsp;addFloat(int&nbsp;columnIndex,
+                     float&nbsp;val)</pre>
+<div class="block">Add an float for the specified column.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnIndex</code> - the column's index in the schema</dd>
+<dd><code>val</code> - value to add</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the value doesn't match the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the row was already applied</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
+</dl>
+</li>
+</ul>
+<a name="addFloat-java.lang.String-float-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>addFloat</h4>
+<pre>public&nbsp;void&nbsp;addFloat(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName,
+                     float&nbsp;val)</pre>
+<div class="block">Add an float for the specified column.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnName</code> - Name of the column</dd>
+<dd><code>val</code> - value to add</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist
+ or if the value doesn't match the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the row was already applied</dd>
+</dl>
+</li>
+</ul>
+<a name="getFloat-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getFloat</h4>
+<pre>public&nbsp;float&nbsp;getFloat(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</pre>
+<div class="block">Get the specified column's float</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnName</code> - name of the column to get data for</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a float</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist,
+ is null, is unset, or the type doesn't match the column's type</dd>
+</dl>
+</li>
+</ul>
+<a name="getFloat-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getFloat</h4>
+<pre>public&nbsp;float&nbsp;getFloat(int&nbsp;columnIndex)</pre>
+<div class="block">Get the specified column's float</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnIndex</code> - Column index in the schema</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a float</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column is null, is unset,
+ or if the type doesn't match the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
+</dl>
+</li>
+</ul>
+<a name="addDouble-int-double-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>addDouble</h4>
+<pre>public&nbsp;void&nbsp;addDouble(int&nbsp;columnIndex,
+                      double&nbsp;val)</pre>
+<div class="block">Add an double for the specified column.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnIndex</code> - the column's index in the schema</dd>
+<dd><code>val</code> - value to add</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the value doesn't match the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the row was already applied</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
+</dl>
+</li>
+</ul>
+<a name="addDouble-java.lang.String-double-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>addDouble</h4>
+<pre>public&nbsp;void&nbsp;addDouble(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName,
+                      double&nbsp;val)</pre>
+<div class="block">Add an double for the specified column.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnName</code> - Name of the column</dd>
+<dd><code>val</code> - value to add</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist
+ or if the value doesn't match the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the row was already applied</dd>
+</dl>
+</li>
+</ul>
+<a name="getDouble-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getDouble</h4>
+<pre>public&nbsp;double&nbsp;getDouble(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</pre>
+<div class="block">Get the specified column's double</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnName</code> - name of the column to get data for</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a double</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist,
+ is null, is unset, or the type doesn't match the column's type</dd>
+</dl>
+</li>
+</ul>
+<a name="getDouble-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getDouble</h4>
+<pre>public&nbsp;double&nbsp;getDouble(int&nbsp;columnIndex)</pre>
+<div class="block">Get the specified column's double</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnIndex</code> - Column index in the schema</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a double</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column is null, is unset,
+ or if the type doesn't match the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
+</dl>
+</li>
+</ul>
+<a name="addString-int-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>addString</h4>
+<pre>public&nbsp;void&nbsp;addString(int&nbsp;columnIndex,
+                      <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;val)</pre>
+<div class="block">Add a String for the specified column.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnIndex</code> - the column's index in the schema</dd>
+<dd><code>val</code> - value to add</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the value doesn't match the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the row was already applied</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
+</dl>
+</li>
+</ul>
+<a name="addString-java.lang.String-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>addString</h4>
+<pre>public&nbsp;void&nbsp;addString(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName,
+                      <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;val)</pre>
+<div class="block">Add a String for the specified column.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnName</code> - Name of the column</dd>
+<dd><code>val</code> - value to add</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist
+ or if the value doesn't match the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the row was already applied</dd>
+</dl>
+</li>
+</ul>
+<a name="getString-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getString</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getString(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</pre>
+<div class="block">Get the specified column's string.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnName</code> - name of the column to get data for</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a string</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist,
+ is null, is unset, or the type doesn't match the column's type</dd>
+</dl>
+</li>
+</ul>
+<a name="getString-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getString</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getString(int&nbsp;columnIndex)</pre>
+<div class="block">Get the specified column's string.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnIndex</code> - Column index in the schema</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a string</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column is null, is unset,
+ or if the type doesn't match the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
+</dl>
+</li>
+</ul>
+<a name="addStringUtf8-int-byte:A-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>addStringUtf8</h4>
+<pre>public&nbsp;void&nbsp;addStringUtf8(int&nbsp;columnIndex,
+                          byte[]&nbsp;val)</pre>
+<div class="block">Add a String for the specified value, encoded as UTF8.
+ Note that the provided value must not be mutated after this.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnIndex</code> - the column's index in the schema</dd>
+<dd><code>val</code> - value to add</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the value doesn't match the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the row was already applied</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
+</dl>
+</li>
+</ul>
+<a name="addStringUtf8-java.lang.String-byte:A-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>addStringUtf8</h4>
+<pre>public&nbsp;void&nbsp;addStringUtf8(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName,
+                          byte[]&nbsp;val)</pre>
+<div class="block">Add a String for the specified value, encoded as UTF8.
+ Note that the provided value must not be mutated after this.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnName</code> - Name of the column</dd>
+<dd><code>val</code> - value to add</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist
+ or if the value doesn't match the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the row was already applied</dd>
+</dl>
+</li>
+</ul>
+<a name="addBinary-int-byte:A-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>addBinary</h4>
+<pre>public&nbsp;void&nbsp;addBinary(int&nbsp;columnIndex,
+                      byte[]&nbsp;val)</pre>
+<div class="block">Add binary data with the specified value.
+ Note that the provided value must not be mutated after this.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnIndex</code> - the column's index in the schema</dd>
+<dd><code>val</code> - value to add</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the value doesn't match the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the row was already applied</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
+</dl>
+</li>
+</ul>
+<a name="addBinary-int-java.nio.ByteBuffer-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>addBinary</h4>
+<pre>public&nbsp;void&nbsp;addBinary(int&nbsp;columnIndex,
+                      <a href="http://docs.oracle.com/javase/7/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a>&nbsp;value)</pre>
+<div class="block">Add binary data with the specified value, from the current ByteBuffer's position to its limit.
+ This method duplicates the ByteBuffer but doesn't copy the data. This means that the wrapped
+ data must not be mutated after this.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnIndex</code> - the column's index in the schema</dd>
+<dd><code>value</code> - byte buffer to get the value from</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the value doesn't match the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the row was already applied</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
+</dl>
+</li>
+</ul>
+<a name="addBinary-java.lang.String-byte:A-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>addBinary</h4>
+<pre>public&nbsp;void&nbsp;addBinary(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName,
+                      byte[]&nbsp;val)</pre>
+<div class="block">Add binary data with the specified value.
+ Note that the provided value must not be mutated after this.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnName</code> - Name of the column</dd>
+<dd><code>val</code> - value to add</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist
+ or if the value doesn't match the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the row was already applied</dd>
+</dl>
+</li>
+</ul>
+<a name="addBinary-java.lang.String-java.nio.ByteBuffer-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>addBinary</h4>
+<pre>public&nbsp;void&nbsp;addBinary(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName,
+                      <a href="http://docs.oracle.com/javase/7/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a>&nbsp;value)</pre>
+<div class="block">Add binary data with the specified value, from the current ByteBuffer's position to its limit.
+ This method duplicates the ByteBuffer but doesn't copy the data. This means that the wrapped
+ data must not be mutated after this.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnName</code> - Name of the column</dd>
+<dd><code>value</code> - byte buffer to get the value from</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist
+ or if the value doesn't match the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the row was already applied</dd>
+</dl>
+</li>
+</ul>
+<a name="getBinaryCopy-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getBinaryCopy</h4>
+<pre>public&nbsp;byte[]&nbsp;getBinaryCopy(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</pre>
+<div class="block">Get a copy of the specified column's binary data.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnName</code> - name of the column to get data for</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a byte[] with the binary data.</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist,
+ is null, is unset, or the type doesn't match the column's type</dd>
+</dl>
+</li>
+</ul>
+<a name="getBinaryCopy-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getBinaryCopy</h4>
+<pre>public&nbsp;byte[]&nbsp;getBinaryCopy(int&nbsp;columnIndex)</pre>
+<div class="block">Get a copy of the specified column's binary data.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnIndex</code> - Column index in the schema</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a byte[] with the binary data.</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column is null, is unset,
+ or if the type doesn't match the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
+</dl>
+</li>
+</ul>
+<a name="getBinary-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getBinary</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a>&nbsp;getBinary(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</pre>
+<div class="block">Get the specified column's binary data.
+
+ This doesn't copy the data and instead returns a ByteBuffer that wraps it.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnName</code> - name of the column to get data for</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a ByteBuffer with the binary data.</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist,
+ is null, is unset, or the type doesn't match the column's type</dd>
+</dl>
+</li>
+</ul>
+<a name="getBinary-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getBinary</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a>&nbsp;getBinary(int&nbsp;columnIndex)</pre>
+<div class="block">Get the specified column's binary data.
+
+ This doesn't copy the data and instead returns a ByteBuffer that wraps it.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnIndex</code> - Column index in the schema</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a ByteBuffer with the binary data.</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column is null, is unset,
+ or if the type doesn't match the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
+</dl>
+</li>
+</ul>
+<a name="setNull-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setNull</h4>
+<pre>public&nbsp;void&nbsp;setNull(int&nbsp;columnIndex)</pre>
+<div class="block">Set the specified column to null</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnIndex</code> - the column's index in the schema</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist or cannot be set to null</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the row was already applied</dd>
+</dl>
+</li>
+</ul>
+<a name="setNull-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setNull</h4>
+<pre>public&nbsp;void&nbsp;setNull(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</pre>
+<div class="block">Set the specified column to null</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnName</code> - Name of the column</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist or cannot be set to null</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the row was already applied</dd>
+</dl>
+</li>
+</ul>
+<a name="isNull-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>isNull</h4>
+<pre>public&nbsp;boolean&nbsp;isNull(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</pre>
+<div class="block">Get if the specified column is NULL</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnName</code> - name of the column in the schema</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>true if the column cell is null and the column is nullable,
+ false otherwise</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist</dd>
+</dl>
+</li>
+</ul>
+<a name="isNull-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>isNull</h4>
+<pre>public&nbsp;boolean&nbsp;isNull(int&nbsp;columnIndex)</pre>
+<div class="block">Get if the specified column is NULL</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnIndex</code> - Column index in the schema</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>true if the column cell is null and the column is nullable,
+ false otherwise</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
+</dl>
+</li>
+</ul>
+<a name="isSet-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>isSet</h4>
+<pre>public&nbsp;boolean&nbsp;isSet(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</pre>
+<div class="block">Get if the specified column has been set</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnName</code> - name of the column in the schema</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>true if the column has been set</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist</dd>
+</dl>
+</li>
+</ul>
+<a name="isSet-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>isSet</h4>
+<pre>public&nbsp;boolean&nbsp;isSet(int&nbsp;columnIndex)</pre>
+<div class="block">Get if the specified column has been set</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnIndex</code> - Column index in the schema</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>true if the column has been set</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
+</dl>
+</li>
+</ul>
+<a name="encodePrimaryKey--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>encodePrimaryKey</h4>
+<pre>public&nbsp;byte[]&nbsp;encodePrimaryKey()</pre>
+<div class="block">Returns the encoded primary key of the row.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a byte array containing an encoded primary key</dd>
+</dl>
+</li>
+</ul>
+<a name="toString--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>toString</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;toString()</pre>
+<dl>
+<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a></code>&nbsp;in class&nbsp;<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></dd>
+</dl>
+</li>
+</ul>
+<a name="stringifyRowKey--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>stringifyRowKey</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;stringifyRowKey()</pre>
+<div class="block">Transforms the row key into a string representation where each column is in the format:
+ "type col_name=value".</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a string representation of the operation's row key</dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/PartialRow.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/OperationResponse.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/PleaseThrottleException.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/PartialRow.html" target="_top">Frames</a></li>
+<li><a href="PartialRow.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/PleaseThrottleException.html b/releases/1.4.0/apidocs/org/apache/kudu/client/PleaseThrottleException.html
new file mode 100644
index 0000000..5eaeacc
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/PleaseThrottleException.html
@@ -0,0 +1,337 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>PleaseThrottleException (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="PleaseThrottleException (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":10,"i1":10};
+var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/PleaseThrottleException.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/RangePartitionBound.html" title="enum in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/PleaseThrottleException.html" target="_top">Frames</a></li>
+<li><a href="PleaseThrottleException.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.client</div>
+<h2 title="Class PleaseThrottleException" class="title">Class PleaseThrottleException</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">java.lang.Throwable</a></li>
+<li>
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">java.lang.Exception</a></li>
+<li>
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">java.io.IOException</a></li>
+<li>
+<ul class="inheritance">
+<li><a href="../../../../org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client">org.apache.kudu.client.KuduException</a></li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.client.PleaseThrottleException</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<dl>
+<dt>All Implemented Interfaces:</dt>
+<dd><a href="http://docs.oracle.com/javase/7/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>, <a href="../../../../org/apache/kudu/client/HasFailedRpcException.html" title="interface in org.apache.kudu.client">HasFailedRpcException</a></dd>
+</dl>
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Evolving
+public final class <span class="typeNameLabel">PleaseThrottleException</span>
+extends <a href="../../../../org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client">KuduException</a>
+implements <a href="../../../../org/apache/kudu/client/HasFailedRpcException.html" title="interface in org.apache.kudu.client">HasFailedRpcException</a></pre>
+<div class="block">This exception notifies the application to throttle its use of Kudu.
+ <p>
+ Since all APIs of <a href="../../../../org/apache/kudu/client/AsyncKuduSession.html" title="class in org.apache.kudu.client"><code>AsyncKuduSession</code></a> are asynchronous and non-blocking,
+ it's possible that the application would produce RPCs at a rate higher
+ than Kudu is able to handle.  When this happens, <a href="../../../../org/apache/kudu/client/AsyncKuduSession.html" title="class in org.apache.kudu.client"><code>AsyncKuduSession</code></a>
+ will typically do some buffering up to a certain point beyond which RPCs
+ will fail-fast with this exception, to prevent the application from
+ running itself out of memory.
+ <p>
+ This exception is expected to be handled by having the application
+ throttle or pause itself for a short period of time before retrying the
+ RPC that failed with this exception as well as before sending other RPCs.
+ The reason this exception inherits from <code>NonRecoverableException</code>
+ instead of <code>RecoverableException</code> is that the usual course of action
+ when handling a <code>RecoverableException</code> is to retry right away, which
+ would defeat the whole purpose of this exception.  Here, we want the
+ application to <b>retry after a reasonable delay</b> as well as <b>throttle
+ the pace of creation of new RPCs</b>.  What constitutes a "reasonable
+ delay" depends on the nature of RPCs and rate at which they're produced.
+ <p>
+ One effective strategy to handle this exception is to set a flag to true
+ when this exception is first emitted that causes the application to pause
+ or throttle its use of Kudu.  Then you can retry the RPC that failed
+ (which is accessible through <a href="../../../../org/apache/kudu/client/PleaseThrottleException.html#getFailedRpc--"><code>getFailedRpc()</code></a>) and add a callback to
+ it in order to unset the flag once the RPC completes successfully.
+ Note that low-throughput applications will typically rarely (if ever)
+ hit this exception, so they don't need complex throttling logic.</div>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../serialized-form.html#org.apache.kudu.client.PleaseThrottleException">Serialized Form</a></dd>
+</dl>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code>com.stumbleupon.async.Deferred</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PleaseThrottleException.html#getDeferred--">getDeferred</a></span>()</code>
+<div class="block">Returns a deferred one can wait on before retrying the failed RPC.</div>
+</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">Operation</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/PleaseThrottleException.html#getFailedRpc--">getFailedRpc</a></span>()</code>
+<div class="block">The RPC that was made to fail with this exception.</div>
+</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.org.apache.kudu.client.KuduException">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;org.apache.kudu.client.<a href="../../../../org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client">KuduException</a></h3>
+<code><a href="../../../../org/apache/kudu/client/KuduException.html#getStatus--">getStatus</a></code></li>
+</ul>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Throwable">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Throwable.html?is-external=true#addSuppressed-java.lang.Throwable-" title="class or interface in java.lang">addSuppressed</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Throwable.html?is-external=true#fillInStackTrace--" title="class or interface in java.lang">fillInStackTrace</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Throwable.html?is-external=true#getCause--" title="class or interface in java.lang">getCause</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Throwable.html?is-external=true#getLocalizedMessage--" title="class or interface in java.lang">getLocalizedMessage</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Throwable.html?is-external=true#getMessage--" title="class or interface in java.lang">getMessage</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Throwable.html?is-external=true#getStackTrace--" title="class or interface in java.lang">getStackTrace</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Throwable.html?is-external=true#getSuppressed--" title="class or interface in java.lang">getSuppressed</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Throwable.html?is-external=true#initCause-java.lang.Throwable-" title="class or interface in java.lang">initCause</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Throwable.html?is-external=true#printStackTrace--" title="class or interface in java.lang">printStackTrace</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Throwable.html?is-external=true#printStackTrace-java.io.PrintStream-" title="class or interface in java.lang">printStackTrace</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Throwable.html?is-external=true#printStackTrace-java.io.PrintWriter-" title="class or interface in java.lang">printStackTrace</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Throwable.html?is-external=true#setStackTrace-java.lang.StackTraceElement:A-" title="class or interface in java.lang">setStackTrace</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Throwable.html?is-external=true#toString--" title="class or interface in java.lang">toString</a></code></li>
+</ul>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="getFailedRpc--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getFailedRpc</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">Operation</a>&nbsp;getFailedRpc()</pre>
+<div class="block">The RPC that was made to fail with this exception.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../org/apache/kudu/client/HasFailedRpcException.html#getFailedRpc--">getFailedRpc</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/kudu/client/HasFailedRpcException.html" title="interface in org.apache.kudu.client">HasFailedRpcException</a></code></dd>
+</dl>
+</li>
+</ul>
+<a name="getDeferred--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>getDeferred</h4>
+<pre>public&nbsp;com.stumbleupon.async.Deferred&nbsp;getDeferred()</pre>
+<div class="block">Returns a deferred one can wait on before retrying the failed RPC.</div>
+<dl>
+<dt><span class="simpleTagLabel">Since:</span></dt>
+<dd>1.3</dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/PleaseThrottleException.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/RangePartitionBound.html" title="enum in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/PleaseThrottleException.html" target="_top">Frames</a></li>
+<li><a href="PleaseThrottleException.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/RangePartitionBound.html b/releases/1.4.0/apidocs/org/apache/kudu/client/RangePartitionBound.html
new file mode 100644
index 0000000..c8c1ecb
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/RangePartitionBound.html
@@ -0,0 +1,351 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>RangePartitionBound (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="RangePartitionBound (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":9,"i1":9};
+var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/RangePartitionBound.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/PleaseThrottleException.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/ReplicaSelection.html" title="enum in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/RangePartitionBound.html" target="_top">Frames</a></li>
+<li><a href="RangePartitionBound.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#enum.constant.summary">Enum Constants</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li><a href="#enum.constant.detail">Enum Constants</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.client</div>
+<h2 title="Enum RangePartitionBound" class="title">Enum RangePartitionBound</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang">java.lang.Enum</a>&lt;<a href="../../../../org/apache/kudu/client/RangePartitionBound.html" title="enum in org.apache.kudu.client">RangePartitionBound</a>&gt;</li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.client.RangePartitionBound</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<dl>
+<dt>All Implemented Interfaces:</dt>
+<dd><a href="http://docs.oracle.com/javase/7/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;<a href="../../../../org/apache/kudu/client/RangePartitionBound.html" title="enum in org.apache.kudu.client">RangePartitionBound</a>&gt;</dd>
+</dl>
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Evolving
+public enum <span class="typeNameLabel">RangePartitionBound</span>
+extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang">Enum</a>&lt;<a href="../../../../org/apache/kudu/client/RangePartitionBound.html" title="enum in org.apache.kudu.client">RangePartitionBound</a>&gt;</pre>
+<div class="block">Specifies whether a range partition bound is inclusive or exclusive.</div>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- =========== ENUM CONSTANT SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="enum.constant.summary">
+<!--   -->
+</a>
+<h3>Enum Constant Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Enum Constant Summary table, listing enum constants, and an explanation">
+<caption><span>Enum Constants</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colOne" scope="col">Enum Constant and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/RangePartitionBound.html#EXCLUSIVE_BOUND">EXCLUSIVE_BOUND</a></span></code>
+<div class="block">An exclusive range partition bound.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/RangePartitionBound.html#INCLUSIVE_BOUND">INCLUSIVE_BOUND</a></span></code>
+<div class="block">An inclusive range partition bound.</div>
+</td>
+</tr>
+</table>
+</li>
+</ul>
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/RangePartitionBound.html" title="enum in org.apache.kudu.client">RangePartitionBound</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/RangePartitionBound.html#valueOf-java.lang.String-">valueOf</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
+<div class="block">Returns the enum constant of this type with the specified name.</div>
+</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/RangePartitionBound.html" title="enum in org.apache.kudu.client">RangePartitionBound</a>[]</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/RangePartitionBound.html#values--">values</a></span>()</code>
+<div class="block">Returns an array containing the constants of this enum type, in
+the order they are declared.</div>
+</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Enum">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang">Enum</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#compareTo-E-" title="class or interface in java.lang">compareTo</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#getDeclaringClass--" title="class or interface in java.lang">getDeclaringClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#name--" title="class or interface in java.lang">name</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#ordinal--" title="class or interface in java.lang">ordinal</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#valueOf-java.lang.Class-java.lang.String-" title="class or interface in java.lang">valueOf</a></code></li>
+</ul>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ============ ENUM CONSTANT DETAIL =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="enum.constant.detail">
+<!--   -->
+</a>
+<h3>Enum Constant Detail</h3>
+<a name="EXCLUSIVE_BOUND">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>EXCLUSIVE_BOUND</h4>
+<pre>public static final&nbsp;<a href="../../../../org/apache/kudu/client/RangePartitionBound.html" title="enum in org.apache.kudu.client">RangePartitionBound</a> EXCLUSIVE_BOUND</pre>
+<div class="block">An exclusive range partition bound.</div>
+</li>
+</ul>
+<a name="INCLUSIVE_BOUND">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>INCLUSIVE_BOUND</h4>
+<pre>public static final&nbsp;<a href="../../../../org/apache/kudu/client/RangePartitionBound.html" title="enum in org.apache.kudu.client">RangePartitionBound</a> INCLUSIVE_BOUND</pre>
+<div class="block">An inclusive range partition bound.</div>
+</li>
+</ul>
+</li>
+</ul>
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="values--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>values</h4>
+<pre>public static&nbsp;<a href="../../../../org/apache/kudu/client/RangePartitionBound.html" title="enum in org.apache.kudu.client">RangePartitionBound</a>[]&nbsp;values()</pre>
+<div class="block">Returns an array containing the constants of this enum type, in
+the order they are declared.  This method may be used to iterate
+over the constants as follows:
+<pre>
+for (RangePartitionBound c : RangePartitionBound.values())
+&nbsp;   System.out.println(c);
+</pre></div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>an array containing the constants of this enum type, in the order they are declared</dd>
+</dl>
+</li>
+</ul>
+<a name="valueOf-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>valueOf</h4>
+<pre>public static&nbsp;<a href="../../../../org/apache/kudu/client/RangePartitionBound.html" title="enum in org.apache.kudu.client">RangePartitionBound</a>&nbsp;valueOf(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
+<div class="block">Returns the enum constant of this type with the specified name.
+The string must match <i>exactly</i> an identifier used to declare an
+enum constant in this type.  (Extraneous whitespace characters are 
+not permitted.)</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>name</code> - the name of the enum constant to be returned.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the enum constant with the specified name</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if this enum type has no constant with the specified name</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/NullPointerException.html?is-external=true" title="class or interface in java.lang">NullPointerException</a></code> - if the argument is null</dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/RangePartitionBound.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/PleaseThrottleException.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/ReplicaSelection.html" title="enum in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/RangePartitionBound.html" target="_top">Frames</a></li>
+<li><a href="RangePartitionBound.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#enum.constant.summary">Enum Constants</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li><a href="#enum.constant.detail">Enum Constants</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/ReplicaSelection.html b/releases/1.4.0/apidocs/org/apache/kudu/client/ReplicaSelection.html
new file mode 100644
index 0000000..ce6cf98
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/ReplicaSelection.html
@@ -0,0 +1,351 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>ReplicaSelection (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="ReplicaSelection (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":9,"i1":9};
+var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/ReplicaSelection.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/RangePartitionBound.html" title="enum in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/RowError.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/ReplicaSelection.html" target="_top">Frames</a></li>
+<li><a href="ReplicaSelection.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#enum.constant.summary">Enum Constants</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li><a href="#enum.constant.detail">Enum Constants</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.client</div>
+<h2 title="Enum ReplicaSelection" class="title">Enum ReplicaSelection</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang">java.lang.Enum</a>&lt;<a href="../../../../org/apache/kudu/client/ReplicaSelection.html" title="enum in org.apache.kudu.client">ReplicaSelection</a>&gt;</li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.client.ReplicaSelection</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<dl>
+<dt>All Implemented Interfaces:</dt>
+<dd><a href="http://docs.oracle.com/javase/7/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;<a href="../../../../org/apache/kudu/client/ReplicaSelection.html" title="enum in org.apache.kudu.client">ReplicaSelection</a>&gt;</dd>
+</dl>
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Evolving
+public enum <span class="typeNameLabel">ReplicaSelection</span>
+extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang">Enum</a>&lt;<a href="../../../../org/apache/kudu/client/ReplicaSelection.html" title="enum in org.apache.kudu.client">ReplicaSelection</a>&gt;</pre>
+<div class="block">Policy with which to choose amongst multiple replicas.</div>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- =========== ENUM CONSTANT SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="enum.constant.summary">
+<!--   -->
+</a>
+<h3>Enum Constant Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Enum Constant Summary table, listing enum constants, and an explanation">
+<caption><span>Enum Constants</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colOne" scope="col">Enum Constant and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/ReplicaSelection.html#CLOSEST_REPLICA">CLOSEST_REPLICA</a></span></code>
+<div class="block">Select the closest replica to the client, or a random one if all replicas are equidistant.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/ReplicaSelection.html#LEADER_ONLY">LEADER_ONLY</a></span></code>
+<div class="block">Select the LEADER replica.</div>
+</td>
+</tr>
+</table>
+</li>
+</ul>
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/ReplicaSelection.html" title="enum in org.apache.kudu.client">ReplicaSelection</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/ReplicaSelection.html#valueOf-java.lang.String-">valueOf</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
+<div class="block">Returns the enum constant of this type with the specified name.</div>
+</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/ReplicaSelection.html" title="enum in org.apache.kudu.client">ReplicaSelection</a>[]</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/ReplicaSelection.html#values--">values</a></span>()</code>
+<div class="block">Returns an array containing the constants of this enum type, in
+the order they are declared.</div>
+</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Enum">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang">Enum</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#compareTo-E-" title="class or interface in java.lang">compareTo</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#getDeclaringClass--" title="class or interface in java.lang">getDeclaringClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#name--" title="class or interface in java.lang">name</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#ordinal--" title="class or interface in java.lang">ordinal</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#valueOf-java.lang.Class-java.lang.String-" title="class or interface in java.lang">valueOf</a></code></li>
+</ul>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ============ ENUM CONSTANT DETAIL =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="enum.constant.detail">
+<!--   -->
+</a>
+<h3>Enum Constant Detail</h3>
+<a name="LEADER_ONLY">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>LEADER_ONLY</h4>
+<pre>public static final&nbsp;<a href="../../../../org/apache/kudu/client/ReplicaSelection.html" title="enum in org.apache.kudu.client">ReplicaSelection</a> LEADER_ONLY</pre>
+<div class="block">Select the LEADER replica.</div>
+</li>
+</ul>
+<a name="CLOSEST_REPLICA">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>CLOSEST_REPLICA</h4>
+<pre>public static final&nbsp;<a href="../../../../org/apache/kudu/client/ReplicaSelection.html" title="enum in org.apache.kudu.client">ReplicaSelection</a> CLOSEST_REPLICA</pre>
+<div class="block">Select the closest replica to the client, or a random one if all replicas are equidistant.</div>
+</li>
+</ul>
+</li>
+</ul>
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="values--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>values</h4>
+<pre>public static&nbsp;<a href="../../../../org/apache/kudu/client/ReplicaSelection.html" title="enum in org.apache.kudu.client">ReplicaSelection</a>[]&nbsp;values()</pre>
+<div class="block">Returns an array containing the constants of this enum type, in
+the order they are declared.  This method may be used to iterate
+over the constants as follows:
+<pre>
+for (ReplicaSelection c : ReplicaSelection.values())
+&nbsp;   System.out.println(c);
+</pre></div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>an array containing the constants of this enum type, in the order they are declared</dd>
+</dl>
+</li>
+</ul>
+<a name="valueOf-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>valueOf</h4>
+<pre>public static&nbsp;<a href="../../../../org/apache/kudu/client/ReplicaSelection.html" title="enum in org.apache.kudu.client">ReplicaSelection</a>&nbsp;valueOf(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
+<div class="block">Returns the enum constant of this type with the specified name.
+The string must match <i>exactly</i> an identifier used to declare an
+enum constant in this type.  (Extraneous whitespace characters are 
+not permitted.)</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>name</code> - the name of the enum constant to be returned.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the enum constant with the specified name</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if this enum type has no constant with the specified name</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/NullPointerException.html?is-external=true" title="class or interface in java.lang">NullPointerException</a></code> - if the argument is null</dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/ReplicaSelection.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/RangePartitionBound.html" title="enum in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/RowError.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/ReplicaSelection.html" target="_top">Frames</a></li>
+<li><a href="ReplicaSelection.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#enum.constant.summary">Enum Constants</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li><a href="#enum.constant.detail">Enum Constants</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/RowError.html b/releases/1.4.0/apidocs/org/apache/kudu/client/RowError.html
new file mode 100644
index 0000000..e13de09
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/RowError.html
@@ -0,0 +1,349 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>RowError (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="RowError (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":10,"i1":42,"i2":10,"i3":42,"i4":10,"i5":10};
+var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"],32:["t6","Deprecated Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/RowError.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/ReplicaSelection.html" title="enum in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/RowErrorsAndOverflowStatus.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/RowError.html" target="_top">Frames</a></li>
+<li><a href="RowError.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.client</div>
+<h2 title="Class RowError" class="title">Class RowError</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.client.RowError</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Evolving
+public class <span class="typeNameLabel">RowError</span>
+extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></pre>
+<div class="block">Wrapper class for a single row error.</div>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t6" class="tableTab"><span><a href="javascript:show(32);">Deprecated Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/RowError.html#getErrorStatus--">getErrorStatus</a></span>()</code>
+<div class="block">Get the status code and message of the row error.</div>
+</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/RowError.html#getMessage--">getMessage</a></span>()</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;
+<div class="block"><span class="deprecationComment">Please use getErrorStatus() instead. Will be removed in a future version.</span></div>
+</div>
+</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">Operation</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/RowError.html#getOperation--">getOperation</a></span>()</code>
+<div class="block">Get the Operation that failed.</div>
+</td>
+</tr>
+<tr id="i3" class="rowColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/RowError.html#getStatus--">getStatus</a></span>()</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;
+<div class="block"><span class="deprecationComment">Please use getErrorStatus() instead. Will be removed in a future version.</span></div>
+</div>
+</td>
+</tr>
+<tr id="i4" class="altColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/RowError.html#getTsUUID--">getTsUUID</a></span>()</code>
+<div class="block">Get the identifier of the tablet server that sent the error.</div>
+</td>
+</tr>
+<tr id="i5" class="rowColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/RowError.html#toString--">toString</a></span>()</code>&nbsp;</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="getErrorStatus--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getErrorStatus</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a>&nbsp;getErrorStatus()</pre>
+<div class="block">Get the status code and message of the row error.</div>
+</li>
+</ul>
+<a name="getStatus--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getStatus</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getStatus()</pre>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;<span class="deprecationComment">Please use getErrorStatus() instead. Will be removed in a future version.</span></div>
+<div class="block">Get the string-representation of the error code that the tablet server returned.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>A short string representation of the error.</dd>
+</dl>
+</li>
+</ul>
+<a name="getMessage--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getMessage</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getMessage()</pre>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;<span class="deprecationComment">Please use getErrorStatus() instead. Will be removed in a future version.</span></div>
+<div class="block">Get the error message the tablet server sent.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>The error message.</dd>
+</dl>
+</li>
+</ul>
+<a name="getOperation--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getOperation</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">Operation</a>&nbsp;getOperation()</pre>
+<div class="block">Get the Operation that failed.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>The same Operation instance that failed</dd>
+</dl>
+</li>
+</ul>
+<a name="getTsUUID--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getTsUUID</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getTsUUID()</pre>
+<div class="block">Get the identifier of the tablet server that sent the error.
+ The UUID may be <code>null</code> if the failure occurred before sending the row
+ to a tablet server (for instance, if the row falls in a non-covered range partition).</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>A string containing a UUID</dd>
+</dl>
+</li>
+</ul>
+<a name="toString--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>toString</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;toString()</pre>
+<dl>
+<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a></code>&nbsp;in class&nbsp;<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/RowError.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/ReplicaSelection.html" title="enum in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/RowErrorsAndOverflowStatus.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/RowError.html" target="_top">Frames</a></li>
+<li><a href="RowError.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/RowErrorsAndOverflowStatus.html b/releases/1.4.0/apidocs/org/apache/kudu/client/RowErrorsAndOverflowStatus.html
new file mode 100644
index 0000000..7353997
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/RowErrorsAndOverflowStatus.html
@@ -0,0 +1,268 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>RowErrorsAndOverflowStatus (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="RowErrorsAndOverflowStatus (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":10,"i1":10};
+var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/RowErrorsAndOverflowStatus.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/RowError.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/RowErrorsAndOverflowStatus.html" target="_top">Frames</a></li>
+<li><a href="RowErrorsAndOverflowStatus.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.client</div>
+<h2 title="Class RowErrorsAndOverflowStatus" class="title">Class RowErrorsAndOverflowStatus</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.client.RowErrorsAndOverflowStatus</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Evolving
+public class <span class="typeNameLabel">RowErrorsAndOverflowStatus</span>
+extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></pre>
+<div class="block">Container class used as a response when retrieving pending row errors.</div>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/RowError.html" title="class in org.apache.kudu.client">RowError</a>[]</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/RowErrorsAndOverflowStatus.html#getRowErrors--">getRowErrors</a></span>()</code>
+<div class="block">Get the collected row errors.</div>
+</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/RowErrorsAndOverflowStatus.html#isOverflowed--">isOverflowed</a></span>()</code>
+<div class="block">Check if the error collector had an overflow and had to discard row errors.</div>
+</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="getRowErrors--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getRowErrors</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/RowError.html" title="class in org.apache.kudu.client">RowError</a>[]&nbsp;getRowErrors()</pre>
+<div class="block">Get the collected row errors.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>an array of row errors, may be empty</dd>
+</dl>
+</li>
+</ul>
+<a name="isOverflowed--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>isOverflowed</h4>
+<pre>public&nbsp;boolean&nbsp;isOverflowed()</pre>
+<div class="block">Check if the error collector had an overflow and had to discard row errors.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>true if row errors were discarded, false otherwise</dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/RowErrorsAndOverflowStatus.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/RowError.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/RowErrorsAndOverflowStatus.html" target="_top">Frames</a></li>
+<li><a href="RowErrorsAndOverflowStatus.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/RowResult.html b/releases/1.4.0/apidocs/org/apache/kudu/client/RowResult.html
new file mode 100644
index 0000000..ecca0fb
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/RowResult.html
@@ -0,0 +1,943 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>RowResult (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="RowResult (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10,"i15":10,"i16":10,"i17":10,"i18":10,"i19":10,"i20":10,"i21":10,"i22":10,"i23":10,"i24":10,"i25":10,"i26":10,"i27":10,"i28":10};
+var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/RowResult.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/RowErrorsAndOverflowStatus.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/RowResultIterator.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/RowResult.html" target="_top">Frames</a></li>
+<li><a href="RowResult.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.client</div>
+<h2 title="Class RowResult" class="title">Class RowResult</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.client.RowResult</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Evolving
+public class <span class="typeNameLabel">RowResult</span>
+extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></pre>
+<div class="block">RowResult represents one row from a scanner. Do not reuse or store the objects.</div>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/RowResult.html#getBinary-int-">getBinary</a></span>(int&nbsp;columnIndex)</code>
+<div class="block">Get the specified column's binary data.</div>
+</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/RowResult.html#getBinary-java.lang.String-">getBinary</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</code>
+<div class="block">Get the specified column's binary data.</div>
+</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code>byte[]</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/RowResult.html#getBinaryCopy-int-">getBinaryCopy</a></span>(int&nbsp;columnIndex)</code>
+<div class="block">Get a copy of the specified column's binary data.</div>
+</td>
+</tr>
+<tr id="i3" class="rowColor">
+<td class="colFirst"><code>byte[]</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/RowResult.html#getBinaryCopy-java.lang.String-">getBinaryCopy</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</code>
+<div class="block">Get a copy of the specified column's binary data.</div>
+</td>
+</tr>
+<tr id="i4" class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/RowResult.html#getBoolean-int-">getBoolean</a></span>(int&nbsp;columnIndex)</code>
+<div class="block">Get the specified column's boolean</div>
+</td>
+</tr>
+<tr id="i5" class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/RowResult.html#getBoolean-java.lang.String-">getBoolean</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</code>
+<div class="block">Get the specified column's boolean</div>
+</td>
+</tr>
+<tr id="i6" class="altColor">
+<td class="colFirst"><code>byte</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/RowResult.html#getByte-int-">getByte</a></span>(int&nbsp;columnIndex)</code>
+<div class="block">Get the specified column's byte</div>
+</td>
+</tr>
+<tr id="i7" class="rowColor">
+<td class="colFirst"><code>byte</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/RowResult.html#getByte-java.lang.String-">getByte</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</code>
+<div class="block">Get the specified column's byte</div>
+</td>
+</tr>
+<tr id="i8" class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/RowResult.html#getColumnProjection--">getColumnProjection</a></span>()</code>
+<div class="block">Get the schema used for this scanner's column projection.</div>
+</td>
+</tr>
+<tr id="i9" class="rowColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/Type.html" title="enum in org.apache.kudu">Type</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/RowResult.html#getColumnType-int-">getColumnType</a></span>(int&nbsp;columnIndex)</code>
+<div class="block">Get the type of a column in this result.</div>
+</td>
+</tr>
+<tr id="i10" class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/Type.html" title="enum in org.apache.kudu">Type</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/RowResult.html#getColumnType-java.lang.String-">getColumnType</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</code>
+<div class="block">Get the type of a column in this result.</div>
+</td>
+</tr>
+<tr id="i11" class="rowColor">
+<td class="colFirst"><code>double</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/RowResult.html#getDouble-int-">getDouble</a></span>(int&nbsp;columnIndex)</code>
+<div class="block">Get the specified column's double</div>
+</td>
+</tr>
+<tr id="i12" class="altColor">
+<td class="colFirst"><code>double</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/RowResult.html#getDouble-java.lang.String-">getDouble</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</code>
+<div class="block">Get the specified column's double</div>
+</td>
+</tr>
+<tr id="i13" class="rowColor">
+<td class="colFirst"><code>float</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/RowResult.html#getFloat-int-">getFloat</a></span>(int&nbsp;columnIndex)</code>
+<div class="block">Get the specified column's float</div>
+</td>
+</tr>
+<tr id="i14" class="altColor">
+<td class="colFirst"><code>float</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/RowResult.html#getFloat-java.lang.String-">getFloat</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</code>
+<div class="block">Get the specified column's float</div>
+</td>
+</tr>
+<tr id="i15" class="rowColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/RowResult.html#getInt-int-">getInt</a></span>(int&nbsp;columnIndex)</code>
+<div class="block">Get the specified column's integer</div>
+</td>
+</tr>
+<tr id="i16" class="altColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/RowResult.html#getInt-java.lang.String-">getInt</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</code>
+<div class="block">Get the specified column's integer</div>
+</td>
+</tr>
+<tr id="i17" class="rowColor">
+<td class="colFirst"><code>long</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/RowResult.html#getLong-int-">getLong</a></span>(int&nbsp;columnIndex)</code>
+<div class="block">Get the specified column's long
+
+ If this is a UNIXTIME_MICROS column, the long value corresponds to a number of microseconds
+ since midnight, January 1, 1970 UTC.</div>
+</td>
+</tr>
+<tr id="i18" class="altColor">
+<td class="colFirst"><code>long</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/RowResult.html#getLong-java.lang.String-">getLong</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</code>
+<div class="block">Get the specified column's long
+
+ If this is a UNIXTIME_MICROS column, the long value corresponds to a number of microseconds
+ since midnight, January 1, 1970 UTC.</div>
+</td>
+</tr>
+<tr id="i19" class="rowColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/RowResult.html#getSchema--">getSchema</a></span>()</code>
+<div class="block">Get the schema associated with this result.</div>
+</td>
+</tr>
+<tr id="i20" class="altColor">
+<td class="colFirst"><code>short</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/RowResult.html#getShort-int-">getShort</a></span>(int&nbsp;columnIndex)</code>
+<div class="block">Get the specified column's short</div>
+</td>
+</tr>
+<tr id="i21" class="rowColor">
+<td class="colFirst"><code>short</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/RowResult.html#getShort-java.lang.String-">getShort</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</code>
+<div class="block">Get the specified column's short</div>
+</td>
+</tr>
+<tr id="i22" class="altColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/RowResult.html#getString-int-">getString</a></span>(int&nbsp;columnIndex)</code>
+<div class="block">Get the specified column's string.</div>
+</td>
+</tr>
+<tr id="i23" class="rowColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/RowResult.html#getString-java.lang.String-">getString</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</code>
+<div class="block">Get the specified column's string.</div>
+</td>
+</tr>
+<tr id="i24" class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/RowResult.html#isNull-int-">isNull</a></span>(int&nbsp;columnIndex)</code>
+<div class="block">Get if the specified column is NULL</div>
+</td>
+</tr>
+<tr id="i25" class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/RowResult.html#isNull-java.lang.String-">isNull</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</code>
+<div class="block">Get if the specified column is NULL</div>
+</td>
+</tr>
+<tr id="i26" class="altColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/RowResult.html#rowToString--">rowToString</a></span>()</code>
+<div class="block">Return the actual data from this row in a stringified key=value
+ form.</div>
+</td>
+</tr>
+<tr id="i27" class="rowColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/RowResult.html#toString--">toString</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i28" class="altColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/RowResult.html#toStringLongFormat--">toStringLongFormat</a></span>()</code>&nbsp;</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="getInt-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getInt</h4>
+<pre>public&nbsp;int&nbsp;getInt(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</pre>
+<div class="block">Get the specified column's integer</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnName</code> - name of the column to get data for</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>an integer</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist, is null,
+ or if the type doesn't match the column's type</dd>
+</dl>
+</li>
+</ul>
+<a name="getInt-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getInt</h4>
+<pre>public&nbsp;int&nbsp;getInt(int&nbsp;columnIndex)</pre>
+<div class="block">Get the specified column's integer</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnIndex</code> - Column index in the schema</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>an integer</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column is null
+ or if the type doesn't match the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
+</dl>
+</li>
+</ul>
+<a name="getShort-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getShort</h4>
+<pre>public&nbsp;short&nbsp;getShort(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</pre>
+<div class="block">Get the specified column's short</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnName</code> - name of the column to get data for</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a short</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist, is null,
+ or if the type doesn't match the column's type</dd>
+</dl>
+</li>
+</ul>
+<a name="getShort-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getShort</h4>
+<pre>public&nbsp;short&nbsp;getShort(int&nbsp;columnIndex)</pre>
+<div class="block">Get the specified column's short</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnIndex</code> - Column index in the schema</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a short</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column is null
+ or if the type doesn't match the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
+</dl>
+</li>
+</ul>
+<a name="getBoolean-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getBoolean</h4>
+<pre>public&nbsp;boolean&nbsp;getBoolean(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</pre>
+<div class="block">Get the specified column's boolean</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnName</code> - name of the column to get data for</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a boolean</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist, is null,
+ or if the type doesn't match the column's type</dd>
+</dl>
+</li>
+</ul>
+<a name="getBoolean-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getBoolean</h4>
+<pre>public&nbsp;boolean&nbsp;getBoolean(int&nbsp;columnIndex)</pre>
+<div class="block">Get the specified column's boolean</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnIndex</code> - Column index in the schema</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a boolean</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column is null
+ or if the type doesn't match the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
+</dl>
+</li>
+</ul>
+<a name="getByte-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getByte</h4>
+<pre>public&nbsp;byte&nbsp;getByte(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</pre>
+<div class="block">Get the specified column's byte</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnName</code> - name of the column to get data for</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a byte</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist, is null,
+ or if the type doesn't match the column's type</dd>
+</dl>
+</li>
+</ul>
+<a name="getByte-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getByte</h4>
+<pre>public&nbsp;byte&nbsp;getByte(int&nbsp;columnIndex)</pre>
+<div class="block">Get the specified column's byte</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnIndex</code> - Column index in the schema</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a byte</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column is null
+ or if the type doesn't match the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
+</dl>
+</li>
+</ul>
+<a name="getLong-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getLong</h4>
+<pre>public&nbsp;long&nbsp;getLong(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</pre>
+<div class="block">Get the specified column's long
+
+ If this is a UNIXTIME_MICROS column, the long value corresponds to a number of microseconds
+ since midnight, January 1, 1970 UTC.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnName</code> - name of the column to get data for</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a positive long</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist or is null</dd>
+</dl>
+</li>
+</ul>
+<a name="getLong-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getLong</h4>
+<pre>public&nbsp;long&nbsp;getLong(int&nbsp;columnIndex)</pre>
+<div class="block">Get the specified column's long
+
+ If this is a UNIXTIME_MICROS column, the long value corresponds to a number of microseconds
+ since midnight, January 1, 1970 UTC.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnIndex</code> - Column index in the schema</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a positive long</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column is null</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
+</dl>
+</li>
+</ul>
+<a name="getFloat-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getFloat</h4>
+<pre>public&nbsp;float&nbsp;getFloat(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</pre>
+<div class="block">Get the specified column's float</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnName</code> - name of the column to get data for</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a float</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist, is null,
+ or if the type doesn't match the column's type</dd>
+</dl>
+</li>
+</ul>
+<a name="getFloat-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getFloat</h4>
+<pre>public&nbsp;float&nbsp;getFloat(int&nbsp;columnIndex)</pre>
+<div class="block">Get the specified column's float</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnIndex</code> - Column index in the schema</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a float</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column is null
+ or if the type doesn't match the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
+</dl>
+</li>
+</ul>
+<a name="getDouble-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getDouble</h4>
+<pre>public&nbsp;double&nbsp;getDouble(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</pre>
+<div class="block">Get the specified column's double</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnName</code> - name of the column to get data for</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a double</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist, is null,
+ or if the type doesn't match the column's type</dd>
+</dl>
+</li>
+</ul>
+<a name="getDouble-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getDouble</h4>
+<pre>public&nbsp;double&nbsp;getDouble(int&nbsp;columnIndex)</pre>
+<div class="block">Get the specified column's double</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnIndex</code> - Column index in the schema</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a double</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column is null
+ or if the type doesn't match the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
+</dl>
+</li>
+</ul>
+<a name="getColumnProjection--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getColumnProjection</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a>&nbsp;getColumnProjection()</pre>
+<div class="block">Get the schema used for this scanner's column projection.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a column projection as a schema.</dd>
+</dl>
+</li>
+</ul>
+<a name="getString-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getString</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getString(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</pre>
+<div class="block">Get the specified column's string.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnName</code> - name of the column to get data for</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a string</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist, is null,
+ or if the type doesn't match the column's type</dd>
+</dl>
+</li>
+</ul>
+<a name="getString-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getString</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getString(int&nbsp;columnIndex)</pre>
+<div class="block">Get the specified column's string.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnIndex</code> - Column index in the schema</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a string</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column is null
+ or if the type doesn't match the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
+</dl>
+</li>
+</ul>
+<a name="getBinaryCopy-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getBinaryCopy</h4>
+<pre>public&nbsp;byte[]&nbsp;getBinaryCopy(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</pre>
+<div class="block">Get a copy of the specified column's binary data.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnName</code> - name of the column to get data for</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a byte[] with the binary data.</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist, is null,
+ or if the type doesn't match the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
+</dl>
+</li>
+</ul>
+<a name="getBinaryCopy-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getBinaryCopy</h4>
+<pre>public&nbsp;byte[]&nbsp;getBinaryCopy(int&nbsp;columnIndex)</pre>
+<div class="block">Get a copy of the specified column's binary data.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnIndex</code> - Column index in the schema</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a byte[] with the binary data.</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column is null
+ or if the type doesn't match the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
+</dl>
+</li>
+</ul>
+<a name="getBinary-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getBinary</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a>&nbsp;getBinary(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</pre>
+<div class="block">Get the specified column's binary data.
+
+ This doesn't copy the data and instead returns a ByteBuffer that wraps it.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnName</code> - name of the column to get data for</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a ByteBuffer with the binary data.</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column doesn't exist, is null,
+ or if the type doesn't match the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
+</dl>
+</li>
+</ul>
+<a name="getBinary-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getBinary</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a>&nbsp;getBinary(int&nbsp;columnIndex)</pre>
+<div class="block">Get the specified column's binary data.
+
+ This doesn't copy the data and instead returns a ByteBuffer that wraps it.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnIndex</code> - Column index in the schema</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a ByteBuffer with the binary data.</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the column is null
+ or if the type doesn't match the column's type</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
+</dl>
+</li>
+</ul>
+<a name="isNull-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>isNull</h4>
+<pre>public&nbsp;boolean&nbsp;isNull(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</pre>
+<div class="block">Get if the specified column is NULL</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnName</code> - name of the column in the schema</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>true if the column cell is null and the column is nullable,
+ false otherwise</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
+</dl>
+</li>
+</ul>
+<a name="isNull-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>isNull</h4>
+<pre>public&nbsp;boolean&nbsp;isNull(int&nbsp;columnIndex)</pre>
+<div class="block">Get if the specified column is NULL</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnIndex</code> - Column index in the schema</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>true if the column cell is null and the column is nullable,
+ false otherwise</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
+</dl>
+</li>
+</ul>
+<a name="getColumnType-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getColumnType</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/Type.html" title="enum in org.apache.kudu">Type</a>&nbsp;getColumnType(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnName)</pre>
+<div class="block">Get the type of a column in this result.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnName</code> - name of the column</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a type</dd>
+</dl>
+</li>
+</ul>
+<a name="getColumnType-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getColumnType</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/Type.html" title="enum in org.apache.kudu">Type</a>&nbsp;getColumnType(int&nbsp;columnIndex)</pre>
+<div class="block">Get the type of a column in this result.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnIndex</code> - column index in the schema</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a type</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - if the column doesn't exist</dd>
+</dl>
+</li>
+</ul>
+<a name="getSchema--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getSchema</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a>&nbsp;getSchema()</pre>
+<div class="block">Get the schema associated with this result.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a schema</dd>
+</dl>
+</li>
+</ul>
+<a name="toString--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>toString</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;toString()</pre>
+<dl>
+<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a></code>&nbsp;in class&nbsp;<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></dd>
+</dl>
+</li>
+</ul>
+<a name="rowToString--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>rowToString</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;rowToString()</pre>
+<div class="block">Return the actual data from this row in a stringified key=value
+ form.</div>
+</li>
+</ul>
+<a name="toStringLongFormat--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>toStringLongFormat</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;toStringLongFormat()</pre>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a string describing the location of this row result within
+ the iterator as well as its data.</dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/RowResult.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/RowErrorsAndOverflowStatus.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/RowResultIterator.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/RowResult.html" target="_top">Frames</a></li>
+<li><a href="RowResult.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/RowResultIterator.html b/releases/1.4.0/apidocs/org/apache/kudu/client/RowResultIterator.html
new file mode 100644
index 0000000..caf10e7
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/RowResultIterator.html
@@ -0,0 +1,397 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>RowResultIterator (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="RowResultIterator (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10};
+var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/RowResultIterator.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/RowResultIterator.html" target="_top">Frames</a></li>
+<li><a href="RowResultIterator.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.client</div>
+<h2 title="Class RowResultIterator" class="title">Class RowResultIterator</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.client.RowResultIterator</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<dl>
+<dt>All Implemented Interfaces:</dt>
+<dd><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Iterable.html?is-external=true" title="class or interface in java.lang">Iterable</a>&lt;<a href="../../../../org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a>&gt;, <a href="http://docs.oracle.com/javase/7/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;<a href="../../../../org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a>&gt;</dd>
+</dl>
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Evolving
+public class <span class="typeNameLabel">RowResultIterator</span>
+extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>
+implements <a href="http://docs.oracle.com/javase/7/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;<a href="../../../../org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a>&gt;, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Iterable.html?is-external=true" title="class or interface in java.lang">Iterable</a>&lt;<a href="../../../../org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a>&gt;</pre>
+<div class="block">Class that contains the rows sent by a tablet server, exhausting this iterator only means
+ that all the rows from the last server response were read.</div>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code>long</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/RowResultIterator.html#getElapsedMillis--">getElapsedMillis</a></span>()</code>
+<div class="block">Get the number of milliseconds elapsed since the RPC was created up to the moment when this
+ response was created.</div>
+</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/RowResultIterator.html#getNumRows--">getNumRows</a></span>()</code>
+<div class="block">Get the number of rows in this iterator.</div>
+</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/RowResultIterator.html#getTsUUID--">getTsUUID</a></span>()</code>
+<div class="block">Get the identifier of the tablet server that sent the response.</div>
+</td>
+</tr>
+<tr id="i3" class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/RowResultIterator.html#hasNext--">hasNext</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i4" class="altColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;<a href="../../../../org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/RowResultIterator.html#iterator--">iterator</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i5" class="rowColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/RowResultIterator.html#next--">next</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i6" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/RowResultIterator.html#remove--">remove</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i7" class="rowColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/RowResultIterator.html#toString--">toString</a></span>()</code>&nbsp;</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.util.Iterator">
+<!--   -->
+</a>
+<h3>Methods inherited from interface&nbsp;java.util.<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/util/Iterator.html?is-external=true#forEachRemaining-java.util.function.Consumer-" title="class or interface in java.util">forEachRemaining</a></code></li>
+</ul>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Iterable">
+<!--   -->
+</a>
+<h3>Methods inherited from interface&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Iterable.html?is-external=true" title="class or interface in java.lang">Iterable</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Iterable.html?is-external=true#forEach-java.util.function.Consumer-" title="class or interface in java.lang">forEach</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Iterable.html?is-external=true#spliterator--" title="class or interface in java.lang">spliterator</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="hasNext--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>hasNext</h4>
+<pre>public&nbsp;boolean&nbsp;hasNext()</pre>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/util/Iterator.html?is-external=true#hasNext--" title="class or interface in java.util">hasNext</a></code>&nbsp;in interface&nbsp;<code><a href="http://docs.oracle.com/javase/7/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;<a href="../../../../org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a>&gt;</code></dd>
+</dl>
+</li>
+</ul>
+<a name="next--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>next</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a>&nbsp;next()</pre>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/util/Iterator.html?is-external=true#next--" title="class or interface in java.util">next</a></code>&nbsp;in interface&nbsp;<code><a href="http://docs.oracle.com/javase/7/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;<a href="../../../../org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a>&gt;</code></dd>
+</dl>
+</li>
+</ul>
+<a name="remove--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>remove</h4>
+<pre>public&nbsp;void&nbsp;remove()</pre>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/util/Iterator.html?is-external=true#remove--" title="class or interface in java.util">remove</a></code>&nbsp;in interface&nbsp;<code><a href="http://docs.oracle.com/javase/7/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;<a href="../../../../org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a>&gt;</code></dd>
+</dl>
+</li>
+</ul>
+<a name="getNumRows--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getNumRows</h4>
+<pre>public&nbsp;int&nbsp;getNumRows()</pre>
+<div class="block">Get the number of rows in this iterator. If all you want is to count
+ rows, call this and skip the rest.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>number of rows in this iterator</dd>
+</dl>
+</li>
+</ul>
+<a name="toString--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>toString</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;toString()</pre>
+<dl>
+<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a></code>&nbsp;in class&nbsp;<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></dd>
+</dl>
+</li>
+</ul>
+<a name="iterator--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>iterator</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;<a href="../../../../org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a>&gt;&nbsp;iterator()</pre>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Iterable.html?is-external=true#iterator--" title="class or interface in java.lang">iterator</a></code>&nbsp;in interface&nbsp;<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Iterable.html?is-external=true" title="class or interface in java.lang">Iterable</a>&lt;<a href="../../../../org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a>&gt;</code></dd>
+</dl>
+</li>
+</ul>
+<a name="getElapsedMillis--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getElapsedMillis</h4>
+<pre>public&nbsp;long&nbsp;getElapsedMillis()</pre>
+<div class="block">Get the number of milliseconds elapsed since the RPC was created up to the moment when this
+ response was created.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>elapsed time in milliseconds</dd>
+</dl>
+</li>
+</ul>
+<a name="getTsUUID--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>getTsUUID</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getTsUUID()</pre>
+<div class="block">Get the identifier of the tablet server that sent the response. May be
+ <code>null</code> if the RPC failed before tablet location lookup succeeded.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a string containing a UUID</dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/RowResultIterator.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/RowResultIterator.html" target="_top">Frames</a></li>
+<li><a href="RowResultIterator.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/SessionConfiguration.FlushMode.html b/releases/1.4.0/apidocs/org/apache/kudu/client/SessionConfiguration.FlushMode.html
new file mode 100644
index 0000000..cc15856
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/SessionConfiguration.FlushMode.html
@@ -0,0 +1,398 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>SessionConfiguration.FlushMode (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="SessionConfiguration.FlushMode (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":9,"i1":9};
+var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/SessionConfiguration.FlushMode.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/Statistics.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/SessionConfiguration.FlushMode.html" target="_top">Frames</a></li>
+<li><a href="SessionConfiguration.FlushMode.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#enum.constant.summary">Enum Constants</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li><a href="#enum.constant.detail">Enum Constants</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.client</div>
+<h2 title="Enum SessionConfiguration.FlushMode" class="title">Enum SessionConfiguration.FlushMode</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang">java.lang.Enum</a>&lt;<a href="../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html" title="enum in org.apache.kudu.client">SessionConfiguration.FlushMode</a>&gt;</li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.client.SessionConfiguration.FlushMode</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<dl>
+<dt>All Implemented Interfaces:</dt>
+<dd><a href="http://docs.oracle.com/javase/7/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;<a href="../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html" title="enum in org.apache.kudu.client">SessionConfiguration.FlushMode</a>&gt;</dd>
+</dl>
+<dl>
+<dt>Enclosing interface:</dt>
+<dd><a href="../../../../org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client">SessionConfiguration</a></dd>
+</dl>
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Evolving
+public static enum <span class="typeNameLabel">SessionConfiguration.FlushMode</span>
+extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang">Enum</a>&lt;<a href="../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html" title="enum in org.apache.kudu.client">SessionConfiguration.FlushMode</a>&gt;</pre>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- =========== ENUM CONSTANT SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="enum.constant.summary">
+<!--   -->
+</a>
+<h3>Enum Constant Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Enum Constant Summary table, listing enum constants, and an explanation">
+<caption><span>Enum Constants</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colOne" scope="col">Enum Constant and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html#AUTO_FLUSH_BACKGROUND">AUTO_FLUSH_BACKGROUND</a></span></code>
+<div class="block"><a href="../../../../org/apache/kudu/client/KuduSession.html#apply-org.apache.kudu.client.Operation-"><code>KuduSession.apply()</code></a> calls will return immediately, but the writes
+ will be sent in the background, potentially batched together with other writes from
+ the same session.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html#AUTO_FLUSH_SYNC">AUTO_FLUSH_SYNC</a></span></code>
+<div class="block">Each <a href="../../../../org/apache/kudu/client/KuduSession.html#apply-org.apache.kudu.client.Operation-"><code>KuduSession.apply()</code></a> call will return only after being
+ flushed to the server automatically.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html#MANUAL_FLUSH">MANUAL_FLUSH</a></span></code>
+<div class="block"><a href="../../../../org/apache/kudu/client/KuduSession.html#apply-org.apache.kudu.client.Operation-"><code>KuduSession.apply()</code></a> calls will return immediately, but the writes
+ will not be sent until the user calls <a href="../../../../org/apache/kudu/client/KuduSession.html#flush--"><code>KuduSession.flush()</code></a>.</div>
+</td>
+</tr>
+</table>
+</li>
+</ul>
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html" title="enum in org.apache.kudu.client">SessionConfiguration.FlushMode</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html#valueOf-java.lang.String-">valueOf</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
+<div class="block">Returns the enum constant of this type with the specified name.</div>
+</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html" title="enum in org.apache.kudu.client">SessionConfiguration.FlushMode</a>[]</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html#values--">values</a></span>()</code>
+<div class="block">Returns an array containing the constants of this enum type, in
+the order they are declared.</div>
+</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Enum">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang">Enum</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#compareTo-E-" title="class or interface in java.lang">compareTo</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#getDeclaringClass--" title="class or interface in java.lang">getDeclaringClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#name--" title="class or interface in java.lang">name</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#ordinal--" title="class or interface in java.lang">ordinal</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#valueOf-java.lang.Class-java.lang.String-" title="class or interface in java.lang">valueOf</a></code></li>
+</ul>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ============ ENUM CONSTANT DETAIL =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="enum.constant.detail">
+<!--   -->
+</a>
+<h3>Enum Constant Detail</h3>
+<a name="AUTO_FLUSH_SYNC">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>AUTO_FLUSH_SYNC</h4>
+<pre>public static final&nbsp;<a href="../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html" title="enum in org.apache.kudu.client">SessionConfiguration.FlushMode</a> AUTO_FLUSH_SYNC</pre>
+<div class="block">Each <a href="../../../../org/apache/kudu/client/KuduSession.html#apply-org.apache.kudu.client.Operation-"><code>KuduSession.apply()</code></a> call will return only after being
+ flushed to the server automatically. No batching will occur.
+
+ <p>In this mode, the <a href="../../../../org/apache/kudu/client/KuduSession.html#flush--"><code>KuduSession.flush()</code></a> call never has any effect, since each
+ <a href="../../../../org/apache/kudu/client/KuduSession.html#apply-org.apache.kudu.client.Operation-"><code>KuduSession.apply()</code></a> has already flushed the buffer before
+ returning.
+
+ <p><strong>This is the default flush mode.</strong></div>
+</li>
+</ul>
+<a name="AUTO_FLUSH_BACKGROUND">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>AUTO_FLUSH_BACKGROUND</h4>
+<pre>public static final&nbsp;<a href="../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html" title="enum in org.apache.kudu.client">SessionConfiguration.FlushMode</a> AUTO_FLUSH_BACKGROUND</pre>
+<div class="block"><a href="../../../../org/apache/kudu/client/KuduSession.html#apply-org.apache.kudu.client.Operation-"><code>KuduSession.apply()</code></a> calls will return immediately, but the writes
+ will be sent in the background, potentially batched together with other writes from
+ the same session. If there is not sufficient buffer space, then
+ <a href="../../../../org/apache/kudu/client/KuduSession.html#apply-org.apache.kudu.client.Operation-"><code>KuduSession.apply()</code></a> may block for buffer space to be available.
+
+ <p>Because writes are applied in the background, any errors will be stored
+ in a session-local buffer. Call <a href="../../../../org/apache/kudu/client/SessionConfiguration.html#countPendingErrors--"><code>countPendingErrors()</code></a> or
+ <a href="../../../../org/apache/kudu/client/SessionConfiguration.html#getPendingErrors--"><code>getPendingErrors()</code></a> to retrieve them.
+
+ <p><strong>Note:</strong> The <code>AUTO_FLUSH_BACKGROUND</code> mode may result in
+ out-of-order writes to Kudu. This is because in this mode multiple write
+ operations may be sent to the server in parallel.
+ See <a href="https://issues.apache.org/jira/browse/KUDU-1767">KUDU-1767</a> for more
+ information.
+
+ <p>The <a href="../../../../org/apache/kudu/client/KuduSession.html#flush--"><code>KuduSession.flush()</code></a> call can be used to block until the buffer is empty.</div>
+</li>
+</ul>
+<a name="MANUAL_FLUSH">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>MANUAL_FLUSH</h4>
+<pre>public static final&nbsp;<a href="../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html" title="enum in org.apache.kudu.client">SessionConfiguration.FlushMode</a> MANUAL_FLUSH</pre>
+<div class="block"><a href="../../../../org/apache/kudu/client/KuduSession.html#apply-org.apache.kudu.client.Operation-"><code>KuduSession.apply()</code></a> calls will return immediately, but the writes
+ will not be sent until the user calls <a href="../../../../org/apache/kudu/client/KuduSession.html#flush--"><code>KuduSession.flush()</code></a>. If the buffer runs past
+ the configured space limit, then <a href="../../../../org/apache/kudu/client/KuduSession.html#apply-org.apache.kudu.client.Operation-"><code>KuduSession.apply()</code></a> will return
+ an error.</div>
+</li>
+</ul>
+</li>
+</ul>
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="values--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>values</h4>
+<pre>public static&nbsp;<a href="../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html" title="enum in org.apache.kudu.client">SessionConfiguration.FlushMode</a>[]&nbsp;values()</pre>
+<div class="block">Returns an array containing the constants of this enum type, in
+the order they are declared.  This method may be used to iterate
+over the constants as follows:
+<pre>
+for (SessionConfiguration.FlushMode c : SessionConfiguration.FlushMode.values())
+&nbsp;   System.out.println(c);
+</pre></div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>an array containing the constants of this enum type, in the order they are declared</dd>
+</dl>
+</li>
+</ul>
+<a name="valueOf-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>valueOf</h4>
+<pre>public static&nbsp;<a href="../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html" title="enum in org.apache.kudu.client">SessionConfiguration.FlushMode</a>&nbsp;valueOf(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
+<div class="block">Returns the enum constant of this type with the specified name.
+The string must match <i>exactly</i> an identifier used to declare an
+enum constant in this type.  (Extraneous whitespace characters are 
+not permitted.)</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>name</code> - the name of the enum constant to be returned.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the enum constant with the specified name</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if this enum type has no constant with the specified name</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/NullPointerException.html?is-external=true" title="class or interface in java.lang">NullPointerException</a></code> - if the argument is null</dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/SessionConfiguration.FlushMode.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/Statistics.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/SessionConfiguration.FlushMode.html" target="_top">Frames</a></li>
+<li><a href="SessionConfiguration.FlushMode.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#enum.constant.summary">Enum Constants</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li><a href="#enum.constant.detail">Enum Constants</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/SessionConfiguration.html b/releases/1.4.0/apidocs/org/apache/kudu/client/SessionConfiguration.html
new file mode 100644
index 0000000..e436b49
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/SessionConfiguration.html
@@ -0,0 +1,538 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>SessionConfiguration (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="SessionConfiguration (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":6,"i1":6,"i2":6,"i3":6,"i4":6,"i5":6,"i6":6,"i7":6,"i8":6,"i9":6,"i10":6,"i11":6,"i12":6,"i13":6};
+var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/SessionConfiguration.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/RowResultIterator.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html" title="enum in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/SessionConfiguration.html" target="_top">Frames</a></li>
+<li><a href="SessionConfiguration.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.client</div>
+<h2 title="Interface SessionConfiguration" class="title">Interface SessionConfiguration</h2>
+</div>
+<div class="contentContainer">
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<dl>
+<dt>All Known Implementing Classes:</dt>
+<dd><a href="../../../../org/apache/kudu/client/AsyncKuduSession.html" title="class in org.apache.kudu.client">AsyncKuduSession</a>, <a href="../../../../org/apache/kudu/client/KuduSession.html" title="class in org.apache.kudu.client">KuduSession</a></dd>
+</dl>
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Evolving
+public interface <span class="typeNameLabel">SessionConfiguration</span></pre>
+<div class="block">Interface that defines the methods used to configure a session. It also exposes ways to
+ query its state.</div>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- ======== NESTED CLASS SUMMARY ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="nested.class.summary">
+<!--   -->
+</a>
+<h3>Nested Class Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Nested Class Summary table, listing nested classes, and an explanation">
+<caption><span>Nested Classes</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Interface and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static class&nbsp;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html" title="enum in org.apache.kudu.client">SessionConfiguration.FlushMode</a></span></code>&nbsp;</td>
+</tr>
+</table>
+</li>
+</ul>
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#countPendingErrors--">countPendingErrors</a></span>()</code>
+<div class="block">Return the number of errors which are pending.</div>
+</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html" title="enum in org.apache.kudu.client">SessionConfiguration.FlushMode</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#getFlushMode--">getFlushMode</a></span>()</code>
+<div class="block">Get the current flush mode.</div>
+</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/RowErrorsAndOverflowStatus.html" title="class in org.apache.kudu.client">RowErrorsAndOverflowStatus</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#getPendingErrors--">getPendingErrors</a></span>()</code>
+<div class="block">Return any errors from previous calls.</div>
+</td>
+</tr>
+<tr id="i3" class="rowColor">
+<td class="colFirst"><code>long</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#getTimeoutMillis--">getTimeoutMillis</a></span>()</code>
+<div class="block">Get the current timeout.</div>
+</td>
+</tr>
+<tr id="i4" class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#hasPendingOperations--">hasPendingOperations</a></span>()</code>
+<div class="block">Check if there are operations that haven't been completely applied.</div>
+</td>
+</tr>
+<tr id="i5" class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#isClosed--">isClosed</a></span>()</code>
+<div class="block">Returns true if this session has already been closed.</div>
+</td>
+</tr>
+<tr id="i6" class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#isIgnoreAllDuplicateRows--">isIgnoreAllDuplicateRows</a></span>()</code>
+<div class="block">Tells if the session is currently ignoring row errors when the whole list returned by a tablet
+ server is of the AlreadyPresent type.</div>
+</td>
+</tr>
+<tr id="i7" class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#setExternalConsistencyMode-org.apache.kudu.client.ExternalConsistencyMode-">setExternalConsistencyMode</a></span>(<a href="../../../../org/apache/kudu/client/ExternalConsistencyMode.html" title="enum in org.apache.kudu.client">ExternalConsistencyMode</a>&nbsp;consistencyMode)</code>
+<div class="block">Set the new external consistency mode for this session.</div>
+</td>
+</tr>
+<tr id="i8" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#setFlushInterval-int-">setFlushInterval</a></span>(int&nbsp;interval)</code>
+<div class="block">Set the flush interval, which will be used for the next scheduling decision.</div>
+</td>
+</tr>
+<tr id="i9" class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#setFlushMode-org.apache.kudu.client.SessionConfiguration.FlushMode-">setFlushMode</a></span>(<a href="../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html" title="enum in org.apache.kudu.client">SessionConfiguration.FlushMode</a>&nbsp;flushMode)</code>
+<div class="block">Set the new flush mode for this session.</div>
+</td>
+</tr>
+<tr id="i10" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#setIgnoreAllDuplicateRows-boolean-">setIgnoreAllDuplicateRows</a></span>(boolean&nbsp;ignoreAllDuplicateRows)</code>
+<div class="block">Configures the option to ignore all the row errors if they are all of the AlreadyPresent type.</div>
+</td>
+</tr>
+<tr id="i11" class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#setMutationBufferLowWatermark-float-">setMutationBufferLowWatermark</a></span>(float&nbsp;mutationBufferLowWatermarkPercentage)</code>
+<div class="block">Set the low watermark for this session.</div>
+</td>
+</tr>
+<tr id="i12" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#setMutationBufferSpace-int-">setMutationBufferSpace</a></span>(int&nbsp;size)</code>
+<div class="block">Set the number of operations that can be buffered.</div>
+</td>
+</tr>
+<tr id="i13" class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/SessionConfiguration.html#setTimeoutMillis-long-">setTimeoutMillis</a></span>(long&nbsp;timeout)</code>
+<div class="block">Sets the timeout for the next applied operations.</div>
+</td>
+</tr>
+</table>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="getFlushMode--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getFlushMode</h4>
+<pre><a href="../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html" title="enum in org.apache.kudu.client">SessionConfiguration.FlushMode</a>&nbsp;getFlushMode()</pre>
+<div class="block">Get the current flush mode.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>flush mode, <a href="../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html#AUTO_FLUSH_SYNC"><code>AUTO_FLUSH_SYNC</code></a> by default</dd>
+</dl>
+</li>
+</ul>
+<a name="setFlushMode-org.apache.kudu.client.SessionConfiguration.FlushMode-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setFlushMode</h4>
+<pre>void&nbsp;setFlushMode(<a href="../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html" title="enum in org.apache.kudu.client">SessionConfiguration.FlushMode</a>&nbsp;flushMode)</pre>
+<div class="block">Set the new flush mode for this session.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>flushMode</code> - new flush mode, can be the same as the previous one.</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the buffer isn't empty.</dd>
+</dl>
+</li>
+</ul>
+<a name="setMutationBufferSpace-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setMutationBufferSpace</h4>
+<pre>void&nbsp;setMutationBufferSpace(int&nbsp;size)</pre>
+<div class="block">Set the number of operations that can be buffered.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>size</code> - number of ops.</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the buffer isn't empty.</dd>
+</dl>
+</li>
+</ul>
+<a name="setMutationBufferLowWatermark-float-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setMutationBufferLowWatermark</h4>
+<pre>void&nbsp;setMutationBufferLowWatermark(float&nbsp;mutationBufferLowWatermarkPercentage)</pre>
+<div class="block">Set the low watermark for this session. The default is set to half the mutation buffer space.
+ For example, a buffer space of 1000 with a low watermark set to 50% (0.5) will start randomly
+ sending PleaseRetryExceptions once there's an outstanding flush and the buffer is over 500.
+ As the buffer gets fuller, it becomes likelier to hit the exception.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>mutationBufferLowWatermarkPercentage</code> - a new low watermark as a percentage,
+                             has to be between 0  and 1 (inclusive). A value of 1 disables
+                             the low watermark since it's the same as the high one</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the buffer isn't empty or if the watermark isn't between
+ 0 and 1</dd>
+</dl>
+</li>
+</ul>
+<a name="setFlushInterval-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setFlushInterval</h4>
+<pre>void&nbsp;setFlushInterval(int&nbsp;interval)</pre>
+<div class="block">Set the flush interval, which will be used for the next scheduling decision.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>interval</code> - interval in milliseconds.</dd>
+</dl>
+</li>
+</ul>
+<a name="getTimeoutMillis--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getTimeoutMillis</h4>
+<pre>long&nbsp;getTimeoutMillis()</pre>
+<div class="block">Get the current timeout.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>operation timeout in milliseconds, 0 if none was configured.</dd>
+</dl>
+</li>
+</ul>
+<a name="setTimeoutMillis-long-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setTimeoutMillis</h4>
+<pre>void&nbsp;setTimeoutMillis(long&nbsp;timeout)</pre>
+<div class="block">Sets the timeout for the next applied operations.
+ The default timeout is 0, which disables the timeout functionality.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>timeout</code> - Timeout in milliseconds.</dd>
+</dl>
+</li>
+</ul>
+<a name="isClosed--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>isClosed</h4>
+<pre>boolean&nbsp;isClosed()</pre>
+<div class="block">Returns true if this session has already been closed.</div>
+</li>
+</ul>
+<a name="hasPendingOperations--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>hasPendingOperations</h4>
+<pre>boolean&nbsp;hasPendingOperations()</pre>
+<div class="block">Check if there are operations that haven't been completely applied.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>true if operations are pending, else false.</dd>
+</dl>
+</li>
+</ul>
+<a name="setExternalConsistencyMode-org.apache.kudu.client.ExternalConsistencyMode-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setExternalConsistencyMode</h4>
+<pre>void&nbsp;setExternalConsistencyMode(<a href="../../../../org/apache/kudu/client/ExternalConsistencyMode.html" title="enum in org.apache.kudu.client">ExternalConsistencyMode</a>&nbsp;consistencyMode)</pre>
+<div class="block">Set the new external consistency mode for this session.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>consistencyMode</code> - new external consistency mode, can the same as the previous one.</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the buffer isn't empty.</dd>
+</dl>
+</li>
+</ul>
+<a name="isIgnoreAllDuplicateRows--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>isIgnoreAllDuplicateRows</h4>
+<pre>boolean&nbsp;isIgnoreAllDuplicateRows()</pre>
+<div class="block">Tells if the session is currently ignoring row errors when the whole list returned by a tablet
+ server is of the AlreadyPresent type.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>true if the session is enforcing this, else false</dd>
+</dl>
+</li>
+</ul>
+<a name="setIgnoreAllDuplicateRows-boolean-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setIgnoreAllDuplicateRows</h4>
+<pre>void&nbsp;setIgnoreAllDuplicateRows(boolean&nbsp;ignoreAllDuplicateRows)</pre>
+<div class="block">Configures the option to ignore all the row errors if they are all of the AlreadyPresent type.
+ This can be needed when facing KUDU-568. The effect of enabling this is that operation
+ responses that match this pattern will be cleared of their row errors, meaning that we consider
+ them successful.
+
+ <p>Disabled by default.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>ignoreAllDuplicateRows</code> - true if this session should enforce this, else false</dd>
+</dl>
+</li>
+</ul>
+<a name="countPendingErrors--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>countPendingErrors</h4>
+<pre>int&nbsp;countPendingErrors()</pre>
+<div class="block">Return the number of errors which are pending. Errors may accumulate when
+ using <a href="../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html#AUTO_FLUSH_BACKGROUND"><code>AUTO_FLUSH_BACKGROUND</code></a> mode.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a count of errors</dd>
+</dl>
+</li>
+</ul>
+<a name="getPendingErrors--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>getPendingErrors</h4>
+<pre><a href="../../../../org/apache/kudu/client/RowErrorsAndOverflowStatus.html" title="class in org.apache.kudu.client">RowErrorsAndOverflowStatus</a>&nbsp;getPendingErrors()</pre>
+<div class="block">Return any errors from previous calls. If there were more errors
+ than could be held in the session's error storage, the overflow state is set to true.
+
+ <p>Clears the pending errors.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>an object that contains the errors and the overflow status</dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/SessionConfiguration.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/RowResultIterator.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html" title="enum in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/SessionConfiguration.html" target="_top">Frames</a></li>
+<li><a href="SessionConfiguration.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/Statistics.Statistic.html b/releases/1.4.0/apidocs/org/apache/kudu/client/Statistics.Statistic.html
new file mode 100644
index 0000000..3d48691
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/Statistics.Statistic.html
@@ -0,0 +1,402 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Statistics.Statistic (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Statistics.Statistic (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":9,"i1":9};
+var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/Statistics.Statistic.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/Statistics.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/Statistics.Statistic.html" target="_top">Frames</a></li>
+<li><a href="Statistics.Statistic.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#enum.constant.summary">Enum Constants</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li><a href="#enum.constant.detail">Enum Constants</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.client</div>
+<h2 title="Enum Statistics.Statistic" class="title">Enum Statistics.Statistic</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang">java.lang.Enum</a>&lt;<a href="../../../../org/apache/kudu/client/Statistics.Statistic.html" title="enum in org.apache.kudu.client">Statistics.Statistic</a>&gt;</li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.client.Statistics.Statistic</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<dl>
+<dt>All Implemented Interfaces:</dt>
+<dd><a href="http://docs.oracle.com/javase/7/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;<a href="../../../../org/apache/kudu/client/Statistics.Statistic.html" title="enum in org.apache.kudu.client">Statistics.Statistic</a>&gt;</dd>
+</dl>
+<dl>
+<dt>Enclosing class:</dt>
+<dd><a href="../../../../org/apache/kudu/client/Statistics.html" title="class in org.apache.kudu.client">Statistics</a></dd>
+</dl>
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Evolving
+public static enum <span class="typeNameLabel">Statistics.Statistic</span>
+extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang">Enum</a>&lt;<a href="../../../../org/apache/kudu/client/Statistics.Statistic.html" title="enum in org.apache.kudu.client">Statistics.Statistic</a>&gt;</pre>
+<div class="block">The statistic enum to pass when querying.</div>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- =========== ENUM CONSTANT SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="enum.constant.summary">
+<!--   -->
+</a>
+<h3>Enum Constant Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Enum Constant Summary table, listing enum constants, and an explanation">
+<caption><span>Enum Constants</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colOne" scope="col">Enum Constant and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Statistics.Statistic.html#BYTES_WRITTEN">BYTES_WRITTEN</a></span></code>
+<div class="block">How many bytes have been written by this client.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Statistics.Statistic.html#OPS_ERRORS">OPS_ERRORS</a></span></code>
+<div class="block">How many operations have been sent to server but failed.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Statistics.Statistic.html#RPC_ERRORS">RPC_ERRORS</a></span></code>
+<div class="block">How many rpcs have been sent to server but failed.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Statistics.Statistic.html#WRITE_OPS">WRITE_OPS</a></span></code>
+<div class="block">How many operations have been sent to server and succeeded.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Statistics.Statistic.html#WRITE_RPCS">WRITE_RPCS</a></span></code>
+<div class="block">How many rpcs have been sent to server and succeeded.</div>
+</td>
+</tr>
+</table>
+</li>
+</ul>
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/Statistics.Statistic.html" title="enum in org.apache.kudu.client">Statistics.Statistic</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Statistics.Statistic.html#valueOf-java.lang.String-">valueOf</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
+<div class="block">Returns the enum constant of this type with the specified name.</div>
+</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/Statistics.Statistic.html" title="enum in org.apache.kudu.client">Statistics.Statistic</a>[]</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Statistics.Statistic.html#values--">values</a></span>()</code>
+<div class="block">Returns an array containing the constants of this enum type, in
+the order they are declared.</div>
+</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Enum">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang">Enum</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#compareTo-E-" title="class or interface in java.lang">compareTo</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#getDeclaringClass--" title="class or interface in java.lang">getDeclaringClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#name--" title="class or interface in java.lang">name</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#ordinal--" title="class or interface in java.lang">ordinal</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#valueOf-java.lang.Class-java.lang.String-" title="class or interface in java.lang">valueOf</a></code></li>
+</ul>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ============ ENUM CONSTANT DETAIL =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="enum.constant.detail">
+<!--   -->
+</a>
+<h3>Enum Constant Detail</h3>
+<a name="BYTES_WRITTEN">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>BYTES_WRITTEN</h4>
+<pre>public static final&nbsp;<a href="../../../../org/apache/kudu/client/Statistics.Statistic.html" title="enum in org.apache.kudu.client">Statistics.Statistic</a> BYTES_WRITTEN</pre>
+<div class="block">How many bytes have been written by this client. If one rpc fails, this
+ statistic won't be updated.</div>
+</li>
+</ul>
+<a name="WRITE_OPS">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>WRITE_OPS</h4>
+<pre>public static final&nbsp;<a href="../../../../org/apache/kudu/client/Statistics.Statistic.html" title="enum in org.apache.kudu.client">Statistics.Statistic</a> WRITE_OPS</pre>
+<div class="block">How many operations have been sent to server and succeeded.</div>
+</li>
+</ul>
+<a name="WRITE_RPCS">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>WRITE_RPCS</h4>
+<pre>public static final&nbsp;<a href="../../../../org/apache/kudu/client/Statistics.Statistic.html" title="enum in org.apache.kudu.client">Statistics.Statistic</a> WRITE_RPCS</pre>
+<div class="block">How many rpcs have been sent to server and succeeded. One rpc may contain
+ multiple operations.</div>
+</li>
+</ul>
+<a name="OPS_ERRORS">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>OPS_ERRORS</h4>
+<pre>public static final&nbsp;<a href="../../../../org/apache/kudu/client/Statistics.Statistic.html" title="enum in org.apache.kudu.client">Statistics.Statistic</a> OPS_ERRORS</pre>
+<div class="block">How many operations have been sent to server but failed.</div>
+</li>
+</ul>
+<a name="RPC_ERRORS">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>RPC_ERRORS</h4>
+<pre>public static final&nbsp;<a href="../../../../org/apache/kudu/client/Statistics.Statistic.html" title="enum in org.apache.kudu.client">Statistics.Statistic</a> RPC_ERRORS</pre>
+<div class="block">How many rpcs have been sent to server but failed.</div>
+</li>
+</ul>
+</li>
+</ul>
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="values--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>values</h4>
+<pre>public static&nbsp;<a href="../../../../org/apache/kudu/client/Statistics.Statistic.html" title="enum in org.apache.kudu.client">Statistics.Statistic</a>[]&nbsp;values()</pre>
+<div class="block">Returns an array containing the constants of this enum type, in
+the order they are declared.  This method may be used to iterate
+over the constants as follows:
+<pre>
+for (Statistics.Statistic c : Statistics.Statistic.values())
+&nbsp;   System.out.println(c);
+</pre></div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>an array containing the constants of this enum type, in the order they are declared</dd>
+</dl>
+</li>
+</ul>
+<a name="valueOf-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>valueOf</h4>
+<pre>public static&nbsp;<a href="../../../../org/apache/kudu/client/Statistics.Statistic.html" title="enum in org.apache.kudu.client">Statistics.Statistic</a>&nbsp;valueOf(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
+<div class="block">Returns the enum constant of this type with the specified name.
+The string must match <i>exactly</i> an identifier used to declare an
+enum constant in this type.  (Extraneous whitespace characters are 
+not permitted.)</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>name</code> - the name of the enum constant to be returned.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the enum constant with the specified name</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if this enum type has no constant with the specified name</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/NullPointerException.html?is-external=true" title="class or interface in java.lang">NullPointerException</a></code> - if the argument is null</dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/Statistics.Statistic.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/Statistics.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/Statistics.Statistic.html" target="_top">Frames</a></li>
+<li><a href="Statistics.Statistic.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#enum.constant.summary">Enum Constants</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li><a href="#enum.constant.detail">Enum Constants</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/Statistics.html b/releases/1.4.0/apidocs/org/apache/kudu/client/Statistics.html
new file mode 100644
index 0000000..622e2d7
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/Statistics.html
@@ -0,0 +1,450 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Statistics (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Statistics (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10};
+var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/Statistics.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html" title="enum in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/Statistics.Statistic.html" title="enum in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/Statistics.html" target="_top">Frames</a></li>
+<li><a href="Statistics.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.client</div>
+<h2 title="Class Statistics" class="title">Class Statistics</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.client.Statistics</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Evolving
+public class <span class="typeNameLabel">Statistics</span>
+extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></pre>
+<div class="block">A Statistics belongs to a specific AsyncKuduClient. It stores client-level
+ statistics including number of operations, number of bytes written, number of
+ rpcs. It is created along with the client's creation, and can be obtained through
+ AsyncKuduClient or KuduClient's getStatistics method. Once obtained, an instance
+ of this class can be used directly.
+ <p>
+ This class is thread-safe. The user can use it anywhere to get statistics of this
+ client.
+ <p>
+ The method <a href="../../../../org/apache/kudu/client/Statistics.html#toString--"><code>toString()</code></a> can be useful to get a dump of all the metrics aggregated
+ for all the tablets.</div>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- ======== NESTED CLASS SUMMARY ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="nested.class.summary">
+<!--   -->
+</a>
+<h3>Nested Class Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Nested Class Summary table, listing nested classes, and an explanation">
+<caption><span>Nested Classes</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Class and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static class&nbsp;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Statistics.Statistic.html" title="enum in org.apache.kudu.client">Statistics.Statistic</a></span></code>
+<div class="block">The statistic enum to pass when querying.</div>
+</td>
+</tr>
+</table>
+</li>
+</ul>
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="constructor.summary">
+<!--   -->
+</a>
+<h3>Constructor Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
+<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colOne" scope="col">Constructor and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Statistics.html#Statistics--">Statistics</a></span>()</code>&nbsp;</td>
+</tr>
+</table>
+</li>
+</ul>
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code>long</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Statistics.html#getClientStatistic-org.apache.kudu.client.Statistics.Statistic-">getClientStatistic</a></span>(<a href="../../../../org/apache/kudu/client/Statistics.Statistic.html" title="enum in org.apache.kudu.client">Statistics.Statistic</a>&nbsp;statistic)</code>
+<div class="block">Get the statistic count of the whole client.</div>
+</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Statistics.html#getTableName-java.lang.String-">getTableName</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;tabletId)</code>
+<div class="block">Get table name of the given tablet id.</div>
+</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Statistics.html#getTableSet--">getTableSet</a></span>()</code>
+<div class="block">Get the set of tables which have been written into by this client,
+ which have statistics information.</div>
+</td>
+</tr>
+<tr id="i3" class="rowColor">
+<td class="colFirst"><code>long</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Statistics.html#getTableStatistic-java.lang.String-org.apache.kudu.client.Statistics.Statistic-">getTableStatistic</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;tableName,
+                 <a href="../../../../org/apache/kudu/client/Statistics.Statistic.html" title="enum in org.apache.kudu.client">Statistics.Statistic</a>&nbsp;statistic)</code>
+<div class="block">Get the statistic count of this table.</div>
+</td>
+</tr>
+<tr id="i4" class="altColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Statistics.html#getTabletSet--">getTabletSet</a></span>()</code>
+<div class="block">Get the set of tablets which have been written into by this client,
+ which have statistics information.</div>
+</td>
+</tr>
+<tr id="i5" class="rowColor">
+<td class="colFirst"><code>long</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Statistics.html#getTabletStatistic-java.lang.String-org.apache.kudu.client.Statistics.Statistic-">getTabletStatistic</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;tabletId,
+                  <a href="../../../../org/apache/kudu/client/Statistics.Statistic.html" title="enum in org.apache.kudu.client">Statistics.Statistic</a>&nbsp;statistic)</code>
+<div class="block">Get the statistic count of this tablet.</div>
+</td>
+</tr>
+<tr id="i6" class="altColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Statistics.html#toString--">toString</a></span>()</code>&nbsp;</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="constructor.detail">
+<!--   -->
+</a>
+<h3>Constructor Detail</h3>
+<a name="Statistics--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>Statistics</h4>
+<pre>public&nbsp;Statistics()</pre>
+</li>
+</ul>
+</li>
+</ul>
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="getTabletStatistic-java.lang.String-org.apache.kudu.client.Statistics.Statistic-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getTabletStatistic</h4>
+<pre>public&nbsp;long&nbsp;getTabletStatistic(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;tabletId,
+                               <a href="../../../../org/apache/kudu/client/Statistics.Statistic.html" title="enum in org.apache.kudu.client">Statistics.Statistic</a>&nbsp;statistic)</pre>
+<div class="block">Get the statistic count of this tablet.
+ If the specified tablet doesn't have statistics, 0 will be returned.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>tabletId</code> - the tablet's id</dd>
+<dd><code>statistic</code> - the statistic type to get</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the value of the statistic</dd>
+</dl>
+</li>
+</ul>
+<a name="getTableStatistic-java.lang.String-org.apache.kudu.client.Statistics.Statistic-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getTableStatistic</h4>
+<pre>public&nbsp;long&nbsp;getTableStatistic(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;tableName,
+                              <a href="../../../../org/apache/kudu/client/Statistics.Statistic.html" title="enum in org.apache.kudu.client">Statistics.Statistic</a>&nbsp;statistic)</pre>
+<div class="block">Get the statistic count of this table.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>tableName</code> - the table's name</dd>
+<dd><code>statistic</code> - the statistic type to get</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the value of the statistic</dd>
+</dl>
+</li>
+</ul>
+<a name="getClientStatistic-org.apache.kudu.client.Statistics.Statistic-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getClientStatistic</h4>
+<pre>public&nbsp;long&nbsp;getClientStatistic(<a href="../../../../org/apache/kudu/client/Statistics.Statistic.html" title="enum in org.apache.kudu.client">Statistics.Statistic</a>&nbsp;statistic)</pre>
+<div class="block">Get the statistic count of the whole client.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>statistic</code> - the statistic type to get</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the value of the statistic</dd>
+</dl>
+</li>
+</ul>
+<a name="getTabletSet--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getTabletSet</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;getTabletSet()</pre>
+<div class="block">Get the set of tablets which have been written into by this client,
+ which have statistics information.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>set of tablet ids</dd>
+</dl>
+</li>
+</ul>
+<a name="getTableSet--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getTableSet</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;getTableSet()</pre>
+<div class="block">Get the set of tables which have been written into by this client,
+ which have statistics information.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>set of table names</dd>
+</dl>
+</li>
+</ul>
+<a name="getTableName-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getTableName</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getTableName(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;tabletId)</pre>
+<div class="block">Get table name of the given tablet id.
+ If the tablet has no statistics, null will be returned.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>tabletId</code> - the tablet's id</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>table name</dd>
+</dl>
+</li>
+</ul>
+<a name="toString--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>toString</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;toString()</pre>
+<dl>
+<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a></code>&nbsp;in class&nbsp;<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/Statistics.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html" title="enum in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/Statistics.Statistic.html" title="enum in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/Statistics.html" target="_top">Frames</a></li>
+<li><a href="Statistics.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/Status.html b/releases/1.4.0/apidocs/org/apache/kudu/client/Status.html
new file mode 100644
index 0000000..1a5b759
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/Status.html
@@ -0,0 +1,1033 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Status (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Status (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":9,"i1":9,"i2":9,"i3":9,"i4":9,"i5":9,"i6":9,"i7":9,"i8":9,"i9":9,"i10":10,"i11":9,"i12":9,"i13":9,"i14":9,"i15":9,"i16":9,"i17":9,"i18":9,"i19":10,"i20":10,"i21":10,"i22":10,"i23":10,"i24":10,"i25":10,"i26":10,"i27":10,"i28":10,"i29":10,"i30":10,"i31":10,"i32":10,"i33":10,"i34":10,"i35":10,"i36":10,"i37":9,"i38":9,"i39":9,"i40":9,"i41":9,"i42":9,"i43":9,"i44":9,"i45":10,"i46":9,"i47":9,"i48":9,"i49":9,"i50":9,"i51":9,"i52":9,"i53":9,"i54":9,"i55":10,"i56":9,"i57":9};
+var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/Status.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/Statistics.Statistic.html" title="enum in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/Update.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/Status.html" target="_top">Frames</a></li>
+<li><a href="Status.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.client</div>
+<h2 title="Class Status" class="title">Class Status</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.client.Status</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Evolving
+public class <span class="typeNameLabel">Status</span>
+extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></pre>
+<div class="block">Representation of an error code and message.
+ See also <code>src/kudu/util/status.h</code> in the C++ codebase.</div>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Status.html#Aborted-java.lang.String-">Aborted</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg)</code>&nbsp;</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Status.html#Aborted-java.lang.String-int-">Aborted</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg,
+       int&nbsp;posixCode)</code>&nbsp;</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Status.html#AlreadyPresent-java.lang.String-">AlreadyPresent</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg)</code>&nbsp;</td>
+</tr>
+<tr id="i3" class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Status.html#AlreadyPresent-java.lang.String-int-">AlreadyPresent</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg,
+              int&nbsp;posixCode)</code>&nbsp;</td>
+</tr>
+<tr id="i4" class="altColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Status.html#ConfigurationError-java.lang.String-">ConfigurationError</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg)</code>&nbsp;</td>
+</tr>
+<tr id="i5" class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Status.html#ConfigurationError-java.lang.String-int-">ConfigurationError</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg,
+                  int&nbsp;posixCode)</code>&nbsp;</td>
+</tr>
+<tr id="i6" class="altColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Status.html#Corruption-java.lang.String-">Corruption</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg)</code>&nbsp;</td>
+</tr>
+<tr id="i7" class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Status.html#Corruption-java.lang.String-int-">Corruption</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg,
+          int&nbsp;posixCode)</code>&nbsp;</td>
+</tr>
+<tr id="i8" class="altColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Status.html#EndOfFile-java.lang.String-">EndOfFile</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg)</code>&nbsp;</td>
+</tr>
+<tr id="i9" class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Status.html#EndOfFile-java.lang.String-int-">EndOfFile</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg,
+         int&nbsp;posixCode)</code>&nbsp;</td>
+</tr>
+<tr id="i10" class="altColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Status.html#getPosixCode--">getPosixCode</a></span>()</code>
+<div class="block">Get the posix code associated with the error.</div>
+</td>
+</tr>
+<tr id="i11" class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Status.html#IllegalState-java.lang.String-">IllegalState</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg)</code>&nbsp;</td>
+</tr>
+<tr id="i12" class="altColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Status.html#IllegalState-java.lang.String-int-">IllegalState</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg,
+            int&nbsp;posixCode)</code>&nbsp;</td>
+</tr>
+<tr id="i13" class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Status.html#Incomplete-java.lang.String-">Incomplete</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg)</code>&nbsp;</td>
+</tr>
+<tr id="i14" class="altColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Status.html#Incomplete-java.lang.String-int-">Incomplete</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg,
+          int&nbsp;posixCode)</code>&nbsp;</td>
+</tr>
+<tr id="i15" class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Status.html#InvalidArgument-java.lang.String-">InvalidArgument</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg)</code>&nbsp;</td>
+</tr>
+<tr id="i16" class="altColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Status.html#InvalidArgument-java.lang.String-int-">InvalidArgument</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg,
+               int&nbsp;posixCode)</code>&nbsp;</td>
+</tr>
+<tr id="i17" class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Status.html#IOError-java.lang.String-">IOError</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg)</code>&nbsp;</td>
+</tr>
+<tr id="i18" class="altColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Status.html#IOError-java.lang.String-int-">IOError</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg,
+       int&nbsp;posixCode)</code>&nbsp;</td>
+</tr>
+<tr id="i19" class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Status.html#isAborted--">isAborted</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i20" class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Status.html#isAlreadyPresent--">isAlreadyPresent</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i21" class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Status.html#isConfigurationError--">isConfigurationError</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i22" class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Status.html#isCorruption--">isCorruption</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i23" class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Status.html#isEndOfFile--">isEndOfFile</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i24" class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Status.html#isIllegalState--">isIllegalState</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i25" class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Status.html#isIncomplete--">isIncomplete</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i26" class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Status.html#isInvalidArgument--">isInvalidArgument</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i27" class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Status.html#isIOError--">isIOError</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i28" class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Status.html#isNetworkError--">isNetworkError</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i29" class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Status.html#isNotAuthorized--">isNotAuthorized</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i30" class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Status.html#isNotFound--">isNotFound</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i31" class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Status.html#isNotSupported--">isNotSupported</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i32" class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Status.html#isRemoteError--">isRemoteError</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i33" class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Status.html#isRuntimeError--">isRuntimeError</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i34" class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Status.html#isServiceUnavailable--">isServiceUnavailable</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i35" class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Status.html#isTimedOut--">isTimedOut</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i36" class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Status.html#isUninitialized--">isUninitialized</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i37" class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Status.html#NetworkError-java.lang.String-">NetworkError</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg)</code>&nbsp;</td>
+</tr>
+<tr id="i38" class="altColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Status.html#NetworkError-java.lang.String-int-">NetworkError</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg,
+            int&nbsp;posixCode)</code>&nbsp;</td>
+</tr>
+<tr id="i39" class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Status.html#NotAuthorized-java.lang.String-">NotAuthorized</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg)</code>&nbsp;</td>
+</tr>
+<tr id="i40" class="altColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Status.html#NotAuthorized-java.lang.String-int-">NotAuthorized</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg,
+             int&nbsp;posixCode)</code>&nbsp;</td>
+</tr>
+<tr id="i41" class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Status.html#NotFound-java.lang.String-">NotFound</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg)</code>&nbsp;</td>
+</tr>
+<tr id="i42" class="altColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Status.html#NotFound-java.lang.String-int-">NotFound</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg,
+        int&nbsp;posixCode)</code>&nbsp;</td>
+</tr>
+<tr id="i43" class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Status.html#NotSupported-java.lang.String-">NotSupported</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg)</code>&nbsp;</td>
+</tr>
+<tr id="i44" class="altColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Status.html#NotSupported-java.lang.String-int-">NotSupported</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg,
+            int&nbsp;posixCode)</code>&nbsp;</td>
+</tr>
+<tr id="i45" class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Status.html#ok--">ok</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i46" class="altColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Status.html#OK--">OK</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i47" class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Status.html#RemoteError-java.lang.String-">RemoteError</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg)</code>&nbsp;</td>
+</tr>
+<tr id="i48" class="altColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Status.html#RemoteError-java.lang.String-int-">RemoteError</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg,
+           int&nbsp;posixCode)</code>&nbsp;</td>
+</tr>
+<tr id="i49" class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Status.html#RuntimeError-java.lang.String-">RuntimeError</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg)</code>&nbsp;</td>
+</tr>
+<tr id="i50" class="altColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Status.html#RuntimeError-java.lang.String-int-">RuntimeError</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg,
+            int&nbsp;posixCode)</code>&nbsp;</td>
+</tr>
+<tr id="i51" class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Status.html#ServiceUnavailable-java.lang.String-">ServiceUnavailable</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg)</code>&nbsp;</td>
+</tr>
+<tr id="i52" class="altColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Status.html#ServiceUnavailable-java.lang.String-int-">ServiceUnavailable</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg,
+                  int&nbsp;posixCode)</code>&nbsp;</td>
+</tr>
+<tr id="i53" class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Status.html#TimedOut-java.lang.String-">TimedOut</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg)</code>&nbsp;</td>
+</tr>
+<tr id="i54" class="altColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Status.html#TimedOut-java.lang.String-int-">TimedOut</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg,
+        int&nbsp;posixCode)</code>&nbsp;</td>
+</tr>
+<tr id="i55" class="rowColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Status.html#toString--">toString</a></span>()</code>
+<div class="block">Get a human-readable version of the Status message fit for logging or display.</div>
+</td>
+</tr>
+<tr id="i56" class="altColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Status.html#Uninitialized-java.lang.String-">Uninitialized</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg)</code>&nbsp;</td>
+</tr>
+<tr id="i57" class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/client/Status.html#Uninitialized-java.lang.String-int-">Uninitialized</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg,
+             int&nbsp;posixCode)</code>&nbsp;</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="OK--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>OK</h4>
+<pre>public static&nbsp;<a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a>&nbsp;OK()</pre>
+</li>
+</ul>
+<a name="NotFound-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>NotFound</h4>
+<pre>public static&nbsp;<a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a>&nbsp;NotFound(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg)</pre>
+</li>
+</ul>
+<a name="NotFound-java.lang.String-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>NotFound</h4>
+<pre>public static&nbsp;<a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a>&nbsp;NotFound(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg,
+                              int&nbsp;posixCode)</pre>
+</li>
+</ul>
+<a name="Corruption-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>Corruption</h4>
+<pre>public static&nbsp;<a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a>&nbsp;Corruption(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg)</pre>
+</li>
+</ul>
+<a name="Corruption-java.lang.String-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>Corruption</h4>
+<pre>public static&nbsp;<a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a>&nbsp;Corruption(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg,
+                                int&nbsp;posixCode)</pre>
+</li>
+</ul>
+<a name="NotSupported-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>NotSupported</h4>
+<pre>public static&nbsp;<a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a>&nbsp;NotSupported(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg)</pre>
+</li>
+</ul>
+<a name="NotSupported-java.lang.String-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>NotSupported</h4>
+<pre>public static&nbsp;<a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a>&nbsp;NotSupported(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg,
+                                  int&nbsp;posixCode)</pre>
+</li>
+</ul>
+<a name="InvalidArgument-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>InvalidArgument</h4>
+<pre>public static&nbsp;<a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a>&nbsp;InvalidArgument(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg)</pre>
+</li>
+</ul>
+<a name="InvalidArgument-java.lang.String-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>InvalidArgument</h4>
+<pre>public static&nbsp;<a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a>&nbsp;InvalidArgument(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg,
+                                     int&nbsp;posixCode)</pre>
+</li>
+</ul>
+<a name="IOError-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>IOError</h4>
+<pre>public static&nbsp;<a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a>&nbsp;IOError(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg)</pre>
+</li>
+</ul>
+<a name="IOError-java.lang.String-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>IOError</h4>
+<pre>public static&nbsp;<a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a>&nbsp;IOError(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg,
+                             int&nbsp;posixCode)</pre>
+</li>
+</ul>
+<a name="AlreadyPresent-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>AlreadyPresent</h4>
+<pre>public static&nbsp;<a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a>&nbsp;AlreadyPresent(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg)</pre>
+</li>
+</ul>
+<a name="AlreadyPresent-java.lang.String-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>AlreadyPresent</h4>
+<pre>public static&nbsp;<a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a>&nbsp;AlreadyPresent(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg,
+                                    int&nbsp;posixCode)</pre>
+</li>
+</ul>
+<a name="RuntimeError-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>RuntimeError</h4>
+<pre>public static&nbsp;<a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a>&nbsp;RuntimeError(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg)</pre>
+</li>
+</ul>
+<a name="RuntimeError-java.lang.String-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>RuntimeError</h4>
+<pre>public static&nbsp;<a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a>&nbsp;RuntimeError(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg,
+                                  int&nbsp;posixCode)</pre>
+</li>
+</ul>
+<a name="NetworkError-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>NetworkError</h4>
+<pre>public static&nbsp;<a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a>&nbsp;NetworkError(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg)</pre>
+</li>
+</ul>
+<a name="NetworkError-java.lang.String-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>NetworkError</h4>
+<pre>public static&nbsp;<a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a>&nbsp;NetworkError(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg,
+                                  int&nbsp;posixCode)</pre>
+</li>
+</ul>
+<a name="IllegalState-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>IllegalState</h4>
+<pre>public static&nbsp;<a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a>&nbsp;IllegalState(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg)</pre>
+</li>
+</ul>
+<a name="IllegalState-java.lang.String-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>IllegalState</h4>
+<pre>public static&nbsp;<a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a>&nbsp;IllegalState(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg,
+                                  int&nbsp;posixCode)</pre>
+</li>
+</ul>
+<a name="NotAuthorized-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>NotAuthorized</h4>
+<pre>public static&nbsp;<a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a>&nbsp;NotAuthorized(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg)</pre>
+</li>
+</ul>
+<a name="NotAuthorized-java.lang.String-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>NotAuthorized</h4>
+<pre>public static&nbsp;<a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a>&nbsp;NotAuthorized(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg,
+                                   int&nbsp;posixCode)</pre>
+</li>
+</ul>
+<a name="Aborted-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>Aborted</h4>
+<pre>public static&nbsp;<a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a>&nbsp;Aborted(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg)</pre>
+</li>
+</ul>
+<a name="Aborted-java.lang.String-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>Aborted</h4>
+<pre>public static&nbsp;<a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a>&nbsp;Aborted(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg,
+                             int&nbsp;posixCode)</pre>
+</li>
+</ul>
+<a name="RemoteError-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>RemoteError</h4>
+<pre>public static&nbsp;<a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a>&nbsp;RemoteError(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg)</pre>
+</li>
+</ul>
+<a name="RemoteError-java.lang.String-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>RemoteError</h4>
+<pre>public static&nbsp;<a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a>&nbsp;RemoteError(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg,
+                                 int&nbsp;posixCode)</pre>
+</li>
+</ul>
+<a name="ServiceUnavailable-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>ServiceUnavailable</h4>
+<pre>public static&nbsp;<a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a>&nbsp;ServiceUnavailable(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg)</pre>
+</li>
+</ul>
+<a name="ServiceUnavailable-java.lang.String-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>ServiceUnavailable</h4>
+<pre>public static&nbsp;<a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a>&nbsp;ServiceUnavailable(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg,
+                                        int&nbsp;posixCode)</pre>
+</li>
+</ul>
+<a name="TimedOut-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>TimedOut</h4>
+<pre>public static&nbsp;<a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a>&nbsp;TimedOut(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg)</pre>
+</li>
+</ul>
+<a name="TimedOut-java.lang.String-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>TimedOut</h4>
+<pre>public static&nbsp;<a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a>&nbsp;TimedOut(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg,
+                              int&nbsp;posixCode)</pre>
+</li>
+</ul>
+<a name="Uninitialized-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>Uninitialized</h4>
+<pre>public static&nbsp;<a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a>&nbsp;Uninitialized(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg)</pre>
+</li>
+</ul>
+<a name="Uninitialized-java.lang.String-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>Uninitialized</h4>
+<pre>public static&nbsp;<a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a>&nbsp;Uninitialized(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg,
+                                   int&nbsp;posixCode)</pre>
+</li>
+</ul>
+<a name="ConfigurationError-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>ConfigurationError</h4>
+<pre>public static&nbsp;<a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a>&nbsp;ConfigurationError(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg)</pre>
+</li>
+</ul>
+<a name="ConfigurationError-java.lang.String-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>ConfigurationError</h4>
+<pre>public static&nbsp;<a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a>&nbsp;ConfigurationError(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg,
+                                        int&nbsp;posixCode)</pre>
+</li>
+</ul>
+<a name="Incomplete-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>Incomplete</h4>
+<pre>public static&nbsp;<a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a>&nbsp;Incomplete(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg)</pre>
+</li>
+</ul>
+<a name="Incomplete-java.lang.String-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>Incomplete</h4>
+<pre>public static&nbsp;<a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a>&nbsp;Incomplete(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg,
+                                int&nbsp;posixCode)</pre>
+</li>
+</ul>
+<a name="EndOfFile-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>EndOfFile</h4>
+<pre>public static&nbsp;<a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a>&nbsp;EndOfFile(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg)</pre>
+</li>
+</ul>
+<a name="EndOfFile-java.lang.String-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>EndOfFile</h4>
+<pre>public static&nbsp;<a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a>&nbsp;EndOfFile(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg,
+                               int&nbsp;posixCode)</pre>
+</li>
+</ul>
+<a name="ok--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>ok</h4>
+<pre>public&nbsp;boolean&nbsp;ok()</pre>
+</li>
+</ul>
+<a name="isCorruption--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>isCorruption</h4>
+<pre>public&nbsp;boolean&nbsp;isCorruption()</pre>
+</li>
+</ul>
+<a name="isNotFound--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>isNotFound</h4>
+<pre>public&nbsp;boolean&nbsp;isNotFound()</pre>
+</li>
+</ul>
+<a name="isNotSupported--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>isNotSupported</h4>
+<pre>public&nbsp;boolean&nbsp;isNotSupported()</pre>
+</li>
+</ul>
+<a name="isInvalidArgument--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>isInvalidArgument</h4>
+<pre>public&nbsp;boolean&nbsp;isInvalidArgument()</pre>
+</li>
+</ul>
+<a name="isIOError--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>isIOError</h4>
+<pre>public&nbsp;boolean&nbsp;isIOError()</pre>
+</li>
+</ul>
+<a name="isAlreadyPresent--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>isAlreadyPresent</h4>
+<pre>public&nbsp;boolean&nbsp;isAlreadyPresent()</pre>
+</li>
+</ul>
+<a name="isRuntimeError--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>isRuntimeError</h4>
+<pre>public&nbsp;boolean&nbsp;isRuntimeError()</pre>
+</li>
+</ul>
+<a name="isNetworkError--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>isNetworkError</h4>
+<pre>public&nbsp;boolean&nbsp;isNetworkError()</pre>
+</li>
+</ul>
+<a name="isIllegalState--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>isIllegalState</h4>
+<pre>public&nbsp;boolean&nbsp;isIllegalState()</pre>
+</li>
+</ul>
+<a name="isNotAuthorized--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>isNotAuthorized</h4>
+<pre>public&nbsp;boolean&nbsp;isNotAuthorized()</pre>
+</li>
+</ul>
+<a name="isAborted--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>isAborted</h4>
+<pre>public&nbsp;boolean&nbsp;isAborted()</pre>
+</li>
+</ul>
+<a name="isRemoteError--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>isRemoteError</h4>
+<pre>public&nbsp;boolean&nbsp;isRemoteError()</pre>
+</li>
+</ul>
+<a name="isServiceUnavailable--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>isServiceUnavailable</h4>
+<pre>public&nbsp;boolean&nbsp;isServiceUnavailable()</pre>
+</li>
+</ul>
+<a name="isTimedOut--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>isTimedOut</h4>
+<pre>public&nbsp;boolean&nbsp;isTimedOut()</pre>
+</li>
+</ul>
+<a name="isUninitialized--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>isUninitialized</h4>
+<pre>public&nbsp;boolean&nbsp;isUninitialized()</pre>
+</li>
+</ul>
+<a name="isConfigurationError--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>isConfigurationError</h4>
+<pre>public&nbsp;boolean&nbsp;isConfigurationError()</pre>
+</li>
+</ul>
+<a name="isIncomplete--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>isIncomplete</h4>
+<pre>public&nbsp;boolean&nbsp;isIncomplete()</pre>
+</li>
+</ul>
+<a name="isEndOfFile--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>isEndOfFile</h4>
+<pre>public&nbsp;boolean&nbsp;isEndOfFile()</pre>
+</li>
+</ul>
+<a name="getPosixCode--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getPosixCode</h4>
+<pre>public&nbsp;int&nbsp;getPosixCode()</pre>
+<div class="block">Get the posix code associated with the error.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd><code>-1</code> if no posix code is set. Otherwise, returns the posix code.</dd>
+</dl>
+</li>
+</ul>
+<a name="toString--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>toString</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;toString()</pre>
+<div class="block">Get a human-readable version of the Status message fit for logging or display.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a></code>&nbsp;in class&nbsp;<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/Status.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/Statistics.Statistic.html" title="enum in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/Update.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/Status.html" target="_top">Frames</a></li>
+<li><a href="Status.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/Update.html b/releases/1.4.0/apidocs/org/apache/kudu/client/Update.html
new file mode 100644
index 0000000..fe63583
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/Update.html
@@ -0,0 +1,240 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Update (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Update (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/Update.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/Upsert.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/Update.html" target="_top">Frames</a></li>
+<li><a href="Update.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#fields.inherited.from.class.org.apache.kudu.client.KuduRpc">Field</a>&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#methods.inherited.from.class.org.apache.kudu.client.Operation">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li>Method</li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.client</div>
+<h2 title="Class Update" class="title">Class Update</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.client.KuduRpc&lt;<a href="../../../../org/apache/kudu/client/OperationResponse.html" title="class in org.apache.kudu.client">OperationResponse</a>&gt;</li>
+<li>
+<ul class="inheritance">
+<li><a href="../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">org.apache.kudu.client.Operation</a></li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.client.Update</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Evolving
+public class <span class="typeNameLabel">Update</span>
+extends <a href="../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">Operation</a></pre>
+<div class="block">Operation to update columns on an existing row. Instances of this class should not be reused.</div>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- =========== FIELD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="field.summary">
+<!--   -->
+</a>
+<h3>Field Summary</h3>
+<ul class="blockList">
+<li class="blockList"><a name="fields.inherited.from.class.org.apache.kudu.client.KuduRpc">
+<!--   -->
+</a>
+<h3>Fields inherited from class&nbsp;org.apache.kudu.client.KuduRpc</h3>
+<code>externalConsistencyMode, MASTER_SERVICE_NAME, MAX_TRACES_SIZE, propagatedTimestamp, TABLET_SERVER_SERVICE_NAME</code></li>
+</ul>
+</li>
+</ul>
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.org.apache.kudu.client.Operation">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;org.apache.kudu.client.<a href="../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">Operation</a></h3>
+<code><a href="../../../../org/apache/kudu/client/Operation.html#getRow--">getRow</a>, <a href="../../../../org/apache/kudu/client/Operation.html#partitionKey--">partitionKey</a></code></li>
+</ul>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.org.apache.kudu.client.KuduRpc">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;org.apache.kudu.client.KuduRpc</h3>
+<code>getExternalConsistencyMode, getTable, setExternalConsistencyMode, setPropagatedTimestamp, toString</code></li>
+</ul>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/Update.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/client/Upsert.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/Update.html" target="_top">Frames</a></li>
+<li><a href="Update.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#fields.inherited.from.class.org.apache.kudu.client.KuduRpc">Field</a>&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#methods.inherited.from.class.org.apache.kudu.client.Operation">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li>Method</li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/Upsert.html b/releases/1.4.0/apidocs/org/apache/kudu/client/Upsert.html
new file mode 100644
index 0000000..4605707
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/Upsert.html
@@ -0,0 +1,240 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Upsert (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Upsert (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/Upsert.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/Update.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li>Next&nbsp;Class</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/Upsert.html" target="_top">Frames</a></li>
+<li><a href="Upsert.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#fields.inherited.from.class.org.apache.kudu.client.KuduRpc">Field</a>&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#methods.inherited.from.class.org.apache.kudu.client.Operation">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li>Method</li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.client</div>
+<h2 title="Class Upsert" class="title">Class Upsert</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.client.KuduRpc&lt;<a href="../../../../org/apache/kudu/client/OperationResponse.html" title="class in org.apache.kudu.client">OperationResponse</a>&gt;</li>
+<li>
+<ul class="inheritance">
+<li><a href="../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">org.apache.kudu.client.Operation</a></li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.client.Upsert</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Evolving
+public class <span class="typeNameLabel">Upsert</span>
+extends <a href="../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">Operation</a></pre>
+<div class="block">Represents a single row upsert. Instances of this class should not be reused.</div>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- =========== FIELD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="field.summary">
+<!--   -->
+</a>
+<h3>Field Summary</h3>
+<ul class="blockList">
+<li class="blockList"><a name="fields.inherited.from.class.org.apache.kudu.client.KuduRpc">
+<!--   -->
+</a>
+<h3>Fields inherited from class&nbsp;org.apache.kudu.client.KuduRpc</h3>
+<code>externalConsistencyMode, MASTER_SERVICE_NAME, MAX_TRACES_SIZE, propagatedTimestamp, TABLET_SERVER_SERVICE_NAME</code></li>
+</ul>
+</li>
+</ul>
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.org.apache.kudu.client.Operation">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;org.apache.kudu.client.<a href="../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">Operation</a></h3>
+<code><a href="../../../../org/apache/kudu/client/Operation.html#getRow--">getRow</a>, <a href="../../../../org/apache/kudu/client/Operation.html#partitionKey--">partitionKey</a></code></li>
+</ul>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.org.apache.kudu.client.KuduRpc">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;org.apache.kudu.client.KuduRpc</h3>
+<code>getExternalConsistencyMode, getTable, setExternalConsistencyMode, setPropagatedTimestamp, toString</code></li>
+</ul>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/Upsert.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/client/Update.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li>Next&nbsp;Class</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/Upsert.html" target="_top">Frames</a></li>
+<li><a href="Upsert.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#fields.inherited.from.class.org.apache.kudu.client.KuduRpc">Field</a>&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#methods.inherited.from.class.org.apache.kudu.client.Operation">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li>Method</li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/AbstractKuduScannerBuilder.html b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/AbstractKuduScannerBuilder.html
new file mode 100644
index 0000000..9e2e10d
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/AbstractKuduScannerBuilder.html
@@ -0,0 +1,194 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.client.AbstractKuduScannerBuilder (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.client.AbstractKuduScannerBuilder (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/AbstractKuduScannerBuilder.html" target="_top">Frames</a></li>
+<li><a href="AbstractKuduScannerBuilder.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.client.AbstractKuduScannerBuilder" class="title">Uses of Class<br>org.apache.kudu.client.AbstractKuduScannerBuilder</h2>
+</div>
+<div class="classUseContainer">
+<ul class="blockList">
+<li class="blockList">
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing packages, and an explanation">
+<caption><span>Packages that use <a href="../../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="class in org.apache.kudu.client">AbstractKuduScannerBuilder</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Package</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="#org.apache.kudu.client">org.apache.kudu.client</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList">
+<ul class="blockList">
+<li class="blockList"><a name="org.apache.kudu.client">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="class in org.apache.kudu.client">AbstractKuduScannerBuilder</a> in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing classes, and an explanation">
+<caption><span>Classes in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> with type parameters of type <a href="../../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="class in org.apache.kudu.client">AbstractKuduScannerBuilder</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Class and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code>class&nbsp;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="class in org.apache.kudu.client">AbstractKuduScannerBuilder</a>&lt;S extends <a href="../../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="class in org.apache.kudu.client">AbstractKuduScannerBuilder</a>&lt;? super S,T&gt;,T&gt;</span></code>
+<div class="block">Abstract class to extend in order to create builders for scanners.</div>
+</td>
+</tr>
+</tbody>
+</table>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing subclasses, and an explanation">
+<caption><span>Subclasses of <a href="../../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="class in org.apache.kudu.client">AbstractKuduScannerBuilder</a> in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Class and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code>static class&nbsp;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AsyncKuduScanner.AsyncKuduScannerBuilder.html" title="class in org.apache.kudu.client">AsyncKuduScanner.AsyncKuduScannerBuilder</a></span></code>
+<div class="block">A Builder class to build <a href="../../../../../org/apache/kudu/client/AsyncKuduScanner.html" title="class in org.apache.kudu.client"><code>AsyncKuduScanner</code></a>.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static class&nbsp;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduScanner.KuduScannerBuilder.html" title="class in org.apache.kudu.client">KuduScanner.KuduScannerBuilder</a></span></code>
+<div class="block">A Builder class to build <a href="../../../../../org/apache/kudu/client/KuduScanner.html" title="class in org.apache.kudu.client"><code>KuduScanner</code></a>.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static class&nbsp;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduScanToken.KuduScanTokenBuilder.html" title="class in org.apache.kudu.client">KuduScanToken.KuduScanTokenBuilder</a></span></code>
+<div class="block">Builds a sequence of scan tokens.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/AbstractKuduScannerBuilder.html" target="_top">Frames</a></li>
+<li><a href="AbstractKuduScannerBuilder.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/AlterTableOptions.html b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/AlterTableOptions.html
new file mode 100644
index 0000000..8016d81
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/AlterTableOptions.html
@@ -0,0 +1,299 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.client.AlterTableOptions (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.client.AlterTableOptions (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/AlterTableOptions.html" target="_top">Frames</a></li>
+<li><a href="AlterTableOptions.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.client.AlterTableOptions" class="title">Uses of Class<br>org.apache.kudu.client.AlterTableOptions</h2>
+</div>
+<div class="classUseContainer">
+<ul class="blockList">
+<li class="blockList">
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing packages, and an explanation">
+<caption><span>Packages that use <a href="../../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Package</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="#org.apache.kudu.client">org.apache.kudu.client</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList">
+<ul class="blockList">
+<li class="blockList"><a name="org.apache.kudu.client">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a> in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> that return <a href="../../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AlterTableOptions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AlterTableOptions.html#addColumn-org.apache.kudu.ColumnSchema-">addColumn</a></span>(<a href="../../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a>&nbsp;colSchema)</code>
+<div class="block">Add a new column.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AlterTableOptions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AlterTableOptions.html#addColumn-java.lang.String-org.apache.kudu.Type-java.lang.Object-">addColumn</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
+         <a href="../../../../../org/apache/kudu/Type.html" title="enum in org.apache.kudu">Type</a>&nbsp;type,
+         <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;defaultVal)</code>
+<div class="block">Add a new column that's not nullable.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AlterTableOptions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AlterTableOptions.html#addNullableColumn-java.lang.String-org.apache.kudu.Type-">addNullableColumn</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
+                 <a href="../../../../../org/apache/kudu/Type.html" title="enum in org.apache.kudu">Type</a>&nbsp;type)</code>
+<div class="block">Add a new column that's nullable and has no default value.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AlterTableOptions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AlterTableOptions.html#addNullableColumn-java.lang.String-org.apache.kudu.Type-java.lang.Object-">addNullableColumn</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
+                 <a href="../../../../../org/apache/kudu/Type.html" title="enum in org.apache.kudu">Type</a>&nbsp;type,
+                 <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;defaultVal)</code>
+<div class="block">Add a new column that's nullable.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AlterTableOptions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AlterTableOptions.html#addRangePartition-org.apache.kudu.client.PartialRow-org.apache.kudu.client.PartialRow-">addRangePartition</a></span>(<a href="../../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;lowerBound,
+                 <a href="../../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;upperBound)</code>
+<div class="block">Add a range partition to the table with an inclusive lower bound and an exclusive upper bound.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AlterTableOptions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AlterTableOptions.html#addRangePartition-org.apache.kudu.client.PartialRow-org.apache.kudu.client.PartialRow-org.apache.kudu.client.RangePartitionBound-org.apache.kudu.client.RangePartitionBound-">addRangePartition</a></span>(<a href="../../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;lowerBound,
+                 <a href="../../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;upperBound,
+                 <a href="../../../../../org/apache/kudu/client/RangePartitionBound.html" title="enum in org.apache.kudu.client">RangePartitionBound</a>&nbsp;lowerBoundType,
+                 <a href="../../../../../org/apache/kudu/client/RangePartitionBound.html" title="enum in org.apache.kudu.client">RangePartitionBound</a>&nbsp;upperBoundType)</code>
+<div class="block">Add a range partition to the table with a lower bound and upper bound.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AlterTableOptions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AlterTableOptions.html#changeCompressionAlgorithm-java.lang.String-org.apache.kudu.ColumnSchema.CompressionAlgorithm-">changeCompressionAlgorithm</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
+                          org.apache.kudu.ColumnSchema.CompressionAlgorithm&nbsp;ca)</code>
+<div class="block">Change the compression used for a column.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AlterTableOptions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AlterTableOptions.html#changeDefault-java.lang.String-java.lang.Object-">changeDefault</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
+             <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;newDefault)</code>
+<div class="block">Change the default value for a column.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AlterTableOptions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AlterTableOptions.html#changeDesiredBlockSize-java.lang.String-int-">changeDesiredBlockSize</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
+                      int&nbsp;blockSize)</code>
+<div class="block">Change the block size of a column's storage.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AlterTableOptions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AlterTableOptions.html#changeEncoding-java.lang.String-org.apache.kudu.ColumnSchema.Encoding-">changeEncoding</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
+              org.apache.kudu.ColumnSchema.Encoding&nbsp;encoding)</code>
+<div class="block">Change the encoding used for a column.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AlterTableOptions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AlterTableOptions.html#dropColumn-java.lang.String-">dropColumn</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
+<div class="block">Drop a column.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AlterTableOptions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AlterTableOptions.html#dropRangePartition-org.apache.kudu.client.PartialRow-org.apache.kudu.client.PartialRow-">dropRangePartition</a></span>(<a href="../../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;lowerBound,
+                  <a href="../../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;upperBound)</code>
+<div class="block">Drop the range partition from the table with the specified inclusive lower bound and exclusive
+ upper bound.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AlterTableOptions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AlterTableOptions.html#dropRangePartition-org.apache.kudu.client.PartialRow-org.apache.kudu.client.PartialRow-org.apache.kudu.client.RangePartitionBound-org.apache.kudu.client.RangePartitionBound-">dropRangePartition</a></span>(<a href="../../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;lowerBound,
+                  <a href="../../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;upperBound,
+                  <a href="../../../../../org/apache/kudu/client/RangePartitionBound.html" title="enum in org.apache.kudu.client">RangePartitionBound</a>&nbsp;lowerBoundType,
+                  <a href="../../../../../org/apache/kudu/client/RangePartitionBound.html" title="enum in org.apache.kudu.client">RangePartitionBound</a>&nbsp;upperBoundType)</code>
+<div class="block">Drop the range partition from the table with the specified lower bound and upper bound.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AlterTableOptions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AlterTableOptions.html#removeDefault-java.lang.String-">removeDefault</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
+<div class="block">Remove the default value for a column.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AlterTableOptions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AlterTableOptions.html#renameColumn-java.lang.String-java.lang.String-">renameColumn</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;oldName,
+            <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;newName)</code>
+<div class="block">Change the name of a column.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AlterTableOptions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AlterTableOptions.html#renameTable-java.lang.String-">renameTable</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;newName)</code>
+<div class="block">Change a table's name.</div>
+</td>
+</tr>
+</tbody>
+</table>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> with parameters of type <a href="../../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/AlterTableResponse.html" title="class in org.apache.kudu.client">AlterTableResponse</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduClient.html#alterTable-java.lang.String-org.apache.kudu.client.AlterTableOptions-">alterTable</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
+          <a href="../../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a>&nbsp;ato)</code>
+<div class="block">Alter a table on the cluster as specified by the builder.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>com.stumbleupon.async.Deferred&lt;<a href="../../../../../org/apache/kudu/client/AlterTableResponse.html" title="class in org.apache.kudu.client">AlterTableResponse</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncKuduClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AsyncKuduClient.html#alterTable-java.lang.String-org.apache.kudu.client.AlterTableOptions-">alterTable</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
+          <a href="../../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a>&nbsp;ato)</code>
+<div class="block">Alter a table on the cluster as specified by the builder.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/AlterTableOptions.html" target="_top">Frames</a></li>
+<li><a href="AlterTableOptions.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/AlterTableResponse.html b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/AlterTableResponse.html
new file mode 100644
index 0000000..2fc465d
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/AlterTableResponse.html
@@ -0,0 +1,184 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.client.AlterTableResponse (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.client.AlterTableResponse (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/AlterTableResponse.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/AlterTableResponse.html" target="_top">Frames</a></li>
+<li><a href="AlterTableResponse.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.client.AlterTableResponse" class="title">Uses of Class<br>org.apache.kudu.client.AlterTableResponse</h2>
+</div>
+<div class="classUseContainer">
+<ul class="blockList">
+<li class="blockList">
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing packages, and an explanation">
+<caption><span>Packages that use <a href="../../../../../org/apache/kudu/client/AlterTableResponse.html" title="class in org.apache.kudu.client">AlterTableResponse</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Package</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="#org.apache.kudu.client">org.apache.kudu.client</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList">
+<ul class="blockList">
+<li class="blockList"><a name="org.apache.kudu.client">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../../org/apache/kudu/client/AlterTableResponse.html" title="class in org.apache.kudu.client">AlterTableResponse</a> in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> that return <a href="../../../../../org/apache/kudu/client/AlterTableResponse.html" title="class in org.apache.kudu.client">AlterTableResponse</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/AlterTableResponse.html" title="class in org.apache.kudu.client">AlterTableResponse</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduClient.html#alterTable-java.lang.String-org.apache.kudu.client.AlterTableOptions-">alterTable</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
+          <a href="../../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a>&nbsp;ato)</code>
+<div class="block">Alter a table on the cluster as specified by the builder.</div>
+</td>
+</tr>
+</tbody>
+</table>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> that return types with arguments of type <a href="../../../../../org/apache/kudu/client/AlterTableResponse.html" title="class in org.apache.kudu.client">AlterTableResponse</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code>com.stumbleupon.async.Deferred&lt;<a href="../../../../../org/apache/kudu/client/AlterTableResponse.html" title="class in org.apache.kudu.client">AlterTableResponse</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncKuduClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AsyncKuduClient.html#alterTable-java.lang.String-org.apache.kudu.client.AlterTableOptions-">alterTable</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
+          <a href="../../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a>&nbsp;ato)</code>
+<div class="block">Alter a table on the cluster as specified by the builder.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/AlterTableResponse.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/AlterTableResponse.html" target="_top">Frames</a></li>
+<li><a href="AlterTableResponse.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/AsyncKuduClient.AsyncKuduClientBuilder.html b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/AsyncKuduClient.AsyncKuduClientBuilder.html
new file mode 100644
index 0000000..72bedd8
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/AsyncKuduClient.AsyncKuduClientBuilder.html
@@ -0,0 +1,204 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.client.AsyncKuduClient.AsyncKuduClientBuilder (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.client.AsyncKuduClient.AsyncKuduClientBuilder (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/AsyncKuduClient.AsyncKuduClientBuilder.html" target="_top">Frames</a></li>
+<li><a href="AsyncKuduClient.AsyncKuduClientBuilder.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.client.AsyncKuduClient.AsyncKuduClientBuilder" class="title">Uses of Class<br>org.apache.kudu.client.AsyncKuduClient.AsyncKuduClientBuilder</h2>
+</div>
+<div class="classUseContainer">
+<ul class="blockList">
+<li class="blockList">
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing packages, and an explanation">
+<caption><span>Packages that use <a href="../../../../../org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html" title="class in org.apache.kudu.client">AsyncKuduClient.AsyncKuduClientBuilder</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Package</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="#org.apache.kudu.client">org.apache.kudu.client</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList">
+<ul class="blockList">
+<li class="blockList"><a name="org.apache.kudu.client">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../../org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html" title="class in org.apache.kudu.client">AsyncKuduClient.AsyncKuduClientBuilder</a> in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> that return <a href="../../../../../org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html" title="class in org.apache.kudu.client">AsyncKuduClient.AsyncKuduClientBuilder</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html" title="class in org.apache.kudu.client">AsyncKuduClient.AsyncKuduClientBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncKuduClient.AsyncKuduClientBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html#bossCount-int-">bossCount</a></span>(int&nbsp;bossCount)</code>
+<div class="block">Set the maximum number of boss threads.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html" title="class in org.apache.kudu.client">AsyncKuduClient.AsyncKuduClientBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncKuduClient.AsyncKuduClientBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html#defaultAdminOperationTimeoutMs-long-">defaultAdminOperationTimeoutMs</a></span>(long&nbsp;timeoutMs)</code>
+<div class="block">Sets the default timeout used for administrative operations (e.g.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html" title="class in org.apache.kudu.client">AsyncKuduClient.AsyncKuduClientBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncKuduClient.AsyncKuduClientBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html#defaultOperationTimeoutMs-long-">defaultOperationTimeoutMs</a></span>(long&nbsp;timeoutMs)</code>
+<div class="block">Sets the default timeout used for user operations (using sessions and scanners).</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html" title="class in org.apache.kudu.client">AsyncKuduClient.AsyncKuduClientBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncKuduClient.AsyncKuduClientBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html#defaultSocketReadTimeoutMs-long-">defaultSocketReadTimeoutMs</a></span>(long&nbsp;timeoutMs)</code>
+<div class="block">Sets the default timeout to use when waiting on data from a socket.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html" title="class in org.apache.kudu.client">AsyncKuduClient.AsyncKuduClientBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncKuduClient.AsyncKuduClientBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html#disableStatistics--">disableStatistics</a></span>()</code>
+<div class="block">Disable this client's collection of statistics.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html" title="class in org.apache.kudu.client">AsyncKuduClient.AsyncKuduClientBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncKuduClient.AsyncKuduClientBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html#nioExecutors-java.util.concurrent.Executor-java.util.concurrent.Executor-">nioExecutors</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/concurrent/Executor.html?is-external=true" title="class or interface in java.util.concurrent">Executor</a>&nbsp;bossExecutor,
+            <a href="http://docs.oracle.com/javase/7/docs/api/java/util/concurrent/Executor.html?is-external=true" title="class or interface in java.util.concurrent">Executor</a>&nbsp;workerExecutor)</code>
+<div class="block">Set the executors which will be used for the embedded Netty boss and workers.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html" title="class in org.apache.kudu.client">AsyncKuduClient.AsyncKuduClientBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncKuduClient.AsyncKuduClientBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html#workerCount-int-">workerCount</a></span>(int&nbsp;workerCount)</code>
+<div class="block">Set the maximum number of worker threads.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/AsyncKuduClient.AsyncKuduClientBuilder.html" target="_top">Frames</a></li>
+<li><a href="AsyncKuduClient.AsyncKuduClientBuilder.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/AsyncKuduClient.html b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/AsyncKuduClient.html
new file mode 100644
index 0000000..4afb40b
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/AsyncKuduClient.html
@@ -0,0 +1,197 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.client.AsyncKuduClient (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.client.AsyncKuduClient (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/AsyncKuduClient.html" target="_top">Frames</a></li>
+<li><a href="AsyncKuduClient.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.client.AsyncKuduClient" class="title">Uses of Class<br>org.apache.kudu.client.AsyncKuduClient</h2>
+</div>
+<div class="classUseContainer">
+<ul class="blockList">
+<li class="blockList">
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing packages, and an explanation">
+<caption><span>Packages that use <a href="../../../../../org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client">AsyncKuduClient</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Package</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="#org.apache.kudu.client">org.apache.kudu.client</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a href="#org.apache.kudu.mapreduce">org.apache.kudu.mapreduce</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList">
+<ul class="blockList">
+<li class="blockList"><a name="org.apache.kudu.client">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../../org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client">AsyncKuduClient</a> in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> that return <a href="../../../../../org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client">AsyncKuduClient</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client">AsyncKuduClient</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncKuduClient.AsyncKuduClientBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html#build--">build</a></span>()</code>
+<div class="block">Creates a new client that connects to the masters.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client">AsyncKuduClient</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduTable.html#getAsyncClient--">getAsyncClient</a></span>()</code>
+<div class="block">Get the async client that created this instance.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList"><a name="org.apache.kudu.mapreduce">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../../org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client">AsyncKuduClient</a> in <a href="../../../../../org/apache/kudu/mapreduce/package-summary.html">org.apache.kudu.mapreduce</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/mapreduce/package-summary.html">org.apache.kudu.mapreduce</a> that return <a href="../../../../../org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client">AsyncKuduClient</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client">AsyncKuduClient</a></code></td>
+<td class="colLast"><span class="typeNameLabel">CommandLineParser.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/mapreduce/CommandLineParser.html#getAsyncClient--">getAsyncClient</a></span>()</code>
+<div class="block">Get an async client connected to the configured Master(s).</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/AsyncKuduClient.html" target="_top">Frames</a></li>
+<li><a href="AsyncKuduClient.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/AsyncKuduScanner.AsyncKuduScannerBuilder.html b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/AsyncKuduScanner.AsyncKuduScannerBuilder.html
new file mode 100644
index 0000000..b031ee0
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/AsyncKuduScanner.AsyncKuduScannerBuilder.html
@@ -0,0 +1,167 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.client.AsyncKuduScanner.AsyncKuduScannerBuilder (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.client.AsyncKuduScanner.AsyncKuduScannerBuilder (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/AsyncKuduScanner.AsyncKuduScannerBuilder.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/AsyncKuduScanner.AsyncKuduScannerBuilder.html" target="_top">Frames</a></li>
+<li><a href="AsyncKuduScanner.AsyncKuduScannerBuilder.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.client.AsyncKuduScanner.AsyncKuduScannerBuilder" class="title">Uses of Class<br>org.apache.kudu.client.AsyncKuduScanner.AsyncKuduScannerBuilder</h2>
+</div>
+<div class="classUseContainer">
+<ul class="blockList">
+<li class="blockList">
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing packages, and an explanation">
+<caption><span>Packages that use <a href="../../../../../org/apache/kudu/client/AsyncKuduScanner.AsyncKuduScannerBuilder.html" title="class in org.apache.kudu.client">AsyncKuduScanner.AsyncKuduScannerBuilder</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Package</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="#org.apache.kudu.client">org.apache.kudu.client</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList">
+<ul class="blockList">
+<li class="blockList"><a name="org.apache.kudu.client">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../../org/apache/kudu/client/AsyncKuduScanner.AsyncKuduScannerBuilder.html" title="class in org.apache.kudu.client">AsyncKuduScanner.AsyncKuduScannerBuilder</a> in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> that return <a href="../../../../../org/apache/kudu/client/AsyncKuduScanner.AsyncKuduScannerBuilder.html" title="class in org.apache.kudu.client">AsyncKuduScanner.AsyncKuduScannerBuilder</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/AsyncKuduScanner.AsyncKuduScannerBuilder.html" title="class in org.apache.kudu.client">AsyncKuduScanner.AsyncKuduScannerBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncKuduClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AsyncKuduClient.html#newScannerBuilder-org.apache.kudu.client.KuduTable-">newScannerBuilder</a></span>(<a href="../../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a>&nbsp;table)</code>
+<div class="block">Creates a new <a href="../../../../../org/apache/kudu/client/AsyncKuduScanner.AsyncKuduScannerBuilder.html" title="class in org.apache.kudu.client"><code>AsyncKuduScanner.AsyncKuduScannerBuilder</code></a> for a particular table.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/AsyncKuduScanner.AsyncKuduScannerBuilder.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/AsyncKuduScanner.AsyncKuduScannerBuilder.html" target="_top">Frames</a></li>
+<li><a href="AsyncKuduScanner.AsyncKuduScannerBuilder.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/AsyncKuduScanner.ReadMode.html b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/AsyncKuduScanner.ReadMode.html
new file mode 100644
index 0000000..8e8e8d9
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/AsyncKuduScanner.ReadMode.html
@@ -0,0 +1,201 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.client.AsyncKuduScanner.ReadMode (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.client.AsyncKuduScanner.ReadMode (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/AsyncKuduScanner.ReadMode.html" title="enum in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/AsyncKuduScanner.ReadMode.html" target="_top">Frames</a></li>
+<li><a href="AsyncKuduScanner.ReadMode.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.client.AsyncKuduScanner.ReadMode" class="title">Uses of Class<br>org.apache.kudu.client.AsyncKuduScanner.ReadMode</h2>
+</div>
+<div class="classUseContainer">
+<ul class="blockList">
+<li class="blockList">
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing packages, and an explanation">
+<caption><span>Packages that use <a href="../../../../../org/apache/kudu/client/AsyncKuduScanner.ReadMode.html" title="enum in org.apache.kudu.client">AsyncKuduScanner.ReadMode</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Package</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="#org.apache.kudu.client">org.apache.kudu.client</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList">
+<ul class="blockList">
+<li class="blockList"><a name="org.apache.kudu.client">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../../org/apache/kudu/client/AsyncKuduScanner.ReadMode.html" title="enum in org.apache.kudu.client">AsyncKuduScanner.ReadMode</a> in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> that return <a href="../../../../../org/apache/kudu/client/AsyncKuduScanner.ReadMode.html" title="enum in org.apache.kudu.client">AsyncKuduScanner.ReadMode</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/AsyncKuduScanner.ReadMode.html" title="enum in org.apache.kudu.client">AsyncKuduScanner.ReadMode</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduScanner.html#getReadMode--">getReadMode</a></span>()</code>
+<div class="block">Returns the ReadMode for this scanner.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/AsyncKuduScanner.ReadMode.html" title="enum in org.apache.kudu.client">AsyncKuduScanner.ReadMode</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncKuduScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AsyncKuduScanner.html#getReadMode--">getReadMode</a></span>()</code>
+<div class="block">Returns the ReadMode for this scanner.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/AsyncKuduScanner.ReadMode.html" title="enum in org.apache.kudu.client">AsyncKuduScanner.ReadMode</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncKuduScanner.ReadMode.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AsyncKuduScanner.ReadMode.html#valueOf-java.lang.String-">valueOf</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
+<div class="block">Returns the enum constant of this type with the specified name.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/AsyncKuduScanner.ReadMode.html" title="enum in org.apache.kudu.client">AsyncKuduScanner.ReadMode</a>[]</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncKuduScanner.ReadMode.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AsyncKuduScanner.ReadMode.html#values--">values</a></span>()</code>
+<div class="block">Returns an array containing the constants of this enum type, in
+the order they are declared.</div>
+</td>
+</tr>
+</tbody>
+</table>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> with parameters of type <a href="../../../../../org/apache/kudu/client/AsyncKuduScanner.ReadMode.html" title="enum in org.apache.kudu.client">AsyncKuduScanner.ReadMode</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="type parameter in AbstractKuduScannerBuilder">S</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AbstractKuduScannerBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#readMode-org.apache.kudu.client.AsyncKuduScanner.ReadMode-">readMode</a></span>(<a href="../../../../../org/apache/kudu/client/AsyncKuduScanner.ReadMode.html" title="enum in org.apache.kudu.client">AsyncKuduScanner.ReadMode</a>&nbsp;readMode)</code>
+<div class="block">Sets the read mode, the default is to read the latest values.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/AsyncKuduScanner.ReadMode.html" title="enum in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/AsyncKuduScanner.ReadMode.html" target="_top">Frames</a></li>
+<li><a href="AsyncKuduScanner.ReadMode.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/AsyncKuduScanner.html b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/AsyncKuduScanner.html
new file mode 100644
index 0000000..97c125f
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/AsyncKuduScanner.html
@@ -0,0 +1,167 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.client.AsyncKuduScanner (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.client.AsyncKuduScanner (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/AsyncKuduScanner.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/AsyncKuduScanner.html" target="_top">Frames</a></li>
+<li><a href="AsyncKuduScanner.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.client.AsyncKuduScanner" class="title">Uses of Class<br>org.apache.kudu.client.AsyncKuduScanner</h2>
+</div>
+<div class="classUseContainer">
+<ul class="blockList">
+<li class="blockList">
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing packages, and an explanation">
+<caption><span>Packages that use <a href="../../../../../org/apache/kudu/client/AsyncKuduScanner.html" title="class in org.apache.kudu.client">AsyncKuduScanner</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Package</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="#org.apache.kudu.client">org.apache.kudu.client</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList">
+<ul class="blockList">
+<li class="blockList"><a name="org.apache.kudu.client">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../../org/apache/kudu/client/AsyncKuduScanner.html" title="class in org.apache.kudu.client">AsyncKuduScanner</a> in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> that return <a href="../../../../../org/apache/kudu/client/AsyncKuduScanner.html" title="class in org.apache.kudu.client">AsyncKuduScanner</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/AsyncKuduScanner.html" title="class in org.apache.kudu.client">AsyncKuduScanner</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncKuduScanner.AsyncKuduScannerBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AsyncKuduScanner.AsyncKuduScannerBuilder.html#build--">build</a></span>()</code>
+<div class="block">Builds an <a href="../../../../../org/apache/kudu/client/AsyncKuduScanner.html" title="class in org.apache.kudu.client"><code>AsyncKuduScanner</code></a> using the passed configurations.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/AsyncKuduScanner.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/AsyncKuduScanner.html" target="_top">Frames</a></li>
+<li><a href="AsyncKuduScanner.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/AsyncKuduSession.html b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/AsyncKuduSession.html
new file mode 100644
index 0000000..0a84208
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/AsyncKuduSession.html
@@ -0,0 +1,167 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.client.AsyncKuduSession (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.client.AsyncKuduSession (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/AsyncKuduSession.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/AsyncKuduSession.html" target="_top">Frames</a></li>
+<li><a href="AsyncKuduSession.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.client.AsyncKuduSession" class="title">Uses of Class<br>org.apache.kudu.client.AsyncKuduSession</h2>
+</div>
+<div class="classUseContainer">
+<ul class="blockList">
+<li class="blockList">
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing packages, and an explanation">
+<caption><span>Packages that use <a href="../../../../../org/apache/kudu/client/AsyncKuduSession.html" title="class in org.apache.kudu.client">AsyncKuduSession</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Package</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="#org.apache.kudu.client">org.apache.kudu.client</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList">
+<ul class="blockList">
+<li class="blockList"><a name="org.apache.kudu.client">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../../org/apache/kudu/client/AsyncKuduSession.html" title="class in org.apache.kudu.client">AsyncKuduSession</a> in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> that return <a href="../../../../../org/apache/kudu/client/AsyncKuduSession.html" title="class in org.apache.kudu.client">AsyncKuduSession</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/AsyncKuduSession.html" title="class in org.apache.kudu.client">AsyncKuduSession</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncKuduClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AsyncKuduClient.html#newSession--">newSession</a></span>()</code>
+<div class="block">Create a new session for interacting with the cluster.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/AsyncKuduSession.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/AsyncKuduSession.html" target="_top">Frames</a></li>
+<li><a href="AsyncKuduSession.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/ColumnRangePredicate.html b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/ColumnRangePredicate.html
new file mode 100644
index 0000000..e60115d
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/ColumnRangePredicate.html
@@ -0,0 +1,185 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.client.ColumnRangePredicate (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.client.ColumnRangePredicate (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/ColumnRangePredicate.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/ColumnRangePredicate.html" target="_top">Frames</a></li>
+<li><a href="ColumnRangePredicate.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.client.ColumnRangePredicate" class="title">Uses of Class<br>org.apache.kudu.client.ColumnRangePredicate</h2>
+</div>
+<div class="classUseContainer">
+<ul class="blockList">
+<li class="blockList">
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing packages, and an explanation">
+<caption><span>Packages that use <a href="../../../../../org/apache/kudu/client/ColumnRangePredicate.html" title="class in org.apache.kudu.client">ColumnRangePredicate</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Package</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="#org.apache.kudu.client">org.apache.kudu.client</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList">
+<ul class="blockList">
+<li class="blockList"><a name="org.apache.kudu.client">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../../org/apache/kudu/client/ColumnRangePredicate.html" title="class in org.apache.kudu.client">ColumnRangePredicate</a> in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> with parameters of type <a href="../../../../../org/apache/kudu/client/ColumnRangePredicate.html" title="class in org.apache.kudu.client">ColumnRangePredicate</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="type parameter in AbstractKuduScannerBuilder">S</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AbstractKuduScannerBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#addColumnRangePredicate-org.apache.kudu.client.ColumnRangePredicate-">addColumnRangePredicate</a></span>(<a href="../../../../../org/apache/kudu/client/ColumnRangePredicate.html" title="class in org.apache.kudu.client">ColumnRangePredicate</a>&nbsp;predicate)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;
+<div class="block"><span class="deprecationComment">use <a href="../../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#addPredicate-org.apache.kudu.client.KuduPredicate-"><code>AbstractKuduScannerBuilder.addPredicate(KuduPredicate)</code></a></span></div>
+</div>
+</td>
+</tr>
+</tbody>
+</table>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Method parameters in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> with type arguments of type <a href="../../../../../org/apache/kudu/client/ColumnRangePredicate.html" title="class in org.apache.kudu.client">ColumnRangePredicate</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code>static byte[]</code></td>
+<td class="colLast"><span class="typeNameLabel">ColumnRangePredicate.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/ColumnRangePredicate.html#toByteArray-java.util.List-">toByteArray</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/kudu/client/ColumnRangePredicate.html" title="class in org.apache.kudu.client">ColumnRangePredicate</a>&gt;&nbsp;predicates)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+<div class="block">Converts a list of predicates into an opaque byte array.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/ColumnRangePredicate.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/ColumnRangePredicate.html" target="_top">Frames</a></li>
+<li><a href="ColumnRangePredicate.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/CreateTableOptions.html b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/CreateTableOptions.html
new file mode 100644
index 0000000..f920c02
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/CreateTableOptions.html
@@ -0,0 +1,262 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.client.CreateTableOptions (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.client.CreateTableOptions (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/CreateTableOptions.html" target="_top">Frames</a></li>
+<li><a href="CreateTableOptions.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.client.CreateTableOptions" class="title">Uses of Class<br>org.apache.kudu.client.CreateTableOptions</h2>
+</div>
+<div class="classUseContainer">
+<ul class="blockList">
+<li class="blockList">
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing packages, and an explanation">
+<caption><span>Packages that use <a href="../../../../../org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client">CreateTableOptions</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Package</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="#org.apache.kudu.client">org.apache.kudu.client</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a href="#org.apache.kudu.mapreduce.tools">org.apache.kudu.mapreduce.tools</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList">
+<ul class="blockList">
+<li class="blockList"><a name="org.apache.kudu.client">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../../org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client">CreateTableOptions</a> in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> that return <a href="../../../../../org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client">CreateTableOptions</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client">CreateTableOptions</a></code></td>
+<td class="colLast"><span class="typeNameLabel">CreateTableOptions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/CreateTableOptions.html#addHashPartitions-java.util.List-int-">addHashPartitions</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;columns,
+                 int&nbsp;buckets)</code>
+<div class="block">Add a set of hash partitions to the table.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client">CreateTableOptions</a></code></td>
+<td class="colLast"><span class="typeNameLabel">CreateTableOptions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/CreateTableOptions.html#addHashPartitions-java.util.List-int-int-">addHashPartitions</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;columns,
+                 int&nbsp;buckets,
+                 int&nbsp;seed)</code>
+<div class="block">Add a set of hash partitions to the table.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client">CreateTableOptions</a></code></td>
+<td class="colLast"><span class="typeNameLabel">CreateTableOptions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/CreateTableOptions.html#addRangePartition-org.apache.kudu.client.PartialRow-org.apache.kudu.client.PartialRow-">addRangePartition</a></span>(<a href="../../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;lower,
+                 <a href="../../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;upper)</code>
+<div class="block">Add a range partition partition to the table with an inclusive lower bound
+ and an exclusive upper bound.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client">CreateTableOptions</a></code></td>
+<td class="colLast"><span class="typeNameLabel">CreateTableOptions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/CreateTableOptions.html#addRangePartition-org.apache.kudu.client.PartialRow-org.apache.kudu.client.PartialRow-org.apache.kudu.client.RangePartitionBound-org.apache.kudu.client.RangePartitionBound-">addRangePartition</a></span>(<a href="../../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;lower,
+                 <a href="../../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;upper,
+                 <a href="../../../../../org/apache/kudu/client/RangePartitionBound.html" title="enum in org.apache.kudu.client">RangePartitionBound</a>&nbsp;lowerBoundType,
+                 <a href="../../../../../org/apache/kudu/client/RangePartitionBound.html" title="enum in org.apache.kudu.client">RangePartitionBound</a>&nbsp;upperBoundType)</code>
+<div class="block">Add a range partition partition to the table with a lower bound and upper
+ bound.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client">CreateTableOptions</a></code></td>
+<td class="colLast"><span class="typeNameLabel">CreateTableOptions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/CreateTableOptions.html#addSplitRow-org.apache.kudu.client.PartialRow-">addSplitRow</a></span>(<a href="../../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;row)</code>
+<div class="block">Add a range partition split.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client">CreateTableOptions</a></code></td>
+<td class="colLast"><span class="typeNameLabel">CreateTableOptions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/CreateTableOptions.html#setNumReplicas-int-">setNumReplicas</a></span>(int&nbsp;numReplicas)</code>
+<div class="block">Sets the number of replicas that each tablet will have.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client">CreateTableOptions</a></code></td>
+<td class="colLast"><span class="typeNameLabel">CreateTableOptions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/CreateTableOptions.html#setRangePartitionColumns-java.util.List-">setRangePartitionColumns</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;columns)</code>
+<div class="block">Set the columns on which the table will be range-partitioned.</div>
+</td>
+</tr>
+</tbody>
+</table>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> with parameters of type <a href="../../../../../org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client">CreateTableOptions</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduClient.html#createTable-java.lang.String-org.apache.kudu.Schema-org.apache.kudu.client.CreateTableOptions-">createTable</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
+           <a href="../../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a>&nbsp;schema,
+           <a href="../../../../../org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client">CreateTableOptions</a>&nbsp;builder)</code>
+<div class="block">Create a table on the cluster with the specified name, schema, and table configurations.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>com.stumbleupon.async.Deferred&lt;<a href="../../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncKuduClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AsyncKuduClient.html#createTable-java.lang.String-org.apache.kudu.Schema-org.apache.kudu.client.CreateTableOptions-">createTable</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
+           <a href="../../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a>&nbsp;schema,
+           <a href="../../../../../org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client">CreateTableOptions</a>&nbsp;builder)</code>
+<div class="block">Create a table on the cluster with the specified name, schema, and table configurations.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList"><a name="org.apache.kudu.mapreduce.tools">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../../org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client">CreateTableOptions</a> in <a href="../../../../../org/apache/kudu/mapreduce/tools/package-summary.html">org.apache.kudu.mapreduce.tools</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/mapreduce/tools/package-summary.html">org.apache.kudu.mapreduce.tools</a> that return <a href="../../../../../org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client">CreateTableOptions</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client">CreateTableOptions</a></code></td>
+<td class="colLast"><span class="typeNameLabel">BigLinkedListCommon.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#getCreateTableOptions-org.apache.kudu.Schema-int-int-int-">getCreateTableOptions</a></span>(<a href="../../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a>&nbsp;schema,
+                     int&nbsp;numReplicas,
+                     int&nbsp;rangePartitions,
+                     int&nbsp;hashPartitions)</code>&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/CreateTableOptions.html" target="_top">Frames</a></li>
+<li><a href="CreateTableOptions.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/Delete.html b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/Delete.html
new file mode 100644
index 0000000..950c084
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/Delete.html
@@ -0,0 +1,167 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.client.Delete (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.client.Delete (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/Delete.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/Delete.html" target="_top">Frames</a></li>
+<li><a href="Delete.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.client.Delete" class="title">Uses of Class<br>org.apache.kudu.client.Delete</h2>
+</div>
+<div class="classUseContainer">
+<ul class="blockList">
+<li class="blockList">
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing packages, and an explanation">
+<caption><span>Packages that use <a href="../../../../../org/apache/kudu/client/Delete.html" title="class in org.apache.kudu.client">Delete</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Package</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="#org.apache.kudu.client">org.apache.kudu.client</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList">
+<ul class="blockList">
+<li class="blockList"><a name="org.apache.kudu.client">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../../org/apache/kudu/client/Delete.html" title="class in org.apache.kudu.client">Delete</a> in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> that return <a href="../../../../../org/apache/kudu/client/Delete.html" title="class in org.apache.kudu.client">Delete</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/Delete.html" title="class in org.apache.kudu.client">Delete</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduTable.html#newDelete--">newDelete</a></span>()</code>
+<div class="block">Get a new delete configured with this table's schema.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/Delete.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/Delete.html" target="_top">Frames</a></li>
+<li><a href="Delete.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/DeleteTableResponse.html b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/DeleteTableResponse.html
new file mode 100644
index 0000000..59c0780
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/DeleteTableResponse.html
@@ -0,0 +1,182 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.client.DeleteTableResponse (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.client.DeleteTableResponse (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/DeleteTableResponse.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/DeleteTableResponse.html" target="_top">Frames</a></li>
+<li><a href="DeleteTableResponse.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.client.DeleteTableResponse" class="title">Uses of Class<br>org.apache.kudu.client.DeleteTableResponse</h2>
+</div>
+<div class="classUseContainer">
+<ul class="blockList">
+<li class="blockList">
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing packages, and an explanation">
+<caption><span>Packages that use <a href="../../../../../org/apache/kudu/client/DeleteTableResponse.html" title="class in org.apache.kudu.client">DeleteTableResponse</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Package</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="#org.apache.kudu.client">org.apache.kudu.client</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList">
+<ul class="blockList">
+<li class="blockList"><a name="org.apache.kudu.client">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../../org/apache/kudu/client/DeleteTableResponse.html" title="class in org.apache.kudu.client">DeleteTableResponse</a> in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> that return <a href="../../../../../org/apache/kudu/client/DeleteTableResponse.html" title="class in org.apache.kudu.client">DeleteTableResponse</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/DeleteTableResponse.html" title="class in org.apache.kudu.client">DeleteTableResponse</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduClient.html#deleteTable-java.lang.String-">deleteTable</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
+<div class="block">Delete a table on the cluster with the specified name.</div>
+</td>
+</tr>
+</tbody>
+</table>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> that return types with arguments of type <a href="../../../../../org/apache/kudu/client/DeleteTableResponse.html" title="class in org.apache.kudu.client">DeleteTableResponse</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code>com.stumbleupon.async.Deferred&lt;<a href="../../../../../org/apache/kudu/client/DeleteTableResponse.html" title="class in org.apache.kudu.client">DeleteTableResponse</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncKuduClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AsyncKuduClient.html#deleteTable-java.lang.String-">deleteTable</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
+<div class="block">Delete a table on the cluster with the specified name.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/DeleteTableResponse.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/DeleteTableResponse.html" target="_top">Frames</a></li>
+<li><a href="DeleteTableResponse.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/ExternalConsistencyMode.html b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/ExternalConsistencyMode.html
new file mode 100644
index 0000000..bf68689
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/ExternalConsistencyMode.html
@@ -0,0 +1,197 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.client.ExternalConsistencyMode (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.client.ExternalConsistencyMode (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/ExternalConsistencyMode.html" title="enum in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/ExternalConsistencyMode.html" target="_top">Frames</a></li>
+<li><a href="ExternalConsistencyMode.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.client.ExternalConsistencyMode" class="title">Uses of Class<br>org.apache.kudu.client.ExternalConsistencyMode</h2>
+</div>
+<div class="classUseContainer">
+<ul class="blockList">
+<li class="blockList">
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing packages, and an explanation">
+<caption><span>Packages that use <a href="../../../../../org/apache/kudu/client/ExternalConsistencyMode.html" title="enum in org.apache.kudu.client">ExternalConsistencyMode</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Package</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="#org.apache.kudu.client">org.apache.kudu.client</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList">
+<ul class="blockList">
+<li class="blockList"><a name="org.apache.kudu.client">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../../org/apache/kudu/client/ExternalConsistencyMode.html" title="enum in org.apache.kudu.client">ExternalConsistencyMode</a> in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> that return <a href="../../../../../org/apache/kudu/client/ExternalConsistencyMode.html" title="enum in org.apache.kudu.client">ExternalConsistencyMode</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/ExternalConsistencyMode.html" title="enum in org.apache.kudu.client">ExternalConsistencyMode</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ExternalConsistencyMode.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/ExternalConsistencyMode.html#valueOf-java.lang.String-">valueOf</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
+<div class="block">Returns the enum constant of this type with the specified name.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/ExternalConsistencyMode.html" title="enum in org.apache.kudu.client">ExternalConsistencyMode</a>[]</code></td>
+<td class="colLast"><span class="typeNameLabel">ExternalConsistencyMode.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/ExternalConsistencyMode.html#values--">values</a></span>()</code>
+<div class="block">Returns an array containing the constants of this enum type, in
+the order they are declared.</div>
+</td>
+</tr>
+</tbody>
+</table>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> with parameters of type <a href="../../../../../org/apache/kudu/client/ExternalConsistencyMode.html" title="enum in org.apache.kudu.client">ExternalConsistencyMode</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">SessionConfiguration.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/SessionConfiguration.html#setExternalConsistencyMode-org.apache.kudu.client.ExternalConsistencyMode-">setExternalConsistencyMode</a></span>(<a href="../../../../../org/apache/kudu/client/ExternalConsistencyMode.html" title="enum in org.apache.kudu.client">ExternalConsistencyMode</a>&nbsp;consistencyMode)</code>
+<div class="block">Set the new external consistency mode for this session.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">KuduSession.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduSession.html#setExternalConsistencyMode-org.apache.kudu.client.ExternalConsistencyMode-">setExternalConsistencyMode</a></span>(<a href="../../../../../org/apache/kudu/client/ExternalConsistencyMode.html" title="enum in org.apache.kudu.client">ExternalConsistencyMode</a>&nbsp;consistencyMode)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncKuduSession.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AsyncKuduSession.html#setExternalConsistencyMode-org.apache.kudu.client.ExternalConsistencyMode-">setExternalConsistencyMode</a></span>(<a href="../../../../../org/apache/kudu/client/ExternalConsistencyMode.html" title="enum in org.apache.kudu.client">ExternalConsistencyMode</a>&nbsp;consistencyMode)</code>&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/ExternalConsistencyMode.html" title="enum in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/ExternalConsistencyMode.html" target="_top">Frames</a></li>
+<li><a href="ExternalConsistencyMode.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/HasFailedRpcException.html b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/HasFailedRpcException.html
new file mode 100644
index 0000000..98c0293
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/HasFailedRpcException.html
@@ -0,0 +1,167 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Interface org.apache.kudu.client.HasFailedRpcException (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Interface org.apache.kudu.client.HasFailedRpcException (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/HasFailedRpcException.html" title="interface in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/HasFailedRpcException.html" target="_top">Frames</a></li>
+<li><a href="HasFailedRpcException.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Interface org.apache.kudu.client.HasFailedRpcException" class="title">Uses of Interface<br>org.apache.kudu.client.HasFailedRpcException</h2>
+</div>
+<div class="classUseContainer">
+<ul class="blockList">
+<li class="blockList">
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing packages, and an explanation">
+<caption><span>Packages that use <a href="../../../../../org/apache/kudu/client/HasFailedRpcException.html" title="interface in org.apache.kudu.client">HasFailedRpcException</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Package</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="#org.apache.kudu.client">org.apache.kudu.client</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList">
+<ul class="blockList">
+<li class="blockList"><a name="org.apache.kudu.client">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../../org/apache/kudu/client/HasFailedRpcException.html" title="interface in org.apache.kudu.client">HasFailedRpcException</a> in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing classes, and an explanation">
+<caption><span>Classes in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> that implement <a href="../../../../../org/apache/kudu/client/HasFailedRpcException.html" title="interface in org.apache.kudu.client">HasFailedRpcException</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Class and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code>class&nbsp;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/PleaseThrottleException.html" title="class in org.apache.kudu.client">PleaseThrottleException</a></span></code>
+<div class="block">This exception notifies the application to throttle its use of Kudu.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/HasFailedRpcException.html" title="interface in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/HasFailedRpcException.html" target="_top">Frames</a></li>
+<li><a href="HasFailedRpcException.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/Insert.html b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/Insert.html
new file mode 100644
index 0000000..3e0b0f2
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/Insert.html
@@ -0,0 +1,167 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.client.Insert (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.client.Insert (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/Insert.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/Insert.html" target="_top">Frames</a></li>
+<li><a href="Insert.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.client.Insert" class="title">Uses of Class<br>org.apache.kudu.client.Insert</h2>
+</div>
+<div class="classUseContainer">
+<ul class="blockList">
+<li class="blockList">
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing packages, and an explanation">
+<caption><span>Packages that use <a href="../../../../../org/apache/kudu/client/Insert.html" title="class in org.apache.kudu.client">Insert</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Package</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="#org.apache.kudu.client">org.apache.kudu.client</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList">
+<ul class="blockList">
+<li class="blockList"><a name="org.apache.kudu.client">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../../org/apache/kudu/client/Insert.html" title="class in org.apache.kudu.client">Insert</a> in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> that return <a href="../../../../../org/apache/kudu/client/Insert.html" title="class in org.apache.kudu.client">Insert</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/Insert.html" title="class in org.apache.kudu.client">Insert</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduTable.html#newInsert--">newInsert</a></span>()</code>
+<div class="block">Get a new insert configured with this table's schema.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/Insert.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/Insert.html" target="_top">Frames</a></li>
+<li><a href="Insert.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/IsAlterTableDoneResponse.html b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/IsAlterTableDoneResponse.html
new file mode 100644
index 0000000..af5f598
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/IsAlterTableDoneResponse.html
@@ -0,0 +1,167 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.client.IsAlterTableDoneResponse (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.client.IsAlterTableDoneResponse (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/IsAlterTableDoneResponse.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/IsAlterTableDoneResponse.html" target="_top">Frames</a></li>
+<li><a href="IsAlterTableDoneResponse.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.client.IsAlterTableDoneResponse" class="title">Uses of Class<br>org.apache.kudu.client.IsAlterTableDoneResponse</h2>
+</div>
+<div class="classUseContainer">
+<ul class="blockList">
+<li class="blockList">
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing packages, and an explanation">
+<caption><span>Packages that use <a href="../../../../../org/apache/kudu/client/IsAlterTableDoneResponse.html" title="class in org.apache.kudu.client">IsAlterTableDoneResponse</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Package</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="#org.apache.kudu.client">org.apache.kudu.client</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList">
+<ul class="blockList">
+<li class="blockList"><a name="org.apache.kudu.client">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../../org/apache/kudu/client/IsAlterTableDoneResponse.html" title="class in org.apache.kudu.client">IsAlterTableDoneResponse</a> in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> that return types with arguments of type <a href="../../../../../org/apache/kudu/client/IsAlterTableDoneResponse.html" title="class in org.apache.kudu.client">IsAlterTableDoneResponse</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code>com.stumbleupon.async.Deferred&lt;<a href="../../../../../org/apache/kudu/client/IsAlterTableDoneResponse.html" title="class in org.apache.kudu.client">IsAlterTableDoneResponse</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncKuduClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AsyncKuduClient.html#isAlterTableDone-java.lang.String-">isAlterTableDone</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
+<div class="block">Helper method that checks and waits until the completion of an alter command.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/IsAlterTableDoneResponse.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/IsAlterTableDoneResponse.html" target="_top">Frames</a></li>
+<li><a href="IsAlterTableDoneResponse.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/KuduClient.KuduClientBuilder.html b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/KuduClient.KuduClientBuilder.html
new file mode 100644
index 0000000..e56859d
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/KuduClient.KuduClientBuilder.html
@@ -0,0 +1,204 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.client.KuduClient.KuduClientBuilder (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.client.KuduClient.KuduClientBuilder (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/KuduClient.KuduClientBuilder.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/KuduClient.KuduClientBuilder.html" target="_top">Frames</a></li>
+<li><a href="KuduClient.KuduClientBuilder.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.client.KuduClient.KuduClientBuilder" class="title">Uses of Class<br>org.apache.kudu.client.KuduClient.KuduClientBuilder</h2>
+</div>
+<div class="classUseContainer">
+<ul class="blockList">
+<li class="blockList">
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing packages, and an explanation">
+<caption><span>Packages that use <a href="../../../../../org/apache/kudu/client/KuduClient.KuduClientBuilder.html" title="class in org.apache.kudu.client">KuduClient.KuduClientBuilder</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Package</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="#org.apache.kudu.client">org.apache.kudu.client</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList">
+<ul class="blockList">
+<li class="blockList"><a name="org.apache.kudu.client">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../../org/apache/kudu/client/KuduClient.KuduClientBuilder.html" title="class in org.apache.kudu.client">KuduClient.KuduClientBuilder</a> in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> that return <a href="../../../../../org/apache/kudu/client/KuduClient.KuduClientBuilder.html" title="class in org.apache.kudu.client">KuduClient.KuduClientBuilder</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/KuduClient.KuduClientBuilder.html" title="class in org.apache.kudu.client">KuduClient.KuduClientBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduClient.KuduClientBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduClient.KuduClientBuilder.html#bossCount-int-">bossCount</a></span>(int&nbsp;bossCount)</code>
+<div class="block">Set the maximum number of boss threads.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/KuduClient.KuduClientBuilder.html" title="class in org.apache.kudu.client">KuduClient.KuduClientBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduClient.KuduClientBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduClient.KuduClientBuilder.html#defaultAdminOperationTimeoutMs-long-">defaultAdminOperationTimeoutMs</a></span>(long&nbsp;timeoutMs)</code>
+<div class="block">Sets the default timeout used for administrative operations (e.g.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/KuduClient.KuduClientBuilder.html" title="class in org.apache.kudu.client">KuduClient.KuduClientBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduClient.KuduClientBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduClient.KuduClientBuilder.html#defaultOperationTimeoutMs-long-">defaultOperationTimeoutMs</a></span>(long&nbsp;timeoutMs)</code>
+<div class="block">Sets the default timeout used for user operations (using sessions and scanners).</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/KuduClient.KuduClientBuilder.html" title="class in org.apache.kudu.client">KuduClient.KuduClientBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduClient.KuduClientBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduClient.KuduClientBuilder.html#defaultSocketReadTimeoutMs-long-">defaultSocketReadTimeoutMs</a></span>(long&nbsp;timeoutMs)</code>
+<div class="block">Sets the default timeout to use when waiting on data from a socket.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/KuduClient.KuduClientBuilder.html" title="class in org.apache.kudu.client">KuduClient.KuduClientBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduClient.KuduClientBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduClient.KuduClientBuilder.html#disableStatistics--">disableStatistics</a></span>()</code>
+<div class="block">Disable this client's collection of statistics.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/KuduClient.KuduClientBuilder.html" title="class in org.apache.kudu.client">KuduClient.KuduClientBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduClient.KuduClientBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduClient.KuduClientBuilder.html#nioExecutors-java.util.concurrent.Executor-java.util.concurrent.Executor-">nioExecutors</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/concurrent/Executor.html?is-external=true" title="class or interface in java.util.concurrent">Executor</a>&nbsp;bossExecutor,
+            <a href="http://docs.oracle.com/javase/7/docs/api/java/util/concurrent/Executor.html?is-external=true" title="class or interface in java.util.concurrent">Executor</a>&nbsp;workerExecutor)</code>
+<div class="block">Set the executors which will be used for the embedded Netty boss and workers.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/KuduClient.KuduClientBuilder.html" title="class in org.apache.kudu.client">KuduClient.KuduClientBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduClient.KuduClientBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduClient.KuduClientBuilder.html#workerCount-int-">workerCount</a></span>(int&nbsp;workerCount)</code>
+<div class="block">Set the maximum number of worker threads.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/KuduClient.KuduClientBuilder.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/KuduClient.KuduClientBuilder.html" target="_top">Frames</a></li>
+<li><a href="KuduClient.KuduClientBuilder.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/KuduClient.html b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/KuduClient.html
new file mode 100644
index 0000000..dec67e6
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/KuduClient.html
@@ -0,0 +1,284 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.client.KuduClient (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.client.KuduClient (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/KuduClient.html" target="_top">Frames</a></li>
+<li><a href="KuduClient.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.client.KuduClient" class="title">Uses of Class<br>org.apache.kudu.client.KuduClient</h2>
+</div>
+<div class="classUseContainer">
+<ul class="blockList">
+<li class="blockList">
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing packages, and an explanation">
+<caption><span>Packages that use <a href="../../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Package</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="#org.apache.kudu.client">org.apache.kudu.client</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a href="#org.apache.kudu.flume.sink">org.apache.kudu.flume.sink</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a href="#org.apache.kudu.mapreduce">org.apache.kudu.mapreduce</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList">
+<ul class="blockList">
+<li class="blockList"><a name="org.apache.kudu.client">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a> in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> that return <a href="../../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduClient.KuduClientBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduClient.KuduClientBuilder.html#build--">build</a></span>()</code>
+<div class="block">Creates a new client that connects to the masters.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncKuduClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AsyncKuduClient.html#syncClient--">syncClient</a></span>()</code>
+<div class="block">Returns a synchronous <a href="../../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client"><code>KuduClient</code></a> which wraps this asynchronous client.</div>
+</td>
+</tr>
+</tbody>
+</table>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> with parameters of type <a href="../../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/KuduScanner.html" title="class in org.apache.kudu.client">KuduScanner</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduScanToken.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduScanToken.html#deserializeIntoScanner-byte:A-org.apache.kudu.client.KuduClient-">deserializeIntoScanner</a></span>(byte[]&nbsp;buf,
+                      <a href="../../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a>&nbsp;client)</code>
+<div class="block">Deserializes a <code>KuduScanToken</code> into a <a href="../../../../../org/apache/kudu/client/KuduScanner.html" title="class in org.apache.kudu.client"><code>KuduScanner</code></a>.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/KuduScanner.html" title="class in org.apache.kudu.client">KuduScanner</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduScanToken.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduScanToken.html#intoScanner-org.apache.kudu.client.KuduClient-">intoScanner</a></span>(<a href="../../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a>&nbsp;client)</code>
+<div class="block">Creates a <a href="../../../../../org/apache/kudu/client/KuduScanner.html" title="class in org.apache.kudu.client"><code>KuduScanner</code></a> from this scan token.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduScanToken.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduScanToken.html#stringifySerializedToken-byte:A-org.apache.kudu.client.KuduClient-">stringifySerializedToken</a></span>(byte[]&nbsp;buf,
+                        <a href="../../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a>&nbsp;client)</code>
+<div class="block">Formats the serialized token for debug printing.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList"><a name="org.apache.kudu.flume.sink">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a> in <a href="../../../../../org/apache/kudu/flume/sink/package-summary.html">org.apache.kudu.flume.sink</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/flume/sink/package-summary.html">org.apache.kudu.flume.sink</a> that return <a href="../../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduSink.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/KuduSink.html#getClient--">getClient</a></span>()</code>&nbsp;</td>
+</tr>
+</tbody>
+</table>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing constructors, and an explanation">
+<caption><span>Constructors in <a href="../../../../../org/apache/kudu/flume/sink/package-summary.html">org.apache.kudu.flume.sink</a> with parameters of type <a href="../../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colOne" scope="col">Constructor and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/KuduSink.html#KuduSink-org.apache.kudu.client.KuduClient-">KuduSink</a></span>(<a href="../../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a>&nbsp;kuduClient)</code>&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList"><a name="org.apache.kudu.mapreduce">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a> in <a href="../../../../../org/apache/kudu/mapreduce/package-summary.html">org.apache.kudu.mapreduce</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/mapreduce/package-summary.html">org.apache.kudu.mapreduce</a> that return <a href="../../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a></code></td>
+<td class="colLast"><span class="typeNameLabel">CommandLineParser.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/mapreduce/CommandLineParser.html#getClient--">getClient</a></span>()</code>
+<div class="block">Get a client connected to the configured Master(s).</div>
+</td>
+</tr>
+</tbody>
+</table>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/mapreduce/package-summary.html">org.apache.kudu.mapreduce</a> with parameters of type <a href="../../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code>static void</code></td>
+<td class="colLast"><span class="typeNameLabel">KuduTableMapReduceUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/mapreduce/KuduTableMapReduceUtil.html#addCredentialsToJob-org.apache.kudu.client.KuduClient-org.apache.hadoop.mapreduce.Job-">addCredentialsToJob</a></span>(<a href="../../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a>&nbsp;client,
+                   org.apache.hadoop.mapreduce.Job&nbsp;job)</code>
+<div class="block">Export the credentials from a <a href="../../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client"><code>KuduClient</code></a> and store them in the given MapReduce
+ <code>Job</code> so that <a href="../../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client"><code>KuduClient</code></a>s created from within tasks of that job can
+ authenticate to Kudu.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static void</code></td>
+<td class="colLast"><span class="typeNameLabel">KuduTableMapReduceUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/mapreduce/KuduTableMapReduceUtil.html#importCredentialsFromCurrentSubject-org.apache.kudu.client.KuduClient-">importCredentialsFromCurrentSubject</a></span>(<a href="../../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a>&nbsp;client)</code>
+<div class="block">Import credentials from the current thread's JAAS <a href="http://docs.oracle.com/javase/7/docs/api/javax/security/auth/Subject.html?is-external=true" title="class or interface in javax.security.auth"><code>Subject</code></a> into the provided
+ <a href="../../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client"><code>KuduClient</code></a>.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/KuduClient.html" target="_top">Frames</a></li>
+<li><a href="KuduClient.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/KuduException.html b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/KuduException.html
new file mode 100644
index 0000000..65d3470
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/KuduException.html
@@ -0,0 +1,316 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.client.KuduException (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.client.KuduException (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/KuduException.html" target="_top">Frames</a></li>
+<li><a href="KuduException.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.client.KuduException" class="title">Uses of Class<br>org.apache.kudu.client.KuduException</h2>
+</div>
+<div class="classUseContainer">
+<ul class="blockList">
+<li class="blockList">
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing packages, and an explanation">
+<caption><span>Packages that use <a href="../../../../../org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client">KuduException</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Package</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="#org.apache.kudu.client">org.apache.kudu.client</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a href="#org.apache.kudu.mapreduce">org.apache.kudu.mapreduce</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList">
+<ul class="blockList">
+<li class="blockList"><a name="org.apache.kudu.client">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../../org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client">KuduException</a> in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing subclasses, and an explanation">
+<caption><span>Subclasses of <a href="../../../../../org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client">KuduException</a> in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Class and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code>class&nbsp;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/PleaseThrottleException.html" title="class in org.apache.kudu.client">PleaseThrottleException</a></span></code>
+<div class="block">This exception notifies the application to throttle its use of Kudu.</div>
+</td>
+</tr>
+</tbody>
+</table>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> that throw <a href="../../../../../org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client">KuduException</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/AlterTableResponse.html" title="class in org.apache.kudu.client">AlterTableResponse</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduClient.html#alterTable-java.lang.String-org.apache.kudu.client.AlterTableOptions-">alterTable</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
+          <a href="../../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a>&nbsp;ato)</code>
+<div class="block">Alter a table on the cluster as specified by the builder.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/OperationResponse.html" title="class in org.apache.kudu.client">OperationResponse</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduSession.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduSession.html#apply-org.apache.kudu.client.Operation-">apply</a></span>(<a href="../../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">Operation</a>&nbsp;operation)</code>
+<div class="block">Apply a given <a href="../../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client"><code>Operation</code></a> to Kudu as part of this session.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>com.stumbleupon.async.Deferred&lt;<a href="../../../../../org/apache/kudu/client/OperationResponse.html" title="class in org.apache.kudu.client">OperationResponse</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncKuduSession.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AsyncKuduSession.html#apply-org.apache.kudu.client.Operation-">apply</a></span>(<a href="../../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">Operation</a>&nbsp;operation)</code>
+<div class="block">Apply the given operation.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/kudu/client/OperationResponse.html" title="class in org.apache.kudu.client">OperationResponse</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">KuduSession.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduSession.html#close--">close</a></span>()</code>
+<div class="block">Blocking call that flushes the buffers (see <a href="../../../../../org/apache/kudu/client/KuduSession.html#flush--"><code>KuduSession.flush()</code></a> and closes the sessions.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/RowResultIterator.html" title="class in org.apache.kudu.client">RowResultIterator</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduScanner.html#close--">close</a></span>()</code>
+<div class="block">Closes this scanner (don't forget to call this when you're done with it!).</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">KuduClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduClient.html#close--">close</a></span>()</code>
+<div class="block">Analogous to <a href="../../../../../org/apache/kudu/client/KuduClient.html#shutdown--"><code>KuduClient.shutdown()</code></a>.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduClient.html#createTable-java.lang.String-org.apache.kudu.Schema-org.apache.kudu.client.CreateTableOptions-">createTable</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
+           <a href="../../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a>&nbsp;schema,
+           <a href="../../../../../org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client">CreateTableOptions</a>&nbsp;builder)</code>
+<div class="block">Create a table on the cluster with the specified name, schema, and table configurations.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/DeleteTableResponse.html" title="class in org.apache.kudu.client">DeleteTableResponse</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduClient.html#deleteTable-java.lang.String-">deleteTable</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
+<div class="block">Delete a table on the cluster with the specified name.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>byte[]</code></td>
+<td class="colLast"><span class="typeNameLabel">KuduClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduClient.html#exportAuthenticationCredentials--">exportAuthenticationCredentials</a></span>()</code>
+<div class="block">Export serialized authentication data that may be passed to a different
+ client instance and imported to provide that client the ability to connect
+ to the cluster.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/kudu/client/OperationResponse.html" title="class in org.apache.kudu.client">OperationResponse</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">KuduSession.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduSession.html#flush--">flush</a></span>()</code>
+<div class="block">Blocking call that force flushes this session's buffers.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/ListTablesResponse.html" title="class in org.apache.kudu.client">ListTablesResponse</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduClient.html#getTablesList--">getTablesList</a></span>()</code>
+<div class="block">Get the list of all the tables.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/ListTablesResponse.html" title="class in org.apache.kudu.client">ListTablesResponse</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduClient.html#getTablesList-java.lang.String-">getTablesList</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;nameFilter)</code>
+<div class="block">Get a list of table names.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">KuduClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduClient.html#isAlterTableDone-java.lang.String-">isAlterTableDone</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
+<div class="block">Helper method that checks and waits until the completion of an alter command.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/ListTabletServersResponse.html" title="class in org.apache.kudu.client">ListTabletServersResponse</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduClient.html#listTabletServers--">listTabletServers</a></span>()</code>
+<div class="block">Get the list of running tablet servers.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/RowResultIterator.html" title="class in org.apache.kudu.client">RowResultIterator</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduScanner.html#nextRows--">nextRows</a></span>()</code>
+<div class="block">Scans a number of rows.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduClient.html#openTable-java.lang.String-">openTable</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
+<div class="block">Open the table with the given name.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">KuduClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduClient.html#shutdown--">shutdown</a></span>()</code>
+<div class="block">Performs a graceful shutdown of this instance.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><span class="typeNameLabel">KuduClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduClient.html#tableExists-java.lang.String-">tableExists</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
+<div class="block">Test if a table exists.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList"><a name="org.apache.kudu.mapreduce">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../../org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client">KuduException</a> in <a href="../../../../../org/apache/kudu/mapreduce/package-summary.html">org.apache.kudu.mapreduce</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/mapreduce/package-summary.html">org.apache.kudu.mapreduce</a> that throw <a href="../../../../../org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client">KuduException</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code>static void</code></td>
+<td class="colLast"><span class="typeNameLabel">KuduTableMapReduceUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/mapreduce/KuduTableMapReduceUtil.html#addCredentialsToJob-org.apache.kudu.client.KuduClient-org.apache.hadoop.mapreduce.Job-">addCredentialsToJob</a></span>(<a href="../../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a>&nbsp;client,
+                   org.apache.hadoop.mapreduce.Job&nbsp;job)</code>
+<div class="block">Export the credentials from a <a href="../../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client"><code>KuduClient</code></a> and store them in the given MapReduce
+ <code>Job</code> so that <a href="../../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client"><code>KuduClient</code></a>s created from within tasks of that job can
+ authenticate to Kudu.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/KuduException.html" target="_top">Frames</a></li>
+<li><a href="KuduException.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/KuduPredicate.ComparisonOp.html b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/KuduPredicate.ComparisonOp.html
new file mode 100644
index 0000000..d988739
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/KuduPredicate.ComparisonOp.html
@@ -0,0 +1,231 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.client.KuduPredicate.ComparisonOp (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.client.KuduPredicate.ComparisonOp (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html" title="enum in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/KuduPredicate.ComparisonOp.html" target="_top">Frames</a></li>
+<li><a href="KuduPredicate.ComparisonOp.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.client.KuduPredicate.ComparisonOp" class="title">Uses of Class<br>org.apache.kudu.client.KuduPredicate.ComparisonOp</h2>
+</div>
+<div class="classUseContainer">
+<ul class="blockList">
+<li class="blockList">
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing packages, and an explanation">
+<caption><span>Packages that use <a href="../../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html" title="enum in org.apache.kudu.client">KuduPredicate.ComparisonOp</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Package</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="#org.apache.kudu.client">org.apache.kudu.client</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList">
+<ul class="blockList">
+<li class="blockList"><a name="org.apache.kudu.client">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html" title="enum in org.apache.kudu.client">KuduPredicate.ComparisonOp</a> in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> that return <a href="../../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html" title="enum in org.apache.kudu.client">KuduPredicate.ComparisonOp</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html" title="enum in org.apache.kudu.client">KuduPredicate.ComparisonOp</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduPredicate.ComparisonOp.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html#valueOf-java.lang.String-">valueOf</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
+<div class="block">Returns the enum constant of this type with the specified name.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html" title="enum in org.apache.kudu.client">KuduPredicate.ComparisonOp</a>[]</code></td>
+<td class="colLast"><span class="typeNameLabel">KuduPredicate.ComparisonOp.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html#values--">values</a></span>()</code>
+<div class="block">Returns an array containing the constants of this enum type, in
+the order they are declared.</div>
+</td>
+</tr>
+</tbody>
+</table>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> with parameters of type <a href="../../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html" title="enum in org.apache.kudu.client">KuduPredicate.ComparisonOp</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduPredicate.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduPredicate.html#newComparisonPredicate-org.apache.kudu.ColumnSchema-org.apache.kudu.client.KuduPredicate.ComparisonOp-boolean-">newComparisonPredicate</a></span>(<a href="../../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a>&nbsp;column,
+                      <a href="../../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html" title="enum in org.apache.kudu.client">KuduPredicate.ComparisonOp</a>&nbsp;op,
+                      boolean&nbsp;value)</code>
+<div class="block">Creates a new <code>KuduPredicate</code> on a boolean column.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduPredicate.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduPredicate.html#newComparisonPredicate-org.apache.kudu.ColumnSchema-org.apache.kudu.client.KuduPredicate.ComparisonOp-byte:A-">newComparisonPredicate</a></span>(<a href="../../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a>&nbsp;column,
+                      <a href="../../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html" title="enum in org.apache.kudu.client">KuduPredicate.ComparisonOp</a>&nbsp;op,
+                      byte[]&nbsp;value)</code>
+<div class="block">Creates a new comparison predicate on a binary column.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduPredicate.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduPredicate.html#newComparisonPredicate-org.apache.kudu.ColumnSchema-org.apache.kudu.client.KuduPredicate.ComparisonOp-double-">newComparisonPredicate</a></span>(<a href="../../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a>&nbsp;column,
+                      <a href="../../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html" title="enum in org.apache.kudu.client">KuduPredicate.ComparisonOp</a>&nbsp;op,
+                      double&nbsp;value)</code>
+<div class="block">Creates a new comparison predicate on a double column.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduPredicate.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduPredicate.html#newComparisonPredicate-org.apache.kudu.ColumnSchema-org.apache.kudu.client.KuduPredicate.ComparisonOp-float-">newComparisonPredicate</a></span>(<a href="../../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a>&nbsp;column,
+                      <a href="../../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html" title="enum in org.apache.kudu.client">KuduPredicate.ComparisonOp</a>&nbsp;op,
+                      float&nbsp;value)</code>
+<div class="block">Creates a new comparison predicate on a float column.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduPredicate.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduPredicate.html#newComparisonPredicate-org.apache.kudu.ColumnSchema-org.apache.kudu.client.KuduPredicate.ComparisonOp-long-">newComparisonPredicate</a></span>(<a href="../../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a>&nbsp;column,
+                      <a href="../../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html" title="enum in org.apache.kudu.client">KuduPredicate.ComparisonOp</a>&nbsp;op,
+                      long&nbsp;value)</code>
+<div class="block">Creates a new comparison predicate on an integer or timestamp column.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduPredicate.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduPredicate.html#newComparisonPredicate-org.apache.kudu.ColumnSchema-org.apache.kudu.client.KuduPredicate.ComparisonOp-java.lang.String-">newComparisonPredicate</a></span>(<a href="../../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a>&nbsp;column,
+                      <a href="../../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html" title="enum in org.apache.kudu.client">KuduPredicate.ComparisonOp</a>&nbsp;op,
+                      <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;value)</code>
+<div class="block">Creates a new comparison predicate on a string column.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html" title="enum in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/KuduPredicate.ComparisonOp.html" target="_top">Frames</a></li>
+<li><a href="KuduPredicate.ComparisonOp.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/KuduPredicate.html b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/KuduPredicate.html
new file mode 100644
index 0000000..7e1c58d
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/KuduPredicate.html
@@ -0,0 +1,257 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.client.KuduPredicate (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.client.KuduPredicate (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/KuduPredicate.html" target="_top">Frames</a></li>
+<li><a href="KuduPredicate.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.client.KuduPredicate" class="title">Uses of Class<br>org.apache.kudu.client.KuduPredicate</h2>
+</div>
+<div class="classUseContainer">
+<ul class="blockList">
+<li class="blockList">
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing packages, and an explanation">
+<caption><span>Packages that use <a href="../../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Package</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="#org.apache.kudu.client">org.apache.kudu.client</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList">
+<ul class="blockList">
+<li class="blockList"><a name="org.apache.kudu.client">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a> in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> that return <a href="../../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduPredicate.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduPredicate.html#fromPB-org.apache.kudu.Schema-org.apache.kudu.Common.ColumnPredicatePB-">fromPB</a></span>(<a href="../../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a>&nbsp;schema,
+      org.apache.kudu.Common.ColumnPredicatePB&nbsp;pb)</code>
+<div class="block">Convert a column predicate protobuf message into a predicate.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduPredicate.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduPredicate.html#newComparisonPredicate-org.apache.kudu.ColumnSchema-org.apache.kudu.client.KuduPredicate.ComparisonOp-boolean-">newComparisonPredicate</a></span>(<a href="../../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a>&nbsp;column,
+                      <a href="../../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html" title="enum in org.apache.kudu.client">KuduPredicate.ComparisonOp</a>&nbsp;op,
+                      boolean&nbsp;value)</code>
+<div class="block">Creates a new <code>KuduPredicate</code> on a boolean column.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduPredicate.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduPredicate.html#newComparisonPredicate-org.apache.kudu.ColumnSchema-org.apache.kudu.client.KuduPredicate.ComparisonOp-byte:A-">newComparisonPredicate</a></span>(<a href="../../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a>&nbsp;column,
+                      <a href="../../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html" title="enum in org.apache.kudu.client">KuduPredicate.ComparisonOp</a>&nbsp;op,
+                      byte[]&nbsp;value)</code>
+<div class="block">Creates a new comparison predicate on a binary column.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduPredicate.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduPredicate.html#newComparisonPredicate-org.apache.kudu.ColumnSchema-org.apache.kudu.client.KuduPredicate.ComparisonOp-double-">newComparisonPredicate</a></span>(<a href="../../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a>&nbsp;column,
+                      <a href="../../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html" title="enum in org.apache.kudu.client">KuduPredicate.ComparisonOp</a>&nbsp;op,
+                      double&nbsp;value)</code>
+<div class="block">Creates a new comparison predicate on a double column.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduPredicate.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduPredicate.html#newComparisonPredicate-org.apache.kudu.ColumnSchema-org.apache.kudu.client.KuduPredicate.ComparisonOp-float-">newComparisonPredicate</a></span>(<a href="../../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a>&nbsp;column,
+                      <a href="../../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html" title="enum in org.apache.kudu.client">KuduPredicate.ComparisonOp</a>&nbsp;op,
+                      float&nbsp;value)</code>
+<div class="block">Creates a new comparison predicate on a float column.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduPredicate.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduPredicate.html#newComparisonPredicate-org.apache.kudu.ColumnSchema-org.apache.kudu.client.KuduPredicate.ComparisonOp-long-">newComparisonPredicate</a></span>(<a href="../../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a>&nbsp;column,
+                      <a href="../../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html" title="enum in org.apache.kudu.client">KuduPredicate.ComparisonOp</a>&nbsp;op,
+                      long&nbsp;value)</code>
+<div class="block">Creates a new comparison predicate on an integer or timestamp column.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduPredicate.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduPredicate.html#newComparisonPredicate-org.apache.kudu.ColumnSchema-org.apache.kudu.client.KuduPredicate.ComparisonOp-java.lang.String-">newComparisonPredicate</a></span>(<a href="../../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a>&nbsp;column,
+                      <a href="../../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html" title="enum in org.apache.kudu.client">KuduPredicate.ComparisonOp</a>&nbsp;op,
+                      <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;value)</code>
+<div class="block">Creates a new comparison predicate on a string column.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static &lt;T&gt;&nbsp;<a href="../../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduPredicate.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduPredicate.html#newInListPredicate-org.apache.kudu.ColumnSchema-java.util.List-">newInListPredicate</a></span>(<a href="../../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a>&nbsp;column,
+                  <a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;T&gt;&nbsp;values)</code>
+<div class="block">Creates a new IN list predicate.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduPredicate.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduPredicate.html#newIsNotNullPredicate-org.apache.kudu.ColumnSchema-">newIsNotNullPredicate</a></span>(<a href="../../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a>&nbsp;column)</code>
+<div class="block">Creates a new <code>IS NOT NULL</code> predicate.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduPredicate.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduPredicate.html#newIsNullPredicate-org.apache.kudu.ColumnSchema-">newIsNullPredicate</a></span>(<a href="../../../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a>&nbsp;column)</code>
+<div class="block">Creates a new <code>IS NULL</code> predicate.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ColumnRangePredicate.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/ColumnRangePredicate.html#toKuduPredicate--">toKuduPredicate</a></span>()</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+<div class="block">Convert this column range predicate into a <a href="../../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client"><code>KuduPredicate</code></a>.</div>
+</td>
+</tr>
+</tbody>
+</table>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> with parameters of type <a href="../../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="type parameter in AbstractKuduScannerBuilder">S</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AbstractKuduScannerBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#addPredicate-org.apache.kudu.client.KuduPredicate-">addPredicate</a></span>(<a href="../../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a>&nbsp;predicate)</code>
+<div class="block">Adds a predicate to the scan.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/KuduPredicate.html" target="_top">Frames</a></li>
+<li><a href="KuduPredicate.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/KuduScanToken.KuduScanTokenBuilder.html b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/KuduScanToken.KuduScanTokenBuilder.html
new file mode 100644
index 0000000..96ee83e
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/KuduScanToken.KuduScanTokenBuilder.html
@@ -0,0 +1,173 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.client.KuduScanToken.KuduScanTokenBuilder (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.client.KuduScanToken.KuduScanTokenBuilder (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/KuduScanToken.KuduScanTokenBuilder.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/KuduScanToken.KuduScanTokenBuilder.html" target="_top">Frames</a></li>
+<li><a href="KuduScanToken.KuduScanTokenBuilder.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.client.KuduScanToken.KuduScanTokenBuilder" class="title">Uses of Class<br>org.apache.kudu.client.KuduScanToken.KuduScanTokenBuilder</h2>
+</div>
+<div class="classUseContainer">
+<ul class="blockList">
+<li class="blockList">
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing packages, and an explanation">
+<caption><span>Packages that use <a href="../../../../../org/apache/kudu/client/KuduScanToken.KuduScanTokenBuilder.html" title="class in org.apache.kudu.client">KuduScanToken.KuduScanTokenBuilder</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Package</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="#org.apache.kudu.client">org.apache.kudu.client</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList">
+<ul class="blockList">
+<li class="blockList"><a name="org.apache.kudu.client">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../../org/apache/kudu/client/KuduScanToken.KuduScanTokenBuilder.html" title="class in org.apache.kudu.client">KuduScanToken.KuduScanTokenBuilder</a> in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> that return <a href="../../../../../org/apache/kudu/client/KuduScanToken.KuduScanTokenBuilder.html" title="class in org.apache.kudu.client">KuduScanToken.KuduScanTokenBuilder</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/KuduScanToken.KuduScanTokenBuilder.html" title="class in org.apache.kudu.client">KuduScanToken.KuduScanTokenBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduClient.html#newScanTokenBuilder-org.apache.kudu.client.KuduTable-">newScanTokenBuilder</a></span>(<a href="../../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a>&nbsp;table)</code>
+<div class="block">Creates a new <a href="../../../../../org/apache/kudu/client/KuduScanToken.KuduScanTokenBuilder.html" title="class in org.apache.kudu.client"><code>KuduScanToken.KuduScanTokenBuilder</code></a> for a particular table.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/KuduScanToken.KuduScanTokenBuilder.html" title="class in org.apache.kudu.client">KuduScanToken.KuduScanTokenBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduScanToken.KuduScanTokenBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduScanToken.KuduScanTokenBuilder.html#setTimeout-long-">setTimeout</a></span>(long&nbsp;timeoutMs)</code>
+<div class="block">Sets a timeout value to use when building the list of scan tokens.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/KuduScanToken.KuduScanTokenBuilder.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/KuduScanToken.KuduScanTokenBuilder.html" target="_top">Frames</a></li>
+<li><a href="KuduScanToken.KuduScanTokenBuilder.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/KuduScanToken.html b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/KuduScanToken.html
new file mode 100644
index 0000000..f98166a
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/KuduScanToken.html
@@ -0,0 +1,178 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.client.KuduScanToken (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.client.KuduScanToken (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/KuduScanToken.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/KuduScanToken.html" target="_top">Frames</a></li>
+<li><a href="KuduScanToken.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.client.KuduScanToken" class="title">Uses of Class<br>org.apache.kudu.client.KuduScanToken</h2>
+</div>
+<div class="classUseContainer">
+<ul class="blockList">
+<li class="blockList">
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing packages, and an explanation">
+<caption><span>Packages that use <a href="../../../../../org/apache/kudu/client/KuduScanToken.html" title="class in org.apache.kudu.client">KuduScanToken</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Package</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="#org.apache.kudu.client">org.apache.kudu.client</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList">
+<ul class="blockList">
+<li class="blockList"><a name="org.apache.kudu.client">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../../org/apache/kudu/client/KuduScanToken.html" title="class in org.apache.kudu.client">KuduScanToken</a> in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> that return types with arguments of type <a href="../../../../../org/apache/kudu/client/KuduScanToken.html" title="class in org.apache.kudu.client">KuduScanToken</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/kudu/client/KuduScanToken.html" title="class in org.apache.kudu.client">KuduScanToken</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">KuduScanToken.KuduScanTokenBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduScanToken.KuduScanTokenBuilder.html#build--">build</a></span>()</code>&nbsp;</td>
+</tr>
+</tbody>
+</table>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> with parameters of type <a href="../../../../../org/apache/kudu/client/KuduScanToken.html" title="class in org.apache.kudu.client">KuduScanToken</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><span class="typeNameLabel">KuduScanToken.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduScanToken.html#compareTo-org.apache.kudu.client.KuduScanToken-">compareTo</a></span>(<a href="../../../../../org/apache/kudu/client/KuduScanToken.html" title="class in org.apache.kudu.client">KuduScanToken</a>&nbsp;other)</code>&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/KuduScanToken.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/KuduScanToken.html" target="_top">Frames</a></li>
+<li><a href="KuduScanToken.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/KuduScanner.KuduScannerBuilder.html b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/KuduScanner.KuduScannerBuilder.html
new file mode 100644
index 0000000..b457d7a
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/KuduScanner.KuduScannerBuilder.html
@@ -0,0 +1,167 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.client.KuduScanner.KuduScannerBuilder (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.client.KuduScanner.KuduScannerBuilder (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/KuduScanner.KuduScannerBuilder.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/KuduScanner.KuduScannerBuilder.html" target="_top">Frames</a></li>
+<li><a href="KuduScanner.KuduScannerBuilder.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.client.KuduScanner.KuduScannerBuilder" class="title">Uses of Class<br>org.apache.kudu.client.KuduScanner.KuduScannerBuilder</h2>
+</div>
+<div class="classUseContainer">
+<ul class="blockList">
+<li class="blockList">
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing packages, and an explanation">
+<caption><span>Packages that use <a href="../../../../../org/apache/kudu/client/KuduScanner.KuduScannerBuilder.html" title="class in org.apache.kudu.client">KuduScanner.KuduScannerBuilder</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Package</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="#org.apache.kudu.client">org.apache.kudu.client</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList">
+<ul class="blockList">
+<li class="blockList"><a name="org.apache.kudu.client">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../../org/apache/kudu/client/KuduScanner.KuduScannerBuilder.html" title="class in org.apache.kudu.client">KuduScanner.KuduScannerBuilder</a> in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> that return <a href="../../../../../org/apache/kudu/client/KuduScanner.KuduScannerBuilder.html" title="class in org.apache.kudu.client">KuduScanner.KuduScannerBuilder</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/KuduScanner.KuduScannerBuilder.html" title="class in org.apache.kudu.client">KuduScanner.KuduScannerBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduClient.html#newScannerBuilder-org.apache.kudu.client.KuduTable-">newScannerBuilder</a></span>(<a href="../../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a>&nbsp;table)</code>
+<div class="block">Creates a new <a href="../../../../../org/apache/kudu/client/KuduScanner.KuduScannerBuilder.html" title="class in org.apache.kudu.client"><code>KuduScanner.KuduScannerBuilder</code></a> for a particular table.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/KuduScanner.KuduScannerBuilder.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/KuduScanner.KuduScannerBuilder.html" target="_top">Frames</a></li>
+<li><a href="KuduScanner.KuduScannerBuilder.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/KuduScanner.html b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/KuduScanner.html
new file mode 100644
index 0000000..7628194
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/KuduScanner.html
@@ -0,0 +1,180 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.client.KuduScanner (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.client.KuduScanner (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/KuduScanner.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/KuduScanner.html" target="_top">Frames</a></li>
+<li><a href="KuduScanner.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.client.KuduScanner" class="title">Uses of Class<br>org.apache.kudu.client.KuduScanner</h2>
+</div>
+<div class="classUseContainer">
+<ul class="blockList">
+<li class="blockList">
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing packages, and an explanation">
+<caption><span>Packages that use <a href="../../../../../org/apache/kudu/client/KuduScanner.html" title="class in org.apache.kudu.client">KuduScanner</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Package</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="#org.apache.kudu.client">org.apache.kudu.client</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList">
+<ul class="blockList">
+<li class="blockList"><a name="org.apache.kudu.client">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../../org/apache/kudu/client/KuduScanner.html" title="class in org.apache.kudu.client">KuduScanner</a> in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> that return <a href="../../../../../org/apache/kudu/client/KuduScanner.html" title="class in org.apache.kudu.client">KuduScanner</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/KuduScanner.html" title="class in org.apache.kudu.client">KuduScanner</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduScanner.KuduScannerBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduScanner.KuduScannerBuilder.html#build--">build</a></span>()</code>
+<div class="block">Builds a <a href="../../../../../org/apache/kudu/client/KuduScanner.html" title="class in org.apache.kudu.client"><code>KuduScanner</code></a> using the passed configurations.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/KuduScanner.html" title="class in org.apache.kudu.client">KuduScanner</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduScanToken.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduScanToken.html#deserializeIntoScanner-byte:A-org.apache.kudu.client.KuduClient-">deserializeIntoScanner</a></span>(byte[]&nbsp;buf,
+                      <a href="../../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a>&nbsp;client)</code>
+<div class="block">Deserializes a <code>KuduScanToken</code> into a <a href="../../../../../org/apache/kudu/client/KuduScanner.html" title="class in org.apache.kudu.client"><code>KuduScanner</code></a>.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/KuduScanner.html" title="class in org.apache.kudu.client">KuduScanner</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduScanToken.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduScanToken.html#intoScanner-org.apache.kudu.client.KuduClient-">intoScanner</a></span>(<a href="../../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a>&nbsp;client)</code>
+<div class="block">Creates a <a href="../../../../../org/apache/kudu/client/KuduScanner.html" title="class in org.apache.kudu.client"><code>KuduScanner</code></a> from this scan token.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/KuduScanner.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/KuduScanner.html" target="_top">Frames</a></li>
+<li><a href="KuduScanner.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/KuduSession.html b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/KuduSession.html
new file mode 100644
index 0000000..6265070
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/KuduSession.html
@@ -0,0 +1,167 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.client.KuduSession (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.client.KuduSession (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/KuduSession.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/KuduSession.html" target="_top">Frames</a></li>
+<li><a href="KuduSession.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.client.KuduSession" class="title">Uses of Class<br>org.apache.kudu.client.KuduSession</h2>
+</div>
+<div class="classUseContainer">
+<ul class="blockList">
+<li class="blockList">
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing packages, and an explanation">
+<caption><span>Packages that use <a href="../../../../../org/apache/kudu/client/KuduSession.html" title="class in org.apache.kudu.client">KuduSession</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Package</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="#org.apache.kudu.client">org.apache.kudu.client</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList">
+<ul class="blockList">
+<li class="blockList"><a name="org.apache.kudu.client">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../../org/apache/kudu/client/KuduSession.html" title="class in org.apache.kudu.client">KuduSession</a> in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> that return <a href="../../../../../org/apache/kudu/client/KuduSession.html" title="class in org.apache.kudu.client">KuduSession</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/KuduSession.html" title="class in org.apache.kudu.client">KuduSession</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduClient.html#newSession--">newSession</a></span>()</code>
+<div class="block">Create a new session for interacting with the cluster.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/KuduSession.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/KuduSession.html" target="_top">Frames</a></li>
+<li><a href="KuduSession.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/KuduTable.html b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/KuduTable.html
new file mode 100644
index 0000000..efd9e0d
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/KuduTable.html
@@ -0,0 +1,294 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.client.KuduTable (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.client.KuduTable (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/KuduTable.html" target="_top">Frames</a></li>
+<li><a href="KuduTable.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.client.KuduTable" class="title">Uses of Class<br>org.apache.kudu.client.KuduTable</h2>
+</div>
+<div class="classUseContainer">
+<ul class="blockList">
+<li class="blockList">
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing packages, and an explanation">
+<caption><span>Packages that use <a href="../../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Package</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="#org.apache.kudu.client">org.apache.kudu.client</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a href="#org.apache.kudu.flume.sink">org.apache.kudu.flume.sink</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a href="#org.apache.kudu.mapreduce">org.apache.kudu.mapreduce</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList">
+<ul class="blockList">
+<li class="blockList"><a name="org.apache.kudu.client">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a> in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> that return <a href="../../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduClient.html#createTable-java.lang.String-org.apache.kudu.Schema-org.apache.kudu.client.CreateTableOptions-">createTable</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
+           <a href="../../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a>&nbsp;schema,
+           <a href="../../../../../org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client">CreateTableOptions</a>&nbsp;builder)</code>
+<div class="block">Create a table on the cluster with the specified name, schema, and table configurations.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduClient.html#openTable-java.lang.String-">openTable</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
+<div class="block">Open the table with the given name.</div>
+</td>
+</tr>
+</tbody>
+</table>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> that return types with arguments of type <a href="../../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code>com.stumbleupon.async.Deferred&lt;<a href="../../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncKuduClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AsyncKuduClient.html#createTable-java.lang.String-org.apache.kudu.Schema-org.apache.kudu.client.CreateTableOptions-">createTable</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
+           <a href="../../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a>&nbsp;schema,
+           <a href="../../../../../org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client">CreateTableOptions</a>&nbsp;builder)</code>
+<div class="block">Create a table on the cluster with the specified name, schema, and table configurations.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>com.stumbleupon.async.Deferred&lt;<a href="../../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncKuduClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AsyncKuduClient.html#openTable-java.lang.String-">openTable</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
+<div class="block">Open the table with the given name.</div>
+</td>
+</tr>
+</tbody>
+</table>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> with parameters of type <a href="../../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/KuduScanner.KuduScannerBuilder.html" title="class in org.apache.kudu.client">KuduScanner.KuduScannerBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduClient.html#newScannerBuilder-org.apache.kudu.client.KuduTable-">newScannerBuilder</a></span>(<a href="../../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a>&nbsp;table)</code>
+<div class="block">Creates a new <a href="../../../../../org/apache/kudu/client/KuduScanner.KuduScannerBuilder.html" title="class in org.apache.kudu.client"><code>KuduScanner.KuduScannerBuilder</code></a> for a particular table.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/AsyncKuduScanner.AsyncKuduScannerBuilder.html" title="class in org.apache.kudu.client">AsyncKuduScanner.AsyncKuduScannerBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncKuduClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AsyncKuduClient.html#newScannerBuilder-org.apache.kudu.client.KuduTable-">newScannerBuilder</a></span>(<a href="../../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a>&nbsp;table)</code>
+<div class="block">Creates a new <a href="../../../../../org/apache/kudu/client/AsyncKuduScanner.AsyncKuduScannerBuilder.html" title="class in org.apache.kudu.client"><code>AsyncKuduScanner.AsyncKuduScannerBuilder</code></a> for a particular table.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/KuduScanToken.KuduScanTokenBuilder.html" title="class in org.apache.kudu.client">KuduScanToken.KuduScanTokenBuilder</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduClient.html#newScanTokenBuilder-org.apache.kudu.client.KuduTable-">newScanTokenBuilder</a></span>(<a href="../../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a>&nbsp;table)</code>
+<div class="block">Creates a new <a href="../../../../../org/apache/kudu/client/KuduScanToken.KuduScanTokenBuilder.html" title="class in org.apache.kudu.client"><code>KuduScanToken.KuduScanTokenBuilder</code></a> for a particular table.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList"><a name="org.apache.kudu.flume.sink">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a> in <a href="../../../../../org/apache/kudu/flume/sink/package-summary.html">org.apache.kudu.flume.sink</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/flume/sink/package-summary.html">org.apache.kudu.flume.sink</a> with parameters of type <a href="../../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">RegexpKuduOperationsProducer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html#initialize-org.apache.kudu.client.KuduTable-">initialize</a></span>(<a href="../../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a>&nbsp;table)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">SimpleKeyedKuduOperationsProducer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/SimpleKeyedKuduOperationsProducer.html#initialize-org.apache.kudu.client.KuduTable-">initialize</a></span>(<a href="../../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a>&nbsp;table)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">AvroKuduOperationsProducer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/AvroKuduOperationsProducer.html#initialize-org.apache.kudu.client.KuduTable-">initialize</a></span>(<a href="../../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a>&nbsp;table)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">KuduOperationsProducer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html#initialize-org.apache.kudu.client.KuduTable-">initialize</a></span>(<a href="../../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a>&nbsp;table)</code>
+<div class="block">Initializes the operations producer.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">SimpleKuduOperationsProducer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/SimpleKuduOperationsProducer.html#initialize-org.apache.kudu.client.KuduTable-">initialize</a></span>(<a href="../../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a>&nbsp;table)</code>&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList"><a name="org.apache.kudu.mapreduce">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a> in <a href="../../../../../org/apache/kudu/mapreduce/package-summary.html">org.apache.kudu.mapreduce</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/mapreduce/package-summary.html">org.apache.kudu.mapreduce</a> that return <a href="../../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduTableOutputFormat.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/mapreduce/KuduTableOutputFormat.html#getKuduTable-java.lang.String-">getKuduTable</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;multitonKey)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduTableMapReduceUtil.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/mapreduce/KuduTableMapReduceUtil.html#getTableFromContext-org.apache.hadoop.mapreduce.TaskInputOutputContext-">getTableFromContext</a></span>(org.apache.hadoop.mapreduce.TaskInputOutputContext&nbsp;context)</code>
+<div class="block">Use this method when setting up a task to get access to the KuduTable in order to create
+ Inserts, Updates, and Deletes.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/KuduTable.html" target="_top">Frames</a></li>
+<li><a href="KuduTable.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/ListTablesResponse.html b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/ListTablesResponse.html
new file mode 100644
index 0000000..0e1cac3
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/ListTablesResponse.html
@@ -0,0 +1,194 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.client.ListTablesResponse (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.client.ListTablesResponse (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/ListTablesResponse.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/ListTablesResponse.html" target="_top">Frames</a></li>
+<li><a href="ListTablesResponse.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.client.ListTablesResponse" class="title">Uses of Class<br>org.apache.kudu.client.ListTablesResponse</h2>
+</div>
+<div class="classUseContainer">
+<ul class="blockList">
+<li class="blockList">
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing packages, and an explanation">
+<caption><span>Packages that use <a href="../../../../../org/apache/kudu/client/ListTablesResponse.html" title="class in org.apache.kudu.client">ListTablesResponse</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Package</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="#org.apache.kudu.client">org.apache.kudu.client</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList">
+<ul class="blockList">
+<li class="blockList"><a name="org.apache.kudu.client">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../../org/apache/kudu/client/ListTablesResponse.html" title="class in org.apache.kudu.client">ListTablesResponse</a> in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> that return <a href="../../../../../org/apache/kudu/client/ListTablesResponse.html" title="class in org.apache.kudu.client">ListTablesResponse</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/ListTablesResponse.html" title="class in org.apache.kudu.client">ListTablesResponse</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduClient.html#getTablesList--">getTablesList</a></span>()</code>
+<div class="block">Get the list of all the tables.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/ListTablesResponse.html" title="class in org.apache.kudu.client">ListTablesResponse</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduClient.html#getTablesList-java.lang.String-">getTablesList</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;nameFilter)</code>
+<div class="block">Get a list of table names.</div>
+</td>
+</tr>
+</tbody>
+</table>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> that return types with arguments of type <a href="../../../../../org/apache/kudu/client/ListTablesResponse.html" title="class in org.apache.kudu.client">ListTablesResponse</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code>com.stumbleupon.async.Deferred&lt;<a href="../../../../../org/apache/kudu/client/ListTablesResponse.html" title="class in org.apache.kudu.client">ListTablesResponse</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncKuduClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AsyncKuduClient.html#getTablesList--">getTablesList</a></span>()</code>
+<div class="block">Get the list of all the tables.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>com.stumbleupon.async.Deferred&lt;<a href="../../../../../org/apache/kudu/client/ListTablesResponse.html" title="class in org.apache.kudu.client">ListTablesResponse</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncKuduClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AsyncKuduClient.html#getTablesList-java.lang.String-">getTablesList</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;nameFilter)</code>
+<div class="block">Get a list of table names.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/ListTablesResponse.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/ListTablesResponse.html" target="_top">Frames</a></li>
+<li><a href="ListTablesResponse.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/ListTabletServersResponse.html b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/ListTabletServersResponse.html
new file mode 100644
index 0000000..eaf930f
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/ListTabletServersResponse.html
@@ -0,0 +1,182 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.client.ListTabletServersResponse (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.client.ListTabletServersResponse (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/ListTabletServersResponse.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/ListTabletServersResponse.html" target="_top">Frames</a></li>
+<li><a href="ListTabletServersResponse.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.client.ListTabletServersResponse" class="title">Uses of Class<br>org.apache.kudu.client.ListTabletServersResponse</h2>
+</div>
+<div class="classUseContainer">
+<ul class="blockList">
+<li class="blockList">
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing packages, and an explanation">
+<caption><span>Packages that use <a href="../../../../../org/apache/kudu/client/ListTabletServersResponse.html" title="class in org.apache.kudu.client">ListTabletServersResponse</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Package</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="#org.apache.kudu.client">org.apache.kudu.client</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList">
+<ul class="blockList">
+<li class="blockList"><a name="org.apache.kudu.client">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../../org/apache/kudu/client/ListTabletServersResponse.html" title="class in org.apache.kudu.client">ListTabletServersResponse</a> in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> that return <a href="../../../../../org/apache/kudu/client/ListTabletServersResponse.html" title="class in org.apache.kudu.client">ListTabletServersResponse</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/ListTabletServersResponse.html" title="class in org.apache.kudu.client">ListTabletServersResponse</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduClient.html#listTabletServers--">listTabletServers</a></span>()</code>
+<div class="block">Get the list of running tablet servers.</div>
+</td>
+</tr>
+</tbody>
+</table>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> that return types with arguments of type <a href="../../../../../org/apache/kudu/client/ListTabletServersResponse.html" title="class in org.apache.kudu.client">ListTabletServersResponse</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code>com.stumbleupon.async.Deferred&lt;<a href="../../../../../org/apache/kudu/client/ListTabletServersResponse.html" title="class in org.apache.kudu.client">ListTabletServersResponse</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncKuduClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AsyncKuduClient.html#listTabletServers--">listTabletServers</a></span>()</code>
+<div class="block">Get the list of running tablet servers.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/ListTabletServersResponse.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/ListTabletServersResponse.html" target="_top">Frames</a></li>
+<li><a href="ListTabletServersResponse.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/LocatedTablet.Replica.html b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/LocatedTablet.Replica.html
new file mode 100644
index 0000000..9ffe577
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/LocatedTablet.Replica.html
@@ -0,0 +1,180 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.client.LocatedTablet.Replica (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.client.LocatedTablet.Replica (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/LocatedTablet.Replica.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/LocatedTablet.Replica.html" target="_top">Frames</a></li>
+<li><a href="LocatedTablet.Replica.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.client.LocatedTablet.Replica" class="title">Uses of Class<br>org.apache.kudu.client.LocatedTablet.Replica</h2>
+</div>
+<div class="classUseContainer">
+<ul class="blockList">
+<li class="blockList">
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing packages, and an explanation">
+<caption><span>Packages that use <a href="../../../../../org/apache/kudu/client/LocatedTablet.Replica.html" title="class in org.apache.kudu.client">LocatedTablet.Replica</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Package</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="#org.apache.kudu.client">org.apache.kudu.client</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList">
+<ul class="blockList">
+<li class="blockList"><a name="org.apache.kudu.client">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../../org/apache/kudu/client/LocatedTablet.Replica.html" title="class in org.apache.kudu.client">LocatedTablet.Replica</a> in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> that return <a href="../../../../../org/apache/kudu/client/LocatedTablet.Replica.html" title="class in org.apache.kudu.client">LocatedTablet.Replica</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/LocatedTablet.Replica.html" title="class in org.apache.kudu.client">LocatedTablet.Replica</a></code></td>
+<td class="colLast"><span class="typeNameLabel">LocatedTablet.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/LocatedTablet.html#getLeaderReplica--">getLeaderReplica</a></span>()</code>
+<div class="block">Return the current leader, or null if there is none.</div>
+</td>
+</tr>
+</tbody>
+</table>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> that return types with arguments of type <a href="../../../../../org/apache/kudu/client/LocatedTablet.Replica.html" title="class in org.apache.kudu.client">LocatedTablet.Replica</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/kudu/client/LocatedTablet.Replica.html" title="class in org.apache.kudu.client">LocatedTablet.Replica</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">LocatedTablet.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/LocatedTablet.html#getReplicas--">getReplicas</a></span>()</code>&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/LocatedTablet.Replica.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/LocatedTablet.Replica.html" target="_top">Frames</a></li>
+<li><a href="LocatedTablet.Replica.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/LocatedTablet.html b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/LocatedTablet.html
new file mode 100644
index 0000000..315f027
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/LocatedTablet.html
@@ -0,0 +1,212 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.client.LocatedTablet (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.client.LocatedTablet (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/LocatedTablet.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/LocatedTablet.html" target="_top">Frames</a></li>
+<li><a href="LocatedTablet.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.client.LocatedTablet" class="title">Uses of Class<br>org.apache.kudu.client.LocatedTablet</h2>
+</div>
+<div class="classUseContainer">
+<ul class="blockList">
+<li class="blockList">
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing packages, and an explanation">
+<caption><span>Packages that use <a href="../../../../../org/apache/kudu/client/LocatedTablet.html" title="class in org.apache.kudu.client">LocatedTablet</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Package</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="#org.apache.kudu.client">org.apache.kudu.client</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList">
+<ul class="blockList">
+<li class="blockList"><a name="org.apache.kudu.client">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../../org/apache/kudu/client/LocatedTablet.html" title="class in org.apache.kudu.client">LocatedTablet</a> in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> that return <a href="../../../../../org/apache/kudu/client/LocatedTablet.html" title="class in org.apache.kudu.client">LocatedTablet</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/LocatedTablet.html" title="class in org.apache.kudu.client">LocatedTablet</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduScanToken.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduScanToken.html#getTablet--">getTablet</a></span>()</code>
+<div class="block">Returns the tablet which the scanner created from this token will access.</div>
+</td>
+</tr>
+</tbody>
+</table>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> that return types with arguments of type <a href="../../../../../org/apache/kudu/client/LocatedTablet.html" title="class in org.apache.kudu.client">LocatedTablet</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code>com.stumbleupon.async.Deferred&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/kudu/client/LocatedTablet.html" title="class in org.apache.kudu.client">LocatedTablet</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">KuduTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduTable.html#asyncGetTabletsLocations-byte:A-byte:A-long-">asyncGetTabletsLocations</a></span>(byte[]&nbsp;startKey,
+                        byte[]&nbsp;endKey,
+                        long&nbsp;deadline)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;
+<div class="block"><span class="deprecationComment">use the <a href="../../../../../org/apache/kudu/client/KuduScanToken.html" title="class in org.apache.kudu.client"><code>KuduScanToken</code></a> API</span></div>
+</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>com.stumbleupon.async.Deferred&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/kudu/client/LocatedTablet.html" title="class in org.apache.kudu.client">LocatedTablet</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">KuduTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduTable.html#asyncGetTabletsLocations-long-">asyncGetTabletsLocations</a></span>(long&nbsp;deadline)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;
+<div class="block"><span class="deprecationComment">use the <a href="../../../../../org/apache/kudu/client/KuduScanToken.html" title="class in org.apache.kudu.client"><code>KuduScanToken</code></a> API</span></div>
+</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/kudu/client/LocatedTablet.html" title="class in org.apache.kudu.client">LocatedTablet</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">KuduTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduTable.html#getTabletsLocations-byte:A-byte:A-long-">getTabletsLocations</a></span>(byte[]&nbsp;startKey,
+                   byte[]&nbsp;endKey,
+                   long&nbsp;deadline)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;
+<div class="block"><span class="deprecationComment">use the <a href="../../../../../org/apache/kudu/client/KuduScanToken.html" title="class in org.apache.kudu.client"><code>KuduScanToken</code></a> API</span></div>
+</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/kudu/client/LocatedTablet.html" title="class in org.apache.kudu.client">LocatedTablet</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">KuduTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduTable.html#getTabletsLocations-long-">getTabletsLocations</a></span>(long&nbsp;deadline)</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;
+<div class="block"><span class="deprecationComment">use the <a href="../../../../../org/apache/kudu/client/KuduScanToken.html" title="class in org.apache.kudu.client"><code>KuduScanToken</code></a> API</span></div>
+</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/LocatedTablet.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/LocatedTablet.html" target="_top">Frames</a></li>
+<li><a href="LocatedTablet.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/Operation.html b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/Operation.html
new file mode 100644
index 0000000..c43457a
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/Operation.html
@@ -0,0 +1,289 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.client.Operation (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.client.Operation (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/Operation.html" target="_top">Frames</a></li>
+<li><a href="Operation.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.client.Operation" class="title">Uses of Class<br>org.apache.kudu.client.Operation</h2>
+</div>
+<div class="classUseContainer">
+<ul class="blockList">
+<li class="blockList">
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing packages, and an explanation">
+<caption><span>Packages that use <a href="../../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">Operation</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Package</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="#org.apache.kudu.client">org.apache.kudu.client</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a href="#org.apache.kudu.flume.sink">org.apache.kudu.flume.sink</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a href="#org.apache.kudu.mapreduce">org.apache.kudu.mapreduce</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList">
+<ul class="blockList">
+<li class="blockList"><a name="org.apache.kudu.client">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">Operation</a> in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing subclasses, and an explanation">
+<caption><span>Subclasses of <a href="../../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">Operation</a> in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Class and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code>class&nbsp;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/Delete.html" title="class in org.apache.kudu.client">Delete</a></span></code>
+<div class="block">Class of Operation for whole row removals.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>class&nbsp;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/Insert.html" title="class in org.apache.kudu.client">Insert</a></span></code>
+<div class="block">Represents a single row insert.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>class&nbsp;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/Update.html" title="class in org.apache.kudu.client">Update</a></span></code>
+<div class="block">Operation to update columns on an existing row.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>class&nbsp;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/Upsert.html" title="class in org.apache.kudu.client">Upsert</a></span></code>
+<div class="block">Represents a single row upsert.</div>
+</td>
+</tr>
+</tbody>
+</table>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> that return <a href="../../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">Operation</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">Operation</a></code></td>
+<td class="colLast"><span class="typeNameLabel">PleaseThrottleException.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/PleaseThrottleException.html#getFailedRpc--">getFailedRpc</a></span>()</code>
+<div class="block">The RPC that was made to fail with this exception.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">Operation</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RowError.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/RowError.html#getOperation--">getOperation</a></span>()</code>
+<div class="block">Get the Operation that failed.</div>
+</td>
+</tr>
+</tbody>
+</table>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> with parameters of type <a href="../../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">Operation</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/OperationResponse.html" title="class in org.apache.kudu.client">OperationResponse</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduSession.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduSession.html#apply-org.apache.kudu.client.Operation-">apply</a></span>(<a href="../../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">Operation</a>&nbsp;operation)</code>
+<div class="block">Apply a given <a href="../../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client"><code>Operation</code></a> to Kudu as part of this session.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>com.stumbleupon.async.Deferred&lt;<a href="../../../../../org/apache/kudu/client/OperationResponse.html" title="class in org.apache.kudu.client">OperationResponse</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncKuduSession.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AsyncKuduSession.html#apply-org.apache.kudu.client.Operation-">apply</a></span>(<a href="../../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">Operation</a>&nbsp;operation)</code>
+<div class="block">Apply the given operation.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList"><a name="org.apache.kudu.flume.sink">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">Operation</a> in <a href="../../../../../org/apache/kudu/flume/sink/package-summary.html">org.apache.kudu.flume.sink</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/flume/sink/package-summary.html">org.apache.kudu.flume.sink</a> that return types with arguments of type <a href="../../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">Operation</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">Operation</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RegexpKuduOperationsProducer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html#getOperations-org.apache.flume.Event-">getOperations</a></span>(org.apache.flume.Event&nbsp;event)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">Operation</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">SimpleKeyedKuduOperationsProducer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/SimpleKeyedKuduOperationsProducer.html#getOperations-org.apache.flume.Event-">getOperations</a></span>(org.apache.flume.Event&nbsp;event)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">Operation</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AvroKuduOperationsProducer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/AvroKuduOperationsProducer.html#getOperations-org.apache.flume.Event-">getOperations</a></span>(org.apache.flume.Event&nbsp;event)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">Operation</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">KuduOperationsProducer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html#getOperations-org.apache.flume.Event-">getOperations</a></span>(org.apache.flume.Event&nbsp;event)</code>
+<div class="block">Returns the operations that should be written to Kudu as a result of this event.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">Operation</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">SimpleKuduOperationsProducer.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/SimpleKuduOperationsProducer.html#getOperations-org.apache.flume.Event-">getOperations</a></span>(org.apache.flume.Event&nbsp;event)</code>&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList"><a name="org.apache.kudu.mapreduce">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">Operation</a> in <a href="../../../../../org/apache/kudu/mapreduce/package-summary.html">org.apache.kudu.mapreduce</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/mapreduce/package-summary.html">org.apache.kudu.mapreduce</a> that return types with arguments of type <a href="../../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">Operation</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code>org.apache.hadoop.mapreduce.RecordWriter&lt;org.apache.hadoop.io.NullWritable,<a href="../../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">Operation</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">KuduTableOutputFormat.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/mapreduce/KuduTableOutputFormat.html#getRecordWriter-org.apache.hadoop.mapreduce.TaskAttemptContext-">getRecordWriter</a></span>(org.apache.hadoop.mapreduce.TaskAttemptContext&nbsp;taskAttemptContext)</code>&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/Operation.html" target="_top">Frames</a></li>
+<li><a href="Operation.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/OperationResponse.html b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/OperationResponse.html
new file mode 100644
index 0000000..c69aa5b
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/OperationResponse.html
@@ -0,0 +1,221 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.client.OperationResponse (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.client.OperationResponse (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/OperationResponse.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/OperationResponse.html" target="_top">Frames</a></li>
+<li><a href="OperationResponse.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.client.OperationResponse" class="title">Uses of Class<br>org.apache.kudu.client.OperationResponse</h2>
+</div>
+<div class="classUseContainer">
+<ul class="blockList">
+<li class="blockList">
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing packages, and an explanation">
+<caption><span>Packages that use <a href="../../../../../org/apache/kudu/client/OperationResponse.html" title="class in org.apache.kudu.client">OperationResponse</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Package</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="#org.apache.kudu.client">org.apache.kudu.client</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList">
+<ul class="blockList">
+<li class="blockList"><a name="org.apache.kudu.client">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../../org/apache/kudu/client/OperationResponse.html" title="class in org.apache.kudu.client">OperationResponse</a> in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> that return <a href="../../../../../org/apache/kudu/client/OperationResponse.html" title="class in org.apache.kudu.client">OperationResponse</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/OperationResponse.html" title="class in org.apache.kudu.client">OperationResponse</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduSession.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduSession.html#apply-org.apache.kudu.client.Operation-">apply</a></span>(<a href="../../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">Operation</a>&nbsp;operation)</code>
+<div class="block">Apply a given <a href="../../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client"><code>Operation</code></a> to Kudu as part of this session.</div>
+</td>
+</tr>
+</tbody>
+</table>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> that return types with arguments of type <a href="../../../../../org/apache/kudu/client/OperationResponse.html" title="class in org.apache.kudu.client">OperationResponse</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code>com.stumbleupon.async.Deferred&lt;<a href="../../../../../org/apache/kudu/client/OperationResponse.html" title="class in org.apache.kudu.client">OperationResponse</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncKuduSession.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AsyncKuduSession.html#apply-org.apache.kudu.client.Operation-">apply</a></span>(<a href="../../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">Operation</a>&nbsp;operation)</code>
+<div class="block">Apply the given operation.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/kudu/client/OperationResponse.html" title="class in org.apache.kudu.client">OperationResponse</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">KuduSession.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduSession.html#close--">close</a></span>()</code>
+<div class="block">Blocking call that flushes the buffers (see <a href="../../../../../org/apache/kudu/client/KuduSession.html#flush--"><code>KuduSession.flush()</code></a> and closes the sessions.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>com.stumbleupon.async.Deferred&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/kudu/client/OperationResponse.html" title="class in org.apache.kudu.client">OperationResponse</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncKuduSession.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AsyncKuduSession.html#close--">close</a></span>()</code>
+<div class="block">Flushes the buffered operations and marks this session as closed.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/kudu/client/OperationResponse.html" title="class in org.apache.kudu.client">OperationResponse</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">KuduSession.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduSession.html#flush--">flush</a></span>()</code>
+<div class="block">Blocking call that force flushes this session's buffers.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>com.stumbleupon.async.Deferred&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/kudu/client/OperationResponse.html" title="class in org.apache.kudu.client">OperationResponse</a>&gt;&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncKuduSession.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AsyncKuduSession.html#flush--">flush</a></span>()</code>
+<div class="block">Flush buffered writes.</div>
+</td>
+</tr>
+</tbody>
+</table>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Method parameters in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> with type arguments of type <a href="../../../../../org/apache/kudu/client/OperationResponse.html" title="class in org.apache.kudu.client">OperationResponse</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/kudu/client/RowError.html" title="class in org.apache.kudu.client">RowError</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">OperationResponse.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/OperationResponse.html#collectErrors-java.util.List-">collectErrors</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/kudu/client/OperationResponse.html" title="class in org.apache.kudu.client">OperationResponse</a>&gt;&nbsp;responses)</code>
+<div class="block">Utility method that collects all the row errors from the given list of responses.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/OperationResponse.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/OperationResponse.html" target="_top">Frames</a></li>
+<li><a href="OperationResponse.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/PartialRow.html b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/PartialRow.html
new file mode 100644
index 0000000..7dd8abc
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/PartialRow.html
@@ -0,0 +1,269 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.client.PartialRow (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.client.PartialRow (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/PartialRow.html" target="_top">Frames</a></li>
+<li><a href="PartialRow.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.client.PartialRow" class="title">Uses of Class<br>org.apache.kudu.client.PartialRow</h2>
+</div>
+<div class="classUseContainer">
+<ul class="blockList">
+<li class="blockList">
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing packages, and an explanation">
+<caption><span>Packages that use <a href="../../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Package</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="#org.apache.kudu">org.apache.kudu</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a href="#org.apache.kudu.client">org.apache.kudu.client</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList">
+<ul class="blockList">
+<li class="blockList"><a name="org.apache.kudu">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a> in <a href="../../../../../org/apache/kudu/package-summary.html">org.apache.kudu</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/package-summary.html">org.apache.kudu</a> that return <a href="../../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Schema.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/Schema.html#newPartialRow--">newPartialRow</a></span>()</code>
+<div class="block">Creates a new partial row for the schema.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList"><a name="org.apache.kudu.client">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a> in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> that return <a href="../../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Operation.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/Operation.html#getRow--">getRow</a></span>()</code>
+<div class="block">Get the underlying row to modify.</div>
+</td>
+</tr>
+</tbody>
+</table>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> with parameters of type <a href="../../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client">CreateTableOptions</a></code></td>
+<td class="colLast"><span class="typeNameLabel">CreateTableOptions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/CreateTableOptions.html#addRangePartition-org.apache.kudu.client.PartialRow-org.apache.kudu.client.PartialRow-">addRangePartition</a></span>(<a href="../../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;lower,
+                 <a href="../../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;upper)</code>
+<div class="block">Add a range partition partition to the table with an inclusive lower bound
+ and an exclusive upper bound.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AlterTableOptions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AlterTableOptions.html#addRangePartition-org.apache.kudu.client.PartialRow-org.apache.kudu.client.PartialRow-">addRangePartition</a></span>(<a href="../../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;lowerBound,
+                 <a href="../../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;upperBound)</code>
+<div class="block">Add a range partition to the table with an inclusive lower bound and an exclusive upper bound.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client">CreateTableOptions</a></code></td>
+<td class="colLast"><span class="typeNameLabel">CreateTableOptions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/CreateTableOptions.html#addRangePartition-org.apache.kudu.client.PartialRow-org.apache.kudu.client.PartialRow-org.apache.kudu.client.RangePartitionBound-org.apache.kudu.client.RangePartitionBound-">addRangePartition</a></span>(<a href="../../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;lower,
+                 <a href="../../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;upper,
+                 <a href="../../../../../org/apache/kudu/client/RangePartitionBound.html" title="enum in org.apache.kudu.client">RangePartitionBound</a>&nbsp;lowerBoundType,
+                 <a href="../../../../../org/apache/kudu/client/RangePartitionBound.html" title="enum in org.apache.kudu.client">RangePartitionBound</a>&nbsp;upperBoundType)</code>
+<div class="block">Add a range partition partition to the table with a lower bound and upper
+ bound.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AlterTableOptions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AlterTableOptions.html#addRangePartition-org.apache.kudu.client.PartialRow-org.apache.kudu.client.PartialRow-org.apache.kudu.client.RangePartitionBound-org.apache.kudu.client.RangePartitionBound-">addRangePartition</a></span>(<a href="../../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;lowerBound,
+                 <a href="../../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;upperBound,
+                 <a href="../../../../../org/apache/kudu/client/RangePartitionBound.html" title="enum in org.apache.kudu.client">RangePartitionBound</a>&nbsp;lowerBoundType,
+                 <a href="../../../../../org/apache/kudu/client/RangePartitionBound.html" title="enum in org.apache.kudu.client">RangePartitionBound</a>&nbsp;upperBoundType)</code>
+<div class="block">Add a range partition to the table with a lower bound and upper bound.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client">CreateTableOptions</a></code></td>
+<td class="colLast"><span class="typeNameLabel">CreateTableOptions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/CreateTableOptions.html#addSplitRow-org.apache.kudu.client.PartialRow-">addSplitRow</a></span>(<a href="../../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;row)</code>
+<div class="block">Add a range partition split.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AlterTableOptions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AlterTableOptions.html#dropRangePartition-org.apache.kudu.client.PartialRow-org.apache.kudu.client.PartialRow-">dropRangePartition</a></span>(<a href="../../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;lowerBound,
+                  <a href="../../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;upperBound)</code>
+<div class="block">Drop the range partition from the table with the specified inclusive lower bound and exclusive
+ upper bound.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AlterTableOptions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AlterTableOptions.html#dropRangePartition-org.apache.kudu.client.PartialRow-org.apache.kudu.client.PartialRow-org.apache.kudu.client.RangePartitionBound-org.apache.kudu.client.RangePartitionBound-">dropRangePartition</a></span>(<a href="../../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;lowerBound,
+                  <a href="../../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;upperBound,
+                  <a href="../../../../../org/apache/kudu/client/RangePartitionBound.html" title="enum in org.apache.kudu.client">RangePartitionBound</a>&nbsp;lowerBoundType,
+                  <a href="../../../../../org/apache/kudu/client/RangePartitionBound.html" title="enum in org.apache.kudu.client">RangePartitionBound</a>&nbsp;upperBoundType)</code>
+<div class="block">Drop the range partition from the table with the specified lower bound and upper bound.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="type parameter in AbstractKuduScannerBuilder">S</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AbstractKuduScannerBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#exclusiveUpperBound-org.apache.kudu.client.PartialRow-">exclusiveUpperBound</a></span>(<a href="../../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;partialRow)</code>
+<div class="block">Add an upper bound (exclusive) primary key for the scan.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="type parameter in AbstractKuduScannerBuilder">S</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AbstractKuduScannerBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#lowerBound-org.apache.kudu.client.PartialRow-">lowerBound</a></span>(<a href="../../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;partialRow)</code>
+<div class="block">Add a lower bound (inclusive) primary key for the scan.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/PartialRow.html" target="_top">Frames</a></li>
+<li><a href="PartialRow.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/PleaseThrottleException.html b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/PleaseThrottleException.html
new file mode 100644
index 0000000..8414f95
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/PleaseThrottleException.html
@@ -0,0 +1,125 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.client.PleaseThrottleException (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.client.PleaseThrottleException (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/PleaseThrottleException.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/PleaseThrottleException.html" target="_top">Frames</a></li>
+<li><a href="PleaseThrottleException.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.client.PleaseThrottleException" class="title">Uses of Class<br>org.apache.kudu.client.PleaseThrottleException</h2>
+</div>
+<div class="classUseContainer">No usage of org.apache.kudu.client.PleaseThrottleException</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/PleaseThrottleException.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/PleaseThrottleException.html" target="_top">Frames</a></li>
+<li><a href="PleaseThrottleException.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/RangePartitionBound.html b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/RangePartitionBound.html
new file mode 100644
index 0000000..078a814
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/RangePartitionBound.html
@@ -0,0 +1,211 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.client.RangePartitionBound (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.client.RangePartitionBound (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/RangePartitionBound.html" title="enum in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/RangePartitionBound.html" target="_top">Frames</a></li>
+<li><a href="RangePartitionBound.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.client.RangePartitionBound" class="title">Uses of Class<br>org.apache.kudu.client.RangePartitionBound</h2>
+</div>
+<div class="classUseContainer">
+<ul class="blockList">
+<li class="blockList">
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing packages, and an explanation">
+<caption><span>Packages that use <a href="../../../../../org/apache/kudu/client/RangePartitionBound.html" title="enum in org.apache.kudu.client">RangePartitionBound</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Package</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="#org.apache.kudu.client">org.apache.kudu.client</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList">
+<ul class="blockList">
+<li class="blockList"><a name="org.apache.kudu.client">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../../org/apache/kudu/client/RangePartitionBound.html" title="enum in org.apache.kudu.client">RangePartitionBound</a> in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> that return <a href="../../../../../org/apache/kudu/client/RangePartitionBound.html" title="enum in org.apache.kudu.client">RangePartitionBound</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/RangePartitionBound.html" title="enum in org.apache.kudu.client">RangePartitionBound</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RangePartitionBound.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/RangePartitionBound.html#valueOf-java.lang.String-">valueOf</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
+<div class="block">Returns the enum constant of this type with the specified name.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/RangePartitionBound.html" title="enum in org.apache.kudu.client">RangePartitionBound</a>[]</code></td>
+<td class="colLast"><span class="typeNameLabel">RangePartitionBound.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/RangePartitionBound.html#values--">values</a></span>()</code>
+<div class="block">Returns an array containing the constants of this enum type, in
+the order they are declared.</div>
+</td>
+</tr>
+</tbody>
+</table>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> with parameters of type <a href="../../../../../org/apache/kudu/client/RangePartitionBound.html" title="enum in org.apache.kudu.client">RangePartitionBound</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client">CreateTableOptions</a></code></td>
+<td class="colLast"><span class="typeNameLabel">CreateTableOptions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/CreateTableOptions.html#addRangePartition-org.apache.kudu.client.PartialRow-org.apache.kudu.client.PartialRow-org.apache.kudu.client.RangePartitionBound-org.apache.kudu.client.RangePartitionBound-">addRangePartition</a></span>(<a href="../../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;lower,
+                 <a href="../../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;upper,
+                 <a href="../../../../../org/apache/kudu/client/RangePartitionBound.html" title="enum in org.apache.kudu.client">RangePartitionBound</a>&nbsp;lowerBoundType,
+                 <a href="../../../../../org/apache/kudu/client/RangePartitionBound.html" title="enum in org.apache.kudu.client">RangePartitionBound</a>&nbsp;upperBoundType)</code>
+<div class="block">Add a range partition partition to the table with a lower bound and upper
+ bound.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AlterTableOptions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AlterTableOptions.html#addRangePartition-org.apache.kudu.client.PartialRow-org.apache.kudu.client.PartialRow-org.apache.kudu.client.RangePartitionBound-org.apache.kudu.client.RangePartitionBound-">addRangePartition</a></span>(<a href="../../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;lowerBound,
+                 <a href="../../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;upperBound,
+                 <a href="../../../../../org/apache/kudu/client/RangePartitionBound.html" title="enum in org.apache.kudu.client">RangePartitionBound</a>&nbsp;lowerBoundType,
+                 <a href="../../../../../org/apache/kudu/client/RangePartitionBound.html" title="enum in org.apache.kudu.client">RangePartitionBound</a>&nbsp;upperBoundType)</code>
+<div class="block">Add a range partition to the table with a lower bound and upper bound.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AlterTableOptions.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AlterTableOptions.html#dropRangePartition-org.apache.kudu.client.PartialRow-org.apache.kudu.client.PartialRow-org.apache.kudu.client.RangePartitionBound-org.apache.kudu.client.RangePartitionBound-">dropRangePartition</a></span>(<a href="../../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;lowerBound,
+                  <a href="../../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a>&nbsp;upperBound,
+                  <a href="../../../../../org/apache/kudu/client/RangePartitionBound.html" title="enum in org.apache.kudu.client">RangePartitionBound</a>&nbsp;lowerBoundType,
+                  <a href="../../../../../org/apache/kudu/client/RangePartitionBound.html" title="enum in org.apache.kudu.client">RangePartitionBound</a>&nbsp;upperBoundType)</code>
+<div class="block">Drop the range partition from the table with the specified lower bound and upper bound.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/RangePartitionBound.html" title="enum in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/RangePartitionBound.html" target="_top">Frames</a></li>
+<li><a href="RangePartitionBound.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/ReplicaSelection.html b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/ReplicaSelection.html
new file mode 100644
index 0000000..bc3e901
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/ReplicaSelection.html
@@ -0,0 +1,189 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.client.ReplicaSelection (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.client.ReplicaSelection (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/ReplicaSelection.html" title="enum in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/ReplicaSelection.html" target="_top">Frames</a></li>
+<li><a href="ReplicaSelection.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.client.ReplicaSelection" class="title">Uses of Class<br>org.apache.kudu.client.ReplicaSelection</h2>
+</div>
+<div class="classUseContainer">
+<ul class="blockList">
+<li class="blockList">
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing packages, and an explanation">
+<caption><span>Packages that use <a href="../../../../../org/apache/kudu/client/ReplicaSelection.html" title="enum in org.apache.kudu.client">ReplicaSelection</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Package</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="#org.apache.kudu.client">org.apache.kudu.client</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList">
+<ul class="blockList">
+<li class="blockList"><a name="org.apache.kudu.client">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../../org/apache/kudu/client/ReplicaSelection.html" title="enum in org.apache.kudu.client">ReplicaSelection</a> in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> that return <a href="../../../../../org/apache/kudu/client/ReplicaSelection.html" title="enum in org.apache.kudu.client">ReplicaSelection</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/ReplicaSelection.html" title="enum in org.apache.kudu.client">ReplicaSelection</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ReplicaSelection.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/ReplicaSelection.html#valueOf-java.lang.String-">valueOf</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
+<div class="block">Returns the enum constant of this type with the specified name.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/ReplicaSelection.html" title="enum in org.apache.kudu.client">ReplicaSelection</a>[]</code></td>
+<td class="colLast"><span class="typeNameLabel">ReplicaSelection.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/ReplicaSelection.html#values--">values</a></span>()</code>
+<div class="block">Returns an array containing the constants of this enum type, in
+the order they are declared.</div>
+</td>
+</tr>
+</tbody>
+</table>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> with parameters of type <a href="../../../../../org/apache/kudu/client/ReplicaSelection.html" title="enum in org.apache.kudu.client">ReplicaSelection</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="type parameter in AbstractKuduScannerBuilder">S</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AbstractKuduScannerBuilder.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html#replicaSelection-org.apache.kudu.client.ReplicaSelection-">replicaSelection</a></span>(<a href="../../../../../org/apache/kudu/client/ReplicaSelection.html" title="enum in org.apache.kudu.client">ReplicaSelection</a>&nbsp;replicaSelection)</code>
+<div class="block">Sets the replica selection mechanism for this scanner.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/ReplicaSelection.html" title="enum in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/ReplicaSelection.html" target="_top">Frames</a></li>
+<li><a href="ReplicaSelection.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/RowError.html b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/RowError.html
new file mode 100644
index 0000000..b49ff61
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/RowError.html
@@ -0,0 +1,188 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.client.RowError (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.client.RowError (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/RowError.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/RowError.html" target="_top">Frames</a></li>
+<li><a href="RowError.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.client.RowError" class="title">Uses of Class<br>org.apache.kudu.client.RowError</h2>
+</div>
+<div class="classUseContainer">
+<ul class="blockList">
+<li class="blockList">
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing packages, and an explanation">
+<caption><span>Packages that use <a href="../../../../../org/apache/kudu/client/RowError.html" title="class in org.apache.kudu.client">RowError</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Package</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="#org.apache.kudu.client">org.apache.kudu.client</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList">
+<ul class="blockList">
+<li class="blockList"><a name="org.apache.kudu.client">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../../org/apache/kudu/client/RowError.html" title="class in org.apache.kudu.client">RowError</a> in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> that return <a href="../../../../../org/apache/kudu/client/RowError.html" title="class in org.apache.kudu.client">RowError</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/RowError.html" title="class in org.apache.kudu.client">RowError</a></code></td>
+<td class="colLast"><span class="typeNameLabel">OperationResponse.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/OperationResponse.html#getRowError--">getRowError</a></span>()</code>
+<div class="block">Returns a row error.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/RowError.html" title="class in org.apache.kudu.client">RowError</a>[]</code></td>
+<td class="colLast"><span class="typeNameLabel">RowErrorsAndOverflowStatus.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/RowErrorsAndOverflowStatus.html#getRowErrors--">getRowErrors</a></span>()</code>
+<div class="block">Get the collected row errors.</div>
+</td>
+</tr>
+</tbody>
+</table>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> that return types with arguments of type <a href="../../../../../org/apache/kudu/client/RowError.html" title="class in org.apache.kudu.client">RowError</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/kudu/client/RowError.html" title="class in org.apache.kudu.client">RowError</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">OperationResponse.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/OperationResponse.html#collectErrors-java.util.List-">collectErrors</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/kudu/client/OperationResponse.html" title="class in org.apache.kudu.client">OperationResponse</a>&gt;&nbsp;responses)</code>
+<div class="block">Utility method that collects all the row errors from the given list of responses.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/RowError.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/RowError.html" target="_top">Frames</a></li>
+<li><a href="RowError.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/RowErrorsAndOverflowStatus.html b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/RowErrorsAndOverflowStatus.html
new file mode 100644
index 0000000..7fbed10
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/RowErrorsAndOverflowStatus.html
@@ -0,0 +1,175 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.client.RowErrorsAndOverflowStatus (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.client.RowErrorsAndOverflowStatus (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/RowErrorsAndOverflowStatus.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/RowErrorsAndOverflowStatus.html" target="_top">Frames</a></li>
+<li><a href="RowErrorsAndOverflowStatus.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.client.RowErrorsAndOverflowStatus" class="title">Uses of Class<br>org.apache.kudu.client.RowErrorsAndOverflowStatus</h2>
+</div>
+<div class="classUseContainer">
+<ul class="blockList">
+<li class="blockList">
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing packages, and an explanation">
+<caption><span>Packages that use <a href="../../../../../org/apache/kudu/client/RowErrorsAndOverflowStatus.html" title="class in org.apache.kudu.client">RowErrorsAndOverflowStatus</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Package</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="#org.apache.kudu.client">org.apache.kudu.client</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList">
+<ul class="blockList">
+<li class="blockList"><a name="org.apache.kudu.client">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../../org/apache/kudu/client/RowErrorsAndOverflowStatus.html" title="class in org.apache.kudu.client">RowErrorsAndOverflowStatus</a> in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> that return <a href="../../../../../org/apache/kudu/client/RowErrorsAndOverflowStatus.html" title="class in org.apache.kudu.client">RowErrorsAndOverflowStatus</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/RowErrorsAndOverflowStatus.html" title="class in org.apache.kudu.client">RowErrorsAndOverflowStatus</a></code></td>
+<td class="colLast"><span class="typeNameLabel">SessionConfiguration.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/SessionConfiguration.html#getPendingErrors--">getPendingErrors</a></span>()</code>
+<div class="block">Return any errors from previous calls.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/RowErrorsAndOverflowStatus.html" title="class in org.apache.kudu.client">RowErrorsAndOverflowStatus</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduSession.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduSession.html#getPendingErrors--">getPendingErrors</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/RowErrorsAndOverflowStatus.html" title="class in org.apache.kudu.client">RowErrorsAndOverflowStatus</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncKuduSession.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AsyncKuduSession.html#getPendingErrors--">getPendingErrors</a></span>()</code>&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/RowErrorsAndOverflowStatus.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/RowErrorsAndOverflowStatus.html" target="_top">Frames</a></li>
+<li><a href="RowErrorsAndOverflowStatus.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/RowResult.html b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/RowResult.html
new file mode 100644
index 0000000..5b95aee
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/RowResult.html
@@ -0,0 +1,201 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.client.RowResult (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.client.RowResult (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/RowResult.html" target="_top">Frames</a></li>
+<li><a href="RowResult.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.client.RowResult" class="title">Uses of Class<br>org.apache.kudu.client.RowResult</h2>
+</div>
+<div class="classUseContainer">
+<ul class="blockList">
+<li class="blockList">
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing packages, and an explanation">
+<caption><span>Packages that use <a href="../../../../../org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Package</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="#org.apache.kudu.client">org.apache.kudu.client</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a href="#org.apache.kudu.mapreduce">org.apache.kudu.mapreduce</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList">
+<ul class="blockList">
+<li class="blockList"><a name="org.apache.kudu.client">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../../org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a> in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> that return <a href="../../../../../org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RowResultIterator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/RowResultIterator.html#next--">next</a></span>()</code>&nbsp;</td>
+</tr>
+</tbody>
+</table>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> that return types with arguments of type <a href="../../../../../org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;<a href="../../../../../org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">RowResultIterator.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/RowResultIterator.html#iterator--">iterator</a></span>()</code>&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList"><a name="org.apache.kudu.mapreduce">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../../org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a> in <a href="../../../../../org/apache/kudu/mapreduce/package-summary.html">org.apache.kudu.mapreduce</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/mapreduce/package-summary.html">org.apache.kudu.mapreduce</a> that return types with arguments of type <a href="../../../../../org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code>org.apache.hadoop.mapreduce.RecordReader&lt;org.apache.hadoop.io.NullWritable,<a href="../../../../../org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">KuduTableInputFormat.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/mapreduce/KuduTableInputFormat.html#createRecordReader-org.apache.hadoop.mapreduce.InputSplit-org.apache.hadoop.mapreduce.TaskAttemptContext-">createRecordReader</a></span>(org.apache.hadoop.mapreduce.InputSplit&nbsp;inputSplit,
+                  org.apache.hadoop.mapreduce.TaskAttemptContext&nbsp;taskAttemptContext)</code>&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/RowResult.html" target="_top">Frames</a></li>
+<li><a href="RowResult.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/RowResultIterator.html b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/RowResultIterator.html
new file mode 100644
index 0000000..eab9d51
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/RowResultIterator.html
@@ -0,0 +1,194 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.client.RowResultIterator (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.client.RowResultIterator (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/RowResultIterator.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/RowResultIterator.html" target="_top">Frames</a></li>
+<li><a href="RowResultIterator.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.client.RowResultIterator" class="title">Uses of Class<br>org.apache.kudu.client.RowResultIterator</h2>
+</div>
+<div class="classUseContainer">
+<ul class="blockList">
+<li class="blockList">
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing packages, and an explanation">
+<caption><span>Packages that use <a href="../../../../../org/apache/kudu/client/RowResultIterator.html" title="class in org.apache.kudu.client">RowResultIterator</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Package</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="#org.apache.kudu.client">org.apache.kudu.client</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList">
+<ul class="blockList">
+<li class="blockList"><a name="org.apache.kudu.client">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../../org/apache/kudu/client/RowResultIterator.html" title="class in org.apache.kudu.client">RowResultIterator</a> in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> that return <a href="../../../../../org/apache/kudu/client/RowResultIterator.html" title="class in org.apache.kudu.client">RowResultIterator</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/RowResultIterator.html" title="class in org.apache.kudu.client">RowResultIterator</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduScanner.html#close--">close</a></span>()</code>
+<div class="block">Closes this scanner (don't forget to call this when you're done with it!).</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/RowResultIterator.html" title="class in org.apache.kudu.client">RowResultIterator</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduScanner.html#nextRows--">nextRows</a></span>()</code>
+<div class="block">Scans a number of rows.</div>
+</td>
+</tr>
+</tbody>
+</table>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> that return types with arguments of type <a href="../../../../../org/apache/kudu/client/RowResultIterator.html" title="class in org.apache.kudu.client">RowResultIterator</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code>com.stumbleupon.async.Deferred&lt;<a href="../../../../../org/apache/kudu/client/RowResultIterator.html" title="class in org.apache.kudu.client">RowResultIterator</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncKuduScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AsyncKuduScanner.html#close--">close</a></span>()</code>
+<div class="block">Closes this scanner (don't forget to call this when you're done with it!).</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>com.stumbleupon.async.Deferred&lt;<a href="../../../../../org/apache/kudu/client/RowResultIterator.html" title="class in org.apache.kudu.client">RowResultIterator</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncKuduScanner.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AsyncKuduScanner.html#nextRows--">nextRows</a></span>()</code>
+<div class="block">Scans a number of rows.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/RowResultIterator.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/RowResultIterator.html" target="_top">Frames</a></li>
+<li><a href="RowResultIterator.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/SessionConfiguration.FlushMode.html b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/SessionConfiguration.FlushMode.html
new file mode 100644
index 0000000..fff3084
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/SessionConfiguration.FlushMode.html
@@ -0,0 +1,211 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.client.SessionConfiguration.FlushMode (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.client.SessionConfiguration.FlushMode (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html" title="enum in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/SessionConfiguration.FlushMode.html" target="_top">Frames</a></li>
+<li><a href="SessionConfiguration.FlushMode.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.client.SessionConfiguration.FlushMode" class="title">Uses of Class<br>org.apache.kudu.client.SessionConfiguration.FlushMode</h2>
+</div>
+<div class="classUseContainer">
+<ul class="blockList">
+<li class="blockList">
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing packages, and an explanation">
+<caption><span>Packages that use <a href="../../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html" title="enum in org.apache.kudu.client">SessionConfiguration.FlushMode</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Package</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="#org.apache.kudu.client">org.apache.kudu.client</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList">
+<ul class="blockList">
+<li class="blockList"><a name="org.apache.kudu.client">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html" title="enum in org.apache.kudu.client">SessionConfiguration.FlushMode</a> in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> that return <a href="../../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html" title="enum in org.apache.kudu.client">SessionConfiguration.FlushMode</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html" title="enum in org.apache.kudu.client">SessionConfiguration.FlushMode</a></code></td>
+<td class="colLast"><span class="typeNameLabel">SessionConfiguration.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/SessionConfiguration.html#getFlushMode--">getFlushMode</a></span>()</code>
+<div class="block">Get the current flush mode.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html" title="enum in org.apache.kudu.client">SessionConfiguration.FlushMode</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduSession.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduSession.html#getFlushMode--">getFlushMode</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html" title="enum in org.apache.kudu.client">SessionConfiguration.FlushMode</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncKuduSession.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AsyncKuduSession.html#getFlushMode--">getFlushMode</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html" title="enum in org.apache.kudu.client">SessionConfiguration.FlushMode</a></code></td>
+<td class="colLast"><span class="typeNameLabel">SessionConfiguration.FlushMode.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html#valueOf-java.lang.String-">valueOf</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
+<div class="block">Returns the enum constant of this type with the specified name.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html" title="enum in org.apache.kudu.client">SessionConfiguration.FlushMode</a>[]</code></td>
+<td class="colLast"><span class="typeNameLabel">SessionConfiguration.FlushMode.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html#values--">values</a></span>()</code>
+<div class="block">Returns an array containing the constants of this enum type, in
+the order they are declared.</div>
+</td>
+</tr>
+</tbody>
+</table>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> with parameters of type <a href="../../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html" title="enum in org.apache.kudu.client">SessionConfiguration.FlushMode</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">SessionConfiguration.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/SessionConfiguration.html#setFlushMode-org.apache.kudu.client.SessionConfiguration.FlushMode-">setFlushMode</a></span>(<a href="../../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html" title="enum in org.apache.kudu.client">SessionConfiguration.FlushMode</a>&nbsp;flushMode)</code>
+<div class="block">Set the new flush mode for this session.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">KuduSession.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduSession.html#setFlushMode-org.apache.kudu.client.SessionConfiguration.FlushMode-">setFlushMode</a></span>(<a href="../../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html" title="enum in org.apache.kudu.client">SessionConfiguration.FlushMode</a>&nbsp;flushMode)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncKuduSession.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AsyncKuduSession.html#setFlushMode-org.apache.kudu.client.SessionConfiguration.FlushMode-">setFlushMode</a></span>(<a href="../../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html" title="enum in org.apache.kudu.client">SessionConfiguration.FlushMode</a>&nbsp;flushMode)</code>&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html" title="enum in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/SessionConfiguration.FlushMode.html" target="_top">Frames</a></li>
+<li><a href="SessionConfiguration.FlushMode.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/SessionConfiguration.html b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/SessionConfiguration.html
new file mode 100644
index 0000000..f1b9064
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/SessionConfiguration.html
@@ -0,0 +1,174 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Interface org.apache.kudu.client.SessionConfiguration (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Interface org.apache.kudu.client.SessionConfiguration (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/SessionConfiguration.html" target="_top">Frames</a></li>
+<li><a href="SessionConfiguration.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Interface org.apache.kudu.client.SessionConfiguration" class="title">Uses of Interface<br>org.apache.kudu.client.SessionConfiguration</h2>
+</div>
+<div class="classUseContainer">
+<ul class="blockList">
+<li class="blockList">
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing packages, and an explanation">
+<caption><span>Packages that use <a href="../../../../../org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client">SessionConfiguration</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Package</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="#org.apache.kudu.client">org.apache.kudu.client</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList">
+<ul class="blockList">
+<li class="blockList"><a name="org.apache.kudu.client">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../../org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client">SessionConfiguration</a> in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing classes, and an explanation">
+<caption><span>Classes in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> that implement <a href="../../../../../org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client">SessionConfiguration</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Class and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code>class&nbsp;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AsyncKuduSession.html" title="class in org.apache.kudu.client">AsyncKuduSession</a></span></code>
+<div class="block">An <code>AsyncKuduSession</code> belongs to a specific <a href="../../../../../org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client"><code>AsyncKuduClient</code></a>, and represents a
+ context in which all write data access should take place.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>class&nbsp;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduSession.html" title="class in org.apache.kudu.client">KuduSession</a></span></code>
+<div class="block">Synchronous version of <a href="../../../../../org/apache/kudu/client/AsyncKuduSession.html" title="class in org.apache.kudu.client"><code>AsyncKuduSession</code></a>.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/SessionConfiguration.html" target="_top">Frames</a></li>
+<li><a href="SessionConfiguration.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/Statistics.Statistic.html b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/Statistics.Statistic.html
new file mode 100644
index 0000000..b81fa80
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/Statistics.Statistic.html
@@ -0,0 +1,203 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.client.Statistics.Statistic (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.client.Statistics.Statistic (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/Statistics.Statistic.html" title="enum in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/Statistics.Statistic.html" target="_top">Frames</a></li>
+<li><a href="Statistics.Statistic.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.client.Statistics.Statistic" class="title">Uses of Class<br>org.apache.kudu.client.Statistics.Statistic</h2>
+</div>
+<div class="classUseContainer">
+<ul class="blockList">
+<li class="blockList">
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing packages, and an explanation">
+<caption><span>Packages that use <a href="../../../../../org/apache/kudu/client/Statistics.Statistic.html" title="enum in org.apache.kudu.client">Statistics.Statistic</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Package</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="#org.apache.kudu.client">org.apache.kudu.client</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList">
+<ul class="blockList">
+<li class="blockList"><a name="org.apache.kudu.client">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../../org/apache/kudu/client/Statistics.Statistic.html" title="enum in org.apache.kudu.client">Statistics.Statistic</a> in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> that return <a href="../../../../../org/apache/kudu/client/Statistics.Statistic.html" title="enum in org.apache.kudu.client">Statistics.Statistic</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/Statistics.Statistic.html" title="enum in org.apache.kudu.client">Statistics.Statistic</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Statistics.Statistic.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/Statistics.Statistic.html#valueOf-java.lang.String-">valueOf</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
+<div class="block">Returns the enum constant of this type with the specified name.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/Statistics.Statistic.html" title="enum in org.apache.kudu.client">Statistics.Statistic</a>[]</code></td>
+<td class="colLast"><span class="typeNameLabel">Statistics.Statistic.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/Statistics.Statistic.html#values--">values</a></span>()</code>
+<div class="block">Returns an array containing the constants of this enum type, in
+the order they are declared.</div>
+</td>
+</tr>
+</tbody>
+</table>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> with parameters of type <a href="../../../../../org/apache/kudu/client/Statistics.Statistic.html" title="enum in org.apache.kudu.client">Statistics.Statistic</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code>long</code></td>
+<td class="colLast"><span class="typeNameLabel">Statistics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/Statistics.html#getClientStatistic-org.apache.kudu.client.Statistics.Statistic-">getClientStatistic</a></span>(<a href="../../../../../org/apache/kudu/client/Statistics.Statistic.html" title="enum in org.apache.kudu.client">Statistics.Statistic</a>&nbsp;statistic)</code>
+<div class="block">Get the statistic count of the whole client.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>long</code></td>
+<td class="colLast"><span class="typeNameLabel">Statistics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/Statistics.html#getTableStatistic-java.lang.String-org.apache.kudu.client.Statistics.Statistic-">getTableStatistic</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;tableName,
+                 <a href="../../../../../org/apache/kudu/client/Statistics.Statistic.html" title="enum in org.apache.kudu.client">Statistics.Statistic</a>&nbsp;statistic)</code>
+<div class="block">Get the statistic count of this table.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>long</code></td>
+<td class="colLast"><span class="typeNameLabel">Statistics.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/Statistics.html#getTabletStatistic-java.lang.String-org.apache.kudu.client.Statistics.Statistic-">getTabletStatistic</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;tabletId,
+                  <a href="../../../../../org/apache/kudu/client/Statistics.Statistic.html" title="enum in org.apache.kudu.client">Statistics.Statistic</a>&nbsp;statistic)</code>
+<div class="block">Get the statistic count of this tablet.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/Statistics.Statistic.html" title="enum in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/Statistics.Statistic.html" target="_top">Frames</a></li>
+<li><a href="Statistics.Statistic.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/Statistics.html b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/Statistics.html
new file mode 100644
index 0000000..26d73eb
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/Statistics.html
@@ -0,0 +1,173 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.client.Statistics (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.client.Statistics (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/Statistics.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/Statistics.html" target="_top">Frames</a></li>
+<li><a href="Statistics.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.client.Statistics" class="title">Uses of Class<br>org.apache.kudu.client.Statistics</h2>
+</div>
+<div class="classUseContainer">
+<ul class="blockList">
+<li class="blockList">
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing packages, and an explanation">
+<caption><span>Packages that use <a href="../../../../../org/apache/kudu/client/Statistics.html" title="class in org.apache.kudu.client">Statistics</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Package</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="#org.apache.kudu.client">org.apache.kudu.client</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList">
+<ul class="blockList">
+<li class="blockList"><a name="org.apache.kudu.client">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../../org/apache/kudu/client/Statistics.html" title="class in org.apache.kudu.client">Statistics</a> in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> that return <a href="../../../../../org/apache/kudu/client/Statistics.html" title="class in org.apache.kudu.client">Statistics</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/Statistics.html" title="class in org.apache.kudu.client">Statistics</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduClient.html#getStatistics--">getStatistics</a></span>()</code>
+<div class="block">Get the statistics object of this client.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/Statistics.html" title="class in org.apache.kudu.client">Statistics</a></code></td>
+<td class="colLast"><span class="typeNameLabel">AsyncKuduClient.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/AsyncKuduClient.html#getStatistics--">getStatistics</a></span>()</code>
+<div class="block">Get the statistics object of this client.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/Statistics.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/Statistics.html" target="_top">Frames</a></li>
+<li><a href="Statistics.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/Status.html b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/Status.html
new file mode 100644
index 0000000..d678d61
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/Status.html
@@ -0,0 +1,339 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.client.Status (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.client.Status (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/Status.html" target="_top">Frames</a></li>
+<li><a href="Status.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.client.Status" class="title">Uses of Class<br>org.apache.kudu.client.Status</h2>
+</div>
+<div class="classUseContainer">
+<ul class="blockList">
+<li class="blockList">
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing packages, and an explanation">
+<caption><span>Packages that use <a href="../../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Package</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="#org.apache.kudu.client">org.apache.kudu.client</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList">
+<ul class="blockList">
+<li class="blockList"><a name="org.apache.kudu.client">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a> in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> that return <a href="../../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Status.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/Status.html#Aborted-java.lang.String-">Aborted</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Status.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/Status.html#Aborted-java.lang.String-int-">Aborted</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg,
+       int&nbsp;posixCode)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Status.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/Status.html#AlreadyPresent-java.lang.String-">AlreadyPresent</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Status.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/Status.html#AlreadyPresent-java.lang.String-int-">AlreadyPresent</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg,
+              int&nbsp;posixCode)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Status.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/Status.html#ConfigurationError-java.lang.String-">ConfigurationError</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Status.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/Status.html#ConfigurationError-java.lang.String-int-">ConfigurationError</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg,
+                  int&nbsp;posixCode)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Status.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/Status.html#Corruption-java.lang.String-">Corruption</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Status.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/Status.html#Corruption-java.lang.String-int-">Corruption</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg,
+          int&nbsp;posixCode)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Status.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/Status.html#EndOfFile-java.lang.String-">EndOfFile</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Status.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/Status.html#EndOfFile-java.lang.String-int-">EndOfFile</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg,
+         int&nbsp;posixCode)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><span class="typeNameLabel">RowError.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/RowError.html#getErrorStatus--">getErrorStatus</a></span>()</code>
+<div class="block">Get the status code and message of the row error.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduException.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduException.html#getStatus--">getStatus</a></span>()</code>
+<div class="block">Get the Status object for this exception.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Status.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/Status.html#IllegalState-java.lang.String-">IllegalState</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Status.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/Status.html#IllegalState-java.lang.String-int-">IllegalState</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg,
+            int&nbsp;posixCode)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Status.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/Status.html#Incomplete-java.lang.String-">Incomplete</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Status.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/Status.html#Incomplete-java.lang.String-int-">Incomplete</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg,
+          int&nbsp;posixCode)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Status.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/Status.html#InvalidArgument-java.lang.String-">InvalidArgument</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Status.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/Status.html#InvalidArgument-java.lang.String-int-">InvalidArgument</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg,
+               int&nbsp;posixCode)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Status.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/Status.html#IOError-java.lang.String-">IOError</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Status.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/Status.html#IOError-java.lang.String-int-">IOError</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg,
+       int&nbsp;posixCode)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Status.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/Status.html#NetworkError-java.lang.String-">NetworkError</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Status.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/Status.html#NetworkError-java.lang.String-int-">NetworkError</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg,
+            int&nbsp;posixCode)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Status.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/Status.html#NotAuthorized-java.lang.String-">NotAuthorized</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Status.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/Status.html#NotAuthorized-java.lang.String-int-">NotAuthorized</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg,
+             int&nbsp;posixCode)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Status.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/Status.html#NotFound-java.lang.String-">NotFound</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Status.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/Status.html#NotFound-java.lang.String-int-">NotFound</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg,
+        int&nbsp;posixCode)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Status.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/Status.html#NotSupported-java.lang.String-">NotSupported</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Status.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/Status.html#NotSupported-java.lang.String-int-">NotSupported</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg,
+            int&nbsp;posixCode)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Status.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/Status.html#OK--">OK</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Status.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/Status.html#RemoteError-java.lang.String-">RemoteError</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Status.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/Status.html#RemoteError-java.lang.String-int-">RemoteError</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg,
+           int&nbsp;posixCode)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Status.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/Status.html#RuntimeError-java.lang.String-">RuntimeError</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Status.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/Status.html#RuntimeError-java.lang.String-int-">RuntimeError</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg,
+            int&nbsp;posixCode)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Status.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/Status.html#ServiceUnavailable-java.lang.String-">ServiceUnavailable</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Status.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/Status.html#ServiceUnavailable-java.lang.String-int-">ServiceUnavailable</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg,
+                  int&nbsp;posixCode)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Status.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/Status.html#TimedOut-java.lang.String-">TimedOut</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Status.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/Status.html#TimedOut-java.lang.String-int-">TimedOut</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg,
+        int&nbsp;posixCode)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Status.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/Status.html#Uninitialized-java.lang.String-">Uninitialized</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Status.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/Status.html#Uninitialized-java.lang.String-int-">Uninitialized</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg,
+             int&nbsp;posixCode)</code>&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/Status.html" target="_top">Frames</a></li>
+<li><a href="Status.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/Update.html b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/Update.html
new file mode 100644
index 0000000..de23cc8
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/Update.html
@@ -0,0 +1,167 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.client.Update (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.client.Update (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/Update.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/Update.html" target="_top">Frames</a></li>
+<li><a href="Update.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.client.Update" class="title">Uses of Class<br>org.apache.kudu.client.Update</h2>
+</div>
+<div class="classUseContainer">
+<ul class="blockList">
+<li class="blockList">
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing packages, and an explanation">
+<caption><span>Packages that use <a href="../../../../../org/apache/kudu/client/Update.html" title="class in org.apache.kudu.client">Update</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Package</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="#org.apache.kudu.client">org.apache.kudu.client</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList">
+<ul class="blockList">
+<li class="blockList"><a name="org.apache.kudu.client">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../../org/apache/kudu/client/Update.html" title="class in org.apache.kudu.client">Update</a> in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> that return <a href="../../../../../org/apache/kudu/client/Update.html" title="class in org.apache.kudu.client">Update</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/Update.html" title="class in org.apache.kudu.client">Update</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduTable.html#newUpdate--">newUpdate</a></span>()</code>
+<div class="block">Get a new update configured with this table's schema.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/Update.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/Update.html" target="_top">Frames</a></li>
+<li><a href="Update.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/Upsert.html b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/Upsert.html
new file mode 100644
index 0000000..f934cd8
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/class-use/Upsert.html
@@ -0,0 +1,167 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.client.Upsert (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.client.Upsert (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/Upsert.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/Upsert.html" target="_top">Frames</a></li>
+<li><a href="Upsert.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.client.Upsert" class="title">Uses of Class<br>org.apache.kudu.client.Upsert</h2>
+</div>
+<div class="classUseContainer">
+<ul class="blockList">
+<li class="blockList">
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing packages, and an explanation">
+<caption><span>Packages that use <a href="../../../../../org/apache/kudu/client/Upsert.html" title="class in org.apache.kudu.client">Upsert</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Package</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="#org.apache.kudu.client">org.apache.kudu.client</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList">
+<ul class="blockList">
+<li class="blockList"><a name="org.apache.kudu.client">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../../org/apache/kudu/client/Upsert.html" title="class in org.apache.kudu.client">Upsert</a> in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> that return <a href="../../../../../org/apache/kudu/client/Upsert.html" title="class in org.apache.kudu.client">Upsert</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/Upsert.html" title="class in org.apache.kudu.client">Upsert</a></code></td>
+<td class="colLast"><span class="typeNameLabel">KuduTable.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/client/KuduTable.html#newUpsert--">newUpsert</a></span>()</code>
+<div class="block">Get a new upsert configured with this table's schema.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/client/Upsert.html" title="class in org.apache.kudu.client">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/client/class-use/Upsert.html" target="_top">Frames</a></li>
+<li><a href="Upsert.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/package-frame.html b/releases/1.4.0/apidocs/org/apache/kudu/client/package-frame.html
new file mode 100644
index 0000000..4c94bb5
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/package-frame.html
@@ -0,0 +1,77 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>org.apache.kudu.client (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<h1 class="bar"><a href="../../../../org/apache/kudu/client/package-summary.html" target="classFrame">org.apache.kudu.client</a></h1>
+<div class="indexContainer">
+<h2 title="Interfaces">Interfaces</h2>
+<ul title="Interfaces">
+<li><a href="HasFailedRpcException.html" title="interface in org.apache.kudu.client" target="classFrame"><span class="interfaceName">HasFailedRpcException</span></a></li>
+<li><a href="SessionConfiguration.html" title="interface in org.apache.kudu.client" target="classFrame"><span class="interfaceName">SessionConfiguration</span></a></li>
+</ul>
+<h2 title="Classes">Classes</h2>
+<ul title="Classes">
+<li><a href="AbstractKuduScannerBuilder.html" title="class in org.apache.kudu.client" target="classFrame">AbstractKuduScannerBuilder</a></li>
+<li><a href="AlterTableOptions.html" title="class in org.apache.kudu.client" target="classFrame">AlterTableOptions</a></li>
+<li><a href="AlterTableResponse.html" title="class in org.apache.kudu.client" target="classFrame">AlterTableResponse</a></li>
+<li><a href="AsyncKuduClient.html" title="class in org.apache.kudu.client" target="classFrame">AsyncKuduClient</a></li>
+<li><a href="AsyncKuduClient.AsyncKuduClientBuilder.html" title="class in org.apache.kudu.client" target="classFrame">AsyncKuduClient.AsyncKuduClientBuilder</a></li>
+<li><a href="AsyncKuduScanner.html" title="class in org.apache.kudu.client" target="classFrame">AsyncKuduScanner</a></li>
+<li><a href="AsyncKuduScanner.AsyncKuduScannerBuilder.html" title="class in org.apache.kudu.client" target="classFrame">AsyncKuduScanner.AsyncKuduScannerBuilder</a></li>
+<li><a href="AsyncKuduSession.html" title="class in org.apache.kudu.client" target="classFrame">AsyncKuduSession</a></li>
+<li><a href="ColumnRangePredicate.html" title="class in org.apache.kudu.client" target="classFrame">ColumnRangePredicate</a></li>
+<li><a href="CreateTableOptions.html" title="class in org.apache.kudu.client" target="classFrame">CreateTableOptions</a></li>
+<li><a href="Delete.html" title="class in org.apache.kudu.client" target="classFrame">Delete</a></li>
+<li><a href="DeleteTableResponse.html" title="class in org.apache.kudu.client" target="classFrame">DeleteTableResponse</a></li>
+<li><a href="Insert.html" title="class in org.apache.kudu.client" target="classFrame">Insert</a></li>
+<li><a href="IsAlterTableDoneResponse.html" title="class in org.apache.kudu.client" target="classFrame">IsAlterTableDoneResponse</a></li>
+<li><a href="KuduClient.html" title="class in org.apache.kudu.client" target="classFrame">KuduClient</a></li>
+<li><a href="KuduClient.KuduClientBuilder.html" title="class in org.apache.kudu.client" target="classFrame">KuduClient.KuduClientBuilder</a></li>
+<li><a href="KuduPredicate.html" title="class in org.apache.kudu.client" target="classFrame">KuduPredicate</a></li>
+<li><a href="KuduScanner.html" title="class in org.apache.kudu.client" target="classFrame">KuduScanner</a></li>
+<li><a href="KuduScanner.KuduScannerBuilder.html" title="class in org.apache.kudu.client" target="classFrame">KuduScanner.KuduScannerBuilder</a></li>
+<li><a href="KuduScanToken.html" title="class in org.apache.kudu.client" target="classFrame">KuduScanToken</a></li>
+<li><a href="KuduScanToken.KuduScanTokenBuilder.html" title="class in org.apache.kudu.client" target="classFrame">KuduScanToken.KuduScanTokenBuilder</a></li>
+<li><a href="KuduSession.html" title="class in org.apache.kudu.client" target="classFrame">KuduSession</a></li>
+<li><a href="KuduTable.html" title="class in org.apache.kudu.client" target="classFrame">KuduTable</a></li>
+<li><a href="ListTablesResponse.html" title="class in org.apache.kudu.client" target="classFrame">ListTablesResponse</a></li>
+<li><a href="ListTabletServersResponse.html" title="class in org.apache.kudu.client" target="classFrame">ListTabletServersResponse</a></li>
+<li><a href="LocatedTablet.html" title="class in org.apache.kudu.client" target="classFrame">LocatedTablet</a></li>
+<li><a href="LocatedTablet.Replica.html" title="class in org.apache.kudu.client" target="classFrame">LocatedTablet.Replica</a></li>
+<li><a href="Operation.html" title="class in org.apache.kudu.client" target="classFrame">Operation</a></li>
+<li><a href="OperationResponse.html" title="class in org.apache.kudu.client" target="classFrame">OperationResponse</a></li>
+<li><a href="PartialRow.html" title="class in org.apache.kudu.client" target="classFrame">PartialRow</a></li>
+<li><a href="RowError.html" title="class in org.apache.kudu.client" target="classFrame">RowError</a></li>
+<li><a href="RowErrorsAndOverflowStatus.html" title="class in org.apache.kudu.client" target="classFrame">RowErrorsAndOverflowStatus</a></li>
+<li><a href="RowResult.html" title="class in org.apache.kudu.client" target="classFrame">RowResult</a></li>
+<li><a href="RowResultIterator.html" title="class in org.apache.kudu.client" target="classFrame">RowResultIterator</a></li>
+<li><a href="Statistics.html" title="class in org.apache.kudu.client" target="classFrame">Statistics</a></li>
+<li><a href="Status.html" title="class in org.apache.kudu.client" target="classFrame">Status</a></li>
+<li><a href="Update.html" title="class in org.apache.kudu.client" target="classFrame">Update</a></li>
+<li><a href="Upsert.html" title="class in org.apache.kudu.client" target="classFrame">Upsert</a></li>
+</ul>
+<h2 title="Enums">Enums</h2>
+<ul title="Enums">
+<li><a href="AsyncKuduScanner.ReadMode.html" title="enum in org.apache.kudu.client" target="classFrame">AsyncKuduScanner.ReadMode</a></li>
+<li><a href="ExternalConsistencyMode.html" title="enum in org.apache.kudu.client" target="classFrame">ExternalConsistencyMode</a></li>
+<li><a href="KuduPredicate.ComparisonOp.html" title="enum in org.apache.kudu.client" target="classFrame">KuduPredicate.ComparisonOp</a></li>
+<li><a href="RangePartitionBound.html" title="enum in org.apache.kudu.client" target="classFrame">RangePartitionBound</a></li>
+<li><a href="ReplicaSelection.html" title="enum in org.apache.kudu.client" target="classFrame">ReplicaSelection</a></li>
+<li><a href="SessionConfiguration.FlushMode.html" title="enum in org.apache.kudu.client" target="classFrame">SessionConfiguration.FlushMode</a></li>
+<li><a href="Statistics.Statistic.html" title="enum in org.apache.kudu.client" target="classFrame">Statistics.Statistic</a></li>
+</ul>
+<h2 title="Exceptions">Exceptions</h2>
+<ul title="Exceptions">
+<li><a href="KuduException.html" title="class in org.apache.kudu.client" target="classFrame">KuduException</a></li>
+<li><a href="PleaseThrottleException.html" title="class in org.apache.kudu.client" target="classFrame">PleaseThrottleException</a></li>
+</ul>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/package-summary.html b/releases/1.4.0/apidocs/org/apache/kudu/client/package-summary.html
new file mode 100644
index 0000000..46cb50f
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/package-summary.html
@@ -0,0 +1,459 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>org.apache.kudu.client (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="org.apache.kudu.client (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li class="navBarCell1Rev">Package</li>
+<li>Class</li>
+<li><a href="package-use.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/annotations/package-summary.html">Prev&nbsp;Package</a></li>
+<li><a href="../../../../org/apache/kudu/flume/sink/package-summary.html">Next&nbsp;Package</a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/package-summary.html" target="_top">Frames</a></li>
+<li><a href="package-summary.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h1 title="Package" class="title">Package&nbsp;org.apache.kudu.client</h1>
+</div>
+<div class="contentContainer">
+<ul class="blockList">
+<li class="blockList">
+<table class="typeSummary" border="0" cellpadding="3" cellspacing="0" summary="Interface Summary table, listing interfaces, and an explanation">
+<caption><span>Interface Summary</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Interface</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="../../../../org/apache/kudu/client/HasFailedRpcException.html" title="interface in org.apache.kudu.client">HasFailedRpcException</a></td>
+<td class="colLast">
+<div class="block">Interface implemented by <a href="../../../../org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client"><code>KuduException</code></a>s that can tell you which
+ RPC failed.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a href="../../../../org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client">SessionConfiguration</a></td>
+<td class="colLast">
+<div class="block">Interface that defines the methods used to configure a session.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList">
+<table class="typeSummary" border="0" cellpadding="3" cellspacing="0" summary="Class Summary table, listing classes, and an explanation">
+<caption><span>Class Summary</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Class</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="class in org.apache.kudu.client">AbstractKuduScannerBuilder</a>&lt;S extends <a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="class in org.apache.kudu.client">AbstractKuduScannerBuilder</a>&lt;? super S,T&gt;,T&gt;</td>
+<td class="colLast">
+<div class="block">Abstract class to extend in order to create builders for scanners.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a href="../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client">AlterTableOptions</a></td>
+<td class="colLast">
+<div class="block">This builder must be used to alter a table.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a href="../../../../org/apache/kudu/client/AlterTableResponse.html" title="class in org.apache.kudu.client">AlterTableResponse</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a href="../../../../org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client">AsyncKuduClient</a></td>
+<td class="colLast">
+<div class="block">A fully asynchronous and thread-safe client for Kudu.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a href="../../../../org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html" title="class in org.apache.kudu.client">AsyncKuduClient.AsyncKuduClientBuilder</a></td>
+<td class="colLast">
+<div class="block">Builder class to use in order to connect to Kudu.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a href="../../../../org/apache/kudu/client/AsyncKuduScanner.html" title="class in org.apache.kudu.client">AsyncKuduScanner</a></td>
+<td class="colLast">
+<div class="block">Creates a scanner to read data from Kudu.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a href="../../../../org/apache/kudu/client/AsyncKuduScanner.AsyncKuduScannerBuilder.html" title="class in org.apache.kudu.client">AsyncKuduScanner.AsyncKuduScannerBuilder</a></td>
+<td class="colLast">
+<div class="block">A Builder class to build <a href="../../../../org/apache/kudu/client/AsyncKuduScanner.html" title="class in org.apache.kudu.client"><code>AsyncKuduScanner</code></a>.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a href="../../../../org/apache/kudu/client/AsyncKuduSession.html" title="class in org.apache.kudu.client">AsyncKuduSession</a></td>
+<td class="colLast">
+<div class="block">An <code>AsyncKuduSession</code> belongs to a specific <a href="../../../../org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client"><code>AsyncKuduClient</code></a>, and represents a
+ context in which all write data access should take place.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a href="../../../../org/apache/kudu/client/ColumnRangePredicate.html" title="class in org.apache.kudu.client">ColumnRangePredicate</a></td>
+<td class="colLast">Deprecated
+<div class="block"><span class="deprecationComment">use the <a href="../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client"><code>KuduPredicate</code></a> class instead.</span></div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a href="../../../../org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client">CreateTableOptions</a></td>
+<td class="colLast">
+<div class="block">This is a builder class for all the options that can be provided while creating a table.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a href="../../../../org/apache/kudu/client/Delete.html" title="class in org.apache.kudu.client">Delete</a></td>
+<td class="colLast">
+<div class="block">Class of Operation for whole row removals.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a href="../../../../org/apache/kudu/client/DeleteTableResponse.html" title="class in org.apache.kudu.client">DeleteTableResponse</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a href="../../../../org/apache/kudu/client/Insert.html" title="class in org.apache.kudu.client">Insert</a></td>
+<td class="colLast">
+<div class="block">Represents a single row insert.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a href="../../../../org/apache/kudu/client/IsAlterTableDoneResponse.html" title="class in org.apache.kudu.client">IsAlterTableDoneResponse</a></td>
+<td class="colLast">
+<div class="block">Response to a isAlterTableDone command to use to know if an alter table is currently running on
+ the specified table.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a href="../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a></td>
+<td class="colLast">
+<div class="block">A synchronous and thread-safe client for Kudu.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a href="../../../../org/apache/kudu/client/KuduClient.KuduClientBuilder.html" title="class in org.apache.kudu.client">KuduClient.KuduClientBuilder</a></td>
+<td class="colLast">
+<div class="block">Builder class to use in order to connect to Kudu.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a href="../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client">KuduPredicate</a></td>
+<td class="colLast">
+<div class="block">A predicate which can be used to filter rows based on the value of a column.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a href="../../../../org/apache/kudu/client/KuduScanner.html" title="class in org.apache.kudu.client">KuduScanner</a></td>
+<td class="colLast">
+<div class="block">Synchronous version of <a href="../../../../org/apache/kudu/client/AsyncKuduScanner.html" title="class in org.apache.kudu.client"><code>AsyncKuduScanner</code></a>.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a href="../../../../org/apache/kudu/client/KuduScanner.KuduScannerBuilder.html" title="class in org.apache.kudu.client">KuduScanner.KuduScannerBuilder</a></td>
+<td class="colLast">
+<div class="block">A Builder class to build <a href="../../../../org/apache/kudu/client/KuduScanner.html" title="class in org.apache.kudu.client"><code>KuduScanner</code></a>.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a href="../../../../org/apache/kudu/client/KuduScanToken.html" title="class in org.apache.kudu.client">KuduScanToken</a></td>
+<td class="colLast">
+<div class="block">A scan token describes a partial scan of a Kudu table limited to a single
+ contiguous physical location.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a href="../../../../org/apache/kudu/client/KuduScanToken.KuduScanTokenBuilder.html" title="class in org.apache.kudu.client">KuduScanToken.KuduScanTokenBuilder</a></td>
+<td class="colLast">
+<div class="block">Builds a sequence of scan tokens.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a href="../../../../org/apache/kudu/client/KuduSession.html" title="class in org.apache.kudu.client">KuduSession</a></td>
+<td class="colLast">
+<div class="block">Synchronous version of <a href="../../../../org/apache/kudu/client/AsyncKuduSession.html" title="class in org.apache.kudu.client"><code>AsyncKuduSession</code></a>.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a href="../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a></td>
+<td class="colLast">
+<div class="block">A KuduTable represents a table on a particular cluster.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a href="../../../../org/apache/kudu/client/ListTablesResponse.html" title="class in org.apache.kudu.client">ListTablesResponse</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a href="../../../../org/apache/kudu/client/ListTabletServersResponse.html" title="class in org.apache.kudu.client">ListTabletServersResponse</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a href="../../../../org/apache/kudu/client/LocatedTablet.html" title="class in org.apache.kudu.client">LocatedTablet</a></td>
+<td class="colLast">
+<div class="block">Information about the locations of tablets in a Kudu table.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a href="../../../../org/apache/kudu/client/LocatedTablet.Replica.html" title="class in org.apache.kudu.client">LocatedTablet.Replica</a></td>
+<td class="colLast">
+<div class="block">One of the replicas of the tablet.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a href="../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">Operation</a></td>
+<td class="colLast">
+<div class="block">Base class for the RPCs that related to WriteRequestPB.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a href="../../../../org/apache/kudu/client/OperationResponse.html" title="class in org.apache.kudu.client">OperationResponse</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a href="../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client">PartialRow</a></td>
+<td class="colLast">
+<div class="block">Class used to represent parts of a row along with its schema.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a href="../../../../org/apache/kudu/client/RowError.html" title="class in org.apache.kudu.client">RowError</a></td>
+<td class="colLast">
+<div class="block">Wrapper class for a single row error.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a href="../../../../org/apache/kudu/client/RowErrorsAndOverflowStatus.html" title="class in org.apache.kudu.client">RowErrorsAndOverflowStatus</a></td>
+<td class="colLast">
+<div class="block">Container class used as a response when retrieving pending row errors.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a href="../../../../org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a></td>
+<td class="colLast">
+<div class="block">RowResult represents one row from a scanner.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a href="../../../../org/apache/kudu/client/RowResultIterator.html" title="class in org.apache.kudu.client">RowResultIterator</a></td>
+<td class="colLast">
+<div class="block">Class that contains the rows sent by a tablet server, exhausting this iterator only means
+ that all the rows from the last server response were read.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a href="../../../../org/apache/kudu/client/Statistics.html" title="class in org.apache.kudu.client">Statistics</a></td>
+<td class="colLast">
+<div class="block">A Statistics belongs to a specific AsyncKuduClient.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a></td>
+<td class="colLast">
+<div class="block">Representation of an error code and message.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a href="../../../../org/apache/kudu/client/Update.html" title="class in org.apache.kudu.client">Update</a></td>
+<td class="colLast">
+<div class="block">Operation to update columns on an existing row.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a href="../../../../org/apache/kudu/client/Upsert.html" title="class in org.apache.kudu.client">Upsert</a></td>
+<td class="colLast">
+<div class="block">Represents a single row upsert.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList">
+<table class="typeSummary" border="0" cellpadding="3" cellspacing="0" summary="Enum Summary table, listing enums, and an explanation">
+<caption><span>Enum Summary</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Enum</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="../../../../org/apache/kudu/client/AsyncKuduScanner.ReadMode.html" title="enum in org.apache.kudu.client">AsyncKuduScanner.ReadMode</a></td>
+<td class="colLast">
+<div class="block">The possible read modes for scanners.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a href="../../../../org/apache/kudu/client/ExternalConsistencyMode.html" title="enum in org.apache.kudu.client">ExternalConsistencyMode</a></td>
+<td class="colLast">
+<div class="block">The possible external consistency modes on which Kudu operates.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a href="../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html" title="enum in org.apache.kudu.client">KuduPredicate.ComparisonOp</a></td>
+<td class="colLast">
+<div class="block">The comparison operator of a predicate.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a href="../../../../org/apache/kudu/client/RangePartitionBound.html" title="enum in org.apache.kudu.client">RangePartitionBound</a></td>
+<td class="colLast">
+<div class="block">Specifies whether a range partition bound is inclusive or exclusive.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a href="../../../../org/apache/kudu/client/ReplicaSelection.html" title="enum in org.apache.kudu.client">ReplicaSelection</a></td>
+<td class="colLast">
+<div class="block">Policy with which to choose amongst multiple replicas.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a href="../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html" title="enum in org.apache.kudu.client">SessionConfiguration.FlushMode</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a href="../../../../org/apache/kudu/client/Statistics.Statistic.html" title="enum in org.apache.kudu.client">Statistics.Statistic</a></td>
+<td class="colLast">
+<div class="block">The statistic enum to pass when querying.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList">
+<table class="typeSummary" border="0" cellpadding="3" cellspacing="0" summary="Exception Summary table, listing exceptions, and an explanation">
+<caption><span>Exception Summary</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Exception</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="../../../../org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client">KuduException</a></td>
+<td class="colLast">
+<div class="block">The parent class of all exceptions sent by the Kudu client.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a href="../../../../org/apache/kudu/client/PleaseThrottleException.html" title="class in org.apache.kudu.client">PleaseThrottleException</a></td>
+<td class="colLast">
+<div class="block">This exception notifies the application to throttle its use of Kudu.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li class="navBarCell1Rev">Package</li>
+<li>Class</li>
+<li><a href="package-use.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/annotations/package-summary.html">Prev&nbsp;Package</a></li>
+<li><a href="../../../../org/apache/kudu/flume/sink/package-summary.html">Next&nbsp;Package</a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/package-summary.html" target="_top">Frames</a></li>
+<li><a href="package-summary.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/package-tree.html b/releases/1.4.0/apidocs/org/apache/kudu/client/package-tree.html
new file mode 100644
index 0000000..5e7f624
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/package-tree.html
@@ -0,0 +1,225 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>org.apache.kudu.client Class Hierarchy (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="org.apache.kudu.client Class Hierarchy (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li>Class</li>
+<li>Use</li>
+<li class="navBarCell1Rev">Tree</li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/annotations/package-tree.html">Prev</a></li>
+<li><a href="../../../../org/apache/kudu/flume/sink/package-tree.html">Next</a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/package-tree.html" target="_top">Frames</a></li>
+<li><a href="package-tree.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h1 class="title">Hierarchy For Package org.apache.kudu.client</h1>
+<span class="packageHierarchyLabel">Package Hierarchies:</span>
+<ul class="horizontal">
+<li><a href="../../../../overview-tree.html">All Packages</a></li>
+</ul>
+</div>
+<div class="contentContainer">
+<h2 title="Class Hierarchy">Class Hierarchy</h2>
+<ul>
+<li type="circle">java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Object</span></a>
+<ul>
+<li type="circle">org.apache.kudu.client.<a href="../../../../org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="class in org.apache.kudu.client"><span class="typeNameLink">AbstractKuduScannerBuilder</span></a>&lt;S,T&gt;
+<ul>
+<li type="circle">org.apache.kudu.client.<a href="../../../../org/apache/kudu/client/AsyncKuduScanner.AsyncKuduScannerBuilder.html" title="class in org.apache.kudu.client"><span class="typeNameLink">AsyncKuduScanner.AsyncKuduScannerBuilder</span></a></li>
+<li type="circle">org.apache.kudu.client.<a href="../../../../org/apache/kudu/client/KuduScanner.KuduScannerBuilder.html" title="class in org.apache.kudu.client"><span class="typeNameLink">KuduScanner.KuduScannerBuilder</span></a></li>
+<li type="circle">org.apache.kudu.client.<a href="../../../../org/apache/kudu/client/KuduScanToken.KuduScanTokenBuilder.html" title="class in org.apache.kudu.client"><span class="typeNameLink">KuduScanToken.KuduScanTokenBuilder</span></a></li>
+</ul>
+</li>
+<li type="circle">org.apache.kudu.client.<a href="../../../../org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client"><span class="typeNameLink">AlterTableOptions</span></a></li>
+<li type="circle">org.apache.kudu.client.<a href="../../../../org/apache/kudu/client/AlterTableResponse.html" title="class in org.apache.kudu.client"><span class="typeNameLink">AlterTableResponse</span></a></li>
+<li type="circle">org.apache.kudu.client.<a href="../../../../org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client"><span class="typeNameLink">AsyncKuduClient</span></a> (implements java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/AutoCloseable.html?is-external=true" title="class or interface in java.lang">AutoCloseable</a>)</li>
+<li type="circle">org.apache.kudu.client.<a href="../../../../org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html" title="class in org.apache.kudu.client"><span class="typeNameLink">AsyncKuduClient.AsyncKuduClientBuilder</span></a></li>
+<li type="circle">org.apache.kudu.client.<a href="../../../../org/apache/kudu/client/AsyncKuduScanner.html" title="class in org.apache.kudu.client"><span class="typeNameLink">AsyncKuduScanner</span></a></li>
+<li type="circle">org.apache.kudu.client.<a href="../../../../org/apache/kudu/client/AsyncKuduSession.html" title="class in org.apache.kudu.client"><span class="typeNameLink">AsyncKuduSession</span></a> (implements org.apache.kudu.client.<a href="../../../../org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client">SessionConfiguration</a>)</li>
+<li type="circle">org.apache.kudu.client.<a href="../../../../org/apache/kudu/client/ColumnRangePredicate.html" title="class in org.apache.kudu.client"><span class="typeNameLink">ColumnRangePredicate</span></a></li>
+<li type="circle">org.apache.kudu.client.<a href="../../../../org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client"><span class="typeNameLink">CreateTableOptions</span></a></li>
+<li type="circle">org.apache.kudu.client.<a href="../../../../org/apache/kudu/client/DeleteTableResponse.html" title="class in org.apache.kudu.client"><span class="typeNameLink">DeleteTableResponse</span></a></li>
+<li type="circle">org.apache.kudu.client.<a href="../../../../org/apache/kudu/client/IsAlterTableDoneResponse.html" title="class in org.apache.kudu.client"><span class="typeNameLink">IsAlterTableDoneResponse</span></a></li>
+<li type="circle">org.apache.kudu.client.<a href="../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client"><span class="typeNameLink">KuduClient</span></a> (implements java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/AutoCloseable.html?is-external=true" title="class or interface in java.lang">AutoCloseable</a>)</li>
+<li type="circle">org.apache.kudu.client.<a href="../../../../org/apache/kudu/client/KuduClient.KuduClientBuilder.html" title="class in org.apache.kudu.client"><span class="typeNameLink">KuduClient.KuduClientBuilder</span></a></li>
+<li type="circle">org.apache.kudu.client.<a href="../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client"><span class="typeNameLink">KuduPredicate</span></a></li>
+<li type="circle">org.apache.kudu.client.KuduRpc&lt;R&gt;
+<ul>
+<li type="circle">org.apache.kudu.client.<a href="../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Operation</span></a>
+<ul>
+<li type="circle">org.apache.kudu.client.<a href="../../../../org/apache/kudu/client/Delete.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Delete</span></a></li>
+<li type="circle">org.apache.kudu.client.<a href="../../../../org/apache/kudu/client/Insert.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Insert</span></a></li>
+<li type="circle">org.apache.kudu.client.<a href="../../../../org/apache/kudu/client/Update.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Update</span></a></li>
+<li type="circle">org.apache.kudu.client.<a href="../../../../org/apache/kudu/client/Upsert.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Upsert</span></a></li>
+</ul>
+</li>
+</ul>
+</li>
+<li type="circle">org.apache.kudu.client.<a href="../../../../org/apache/kudu/client/KuduScanner.html" title="class in org.apache.kudu.client"><span class="typeNameLink">KuduScanner</span></a></li>
+<li type="circle">org.apache.kudu.client.<a href="../../../../org/apache/kudu/client/KuduScanToken.html" title="class in org.apache.kudu.client"><span class="typeNameLink">KuduScanToken</span></a> (implements java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;)</li>
+<li type="circle">org.apache.kudu.client.<a href="../../../../org/apache/kudu/client/KuduSession.html" title="class in org.apache.kudu.client"><span class="typeNameLink">KuduSession</span></a> (implements org.apache.kudu.client.<a href="../../../../org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client">SessionConfiguration</a>)</li>
+<li type="circle">org.apache.kudu.client.<a href="../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client"><span class="typeNameLink">KuduTable</span></a></li>
+<li type="circle">org.apache.kudu.client.<a href="../../../../org/apache/kudu/client/ListTablesResponse.html" title="class in org.apache.kudu.client"><span class="typeNameLink">ListTablesResponse</span></a></li>
+<li type="circle">org.apache.kudu.client.<a href="../../../../org/apache/kudu/client/ListTabletServersResponse.html" title="class in org.apache.kudu.client"><span class="typeNameLink">ListTabletServersResponse</span></a></li>
+<li type="circle">org.apache.kudu.client.<a href="../../../../org/apache/kudu/client/LocatedTablet.html" title="class in org.apache.kudu.client"><span class="typeNameLink">LocatedTablet</span></a></li>
+<li type="circle">org.apache.kudu.client.<a href="../../../../org/apache/kudu/client/LocatedTablet.Replica.html" title="class in org.apache.kudu.client"><span class="typeNameLink">LocatedTablet.Replica</span></a></li>
+<li type="circle">org.apache.kudu.client.<a href="../../../../org/apache/kudu/client/OperationResponse.html" title="class in org.apache.kudu.client"><span class="typeNameLink">OperationResponse</span></a></li>
+<li type="circle">org.apache.kudu.client.<a href="../../../../org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client"><span class="typeNameLink">PartialRow</span></a></li>
+<li type="circle">org.apache.kudu.client.<a href="../../../../org/apache/kudu/client/RowError.html" title="class in org.apache.kudu.client"><span class="typeNameLink">RowError</span></a></li>
+<li type="circle">org.apache.kudu.client.<a href="../../../../org/apache/kudu/client/RowErrorsAndOverflowStatus.html" title="class in org.apache.kudu.client"><span class="typeNameLink">RowErrorsAndOverflowStatus</span></a></li>
+<li type="circle">org.apache.kudu.client.<a href="../../../../org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client"><span class="typeNameLink">RowResult</span></a></li>
+<li type="circle">org.apache.kudu.client.<a href="../../../../org/apache/kudu/client/RowResultIterator.html" title="class in org.apache.kudu.client"><span class="typeNameLink">RowResultIterator</span></a> (implements java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Iterable.html?is-external=true" title="class or interface in java.lang">Iterable</a>&lt;T&gt;, java.util.<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;E&gt;)</li>
+<li type="circle">org.apache.kudu.client.<a href="../../../../org/apache/kudu/client/Statistics.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Statistics</span></a></li>
+<li type="circle">org.apache.kudu.client.<a href="../../../../org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Status</span></a></li>
+<li type="circle">java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Throwable</span></a> (implements java.io.<a href="http://docs.oracle.com/javase/7/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
+<ul>
+<li type="circle">java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Exception</span></a>
+<ul>
+<li type="circle">java.io.<a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io"><span class="typeNameLink">IOException</span></a>
+<ul>
+<li type="circle">org.apache.kudu.client.<a href="../../../../org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client"><span class="typeNameLink">KuduException</span></a>
+<ul>
+<li type="circle">org.apache.kudu.client.<a href="../../../../org/apache/kudu/client/PleaseThrottleException.html" title="class in org.apache.kudu.client"><span class="typeNameLink">PleaseThrottleException</span></a> (implements org.apache.kudu.client.<a href="../../../../org/apache/kudu/client/HasFailedRpcException.html" title="interface in org.apache.kudu.client">HasFailedRpcException</a>)</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+<h2 title="Interface Hierarchy">Interface Hierarchy</h2>
+<ul>
+<li type="circle">org.apache.kudu.client.<a href="../../../../org/apache/kudu/client/HasFailedRpcException.html" title="interface in org.apache.kudu.client"><span class="typeNameLink">HasFailedRpcException</span></a></li>
+<li type="circle">org.apache.kudu.client.<a href="../../../../org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client"><span class="typeNameLink">SessionConfiguration</span></a></li>
+</ul>
+<h2 title="Enum Hierarchy">Enum Hierarchy</h2>
+<ul>
+<li type="circle">java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Object</span></a>
+<ul>
+<li type="circle">java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, java.io.<a href="http://docs.oracle.com/javase/7/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
+<ul>
+<li type="circle">org.apache.kudu.client.<a href="../../../../org/apache/kudu/client/AsyncKuduScanner.ReadMode.html" title="enum in org.apache.kudu.client"><span class="typeNameLink">AsyncKuduScanner.ReadMode</span></a></li>
+<li type="circle">org.apache.kudu.client.<a href="../../../../org/apache/kudu/client/ExternalConsistencyMode.html" title="enum in org.apache.kudu.client"><span class="typeNameLink">ExternalConsistencyMode</span></a></li>
+<li type="circle">org.apache.kudu.client.<a href="../../../../org/apache/kudu/client/KuduPredicate.ComparisonOp.html" title="enum in org.apache.kudu.client"><span class="typeNameLink">KuduPredicate.ComparisonOp</span></a></li>
+<li type="circle">org.apache.kudu.client.<a href="../../../../org/apache/kudu/client/RangePartitionBound.html" title="enum in org.apache.kudu.client"><span class="typeNameLink">RangePartitionBound</span></a></li>
+<li type="circle">org.apache.kudu.client.<a href="../../../../org/apache/kudu/client/ReplicaSelection.html" title="enum in org.apache.kudu.client"><span class="typeNameLink">ReplicaSelection</span></a></li>
+<li type="circle">org.apache.kudu.client.<a href="../../../../org/apache/kudu/client/SessionConfiguration.FlushMode.html" title="enum in org.apache.kudu.client"><span class="typeNameLink">SessionConfiguration.FlushMode</span></a></li>
+<li type="circle">org.apache.kudu.client.<a href="../../../../org/apache/kudu/client/Statistics.Statistic.html" title="enum in org.apache.kudu.client"><span class="typeNameLink">Statistics.Statistic</span></a></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li>Class</li>
+<li>Use</li>
+<li class="navBarCell1Rev">Tree</li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/annotations/package-tree.html">Prev</a></li>
+<li><a href="../../../../org/apache/kudu/flume/sink/package-tree.html">Next</a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/package-tree.html" target="_top">Frames</a></li>
+<li><a href="package-tree.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/client/package-use.html b/releases/1.4.0/apidocs/org/apache/kudu/client/package-use.html
new file mode 100644
index 0000000..5d2fb61
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/client/package-use.html
@@ -0,0 +1,509 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Package org.apache.kudu.client (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Package org.apache.kudu.client (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li>Class</li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/package-use.html" target="_top">Frames</a></li>
+<li><a href="package-use.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h1 title="Uses of Package org.apache.kudu.client" class="title">Uses of Package<br>org.apache.kudu.client</h1>
+</div>
+<div class="contentContainer">
+<ul class="blockList">
+<li class="blockList">
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing packages, and an explanation">
+<caption><span>Packages that use <a href="../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Package</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="#org.apache.kudu">org.apache.kudu</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a href="#org.apache.kudu.client">org.apache.kudu.client</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a href="#org.apache.kudu.flume.sink">org.apache.kudu.flume.sink</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a href="#org.apache.kudu.mapreduce">org.apache.kudu.mapreduce</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a href="#org.apache.kudu.mapreduce.tools">org.apache.kudu.mapreduce.tools</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList"><a name="org.apache.kudu">
+<!--   -->
+</a>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing classes, and an explanation">
+<caption><span>Classes in <a href="../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> used by <a href="../../../../org/apache/kudu/package-summary.html">org.apache.kudu</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colOne" scope="col">Class and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colOne"><a href="../../../../org/apache/kudu/client/class-use/PartialRow.html#org.apache.kudu">PartialRow</a>
+<div class="block">Class used to represent parts of a row along with its schema.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList"><a name="org.apache.kudu.client">
+<!--   -->
+</a>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing classes, and an explanation">
+<caption><span>Classes in <a href="../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> used by <a href="../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colOne" scope="col">Class and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colOne"><a href="../../../../org/apache/kudu/client/class-use/AbstractKuduScannerBuilder.html#org.apache.kudu.client">AbstractKuduScannerBuilder</a>
+<div class="block">Abstract class to extend in order to create builders for scanners.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><a href="../../../../org/apache/kudu/client/class-use/AlterTableOptions.html#org.apache.kudu.client">AlterTableOptions</a>
+<div class="block">This builder must be used to alter a table.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colOne"><a href="../../../../org/apache/kudu/client/class-use/AlterTableResponse.html#org.apache.kudu.client">AlterTableResponse</a>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><a href="../../../../org/apache/kudu/client/class-use/AsyncKuduClient.html#org.apache.kudu.client">AsyncKuduClient</a>
+<div class="block">A fully asynchronous and thread-safe client for Kudu.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colOne"><a href="../../../../org/apache/kudu/client/class-use/AsyncKuduClient.AsyncKuduClientBuilder.html#org.apache.kudu.client">AsyncKuduClient.AsyncKuduClientBuilder</a>
+<div class="block">Builder class to use in order to connect to Kudu.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><a href="../../../../org/apache/kudu/client/class-use/AsyncKuduScanner.html#org.apache.kudu.client">AsyncKuduScanner</a>
+<div class="block">Creates a scanner to read data from Kudu.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colOne"><a href="../../../../org/apache/kudu/client/class-use/AsyncKuduScanner.AsyncKuduScannerBuilder.html#org.apache.kudu.client">AsyncKuduScanner.AsyncKuduScannerBuilder</a>
+<div class="block">A Builder class to build <a href="../../../../org/apache/kudu/client/AsyncKuduScanner.html" title="class in org.apache.kudu.client"><code>AsyncKuduScanner</code></a>.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><a href="../../../../org/apache/kudu/client/class-use/AsyncKuduScanner.ReadMode.html#org.apache.kudu.client">AsyncKuduScanner.ReadMode</a>
+<div class="block">The possible read modes for scanners.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colOne"><a href="../../../../org/apache/kudu/client/class-use/AsyncKuduSession.html#org.apache.kudu.client">AsyncKuduSession</a>
+<div class="block">An <code>AsyncKuduSession</code> belongs to a specific <a href="../../../../org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client"><code>AsyncKuduClient</code></a>, and represents a
+ context in which all write data access should take place.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><a href="../../../../org/apache/kudu/client/class-use/ColumnRangePredicate.html#org.apache.kudu.client">ColumnRangePredicate</a>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;
+<div class="block"><span class="deprecationComment">use the <a href="../../../../org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client"><code>KuduPredicate</code></a> class instead.</span></div>
+</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colOne"><a href="../../../../org/apache/kudu/client/class-use/CreateTableOptions.html#org.apache.kudu.client">CreateTableOptions</a>
+<div class="block">This is a builder class for all the options that can be provided while creating a table.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><a href="../../../../org/apache/kudu/client/class-use/Delete.html#org.apache.kudu.client">Delete</a>
+<div class="block">Class of Operation for whole row removals.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colOne"><a href="../../../../org/apache/kudu/client/class-use/DeleteTableResponse.html#org.apache.kudu.client">DeleteTableResponse</a>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><a href="../../../../org/apache/kudu/client/class-use/ExternalConsistencyMode.html#org.apache.kudu.client">ExternalConsistencyMode</a>
+<div class="block">The possible external consistency modes on which Kudu operates.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colOne"><a href="../../../../org/apache/kudu/client/class-use/HasFailedRpcException.html#org.apache.kudu.client">HasFailedRpcException</a>
+<div class="block">Interface implemented by <a href="../../../../org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client"><code>KuduException</code></a>s that can tell you which
+ RPC failed.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><a href="../../../../org/apache/kudu/client/class-use/Insert.html#org.apache.kudu.client">Insert</a>
+<div class="block">Represents a single row insert.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colOne"><a href="../../../../org/apache/kudu/client/class-use/IsAlterTableDoneResponse.html#org.apache.kudu.client">IsAlterTableDoneResponse</a>
+<div class="block">Response to a isAlterTableDone command to use to know if an alter table is currently running on
+ the specified table.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><a href="../../../../org/apache/kudu/client/class-use/KuduClient.html#org.apache.kudu.client">KuduClient</a>
+<div class="block">A synchronous and thread-safe client for Kudu.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colOne"><a href="../../../../org/apache/kudu/client/class-use/KuduClient.KuduClientBuilder.html#org.apache.kudu.client">KuduClient.KuduClientBuilder</a>
+<div class="block">Builder class to use in order to connect to Kudu.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><a href="../../../../org/apache/kudu/client/class-use/KuduException.html#org.apache.kudu.client">KuduException</a>
+<div class="block">The parent class of all exceptions sent by the Kudu client.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colOne"><a href="../../../../org/apache/kudu/client/class-use/KuduPredicate.html#org.apache.kudu.client">KuduPredicate</a>
+<div class="block">A predicate which can be used to filter rows based on the value of a column.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><a href="../../../../org/apache/kudu/client/class-use/KuduPredicate.ComparisonOp.html#org.apache.kudu.client">KuduPredicate.ComparisonOp</a>
+<div class="block">The comparison operator of a predicate.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colOne"><a href="../../../../org/apache/kudu/client/class-use/KuduScanner.html#org.apache.kudu.client">KuduScanner</a>
+<div class="block">Synchronous version of <a href="../../../../org/apache/kudu/client/AsyncKuduScanner.html" title="class in org.apache.kudu.client"><code>AsyncKuduScanner</code></a>.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><a href="../../../../org/apache/kudu/client/class-use/KuduScanner.KuduScannerBuilder.html#org.apache.kudu.client">KuduScanner.KuduScannerBuilder</a>
+<div class="block">A Builder class to build <a href="../../../../org/apache/kudu/client/KuduScanner.html" title="class in org.apache.kudu.client"><code>KuduScanner</code></a>.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colOne"><a href="../../../../org/apache/kudu/client/class-use/KuduScanToken.html#org.apache.kudu.client">KuduScanToken</a>
+<div class="block">A scan token describes a partial scan of a Kudu table limited to a single
+ contiguous physical location.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><a href="../../../../org/apache/kudu/client/class-use/KuduScanToken.KuduScanTokenBuilder.html#org.apache.kudu.client">KuduScanToken.KuduScanTokenBuilder</a>
+<div class="block">Builds a sequence of scan tokens.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colOne"><a href="../../../../org/apache/kudu/client/class-use/KuduSession.html#org.apache.kudu.client">KuduSession</a>
+<div class="block">Synchronous version of <a href="../../../../org/apache/kudu/client/AsyncKuduSession.html" title="class in org.apache.kudu.client"><code>AsyncKuduSession</code></a>.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><a href="../../../../org/apache/kudu/client/class-use/KuduTable.html#org.apache.kudu.client">KuduTable</a>
+<div class="block">A KuduTable represents a table on a particular cluster.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colOne"><a href="../../../../org/apache/kudu/client/class-use/ListTablesResponse.html#org.apache.kudu.client">ListTablesResponse</a>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><a href="../../../../org/apache/kudu/client/class-use/ListTabletServersResponse.html#org.apache.kudu.client">ListTabletServersResponse</a>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colOne"><a href="../../../../org/apache/kudu/client/class-use/LocatedTablet.html#org.apache.kudu.client">LocatedTablet</a>
+<div class="block">Information about the locations of tablets in a Kudu table.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><a href="../../../../org/apache/kudu/client/class-use/LocatedTablet.Replica.html#org.apache.kudu.client">LocatedTablet.Replica</a>
+<div class="block">One of the replicas of the tablet.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colOne"><a href="../../../../org/apache/kudu/client/class-use/Operation.html#org.apache.kudu.client">Operation</a>
+<div class="block">Base class for the RPCs that related to WriteRequestPB.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><a href="../../../../org/apache/kudu/client/class-use/OperationResponse.html#org.apache.kudu.client">OperationResponse</a>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colOne"><a href="../../../../org/apache/kudu/client/class-use/PartialRow.html#org.apache.kudu.client">PartialRow</a>
+<div class="block">Class used to represent parts of a row along with its schema.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><a href="../../../../org/apache/kudu/client/class-use/RangePartitionBound.html#org.apache.kudu.client">RangePartitionBound</a>
+<div class="block">Specifies whether a range partition bound is inclusive or exclusive.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colOne"><a href="../../../../org/apache/kudu/client/class-use/ReplicaSelection.html#org.apache.kudu.client">ReplicaSelection</a>
+<div class="block">Policy with which to choose amongst multiple replicas.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><a href="../../../../org/apache/kudu/client/class-use/RowError.html#org.apache.kudu.client">RowError</a>
+<div class="block">Wrapper class for a single row error.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colOne"><a href="../../../../org/apache/kudu/client/class-use/RowErrorsAndOverflowStatus.html#org.apache.kudu.client">RowErrorsAndOverflowStatus</a>
+<div class="block">Container class used as a response when retrieving pending row errors.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><a href="../../../../org/apache/kudu/client/class-use/RowResult.html#org.apache.kudu.client">RowResult</a>
+<div class="block">RowResult represents one row from a scanner.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colOne"><a href="../../../../org/apache/kudu/client/class-use/RowResultIterator.html#org.apache.kudu.client">RowResultIterator</a>
+<div class="block">Class that contains the rows sent by a tablet server, exhausting this iterator only means
+ that all the rows from the last server response were read.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><a href="../../../../org/apache/kudu/client/class-use/SessionConfiguration.html#org.apache.kudu.client">SessionConfiguration</a>
+<div class="block">Interface that defines the methods used to configure a session.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colOne"><a href="../../../../org/apache/kudu/client/class-use/SessionConfiguration.FlushMode.html#org.apache.kudu.client">SessionConfiguration.FlushMode</a>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><a href="../../../../org/apache/kudu/client/class-use/Statistics.html#org.apache.kudu.client">Statistics</a>
+<div class="block">A Statistics belongs to a specific AsyncKuduClient.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colOne"><a href="../../../../org/apache/kudu/client/class-use/Statistics.Statistic.html#org.apache.kudu.client">Statistics.Statistic</a>
+<div class="block">The statistic enum to pass when querying.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><a href="../../../../org/apache/kudu/client/class-use/Status.html#org.apache.kudu.client">Status</a>
+<div class="block">Representation of an error code and message.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colOne"><a href="../../../../org/apache/kudu/client/class-use/Update.html#org.apache.kudu.client">Update</a>
+<div class="block">Operation to update columns on an existing row.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><a href="../../../../org/apache/kudu/client/class-use/Upsert.html#org.apache.kudu.client">Upsert</a>
+<div class="block">Represents a single row upsert.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList"><a name="org.apache.kudu.flume.sink">
+<!--   -->
+</a>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing classes, and an explanation">
+<caption><span>Classes in <a href="../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> used by <a href="../../../../org/apache/kudu/flume/sink/package-summary.html">org.apache.kudu.flume.sink</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colOne" scope="col">Class and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colOne"><a href="../../../../org/apache/kudu/client/class-use/KuduClient.html#org.apache.kudu.flume.sink">KuduClient</a>
+<div class="block">A synchronous and thread-safe client for Kudu.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><a href="../../../../org/apache/kudu/client/class-use/KuduTable.html#org.apache.kudu.flume.sink">KuduTable</a>
+<div class="block">A KuduTable represents a table on a particular cluster.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colOne"><a href="../../../../org/apache/kudu/client/class-use/Operation.html#org.apache.kudu.flume.sink">Operation</a>
+<div class="block">Base class for the RPCs that related to WriteRequestPB.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList"><a name="org.apache.kudu.mapreduce">
+<!--   -->
+</a>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing classes, and an explanation">
+<caption><span>Classes in <a href="../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> used by <a href="../../../../org/apache/kudu/mapreduce/package-summary.html">org.apache.kudu.mapreduce</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colOne" scope="col">Class and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colOne"><a href="../../../../org/apache/kudu/client/class-use/AsyncKuduClient.html#org.apache.kudu.mapreduce">AsyncKuduClient</a>
+<div class="block">A fully asynchronous and thread-safe client for Kudu.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><a href="../../../../org/apache/kudu/client/class-use/KuduClient.html#org.apache.kudu.mapreduce">KuduClient</a>
+<div class="block">A synchronous and thread-safe client for Kudu.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colOne"><a href="../../../../org/apache/kudu/client/class-use/KuduException.html#org.apache.kudu.mapreduce">KuduException</a>
+<div class="block">The parent class of all exceptions sent by the Kudu client.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><a href="../../../../org/apache/kudu/client/class-use/KuduTable.html#org.apache.kudu.mapreduce">KuduTable</a>
+<div class="block">A KuduTable represents a table on a particular cluster.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colOne"><a href="../../../../org/apache/kudu/client/class-use/Operation.html#org.apache.kudu.mapreduce">Operation</a>
+<div class="block">Base class for the RPCs that related to WriteRequestPB.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><a href="../../../../org/apache/kudu/client/class-use/RowResult.html#org.apache.kudu.mapreduce">RowResult</a>
+<div class="block">RowResult represents one row from a scanner.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList"><a name="org.apache.kudu.mapreduce.tools">
+<!--   -->
+</a>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing classes, and an explanation">
+<caption><span>Classes in <a href="../../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a> used by <a href="../../../../org/apache/kudu/mapreduce/tools/package-summary.html">org.apache.kudu.mapreduce.tools</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colOne" scope="col">Class and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colOne"><a href="../../../../org/apache/kudu/client/class-use/CreateTableOptions.html#org.apache.kudu.mapreduce.tools">CreateTableOptions</a>
+<div class="block">This is a builder class for all the options that can be provided while creating a table.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li>Class</li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/client/package-use.html" target="_top">Frames</a></li>
+<li><a href="package-use.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/flume/sink/AvroKuduOperationsProducer.html b/releases/1.4.0/apidocs/org/apache/kudu/flume/sink/AvroKuduOperationsProducer.html
new file mode 100644
index 0000000..e6527a4
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/flume/sink/AvroKuduOperationsProducer.html
@@ -0,0 +1,492 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>AvroKuduOperationsProducer (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="AvroKuduOperationsProducer (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":10,"i1":10,"i2":10,"i3":10};
+var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/AvroKuduOperationsProducer.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev&nbsp;Class</li>
+<li><a href="../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html" title="interface in org.apache.kudu.flume.sink"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/flume/sink/AvroKuduOperationsProducer.html" target="_top">Frames</a></li>
+<li><a href="AvroKuduOperationsProducer.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.flume.sink</div>
+<h2 title="Class AvroKuduOperationsProducer" class="title">Class AvroKuduOperationsProducer</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.flume.sink.AvroKuduOperationsProducer</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<dl>
+<dt>All Implemented Interfaces:</dt>
+<dd><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/AutoCloseable.html?is-external=true" title="class or interface in java.lang">AutoCloseable</a>, org.apache.flume.conf.Configurable, <a href="../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html" title="interface in org.apache.kudu.flume.sink">KuduOperationsProducer</a></dd>
+</dl>
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Evolving
+public class <span class="typeNameLabel">AvroKuduOperationsProducer</span>
+extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>
+implements <a href="../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html" title="interface in org.apache.kudu.flume.sink">KuduOperationsProducer</a></pre>
+<div class="block">An Avro serializer that generates one operation per event by deserializing the event
+ body as an Avro record and mapping its fields to columns in a Kudu table.
+
+ <p><strong>Avro Kudu Operations Producer configuration parameters</strong>
+ <table cellpadding=3 cellspacing=0 border=1>
+ <tr><th>Property Name</th>
+   <th>Default</th>
+   <th>Required?</th>
+   <th>Description</th></tr>
+ <tr>
+   <td>producer.operation</td>
+   <td>upsert</td>
+   <td>No</td>
+   <td>The operation used to write events to Kudu.
+   Supported operations are 'insert' and 'upsert'</td>
+ </tr>
+ <tr>
+   <td>producer.schemaPath</td>
+   <td></td>
+   <td>No</td>
+   <td>The location of the Avro schema file used to deserialize the Avro-encoded event bodies.
+   It's used whenever an event does not include its own schema. If not specified, the
+   schema must be specified on a per-event basis, either by url or as a literal.
+   Schemas must be record type.</td>
+ </tr>
+ </table></div>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- =========== FIELD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="field.summary">
+<!--   -->
+</a>
+<h3>Field Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
+<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Field and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/AvroKuduOperationsProducer.html#DEFAULT_OPERATION">DEFAULT_OPERATION</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/AvroKuduOperationsProducer.html#OPERATION_PROP">OPERATION_PROP</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/AvroKuduOperationsProducer.html#SCHEMA_LITERAL_HEADER">SCHEMA_LITERAL_HEADER</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/AvroKuduOperationsProducer.html#SCHEMA_PROP">SCHEMA_PROP</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/AvroKuduOperationsProducer.html#SCHEMA_URL_HEADER">SCHEMA_URL_HEADER</a></span></code>&nbsp;</td>
+</tr>
+</table>
+</li>
+</ul>
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="constructor.summary">
+<!--   -->
+</a>
+<h3>Constructor Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
+<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colOne" scope="col">Constructor and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/AvroKuduOperationsProducer.html#AvroKuduOperationsProducer--">AvroKuduOperationsProducer</a></span>()</code>&nbsp;</td>
+</tr>
+</table>
+</li>
+</ul>
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/AvroKuduOperationsProducer.html#close--">close</a></span>()</code>
+<div class="block">Cleans up any state.</div>
+</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/AvroKuduOperationsProducer.html#configure-org.apache.flume.Context-">configure</a></span>(org.apache.flume.Context&nbsp;context)</code>&nbsp;</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">Operation</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/AvroKuduOperationsProducer.html#getOperations-org.apache.flume.Event-">getOperations</a></span>(org.apache.flume.Event&nbsp;event)</code>
+<div class="block">Returns the operations that should be written to Kudu as a result of this event.</div>
+</td>
+</tr>
+<tr id="i3" class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/AvroKuduOperationsProducer.html#initialize-org.apache.kudu.client.KuduTable-">initialize</a></span>(<a href="../../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a>&nbsp;table)</code>
+<div class="block">Initializes the operations producer.</div>
+</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ============ FIELD DETAIL =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="field.detail">
+<!--   -->
+</a>
+<h3>Field Detail</h3>
+<a name="OPERATION_PROP">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>OPERATION_PROP</h4>
+<pre>public static final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> OPERATION_PROP</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.flume.sink.AvroKuduOperationsProducer.OPERATION_PROP">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="SCHEMA_PROP">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>SCHEMA_PROP</h4>
+<pre>public static final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> SCHEMA_PROP</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.flume.sink.AvroKuduOperationsProducer.SCHEMA_PROP">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="DEFAULT_OPERATION">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>DEFAULT_OPERATION</h4>
+<pre>public static final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> DEFAULT_OPERATION</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.flume.sink.AvroKuduOperationsProducer.DEFAULT_OPERATION">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="SCHEMA_URL_HEADER">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>SCHEMA_URL_HEADER</h4>
+<pre>public static final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> SCHEMA_URL_HEADER</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.flume.sink.AvroKuduOperationsProducer.SCHEMA_URL_HEADER">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="SCHEMA_LITERAL_HEADER">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>SCHEMA_LITERAL_HEADER</h4>
+<pre>public static final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> SCHEMA_LITERAL_HEADER</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.flume.sink.AvroKuduOperationsProducer.SCHEMA_LITERAL_HEADER">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="constructor.detail">
+<!--   -->
+</a>
+<h3>Constructor Detail</h3>
+<a name="AvroKuduOperationsProducer--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>AvroKuduOperationsProducer</h4>
+<pre>public&nbsp;AvroKuduOperationsProducer()</pre>
+</li>
+</ul>
+</li>
+</ul>
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="configure-org.apache.flume.Context-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>configure</h4>
+<pre>public&nbsp;void&nbsp;configure(org.apache.flume.Context&nbsp;context)</pre>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code>configure</code>&nbsp;in interface&nbsp;<code>org.apache.flume.conf.Configurable</code></dd>
+</dl>
+</li>
+</ul>
+<a name="initialize-org.apache.kudu.client.KuduTable-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>initialize</h4>
+<pre>public&nbsp;void&nbsp;initialize(<a href="../../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a>&nbsp;table)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html#initialize-org.apache.kudu.client.KuduTable-">KuduOperationsProducer</a></code></span></div>
+<div class="block">Initializes the operations producer. Called between configure and
+ getOperations.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html#initialize-org.apache.kudu.client.KuduTable-">initialize</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html" title="interface in org.apache.kudu.flume.sink">KuduOperationsProducer</a></code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>table</code> - the KuduTable used to create Kudu Operation objects</dd>
+</dl>
+</li>
+</ul>
+<a name="getOperations-org.apache.flume.Event-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getOperations</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">Operation</a>&gt;&nbsp;getOperations(org.apache.flume.Event&nbsp;event)
+                              throws org.apache.flume.FlumeException</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html#getOperations-org.apache.flume.Event-">KuduOperationsProducer</a></code></span></div>
+<div class="block">Returns the operations that should be written to Kudu as a result of this event.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html#getOperations-org.apache.flume.Event-">getOperations</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html" title="interface in org.apache.kudu.flume.sink">KuduOperationsProducer</a></code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>event</code> - Event to convert to one or more Operations</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>List of Operations that should be written to Kudu</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code>org.apache.flume.FlumeException</code></dd>
+</dl>
+</li>
+</ul>
+<a name="close--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>close</h4>
+<pre>public&nbsp;void&nbsp;close()</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html#close--">KuduOperationsProducer</a></code></span></div>
+<div class="block">Cleans up any state. Called when the sink is stopped.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/AutoCloseable.html?is-external=true#close--" title="class or interface in java.lang">close</a></code>&nbsp;in interface&nbsp;<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/AutoCloseable.html?is-external=true" title="class or interface in java.lang">AutoCloseable</a></code></dd>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html#close--">close</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html" title="interface in org.apache.kudu.flume.sink">KuduOperationsProducer</a></code></dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/AvroKuduOperationsProducer.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev&nbsp;Class</li>
+<li><a href="../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html" title="interface in org.apache.kudu.flume.sink"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/flume/sink/AvroKuduOperationsProducer.html" target="_top">Frames</a></li>
+<li><a href="AvroKuduOperationsProducer.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/flume/sink/KuduOperationsProducer.html b/releases/1.4.0/apidocs/org/apache/kudu/flume/sink/KuduOperationsProducer.html
new file mode 100644
index 0000000..c63b8ab
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/flume/sink/KuduOperationsProducer.html
@@ -0,0 +1,292 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>KuduOperationsProducer (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="KuduOperationsProducer (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":6,"i1":6,"i2":6};
+var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/KuduOperationsProducer.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../../org/apache/kudu/flume/sink/AvroKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../../org/apache/kudu/flume/sink/KuduSink.html" title="class in org.apache.kudu.flume.sink"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/flume/sink/KuduOperationsProducer.html" target="_top">Frames</a></li>
+<li><a href="KuduOperationsProducer.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.flume.sink</div>
+<h2 title="Interface KuduOperationsProducer" class="title">Interface KuduOperationsProducer</h2>
+</div>
+<div class="contentContainer">
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<dl>
+<dt>All Superinterfaces:</dt>
+<dd><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/AutoCloseable.html?is-external=true" title="class or interface in java.lang">AutoCloseable</a>, org.apache.flume.conf.Configurable</dd>
+</dl>
+<dl>
+<dt>All Known Implementing Classes:</dt>
+<dd><a href="../../../../../org/apache/kudu/flume/sink/AvroKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">AvroKuduOperationsProducer</a>, <a href="../../../../../org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">RegexpKuduOperationsProducer</a>, <a href="../../../../../org/apache/kudu/flume/sink/SimpleKeyedKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">SimpleKeyedKuduOperationsProducer</a>, <a href="../../../../../org/apache/kudu/flume/sink/SimpleKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">SimpleKuduOperationsProducer</a></dd>
+</dl>
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Evolving
+public interface <span class="typeNameLabel">KuduOperationsProducer</span>
+extends org.apache.flume.conf.Configurable, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/AutoCloseable.html?is-external=true" title="class or interface in java.lang">AutoCloseable</a></pre>
+<div class="block">Interface for an operations producer that produces Kudu Operations from
+ Flume events.</div>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html#close--">close</a></span>()</code>
+<div class="block">Cleans up any state.</div>
+</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">Operation</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html#getOperations-org.apache.flume.Event-">getOperations</a></span>(org.apache.flume.Event&nbsp;event)</code>
+<div class="block">Returns the operations that should be written to Kudu as a result of this event.</div>
+</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html#initialize-org.apache.kudu.client.KuduTable-">initialize</a></span>(<a href="../../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a>&nbsp;table)</code>
+<div class="block">Initializes the operations producer.</div>
+</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.org.apache.flume.conf.Configurable">
+<!--   -->
+</a>
+<h3>Methods inherited from interface&nbsp;org.apache.flume.conf.Configurable</h3>
+<code>configure</code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="initialize-org.apache.kudu.client.KuduTable-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>initialize</h4>
+<pre>void&nbsp;initialize(<a href="../../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a>&nbsp;table)</pre>
+<div class="block">Initializes the operations producer. Called between configure and
+ getOperations.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>table</code> - the KuduTable used to create Kudu Operation objects</dd>
+</dl>
+</li>
+</ul>
+<a name="getOperations-org.apache.flume.Event-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getOperations</h4>
+<pre><a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">Operation</a>&gt;&nbsp;getOperations(org.apache.flume.Event&nbsp;event)</pre>
+<div class="block">Returns the operations that should be written to Kudu as a result of this event.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>event</code> - Event to convert to one or more Operations</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>List of Operations that should be written to Kudu</dd>
+</dl>
+</li>
+</ul>
+<a name="close--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>close</h4>
+<pre>void&nbsp;close()</pre>
+<div class="block">Cleans up any state. Called when the sink is stopped.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/AutoCloseable.html?is-external=true#close--" title="class or interface in java.lang">close</a></code>&nbsp;in interface&nbsp;<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/AutoCloseable.html?is-external=true" title="class or interface in java.lang">AutoCloseable</a></code></dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/KuduOperationsProducer.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../../org/apache/kudu/flume/sink/AvroKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../../org/apache/kudu/flume/sink/KuduSink.html" title="class in org.apache.kudu.flume.sink"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/flume/sink/KuduOperationsProducer.html" target="_top">Frames</a></li>
+<li><a href="KuduOperationsProducer.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/flume/sink/KuduSink.html b/releases/1.4.0/apidocs/org/apache/kudu/flume/sink/KuduSink.html
new file mode 100644
index 0000000..f520fdf
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/flume/sink/KuduSink.html
@@ -0,0 +1,414 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>KuduSink (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="KuduSink (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10};
+var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/KuduSink.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html" title="interface in org.apache.kudu.flume.sink"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../../org/apache/kudu/flume/sink/KuduSinkConfigurationConstants.html" title="class in org.apache.kudu.flume.sink"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/flume/sink/KuduSink.html" target="_top">Frames</a></li>
+<li><a href="KuduSink.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.flume.sink</div>
+<h2 title="Class KuduSink" class="title">Class KuduSink</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li>org.apache.flume.sink.AbstractSink</li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.flume.sink.KuduSink</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<dl>
+<dt>All Implemented Interfaces:</dt>
+<dd>org.apache.flume.conf.Configurable, org.apache.flume.lifecycle.LifecycleAware, org.apache.flume.NamedComponent, org.apache.flume.Sink</dd>
+</dl>
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Evolving
+public class <span class="typeNameLabel">KuduSink</span>
+extends org.apache.flume.sink.AbstractSink
+implements org.apache.flume.conf.Configurable</pre>
+<div class="block">A Flume sink that reads events from a channel and writes them to a Kudu table.
+
+ <p><strong>Flume Kudu Sink configuration parameters</strong>
+
+ <table cellpadding=3 cellspacing=0 border=1>
+ <tr><th>Property Name</th><th>Default</th><th>Required?</th><th>Description</th></tr>
+ <tr><td>channel</td><td></td><td>Yes</td><td>The name of the Flume channel to read.</td></tr>
+ <tr><td>type</td><td></td><td>Yes</td>
+     <td>Component name. Must be <code>org.apache.kudu.flume.sink.KuduSink</code></td></tr>
+ <tr><td>masterAddresses</td><td></td><td>Yes</td>
+     <td>Comma-separated list of "host:port" Kudu master addresses.
+     The port is optional.</td></tr>
+ <tr><td>tableName</td><td></td><td>Yes</td>
+     <td>The name of the Kudu table to write to.</td></tr>
+ <tr><td>batchSize</td><td>100</td><td>No</td>
+ <td>The maximum number of events the sink takes from the channel per transaction.</td></tr>
+ <tr><td>ignoreDuplicateRows</td><td>true</td>
+     <td>No</td><td>Whether to ignore duplicate primary key errors caused by inserts.</td></tr>
+ <tr><td>timeoutMillis</td><td>10000</td><td>No</td>
+     <td>Timeout period for Kudu write operations, in milliseconds.</td></tr>
+ <tr><td>producer</td><td><a href="../../../../../org/apache/kudu/flume/sink/SimpleKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink"><code>SimpleKuduOperationsProducer</code></a></td><td>No</td>
+     <td>The fully-qualified class name of the <a href="../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html" title="interface in org.apache.kudu.flume.sink"><code>KuduOperationsProducer</code></a>
+     the sink should use.</td></tr>
+ <tr><td>producer.*</td><td></td><td>(Varies by operations producer)</td>
+     <td>Configuration properties to pass to the operations producer implementation.</td></tr>
+ </table>
+
+ <p><strong>Installation</strong>
+
+ <p>After building the sink, in order to use it with Flume, place the file named
+ <tt>kudu-flume-sink-<em>VERSION</em>-jar-with-dependencies.jar</tt> in the
+ Flume <tt>plugins.d</tt> directory under <tt>kudu-flume-sink/lib/</tt>.
+
+ <p>For detailed instructions on using Flume's plugins.d mechanism, please see the plugins.d
+ section of the <a href="https://flume.apache.org/FlumeUserGuide.html#the-plugins-d-directory">Flume User Guide</a>.</div>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="constructor.summary">
+<!--   -->
+</a>
+<h3>Constructor Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
+<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colOne" scope="col">Constructor and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/KuduSink.html#KuduSink--">KuduSink</a></span>()</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/KuduSink.html#KuduSink-org.apache.kudu.client.KuduClient-">KuduSink</a></span>(<a href="../../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a>&nbsp;kuduClient)</code>&nbsp;</td>
+</tr>
+</table>
+</li>
+</ul>
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/KuduSink.html#configure-org.apache.flume.Context-">configure</a></span>(org.apache.flume.Context&nbsp;context)</code>&nbsp;</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code><a href="../../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/KuduSink.html#getClient--">getClient</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code>org.apache.flume.Sink.Status</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/KuduSink.html#process--">process</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i3" class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/KuduSink.html#start--">start</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i4" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/KuduSink.html#stop--">stop</a></span>()</code>&nbsp;</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.org.apache.flume.sink.AbstractSink">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;org.apache.flume.sink.AbstractSink</h3>
+<code>getChannel, getLifecycleState, getName, setChannel, setName, toString</code></li>
+</ul>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="constructor.detail">
+<!--   -->
+</a>
+<h3>Constructor Detail</h3>
+<a name="KuduSink--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>KuduSink</h4>
+<pre>public&nbsp;KuduSink()</pre>
+</li>
+</ul>
+<a name="KuduSink-org.apache.kudu.client.KuduClient-">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>KuduSink</h4>
+<pre>@InterfaceAudience.Private
+public&nbsp;KuduSink(<a href="../../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a>&nbsp;kuduClient)</pre>
+</li>
+</ul>
+</li>
+</ul>
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="start--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>start</h4>
+<pre>public&nbsp;void&nbsp;start()</pre>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code>start</code>&nbsp;in interface&nbsp;<code>org.apache.flume.lifecycle.LifecycleAware</code></dd>
+<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
+<dd><code>start</code>&nbsp;in class&nbsp;<code>org.apache.flume.sink.AbstractSink</code></dd>
+</dl>
+</li>
+</ul>
+<a name="stop--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>stop</h4>
+<pre>public&nbsp;void&nbsp;stop()</pre>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code>stop</code>&nbsp;in interface&nbsp;<code>org.apache.flume.lifecycle.LifecycleAware</code></dd>
+<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
+<dd><code>stop</code>&nbsp;in class&nbsp;<code>org.apache.flume.sink.AbstractSink</code></dd>
+</dl>
+</li>
+</ul>
+<a name="configure-org.apache.flume.Context-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>configure</h4>
+<pre>public&nbsp;void&nbsp;configure(org.apache.flume.Context&nbsp;context)</pre>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code>configure</code>&nbsp;in interface&nbsp;<code>org.apache.flume.conf.Configurable</code></dd>
+</dl>
+</li>
+</ul>
+<a name="getClient--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getClient</h4>
+<pre>public&nbsp;<a href="../../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a>&nbsp;getClient()</pre>
+</li>
+</ul>
+<a name="process--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>process</h4>
+<pre>public&nbsp;org.apache.flume.Sink.Status&nbsp;process()
+                                     throws org.apache.flume.EventDeliveryException</pre>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code>process</code>&nbsp;in interface&nbsp;<code>org.apache.flume.Sink</code></dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code>org.apache.flume.EventDeliveryException</code></dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/KuduSink.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html" title="interface in org.apache.kudu.flume.sink"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../../org/apache/kudu/flume/sink/KuduSinkConfigurationConstants.html" title="class in org.apache.kudu.flume.sink"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/flume/sink/KuduSink.html" target="_top">Frames</a></li>
+<li><a href="KuduSink.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/flume/sink/KuduSinkConfigurationConstants.html b/releases/1.4.0/apidocs/org/apache/kudu/flume/sink/KuduSinkConfigurationConstants.html
new file mode 100644
index 0000000..11a2090
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/flume/sink/KuduSinkConfigurationConstants.html
@@ -0,0 +1,411 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>KuduSinkConfigurationConstants (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="KuduSinkConfigurationConstants (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/KuduSinkConfigurationConstants.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../../org/apache/kudu/flume/sink/KuduSink.html" title="class in org.apache.kudu.flume.sink"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../../org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/flume/sink/KuduSinkConfigurationConstants.html" target="_top">Frames</a></li>
+<li><a href="KuduSinkConfigurationConstants.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#methods.inherited.from.class.java.lang.Object">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li>Method</li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.flume.sink</div>
+<h2 title="Class KuduSinkConfigurationConstants" class="title">Class KuduSinkConfigurationConstants</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.flume.sink.KuduSinkConfigurationConstants</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Evolving
+public class <span class="typeNameLabel">KuduSinkConfigurationConstants</span>
+extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></pre>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- =========== FIELD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="field.summary">
+<!--   -->
+</a>
+<h3>Field Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
+<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Field and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/KuduSinkConfigurationConstants.html#BATCH_SIZE">BATCH_SIZE</a></span></code>
+<div class="block">Maximum number of events that the sink should take from the channel per
+ transaction.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/KuduSinkConfigurationConstants.html#IGNORE_DUPLICATE_ROWS">IGNORE_DUPLICATE_ROWS</a></span></code>
+<div class="block">Whether to ignore duplicate primary key errors caused by inserts.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/KuduSinkConfigurationConstants.html#MASTER_ADDRESSES">MASTER_ADDRESSES</a></span></code>
+<div class="block">Comma-separated list of "host:port" Kudu master addresses.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/KuduSinkConfigurationConstants.html#PRODUCER">PRODUCER</a></span></code>
+<div class="block">The fully qualified class name of the KuduOperationsProducer class that the
+ sink should use.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/KuduSinkConfigurationConstants.html#PRODUCER_PREFIX">PRODUCER_PREFIX</a></span></code>
+<div class="block">Prefix for configuration parameters that are passed to the
+ KuduOperationsProducer.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/KuduSinkConfigurationConstants.html#TABLE_NAME">TABLE_NAME</a></span></code>
+<div class="block">The name of the table in Kudu to write to.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/KuduSinkConfigurationConstants.html#TIMEOUT_MILLIS">TIMEOUT_MILLIS</a></span></code>
+<div class="block">Timeout period for Kudu operations, in milliseconds.</div>
+</td>
+</tr>
+</table>
+</li>
+</ul>
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="constructor.summary">
+<!--   -->
+</a>
+<h3>Constructor Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
+<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colOne" scope="col">Constructor and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/KuduSinkConfigurationConstants.html#KuduSinkConfigurationConstants--">KuduSinkConfigurationConstants</a></span>()</code>&nbsp;</td>
+</tr>
+</table>
+</li>
+</ul>
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ============ FIELD DETAIL =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="field.detail">
+<!--   -->
+</a>
+<h3>Field Detail</h3>
+<a name="MASTER_ADDRESSES">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>MASTER_ADDRESSES</h4>
+<pre>public static final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> MASTER_ADDRESSES</pre>
+<div class="block">Comma-separated list of "host:port" Kudu master addresses.
+ The port is optional and defaults to the Kudu Java client's default master
+ port.</div>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.flume.sink.KuduSinkConfigurationConstants.MASTER_ADDRESSES">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="TABLE_NAME">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>TABLE_NAME</h4>
+<pre>public static final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> TABLE_NAME</pre>
+<div class="block">The name of the table in Kudu to write to.</div>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.flume.sink.KuduSinkConfigurationConstants.TABLE_NAME">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="PRODUCER">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>PRODUCER</h4>
+<pre>public static final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> PRODUCER</pre>
+<div class="block">The fully qualified class name of the KuduOperationsProducer class that the
+ sink should use.</div>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.flume.sink.KuduSinkConfigurationConstants.PRODUCER">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="PRODUCER_PREFIX">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>PRODUCER_PREFIX</h4>
+<pre>public static final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> PRODUCER_PREFIX</pre>
+<div class="block">Prefix for configuration parameters that are passed to the
+ KuduOperationsProducer.</div>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.flume.sink.KuduSinkConfigurationConstants.PRODUCER_PREFIX">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="BATCH_SIZE">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>BATCH_SIZE</h4>
+<pre>public static final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> BATCH_SIZE</pre>
+<div class="block">Maximum number of events that the sink should take from the channel per
+ transaction.</div>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.flume.sink.KuduSinkConfigurationConstants.BATCH_SIZE">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="TIMEOUT_MILLIS">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>TIMEOUT_MILLIS</h4>
+<pre>public static final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> TIMEOUT_MILLIS</pre>
+<div class="block">Timeout period for Kudu operations, in milliseconds.</div>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.flume.sink.KuduSinkConfigurationConstants.TIMEOUT_MILLIS">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="IGNORE_DUPLICATE_ROWS">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>IGNORE_DUPLICATE_ROWS</h4>
+<pre>public static final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> IGNORE_DUPLICATE_ROWS</pre>
+<div class="block">Whether to ignore duplicate primary key errors caused by inserts.</div>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.flume.sink.KuduSinkConfigurationConstants.IGNORE_DUPLICATE_ROWS">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="constructor.detail">
+<!--   -->
+</a>
+<h3>Constructor Detail</h3>
+<a name="KuduSinkConfigurationConstants--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>KuduSinkConfigurationConstants</h4>
+<pre>public&nbsp;KuduSinkConfigurationConstants()</pre>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/KuduSinkConfigurationConstants.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../../org/apache/kudu/flume/sink/KuduSink.html" title="class in org.apache.kudu.flume.sink"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../../org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/flume/sink/KuduSinkConfigurationConstants.html" target="_top">Frames</a></li>
+<li><a href="KuduSinkConfigurationConstants.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#methods.inherited.from.class.java.lang.Object">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li>Method</li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html b/releases/1.4.0/apidocs/org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html
new file mode 100644
index 0000000..f9ce911
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html
@@ -0,0 +1,648 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>RegexpKuduOperationsProducer (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="RegexpKuduOperationsProducer (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":10,"i1":10,"i2":10,"i3":10};
+var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/RegexpKuduOperationsProducer.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../../org/apache/kudu/flume/sink/KuduSinkConfigurationConstants.html" title="class in org.apache.kudu.flume.sink"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../../org/apache/kudu/flume/sink/SimpleKeyedKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html" target="_top">Frames</a></li>
+<li><a href="RegexpKuduOperationsProducer.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.flume.sink</div>
+<h2 title="Class RegexpKuduOperationsProducer" class="title">Class RegexpKuduOperationsProducer</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.flume.sink.RegexpKuduOperationsProducer</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<dl>
+<dt>All Implemented Interfaces:</dt>
+<dd><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/AutoCloseable.html?is-external=true" title="class or interface in java.lang">AutoCloseable</a>, org.apache.flume.conf.Configurable, <a href="../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html" title="interface in org.apache.kudu.flume.sink">KuduOperationsProducer</a></dd>
+</dl>
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Evolving
+public class <span class="typeNameLabel">RegexpKuduOperationsProducer</span>
+extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>
+implements <a href="../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html" title="interface in org.apache.kudu.flume.sink">KuduOperationsProducer</a></pre>
+<div class="block">A regular expression operations producer that generates one or more Kudu
+ <a href="../../../../../org/apache/kudu/client/Insert.html" title="class in org.apache.kudu.client"><code>Insert</code></a> or <a href="../../../../../org/apache/kudu/client/Upsert.html" title="class in org.apache.kudu.client"><code>Upsert</code></a> operations per Flume <code>Event</code> by
+ parsing the event <code>body</code> using a regular expression. Values are
+ coerced to the types of the named columns in the Kudu table.
+
+ <p>Example: If the Kudu table has the schema:
+
+ <pre>
+ key INT32
+ name STRING</pre>
+
+ <p>and <code>producer.pattern = (?&lt;key&gt;\\d+),(?&lt;name&gt;\\w+)</code> then
+ <code>RegexpKuduOperationsProducer</code> will parse the string:
+
+ <pre>|12345,Mike||54321,Todd|</pre>
+
+ into the rows: <code>(key=12345, name=Mike)</code> and <code>(key=54321, name=Todd)</code>.
+
+ <p>Note: This class relies on JDK7 named capturing groups, which are
+ documented in <a href="http://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html?is-external=true" title="class or interface in java.util.regex"><code>Pattern</code></a>. The name of each capturing group must
+ correspond to a column name in the destination Kudu table.
+
+ <p><strong><code>RegexpKuduOperationsProducer</code> Flume Configuration Parameters</strong></p>
+
+ <table cellpadding=3 cellspacing=0 border=1 summary="Flume Configuration Parameters">
+ <tr>
+   <th>Property Name</th>
+   <th>Default</th>
+   <th>Required?</th>
+   <th>Description</th>
+ </tr>
+ <tr>
+   <td>producer.pattern</td>
+   <td></td>
+   <td>Yes</td>
+   <td>The regular expression used to parse the event body.</td>
+ </tr>
+ <tr>
+   <td>producer.charset</td>
+   <td>utf-8</td>
+   <td>No</td>
+   <td>The character set of the event body.</td>
+ </tr>
+ <tr>
+   <td>producer.operation</td>
+   <td>upsert</td>
+   <td>No</td>
+   <td>Operation type used to write the event to Kudu. Must be either
+   <code>insert</code> or <code>upsert</code>.</td>
+ </tr>
+ <tr>
+   <td>producer.skipMissingColumn</td>
+   <td>false</td>
+   <td>No</td>
+   <td>What to do if a column in the Kudu table has no corresponding capture group.
+   If set to <code>true</code>, a warning message is logged and the operation is still attempted.
+   If set to <code>false</code>, an exception is thrown and the sink will not process the
+   <code>Event</code>, causing a Flume <code>Channel</code> rollback.
+ </tr>
+ <tr>
+   <td>producer.skipBadColumnValue</td>
+   <td>false</td>
+   <td>No</td>
+   <td>What to do if a value in the pattern match cannot be coerced to the required type.
+   If set to <code>true</code>, a warning message is logged and the operation is still attempted.
+   If set to <code>false</code>, an exception is thrown and the sink will not process the
+   <code>Event</code>, causing a Flume <code>Channel</code> rollback.
+ </tr>
+ <tr>
+   <td>producer.warnUnmatchedRows</td>
+   <td>true</td>
+   <td>No</td>
+   <td>Whether to log a warning about payloads that do not match the pattern. If set to
+   <code>false</code>, event bodies with no matches will be silently dropped.</td>
+ </tr>
+ </table></div>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="http://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html?is-external=true" title="class or interface in java.util.regex"><code>Pattern</code></a></dd>
+</dl>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- =========== FIELD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="field.summary">
+<!--   -->
+</a>
+<h3>Field Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
+<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Field and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html#DEFAULT_ENCODING">DEFAULT_ENCODING</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html#DEFAULT_OPERATION">DEFAULT_OPERATION</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html#DEFAULT_SKIP_BAD_COLUMN_VALUE">DEFAULT_SKIP_BAD_COLUMN_VALUE</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html#DEFAULT_SKIP_MISSING_COLUMN">DEFAULT_SKIP_MISSING_COLUMN</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html#DEFAULT_WARN_UNMATCHED_ROWS">DEFAULT_WARN_UNMATCHED_ROWS</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html#ENCODING_PROP">ENCODING_PROP</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html#OPERATION_PROP">OPERATION_PROP</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html#PATTERN_PROP">PATTERN_PROP</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html#SKIP_BAD_COLUMN_VALUE_PROP">SKIP_BAD_COLUMN_VALUE_PROP</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html#SKIP_MISSING_COLUMN_PROP">SKIP_MISSING_COLUMN_PROP</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html#WARN_UNMATCHED_ROWS_PROP">WARN_UNMATCHED_ROWS_PROP</a></span></code>&nbsp;</td>
+</tr>
+</table>
+</li>
+</ul>
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="constructor.summary">
+<!--   -->
+</a>
+<h3>Constructor Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
+<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colOne" scope="col">Constructor and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html#RegexpKuduOperationsProducer--">RegexpKuduOperationsProducer</a></span>()</code>&nbsp;</td>
+</tr>
+</table>
+</li>
+</ul>
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html#close--">close</a></span>()</code>
+<div class="block">Cleans up any state.</div>
+</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html#configure-org.apache.flume.Context-">configure</a></span>(org.apache.flume.Context&nbsp;context)</code>&nbsp;</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">Operation</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html#getOperations-org.apache.flume.Event-">getOperations</a></span>(org.apache.flume.Event&nbsp;event)</code>
+<div class="block">Returns the operations that should be written to Kudu as a result of this event.</div>
+</td>
+</tr>
+<tr id="i3" class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html#initialize-org.apache.kudu.client.KuduTable-">initialize</a></span>(<a href="../../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a>&nbsp;table)</code>
+<div class="block">Initializes the operations producer.</div>
+</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ============ FIELD DETAIL =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="field.detail">
+<!--   -->
+</a>
+<h3>Field Detail</h3>
+<a name="PATTERN_PROP">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>PATTERN_PROP</h4>
+<pre>public static final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> PATTERN_PROP</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.flume.sink.RegexpKuduOperationsProducer.PATTERN_PROP">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="ENCODING_PROP">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>ENCODING_PROP</h4>
+<pre>public static final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> ENCODING_PROP</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.flume.sink.RegexpKuduOperationsProducer.ENCODING_PROP">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="DEFAULT_ENCODING">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>DEFAULT_ENCODING</h4>
+<pre>public static final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> DEFAULT_ENCODING</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.flume.sink.RegexpKuduOperationsProducer.DEFAULT_ENCODING">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="OPERATION_PROP">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>OPERATION_PROP</h4>
+<pre>public static final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> OPERATION_PROP</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.flume.sink.RegexpKuduOperationsProducer.OPERATION_PROP">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="DEFAULT_OPERATION">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>DEFAULT_OPERATION</h4>
+<pre>public static final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> DEFAULT_OPERATION</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.flume.sink.RegexpKuduOperationsProducer.DEFAULT_OPERATION">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="SKIP_MISSING_COLUMN_PROP">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>SKIP_MISSING_COLUMN_PROP</h4>
+<pre>public static final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> SKIP_MISSING_COLUMN_PROP</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.flume.sink.RegexpKuduOperationsProducer.SKIP_MISSING_COLUMN_PROP">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="DEFAULT_SKIP_MISSING_COLUMN">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>DEFAULT_SKIP_MISSING_COLUMN</h4>
+<pre>public static final&nbsp;boolean DEFAULT_SKIP_MISSING_COLUMN</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.flume.sink.RegexpKuduOperationsProducer.DEFAULT_SKIP_MISSING_COLUMN">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="SKIP_BAD_COLUMN_VALUE_PROP">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>SKIP_BAD_COLUMN_VALUE_PROP</h4>
+<pre>public static final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> SKIP_BAD_COLUMN_VALUE_PROP</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.flume.sink.RegexpKuduOperationsProducer.SKIP_BAD_COLUMN_VALUE_PROP">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="DEFAULT_SKIP_BAD_COLUMN_VALUE">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>DEFAULT_SKIP_BAD_COLUMN_VALUE</h4>
+<pre>public static final&nbsp;boolean DEFAULT_SKIP_BAD_COLUMN_VALUE</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.flume.sink.RegexpKuduOperationsProducer.DEFAULT_SKIP_BAD_COLUMN_VALUE">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="WARN_UNMATCHED_ROWS_PROP">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>WARN_UNMATCHED_ROWS_PROP</h4>
+<pre>public static final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> WARN_UNMATCHED_ROWS_PROP</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.flume.sink.RegexpKuduOperationsProducer.WARN_UNMATCHED_ROWS_PROP">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="DEFAULT_WARN_UNMATCHED_ROWS">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>DEFAULT_WARN_UNMATCHED_ROWS</h4>
+<pre>public static final&nbsp;boolean DEFAULT_WARN_UNMATCHED_ROWS</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.flume.sink.RegexpKuduOperationsProducer.DEFAULT_WARN_UNMATCHED_ROWS">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="constructor.detail">
+<!--   -->
+</a>
+<h3>Constructor Detail</h3>
+<a name="RegexpKuduOperationsProducer--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>RegexpKuduOperationsProducer</h4>
+<pre>public&nbsp;RegexpKuduOperationsProducer()</pre>
+</li>
+</ul>
+</li>
+</ul>
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="configure-org.apache.flume.Context-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>configure</h4>
+<pre>public&nbsp;void&nbsp;configure(org.apache.flume.Context&nbsp;context)</pre>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code>configure</code>&nbsp;in interface&nbsp;<code>org.apache.flume.conf.Configurable</code></dd>
+</dl>
+</li>
+</ul>
+<a name="initialize-org.apache.kudu.client.KuduTable-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>initialize</h4>
+<pre>public&nbsp;void&nbsp;initialize(<a href="../../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a>&nbsp;table)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html#initialize-org.apache.kudu.client.KuduTable-">KuduOperationsProducer</a></code></span></div>
+<div class="block">Initializes the operations producer. Called between configure and
+ getOperations.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html#initialize-org.apache.kudu.client.KuduTable-">initialize</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html" title="interface in org.apache.kudu.flume.sink">KuduOperationsProducer</a></code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>table</code> - the KuduTable used to create Kudu Operation objects</dd>
+</dl>
+</li>
+</ul>
+<a name="getOperations-org.apache.flume.Event-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getOperations</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">Operation</a>&gt;&nbsp;getOperations(org.apache.flume.Event&nbsp;event)
+                              throws org.apache.flume.FlumeException</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html#getOperations-org.apache.flume.Event-">KuduOperationsProducer</a></code></span></div>
+<div class="block">Returns the operations that should be written to Kudu as a result of this event.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html#getOperations-org.apache.flume.Event-">getOperations</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html" title="interface in org.apache.kudu.flume.sink">KuduOperationsProducer</a></code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>event</code> - Event to convert to one or more Operations</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>List of Operations that should be written to Kudu</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code>org.apache.flume.FlumeException</code></dd>
+</dl>
+</li>
+</ul>
+<a name="close--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>close</h4>
+<pre>public&nbsp;void&nbsp;close()</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html#close--">KuduOperationsProducer</a></code></span></div>
+<div class="block">Cleans up any state. Called when the sink is stopped.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/AutoCloseable.html?is-external=true#close--" title="class or interface in java.lang">close</a></code>&nbsp;in interface&nbsp;<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/AutoCloseable.html?is-external=true" title="class or interface in java.lang">AutoCloseable</a></code></dd>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html#close--">close</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html" title="interface in org.apache.kudu.flume.sink">KuduOperationsProducer</a></code></dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/RegexpKuduOperationsProducer.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../../org/apache/kudu/flume/sink/KuduSinkConfigurationConstants.html" title="class in org.apache.kudu.flume.sink"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../../org/apache/kudu/flume/sink/SimpleKeyedKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html" target="_top">Frames</a></li>
+<li><a href="RegexpKuduOperationsProducer.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/flume/sink/SimpleKeyedKuduOperationsProducer.html b/releases/1.4.0/apidocs/org/apache/kudu/flume/sink/SimpleKeyedKuduOperationsProducer.html
new file mode 100644
index 0000000..0921fb7
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/flume/sink/SimpleKeyedKuduOperationsProducer.html
@@ -0,0 +1,518 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>SimpleKeyedKuduOperationsProducer (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="SimpleKeyedKuduOperationsProducer (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":10,"i1":10,"i2":10,"i3":10};
+var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/SimpleKeyedKuduOperationsProducer.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../../org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../../org/apache/kudu/flume/sink/SimpleKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/flume/sink/SimpleKeyedKuduOperationsProducer.html" target="_top">Frames</a></li>
+<li><a href="SimpleKeyedKuduOperationsProducer.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.flume.sink</div>
+<h2 title="Class SimpleKeyedKuduOperationsProducer" class="title">Class SimpleKeyedKuduOperationsProducer</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.flume.sink.SimpleKeyedKuduOperationsProducer</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<dl>
+<dt>All Implemented Interfaces:</dt>
+<dd><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/AutoCloseable.html?is-external=true" title="class or interface in java.lang">AutoCloseable</a>, org.apache.flume.conf.Configurable, <a href="../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html" title="interface in org.apache.kudu.flume.sink">KuduOperationsProducer</a></dd>
+</dl>
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Evolving
+public class <span class="typeNameLabel">SimpleKeyedKuduOperationsProducer</span>
+extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>
+implements <a href="../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html" title="interface in org.apache.kudu.flume.sink">KuduOperationsProducer</a></pre>
+<div class="block">A simple serializer that generates one <a href="../../../../../org/apache/kudu/client/Insert.html" title="class in org.apache.kudu.client"><code>Insert</code></a> or <a href="../../../../../org/apache/kudu/client/Upsert.html" title="class in org.apache.kudu.client"><code>Upsert</code></a>
+ per <code>Event</code> by writing the event body into a BINARY column. The pair
+ (key column name, key column value) should be a header in the <code>Event</code>;
+ the column name is configurable but the column type must be STRING. Multiple
+ key columns are not supported.
+
+ <p><strong>Simple Keyed Kudu Operations Producer configuration parameters</strong>
+
+ <table cellpadding=3 cellspacing=0 border=1>
+ <tr>
+   <th>Property Name</th>
+   <th>Default</th>
+   <th>Required?</th>
+   <th>Description</th>
+ </tr>
+ <tr>
+   <td>producer.payloadColumn</td>
+   <td>payload</td>
+   <td>No</td>
+   <td>The name of the BINARY column to write the Flume event body to.</td>
+ </tr>
+ <tr>
+   <td>producer.keyColumn</td>
+   <td>key</td>
+   <td>No</td>
+   <td>The name of the STRING key column of the target Kudu table.</td>
+ </tr>
+ <tr>
+   <td>producer.operation</td>
+   <td>upsert</td>
+   <td>No</td>
+   <td>The operation used to write events to Kudu. Supported operations
+   are 'insert' and 'upsert'</td>
+ </tr>
+ </table></div>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- =========== FIELD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="field.summary">
+<!--   -->
+</a>
+<h3>Field Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
+<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Field and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/SimpleKeyedKuduOperationsProducer.html#KEY_COLUMN_DEFAULT">KEY_COLUMN_DEFAULT</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/SimpleKeyedKuduOperationsProducer.html#KEY_COLUMN_PROP">KEY_COLUMN_PROP</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/SimpleKeyedKuduOperationsProducer.html#OPERATION_DEFAULT">OPERATION_DEFAULT</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/SimpleKeyedKuduOperationsProducer.html#OPERATION_PROP">OPERATION_PROP</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/SimpleKeyedKuduOperationsProducer.html#PAYLOAD_COLUMN_DEFAULT">PAYLOAD_COLUMN_DEFAULT</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/SimpleKeyedKuduOperationsProducer.html#PAYLOAD_COLUMN_PROP">PAYLOAD_COLUMN_PROP</a></span></code>&nbsp;</td>
+</tr>
+</table>
+</li>
+</ul>
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="constructor.summary">
+<!--   -->
+</a>
+<h3>Constructor Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
+<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colOne" scope="col">Constructor and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/SimpleKeyedKuduOperationsProducer.html#SimpleKeyedKuduOperationsProducer--">SimpleKeyedKuduOperationsProducer</a></span>()</code>&nbsp;</td>
+</tr>
+</table>
+</li>
+</ul>
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/SimpleKeyedKuduOperationsProducer.html#close--">close</a></span>()</code>
+<div class="block">Cleans up any state.</div>
+</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/SimpleKeyedKuduOperationsProducer.html#configure-org.apache.flume.Context-">configure</a></span>(org.apache.flume.Context&nbsp;context)</code>&nbsp;</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">Operation</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/SimpleKeyedKuduOperationsProducer.html#getOperations-org.apache.flume.Event-">getOperations</a></span>(org.apache.flume.Event&nbsp;event)</code>
+<div class="block">Returns the operations that should be written to Kudu as a result of this event.</div>
+</td>
+</tr>
+<tr id="i3" class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/SimpleKeyedKuduOperationsProducer.html#initialize-org.apache.kudu.client.KuduTable-">initialize</a></span>(<a href="../../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a>&nbsp;table)</code>
+<div class="block">Initializes the operations producer.</div>
+</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ============ FIELD DETAIL =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="field.detail">
+<!--   -->
+</a>
+<h3>Field Detail</h3>
+<a name="PAYLOAD_COLUMN_PROP">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>PAYLOAD_COLUMN_PROP</h4>
+<pre>public static final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> PAYLOAD_COLUMN_PROP</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.flume.sink.SimpleKeyedKuduOperationsProducer.PAYLOAD_COLUMN_PROP">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="PAYLOAD_COLUMN_DEFAULT">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>PAYLOAD_COLUMN_DEFAULT</h4>
+<pre>public static final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> PAYLOAD_COLUMN_DEFAULT</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.flume.sink.SimpleKeyedKuduOperationsProducer.PAYLOAD_COLUMN_DEFAULT">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="KEY_COLUMN_PROP">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>KEY_COLUMN_PROP</h4>
+<pre>public static final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> KEY_COLUMN_PROP</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.flume.sink.SimpleKeyedKuduOperationsProducer.KEY_COLUMN_PROP">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="KEY_COLUMN_DEFAULT">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>KEY_COLUMN_DEFAULT</h4>
+<pre>public static final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> KEY_COLUMN_DEFAULT</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.flume.sink.SimpleKeyedKuduOperationsProducer.KEY_COLUMN_DEFAULT">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="OPERATION_PROP">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>OPERATION_PROP</h4>
+<pre>public static final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> OPERATION_PROP</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.flume.sink.SimpleKeyedKuduOperationsProducer.OPERATION_PROP">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="OPERATION_DEFAULT">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>OPERATION_DEFAULT</h4>
+<pre>public static final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> OPERATION_DEFAULT</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.flume.sink.SimpleKeyedKuduOperationsProducer.OPERATION_DEFAULT">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="constructor.detail">
+<!--   -->
+</a>
+<h3>Constructor Detail</h3>
+<a name="SimpleKeyedKuduOperationsProducer--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>SimpleKeyedKuduOperationsProducer</h4>
+<pre>public&nbsp;SimpleKeyedKuduOperationsProducer()</pre>
+</li>
+</ul>
+</li>
+</ul>
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="configure-org.apache.flume.Context-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>configure</h4>
+<pre>public&nbsp;void&nbsp;configure(org.apache.flume.Context&nbsp;context)</pre>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code>configure</code>&nbsp;in interface&nbsp;<code>org.apache.flume.conf.Configurable</code></dd>
+</dl>
+</li>
+</ul>
+<a name="initialize-org.apache.kudu.client.KuduTable-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>initialize</h4>
+<pre>public&nbsp;void&nbsp;initialize(<a href="../../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a>&nbsp;table)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html#initialize-org.apache.kudu.client.KuduTable-">KuduOperationsProducer</a></code></span></div>
+<div class="block">Initializes the operations producer. Called between configure and
+ getOperations.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html#initialize-org.apache.kudu.client.KuduTable-">initialize</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html" title="interface in org.apache.kudu.flume.sink">KuduOperationsProducer</a></code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>table</code> - the KuduTable used to create Kudu Operation objects</dd>
+</dl>
+</li>
+</ul>
+<a name="getOperations-org.apache.flume.Event-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getOperations</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">Operation</a>&gt;&nbsp;getOperations(org.apache.flume.Event&nbsp;event)
+                              throws org.apache.flume.FlumeException</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html#getOperations-org.apache.flume.Event-">KuduOperationsProducer</a></code></span></div>
+<div class="block">Returns the operations that should be written to Kudu as a result of this event.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html#getOperations-org.apache.flume.Event-">getOperations</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html" title="interface in org.apache.kudu.flume.sink">KuduOperationsProducer</a></code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>event</code> - Event to convert to one or more Operations</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>List of Operations that should be written to Kudu</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code>org.apache.flume.FlumeException</code></dd>
+</dl>
+</li>
+</ul>
+<a name="close--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>close</h4>
+<pre>public&nbsp;void&nbsp;close()</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html#close--">KuduOperationsProducer</a></code></span></div>
+<div class="block">Cleans up any state. Called when the sink is stopped.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/AutoCloseable.html?is-external=true#close--" title="class or interface in java.lang">close</a></code>&nbsp;in interface&nbsp;<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/AutoCloseable.html?is-external=true" title="class or interface in java.lang">AutoCloseable</a></code></dd>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html#close--">close</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html" title="interface in org.apache.kudu.flume.sink">KuduOperationsProducer</a></code></dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/SimpleKeyedKuduOperationsProducer.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../../org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../../org/apache/kudu/flume/sink/SimpleKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/flume/sink/SimpleKeyedKuduOperationsProducer.html" target="_top">Frames</a></li>
+<li><a href="SimpleKeyedKuduOperationsProducer.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/flume/sink/SimpleKuduOperationsProducer.html b/releases/1.4.0/apidocs/org/apache/kudu/flume/sink/SimpleKuduOperationsProducer.html
new file mode 100644
index 0000000..31eaa67
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/flume/sink/SimpleKuduOperationsProducer.html
@@ -0,0 +1,434 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>SimpleKuduOperationsProducer (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="SimpleKuduOperationsProducer (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":10,"i1":10,"i2":10,"i3":10};
+var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/SimpleKuduOperationsProducer.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../../org/apache/kudu/flume/sink/SimpleKeyedKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li>Next&nbsp;Class</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/flume/sink/SimpleKuduOperationsProducer.html" target="_top">Frames</a></li>
+<li><a href="SimpleKuduOperationsProducer.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.flume.sink</div>
+<h2 title="Class SimpleKuduOperationsProducer" class="title">Class SimpleKuduOperationsProducer</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.flume.sink.SimpleKuduOperationsProducer</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<dl>
+<dt>All Implemented Interfaces:</dt>
+<dd><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/AutoCloseable.html?is-external=true" title="class or interface in java.lang">AutoCloseable</a>, org.apache.flume.conf.Configurable, <a href="../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html" title="interface in org.apache.kudu.flume.sink">KuduOperationsProducer</a></dd>
+</dl>
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Evolving
+public class <span class="typeNameLabel">SimpleKuduOperationsProducer</span>
+extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>
+implements <a href="../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html" title="interface in org.apache.kudu.flume.sink">KuduOperationsProducer</a></pre>
+<div class="block">A simple serializer that generates one <a href="../../../../../org/apache/kudu/client/Insert.html" title="class in org.apache.kudu.client"><code>Insert</code></a> per <code>Event</code>
+ by writing the event body into a BINARY column. The headers are discarded.
+
+ <p><strong>Simple Kudu Event Producer configuration parameters</strong>
+
+ <table cellpadding=3 cellspacing=0 border=1>
+ <tr>
+   <th>Property Name</th>
+   <th>Default</th>
+   <th>Required?</th>
+   <th>Description</th>
+ </tr>
+ <tr>
+   <td>producer.payloadColumn</td>
+   <td>payload</td>
+   <td>No</td>
+   <td>The name of the BINARY column to write the Flume the event body to.</td>
+ </tr>
+ </table></div>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- =========== FIELD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="field.summary">
+<!--   -->
+</a>
+<h3>Field Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
+<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Field and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/SimpleKuduOperationsProducer.html#PAYLOAD_COLUMN_DEFAULT">PAYLOAD_COLUMN_DEFAULT</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/SimpleKuduOperationsProducer.html#PAYLOAD_COLUMN_PROP">PAYLOAD_COLUMN_PROP</a></span></code>&nbsp;</td>
+</tr>
+</table>
+</li>
+</ul>
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="constructor.summary">
+<!--   -->
+</a>
+<h3>Constructor Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
+<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colOne" scope="col">Constructor and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/SimpleKuduOperationsProducer.html#SimpleKuduOperationsProducer--">SimpleKuduOperationsProducer</a></span>()</code>&nbsp;</td>
+</tr>
+</table>
+</li>
+</ul>
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/SimpleKuduOperationsProducer.html#close--">close</a></span>()</code>
+<div class="block">Cleans up any state.</div>
+</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/SimpleKuduOperationsProducer.html#configure-org.apache.flume.Context-">configure</a></span>(org.apache.flume.Context&nbsp;context)</code>&nbsp;</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">Operation</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/SimpleKuduOperationsProducer.html#getOperations-org.apache.flume.Event-">getOperations</a></span>(org.apache.flume.Event&nbsp;event)</code>
+<div class="block">Returns the operations that should be written to Kudu as a result of this event.</div>
+</td>
+</tr>
+<tr id="i3" class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/flume/sink/SimpleKuduOperationsProducer.html#initialize-org.apache.kudu.client.KuduTable-">initialize</a></span>(<a href="../../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a>&nbsp;table)</code>
+<div class="block">Initializes the operations producer.</div>
+</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ============ FIELD DETAIL =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="field.detail">
+<!--   -->
+</a>
+<h3>Field Detail</h3>
+<a name="PAYLOAD_COLUMN_PROP">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>PAYLOAD_COLUMN_PROP</h4>
+<pre>public static final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> PAYLOAD_COLUMN_PROP</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.flume.sink.SimpleKuduOperationsProducer.PAYLOAD_COLUMN_PROP">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="PAYLOAD_COLUMN_DEFAULT">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>PAYLOAD_COLUMN_DEFAULT</h4>
+<pre>public static final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> PAYLOAD_COLUMN_DEFAULT</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.flume.sink.SimpleKuduOperationsProducer.PAYLOAD_COLUMN_DEFAULT">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="constructor.detail">
+<!--   -->
+</a>
+<h3>Constructor Detail</h3>
+<a name="SimpleKuduOperationsProducer--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>SimpleKuduOperationsProducer</h4>
+<pre>public&nbsp;SimpleKuduOperationsProducer()</pre>
+</li>
+</ul>
+</li>
+</ul>
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="configure-org.apache.flume.Context-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>configure</h4>
+<pre>public&nbsp;void&nbsp;configure(org.apache.flume.Context&nbsp;context)</pre>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code>configure</code>&nbsp;in interface&nbsp;<code>org.apache.flume.conf.Configurable</code></dd>
+</dl>
+</li>
+</ul>
+<a name="initialize-org.apache.kudu.client.KuduTable-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>initialize</h4>
+<pre>public&nbsp;void&nbsp;initialize(<a href="../../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a>&nbsp;table)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html#initialize-org.apache.kudu.client.KuduTable-">KuduOperationsProducer</a></code></span></div>
+<div class="block">Initializes the operations producer. Called between configure and
+ getOperations.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html#initialize-org.apache.kudu.client.KuduTable-">initialize</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html" title="interface in org.apache.kudu.flume.sink">KuduOperationsProducer</a></code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>table</code> - the KuduTable used to create Kudu Operation objects</dd>
+</dl>
+</li>
+</ul>
+<a name="getOperations-org.apache.flume.Event-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getOperations</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">Operation</a>&gt;&nbsp;getOperations(org.apache.flume.Event&nbsp;event)
+                              throws org.apache.flume.FlumeException</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html#getOperations-org.apache.flume.Event-">KuduOperationsProducer</a></code></span></div>
+<div class="block">Returns the operations that should be written to Kudu as a result of this event.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html#getOperations-org.apache.flume.Event-">getOperations</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html" title="interface in org.apache.kudu.flume.sink">KuduOperationsProducer</a></code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>event</code> - Event to convert to one or more Operations</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>List of Operations that should be written to Kudu</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code>org.apache.flume.FlumeException</code></dd>
+</dl>
+</li>
+</ul>
+<a name="close--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>close</h4>
+<pre>public&nbsp;void&nbsp;close()</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html#close--">KuduOperationsProducer</a></code></span></div>
+<div class="block">Cleans up any state. Called when the sink is stopped.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/AutoCloseable.html?is-external=true#close--" title="class or interface in java.lang">close</a></code>&nbsp;in interface&nbsp;<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/AutoCloseable.html?is-external=true" title="class or interface in java.lang">AutoCloseable</a></code></dd>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html#close--">close</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html" title="interface in org.apache.kudu.flume.sink">KuduOperationsProducer</a></code></dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/SimpleKuduOperationsProducer.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../../org/apache/kudu/flume/sink/SimpleKeyedKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li>Next&nbsp;Class</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/flume/sink/SimpleKuduOperationsProducer.html" target="_top">Frames</a></li>
+<li><a href="SimpleKuduOperationsProducer.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/flume/sink/class-use/AvroKuduOperationsProducer.html b/releases/1.4.0/apidocs/org/apache/kudu/flume/sink/class-use/AvroKuduOperationsProducer.html
new file mode 100644
index 0000000..b1f304d
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/flume/sink/class-use/AvroKuduOperationsProducer.html
@@ -0,0 +1,125 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.flume.sink.AvroKuduOperationsProducer (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.flume.sink.AvroKuduOperationsProducer (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../../org/apache/kudu/flume/sink/AvroKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../../index.html?org/apache/kudu/flume/sink/class-use/AvroKuduOperationsProducer.html" target="_top">Frames</a></li>
+<li><a href="AvroKuduOperationsProducer.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.flume.sink.AvroKuduOperationsProducer" class="title">Uses of Class<br>org.apache.kudu.flume.sink.AvroKuduOperationsProducer</h2>
+</div>
+<div class="classUseContainer">No usage of org.apache.kudu.flume.sink.AvroKuduOperationsProducer</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../../org/apache/kudu/flume/sink/AvroKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../../index.html?org/apache/kudu/flume/sink/class-use/AvroKuduOperationsProducer.html" target="_top">Frames</a></li>
+<li><a href="AvroKuduOperationsProducer.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/flume/sink/class-use/KuduOperationsProducer.html b/releases/1.4.0/apidocs/org/apache/kudu/flume/sink/class-use/KuduOperationsProducer.html
new file mode 100644
index 0000000..13833ab
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/flume/sink/class-use/KuduOperationsProducer.html
@@ -0,0 +1,190 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Interface org.apache.kudu.flume.sink.KuduOperationsProducer (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Interface org.apache.kudu.flume.sink.KuduOperationsProducer (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html" title="interface in org.apache.kudu.flume.sink">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../../index.html?org/apache/kudu/flume/sink/class-use/KuduOperationsProducer.html" target="_top">Frames</a></li>
+<li><a href="KuduOperationsProducer.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Interface org.apache.kudu.flume.sink.KuduOperationsProducer" class="title">Uses of Interface<br>org.apache.kudu.flume.sink.KuduOperationsProducer</h2>
+</div>
+<div class="classUseContainer">
+<ul class="blockList">
+<li class="blockList">
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing packages, and an explanation">
+<caption><span>Packages that use <a href="../../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html" title="interface in org.apache.kudu.flume.sink">KuduOperationsProducer</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Package</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="#org.apache.kudu.flume.sink">org.apache.kudu.flume.sink</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList">
+<ul class="blockList">
+<li class="blockList"><a name="org.apache.kudu.flume.sink">
+<!--   -->
+</a>
+<h3>Uses of <a href="../../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html" title="interface in org.apache.kudu.flume.sink">KuduOperationsProducer</a> in <a href="../../../../../../org/apache/kudu/flume/sink/package-summary.html">org.apache.kudu.flume.sink</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing classes, and an explanation">
+<caption><span>Classes in <a href="../../../../../../org/apache/kudu/flume/sink/package-summary.html">org.apache.kudu.flume.sink</a> that implement <a href="../../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html" title="interface in org.apache.kudu.flume.sink">KuduOperationsProducer</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Class and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code>class&nbsp;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/kudu/flume/sink/AvroKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">AvroKuduOperationsProducer</a></span></code>
+<div class="block">An Avro serializer that generates one operation per event by deserializing the event
+ body as an Avro record and mapping its fields to columns in a Kudu table.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>class&nbsp;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">RegexpKuduOperationsProducer</a></span></code>
+<div class="block">A regular expression operations producer that generates one or more Kudu
+ <a href="../../../../../../org/apache/kudu/client/Insert.html" title="class in org.apache.kudu.client"><code>Insert</code></a> or <a href="../../../../../../org/apache/kudu/client/Upsert.html" title="class in org.apache.kudu.client"><code>Upsert</code></a> operations per Flume <code>Event</code> by
+ parsing the event <code>body</code> using a regular expression.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>class&nbsp;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/kudu/flume/sink/SimpleKeyedKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">SimpleKeyedKuduOperationsProducer</a></span></code>
+<div class="block">A simple serializer that generates one <a href="../../../../../../org/apache/kudu/client/Insert.html" title="class in org.apache.kudu.client"><code>Insert</code></a> or <a href="../../../../../../org/apache/kudu/client/Upsert.html" title="class in org.apache.kudu.client"><code>Upsert</code></a>
+ per <code>Event</code> by writing the event body into a BINARY column.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>class&nbsp;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/kudu/flume/sink/SimpleKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">SimpleKuduOperationsProducer</a></span></code>
+<div class="block">A simple serializer that generates one <a href="../../../../../../org/apache/kudu/client/Insert.html" title="class in org.apache.kudu.client"><code>Insert</code></a> per <code>Event</code>
+ by writing the event body into a BINARY column.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html" title="interface in org.apache.kudu.flume.sink">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../../index.html?org/apache/kudu/flume/sink/class-use/KuduOperationsProducer.html" target="_top">Frames</a></li>
+<li><a href="KuduOperationsProducer.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/flume/sink/class-use/KuduSink.html b/releases/1.4.0/apidocs/org/apache/kudu/flume/sink/class-use/KuduSink.html
new file mode 100644
index 0000000..6e2e12f
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/flume/sink/class-use/KuduSink.html
@@ -0,0 +1,125 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.flume.sink.KuduSink (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.flume.sink.KuduSink (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../../org/apache/kudu/flume/sink/KuduSink.html" title="class in org.apache.kudu.flume.sink">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../../index.html?org/apache/kudu/flume/sink/class-use/KuduSink.html" target="_top">Frames</a></li>
+<li><a href="KuduSink.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.flume.sink.KuduSink" class="title">Uses of Class<br>org.apache.kudu.flume.sink.KuduSink</h2>
+</div>
+<div class="classUseContainer">No usage of org.apache.kudu.flume.sink.KuduSink</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../../org/apache/kudu/flume/sink/KuduSink.html" title="class in org.apache.kudu.flume.sink">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../../index.html?org/apache/kudu/flume/sink/class-use/KuduSink.html" target="_top">Frames</a></li>
+<li><a href="KuduSink.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/flume/sink/class-use/KuduSinkConfigurationConstants.html b/releases/1.4.0/apidocs/org/apache/kudu/flume/sink/class-use/KuduSinkConfigurationConstants.html
new file mode 100644
index 0000000..227536a
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/flume/sink/class-use/KuduSinkConfigurationConstants.html
@@ -0,0 +1,125 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.flume.sink.KuduSinkConfigurationConstants (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.flume.sink.KuduSinkConfigurationConstants (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../../org/apache/kudu/flume/sink/KuduSinkConfigurationConstants.html" title="class in org.apache.kudu.flume.sink">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../../index.html?org/apache/kudu/flume/sink/class-use/KuduSinkConfigurationConstants.html" target="_top">Frames</a></li>
+<li><a href="KuduSinkConfigurationConstants.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.flume.sink.KuduSinkConfigurationConstants" class="title">Uses of Class<br>org.apache.kudu.flume.sink.KuduSinkConfigurationConstants</h2>
+</div>
+<div class="classUseContainer">No usage of org.apache.kudu.flume.sink.KuduSinkConfigurationConstants</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../../org/apache/kudu/flume/sink/KuduSinkConfigurationConstants.html" title="class in org.apache.kudu.flume.sink">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../../index.html?org/apache/kudu/flume/sink/class-use/KuduSinkConfigurationConstants.html" target="_top">Frames</a></li>
+<li><a href="KuduSinkConfigurationConstants.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/flume/sink/class-use/RegexpKuduOperationsProducer.html b/releases/1.4.0/apidocs/org/apache/kudu/flume/sink/class-use/RegexpKuduOperationsProducer.html
new file mode 100644
index 0000000..2a51177
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/flume/sink/class-use/RegexpKuduOperationsProducer.html
@@ -0,0 +1,125 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.flume.sink.RegexpKuduOperationsProducer (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.flume.sink.RegexpKuduOperationsProducer (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../../org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../../index.html?org/apache/kudu/flume/sink/class-use/RegexpKuduOperationsProducer.html" target="_top">Frames</a></li>
+<li><a href="RegexpKuduOperationsProducer.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.flume.sink.RegexpKuduOperationsProducer" class="title">Uses of Class<br>org.apache.kudu.flume.sink.RegexpKuduOperationsProducer</h2>
+</div>
+<div class="classUseContainer">No usage of org.apache.kudu.flume.sink.RegexpKuduOperationsProducer</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../../org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../../index.html?org/apache/kudu/flume/sink/class-use/RegexpKuduOperationsProducer.html" target="_top">Frames</a></li>
+<li><a href="RegexpKuduOperationsProducer.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/flume/sink/class-use/SimpleKeyedKuduOperationsProducer.html b/releases/1.4.0/apidocs/org/apache/kudu/flume/sink/class-use/SimpleKeyedKuduOperationsProducer.html
new file mode 100644
index 0000000..e4c20d2
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/flume/sink/class-use/SimpleKeyedKuduOperationsProducer.html
@@ -0,0 +1,125 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.flume.sink.SimpleKeyedKuduOperationsProducer (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.flume.sink.SimpleKeyedKuduOperationsProducer (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../../org/apache/kudu/flume/sink/SimpleKeyedKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../../index.html?org/apache/kudu/flume/sink/class-use/SimpleKeyedKuduOperationsProducer.html" target="_top">Frames</a></li>
+<li><a href="SimpleKeyedKuduOperationsProducer.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.flume.sink.SimpleKeyedKuduOperationsProducer" class="title">Uses of Class<br>org.apache.kudu.flume.sink.SimpleKeyedKuduOperationsProducer</h2>
+</div>
+<div class="classUseContainer">No usage of org.apache.kudu.flume.sink.SimpleKeyedKuduOperationsProducer</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../../org/apache/kudu/flume/sink/SimpleKeyedKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../../index.html?org/apache/kudu/flume/sink/class-use/SimpleKeyedKuduOperationsProducer.html" target="_top">Frames</a></li>
+<li><a href="SimpleKeyedKuduOperationsProducer.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/flume/sink/class-use/SimpleKuduOperationsProducer.html b/releases/1.4.0/apidocs/org/apache/kudu/flume/sink/class-use/SimpleKuduOperationsProducer.html
new file mode 100644
index 0000000..1cb36d4
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/flume/sink/class-use/SimpleKuduOperationsProducer.html
@@ -0,0 +1,125 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.flume.sink.SimpleKuduOperationsProducer (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.flume.sink.SimpleKuduOperationsProducer (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../../org/apache/kudu/flume/sink/SimpleKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../../index.html?org/apache/kudu/flume/sink/class-use/SimpleKuduOperationsProducer.html" target="_top">Frames</a></li>
+<li><a href="SimpleKuduOperationsProducer.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.flume.sink.SimpleKuduOperationsProducer" class="title">Uses of Class<br>org.apache.kudu.flume.sink.SimpleKuduOperationsProducer</h2>
+</div>
+<div class="classUseContainer">No usage of org.apache.kudu.flume.sink.SimpleKuduOperationsProducer</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../../org/apache/kudu/flume/sink/SimpleKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../../index.html?org/apache/kudu/flume/sink/class-use/SimpleKuduOperationsProducer.html" target="_top">Frames</a></li>
+<li><a href="SimpleKuduOperationsProducer.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/flume/sink/package-frame.html b/releases/1.4.0/apidocs/org/apache/kudu/flume/sink/package-frame.html
new file mode 100644
index 0000000..14a690f
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/flume/sink/package-frame.html
@@ -0,0 +1,29 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>org.apache.kudu.flume.sink (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<h1 class="bar"><a href="../../../../../org/apache/kudu/flume/sink/package-summary.html" target="classFrame">org.apache.kudu.flume.sink</a></h1>
+<div class="indexContainer">
+<h2 title="Interfaces">Interfaces</h2>
+<ul title="Interfaces">
+<li><a href="KuduOperationsProducer.html" title="interface in org.apache.kudu.flume.sink" target="classFrame"><span class="interfaceName">KuduOperationsProducer</span></a></li>
+</ul>
+<h2 title="Classes">Classes</h2>
+<ul title="Classes">
+<li><a href="AvroKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink" target="classFrame">AvroKuduOperationsProducer</a></li>
+<li><a href="KuduSink.html" title="class in org.apache.kudu.flume.sink" target="classFrame">KuduSink</a></li>
+<li><a href="KuduSinkConfigurationConstants.html" title="class in org.apache.kudu.flume.sink" target="classFrame">KuduSinkConfigurationConstants</a></li>
+<li><a href="RegexpKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink" target="classFrame">RegexpKuduOperationsProducer</a></li>
+<li><a href="SimpleKeyedKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink" target="classFrame">SimpleKeyedKuduOperationsProducer</a></li>
+<li><a href="SimpleKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink" target="classFrame">SimpleKuduOperationsProducer</a></li>
+</ul>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/flume/sink/package-summary.html b/releases/1.4.0/apidocs/org/apache/kudu/flume/sink/package-summary.html
new file mode 100644
index 0000000..7a6e469
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/flume/sink/package-summary.html
@@ -0,0 +1,196 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>org.apache.kudu.flume.sink (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="org.apache.kudu.flume.sink (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li class="navBarCell1Rev">Package</li>
+<li>Class</li>
+<li><a href="package-use.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../../org/apache/kudu/client/package-summary.html">Prev&nbsp;Package</a></li>
+<li><a href="../../../../../org/apache/kudu/mapreduce/package-summary.html">Next&nbsp;Package</a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/flume/sink/package-summary.html" target="_top">Frames</a></li>
+<li><a href="package-summary.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h1 title="Package" class="title">Package&nbsp;org.apache.kudu.flume.sink</h1>
+</div>
+<div class="contentContainer">
+<ul class="blockList">
+<li class="blockList">
+<table class="typeSummary" border="0" cellpadding="3" cellspacing="0" summary="Interface Summary table, listing interfaces, and an explanation">
+<caption><span>Interface Summary</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Interface</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html" title="interface in org.apache.kudu.flume.sink">KuduOperationsProducer</a></td>
+<td class="colLast">
+<div class="block">Interface for an operations producer that produces Kudu Operations from
+ Flume events.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList">
+<table class="typeSummary" border="0" cellpadding="3" cellspacing="0" summary="Class Summary table, listing classes, and an explanation">
+<caption><span>Class Summary</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Class</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="../../../../../org/apache/kudu/flume/sink/AvroKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">AvroKuduOperationsProducer</a></td>
+<td class="colLast">
+<div class="block">An Avro serializer that generates one operation per event by deserializing the event
+ body as an Avro record and mapping its fields to columns in a Kudu table.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a href="../../../../../org/apache/kudu/flume/sink/KuduSink.html" title="class in org.apache.kudu.flume.sink">KuduSink</a></td>
+<td class="colLast">
+<div class="block">A Flume sink that reads events from a channel and writes them to a Kudu table.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a href="../../../../../org/apache/kudu/flume/sink/KuduSinkConfigurationConstants.html" title="class in org.apache.kudu.flume.sink">KuduSinkConfigurationConstants</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a href="../../../../../org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">RegexpKuduOperationsProducer</a></td>
+<td class="colLast">
+<div class="block">A regular expression operations producer that generates one or more Kudu
+ <a href="../../../../../org/apache/kudu/client/Insert.html" title="class in org.apache.kudu.client"><code>Insert</code></a> or <a href="../../../../../org/apache/kudu/client/Upsert.html" title="class in org.apache.kudu.client"><code>Upsert</code></a> operations per Flume <code>Event</code> by
+ parsing the event <code>body</code> using a regular expression.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a href="../../../../../org/apache/kudu/flume/sink/SimpleKeyedKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">SimpleKeyedKuduOperationsProducer</a></td>
+<td class="colLast">
+<div class="block">A simple serializer that generates one <a href="../../../../../org/apache/kudu/client/Insert.html" title="class in org.apache.kudu.client"><code>Insert</code></a> or <a href="../../../../../org/apache/kudu/client/Upsert.html" title="class in org.apache.kudu.client"><code>Upsert</code></a>
+ per <code>Event</code> by writing the event body into a BINARY column.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a href="../../../../../org/apache/kudu/flume/sink/SimpleKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink">SimpleKuduOperationsProducer</a></td>
+<td class="colLast">
+<div class="block">A simple serializer that generates one <a href="../../../../../org/apache/kudu/client/Insert.html" title="class in org.apache.kudu.client"><code>Insert</code></a> per <code>Event</code>
+ by writing the event body into a BINARY column.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li class="navBarCell1Rev">Package</li>
+<li>Class</li>
+<li><a href="package-use.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../../org/apache/kudu/client/package-summary.html">Prev&nbsp;Package</a></li>
+<li><a href="../../../../../org/apache/kudu/mapreduce/package-summary.html">Next&nbsp;Package</a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/flume/sink/package-summary.html" target="_top">Frames</a></li>
+<li><a href="package-summary.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/flume/sink/package-tree.html b/releases/1.4.0/apidocs/org/apache/kudu/flume/sink/package-tree.html
new file mode 100644
index 0000000..e55f3ff
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/flume/sink/package-tree.html
@@ -0,0 +1,160 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>org.apache.kudu.flume.sink Class Hierarchy (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="org.apache.kudu.flume.sink Class Hierarchy (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li>Class</li>
+<li>Use</li>
+<li class="navBarCell1Rev">Tree</li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../../org/apache/kudu/client/package-tree.html">Prev</a></li>
+<li><a href="../../../../../org/apache/kudu/mapreduce/package-tree.html">Next</a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/flume/sink/package-tree.html" target="_top">Frames</a></li>
+<li><a href="package-tree.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h1 class="title">Hierarchy For Package org.apache.kudu.flume.sink</h1>
+<span class="packageHierarchyLabel">Package Hierarchies:</span>
+<ul class="horizontal">
+<li><a href="../../../../../overview-tree.html">All Packages</a></li>
+</ul>
+</div>
+<div class="contentContainer">
+<h2 title="Class Hierarchy">Class Hierarchy</h2>
+<ul>
+<li type="circle">java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Object</span></a>
+<ul>
+<li type="circle">org.apache.flume.sink.AbstractSink (implements org.apache.flume.lifecycle.LifecycleAware, org.apache.flume.Sink)
+<ul>
+<li type="circle">org.apache.kudu.flume.sink.<a href="../../../../../org/apache/kudu/flume/sink/KuduSink.html" title="class in org.apache.kudu.flume.sink"><span class="typeNameLink">KuduSink</span></a> (implements org.apache.flume.conf.Configurable)</li>
+</ul>
+</li>
+<li type="circle">org.apache.kudu.flume.sink.<a href="../../../../../org/apache/kudu/flume/sink/AvroKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink"><span class="typeNameLink">AvroKuduOperationsProducer</span></a> (implements org.apache.kudu.flume.sink.<a href="../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html" title="interface in org.apache.kudu.flume.sink">KuduOperationsProducer</a>)</li>
+<li type="circle">org.apache.kudu.flume.sink.<a href="../../../../../org/apache/kudu/flume/sink/KuduSinkConfigurationConstants.html" title="class in org.apache.kudu.flume.sink"><span class="typeNameLink">KuduSinkConfigurationConstants</span></a></li>
+<li type="circle">org.apache.kudu.flume.sink.<a href="../../../../../org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink"><span class="typeNameLink">RegexpKuduOperationsProducer</span></a> (implements org.apache.kudu.flume.sink.<a href="../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html" title="interface in org.apache.kudu.flume.sink">KuduOperationsProducer</a>)</li>
+<li type="circle">org.apache.kudu.flume.sink.<a href="../../../../../org/apache/kudu/flume/sink/SimpleKeyedKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink"><span class="typeNameLink">SimpleKeyedKuduOperationsProducer</span></a> (implements org.apache.kudu.flume.sink.<a href="../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html" title="interface in org.apache.kudu.flume.sink">KuduOperationsProducer</a>)</li>
+<li type="circle">org.apache.kudu.flume.sink.<a href="../../../../../org/apache/kudu/flume/sink/SimpleKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink"><span class="typeNameLink">SimpleKuduOperationsProducer</span></a> (implements org.apache.kudu.flume.sink.<a href="../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html" title="interface in org.apache.kudu.flume.sink">KuduOperationsProducer</a>)</li>
+</ul>
+</li>
+</ul>
+<h2 title="Interface Hierarchy">Interface Hierarchy</h2>
+<ul>
+<li type="circle">java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/AutoCloseable.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">AutoCloseable</span></a>
+<ul>
+<li type="circle">org.apache.kudu.flume.sink.<a href="../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html" title="interface in org.apache.kudu.flume.sink"><span class="typeNameLink">KuduOperationsProducer</span></a> (also extends org.apache.flume.conf.Configurable)</li>
+</ul>
+</li>
+<li type="circle">org.apache.flume.conf.Configurable
+<ul>
+<li type="circle">org.apache.kudu.flume.sink.<a href="../../../../../org/apache/kudu/flume/sink/KuduOperationsProducer.html" title="interface in org.apache.kudu.flume.sink"><span class="typeNameLink">KuduOperationsProducer</span></a> (also extends java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/AutoCloseable.html?is-external=true" title="class or interface in java.lang">AutoCloseable</a>)</li>
+</ul>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li>Class</li>
+<li>Use</li>
+<li class="navBarCell1Rev">Tree</li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../../org/apache/kudu/client/package-tree.html">Prev</a></li>
+<li><a href="../../../../../org/apache/kudu/mapreduce/package-tree.html">Next</a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/flume/sink/package-tree.html" target="_top">Frames</a></li>
+<li><a href="package-tree.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/flume/sink/package-use.html b/releases/1.4.0/apidocs/org/apache/kudu/flume/sink/package-use.html
new file mode 100644
index 0000000..4980f1b
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/flume/sink/package-use.html
@@ -0,0 +1,161 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Package org.apache.kudu.flume.sink (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Package org.apache.kudu.flume.sink (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li>Class</li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/flume/sink/package-use.html" target="_top">Frames</a></li>
+<li><a href="package-use.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h1 title="Uses of Package org.apache.kudu.flume.sink" class="title">Uses of Package<br>org.apache.kudu.flume.sink</h1>
+</div>
+<div class="contentContainer">
+<ul class="blockList">
+<li class="blockList">
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing packages, and an explanation">
+<caption><span>Packages that use <a href="../../../../../org/apache/kudu/flume/sink/package-summary.html">org.apache.kudu.flume.sink</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Package</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="#org.apache.kudu.flume.sink">org.apache.kudu.flume.sink</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList"><a name="org.apache.kudu.flume.sink">
+<!--   -->
+</a>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing classes, and an explanation">
+<caption><span>Classes in <a href="../../../../../org/apache/kudu/flume/sink/package-summary.html">org.apache.kudu.flume.sink</a> used by <a href="../../../../../org/apache/kudu/flume/sink/package-summary.html">org.apache.kudu.flume.sink</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colOne" scope="col">Class and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colOne"><a href="../../../../../org/apache/kudu/flume/sink/class-use/KuduOperationsProducer.html#org.apache.kudu.flume.sink">KuduOperationsProducer</a>
+<div class="block">Interface for an operations producer that produces Kudu Operations from
+ Flume events.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li>Class</li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/flume/sink/package-use.html" target="_top">Frames</a></li>
+<li><a href="package-use.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/CommandLineParser.html b/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/CommandLineParser.html
new file mode 100644
index 0000000..b9c13d2
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/CommandLineParser.html
@@ -0,0 +1,618 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>CommandLineParser (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="CommandLineParser (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":10,"i1":10,"i2":10,"i3":9,"i4":10,"i5":10,"i6":10,"i7":10};
+var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/CommandLineParser.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev&nbsp;Class</li>
+<li><a href="../../../../org/apache/kudu/mapreduce/KuduTableInputFormat.html" title="class in org.apache.kudu.mapreduce"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/mapreduce/CommandLineParser.html" target="_top">Frames</a></li>
+<li><a href="CommandLineParser.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.mapreduce</div>
+<h2 title="Class CommandLineParser" class="title">Class CommandLineParser</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.mapreduce.CommandLineParser</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Unstable
+public class <span class="typeNameLabel">CommandLineParser</span>
+extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></pre>
+<div class="block">Utility class that manages common configurations to all MR jobs. For example,
+ any job that uses {#KuduTableMapReduceUtil} to setup an input or output format
+ and that has parsed the command line arguments with
+ <code>GenericOptionsParser</code> can simply be passed:
+ <code>
+ -Dmaster.address=ADDRESS
+ </code>
+ in order to specify where the master is.
+ Use <a href="../../../../org/apache/kudu/mapreduce/CommandLineParser.html#getHelpSnippet--"><code>getHelpSnippet()</code></a> to provide usage text for the configurations
+ managed by this class.</div>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- =========== FIELD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="field.summary">
+<!--   -->
+</a>
+<h3>Field Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
+<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Field and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/mapreduce/CommandLineParser.html#ADMIN_OPERATION_TIMEOUT_MS_KEY">ADMIN_OPERATION_TIMEOUT_MS_KEY</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/mapreduce/CommandLineParser.html#MASTER_ADDRESSES_DEFAULT">MASTER_ADDRESSES_DEFAULT</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/mapreduce/CommandLineParser.html#MASTER_ADDRESSES_KEY">MASTER_ADDRESSES_KEY</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static int</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/mapreduce/CommandLineParser.html#NUM_REPLICAS_DEFAULT">NUM_REPLICAS_DEFAULT</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/mapreduce/CommandLineParser.html#NUM_REPLICAS_KEY">NUM_REPLICAS_KEY</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static long</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/mapreduce/CommandLineParser.html#OPERATION_TIMEOUT_MS_DEFAULT">OPERATION_TIMEOUT_MS_DEFAULT</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/mapreduce/CommandLineParser.html#OPERATION_TIMEOUT_MS_KEY">OPERATION_TIMEOUT_MS_KEY</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static long</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/mapreduce/CommandLineParser.html#SOCKET_READ_TIMEOUT_MS_DEFAULT">SOCKET_READ_TIMEOUT_MS_DEFAULT</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/mapreduce/CommandLineParser.html#SOCKET_READ_TIMEOUT_MS_KEY">SOCKET_READ_TIMEOUT_MS_KEY</a></span></code>&nbsp;</td>
+</tr>
+</table>
+</li>
+</ul>
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="constructor.summary">
+<!--   -->
+</a>
+<h3>Constructor Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
+<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colOne" scope="col">Constructor and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/mapreduce/CommandLineParser.html#CommandLineParser-org.apache.hadoop.conf.Configuration-">CommandLineParser</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf)</code>
+<div class="block">Constructor that uses a Configuration that has already been through
+ <code>GenericOptionsParser</code>'s command line parsing.</div>
+</td>
+</tr>
+</table>
+</li>
+</ul>
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code>long</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/mapreduce/CommandLineParser.html#getAdminOperationTimeoutMs--">getAdminOperationTimeoutMs</a></span>()</code>
+<div class="block">Get the configured timeout for admin operations.</div>
+</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client">AsyncKuduClient</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/mapreduce/CommandLineParser.html#getAsyncClient--">getAsyncClient</a></span>()</code>
+<div class="block">Get an async client connected to the configured Master(s).</div>
+</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/mapreduce/CommandLineParser.html#getClient--">getClient</a></span>()</code>
+<div class="block">Get a client connected to the configured Master(s).</div>
+</td>
+</tr>
+<tr id="i3" class="rowColor">
+<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/mapreduce/CommandLineParser.html#getHelpSnippet--">getHelpSnippet</a></span>()</code>
+<div class="block">This method returns a single multi-line string that contains the help snippet to append to
+ the tail of a usage() or help() type of method.</div>
+</td>
+</tr>
+<tr id="i4" class="altColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/mapreduce/CommandLineParser.html#getMasterAddresses--">getMasterAddresses</a></span>()</code>
+<div class="block">Get the configured master's config.</div>
+</td>
+</tr>
+<tr id="i5" class="rowColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/mapreduce/CommandLineParser.html#getNumReplicas--">getNumReplicas</a></span>()</code>
+<div class="block">Get the number of replicas to use when configuring a new table.</div>
+</td>
+</tr>
+<tr id="i6" class="altColor">
+<td class="colFirst"><code>long</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/mapreduce/CommandLineParser.html#getOperationTimeoutMs--">getOperationTimeoutMs</a></span>()</code>
+<div class="block">Get the configured timeout for operations on sessions and scanners.</div>
+</td>
+</tr>
+<tr id="i7" class="rowColor">
+<td class="colFirst"><code>long</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/mapreduce/CommandLineParser.html#getSocketReadTimeoutMs--">getSocketReadTimeoutMs</a></span>()</code>
+<div class="block">Get the configured timeout for socket reads.</div>
+</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ============ FIELD DETAIL =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="field.detail">
+<!--   -->
+</a>
+<h3>Field Detail</h3>
+<a name="MASTER_ADDRESSES_KEY">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>MASTER_ADDRESSES_KEY</h4>
+<pre>public static final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> MASTER_ADDRESSES_KEY</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../constant-values.html#org.apache.kudu.mapreduce.CommandLineParser.MASTER_ADDRESSES_KEY">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="MASTER_ADDRESSES_DEFAULT">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>MASTER_ADDRESSES_DEFAULT</h4>
+<pre>public static final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> MASTER_ADDRESSES_DEFAULT</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../constant-values.html#org.apache.kudu.mapreduce.CommandLineParser.MASTER_ADDRESSES_DEFAULT">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="OPERATION_TIMEOUT_MS_KEY">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>OPERATION_TIMEOUT_MS_KEY</h4>
+<pre>public static final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> OPERATION_TIMEOUT_MS_KEY</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../constant-values.html#org.apache.kudu.mapreduce.CommandLineParser.OPERATION_TIMEOUT_MS_KEY">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="OPERATION_TIMEOUT_MS_DEFAULT">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>OPERATION_TIMEOUT_MS_DEFAULT</h4>
+<pre>public static final&nbsp;long OPERATION_TIMEOUT_MS_DEFAULT</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../constant-values.html#org.apache.kudu.mapreduce.CommandLineParser.OPERATION_TIMEOUT_MS_DEFAULT">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="ADMIN_OPERATION_TIMEOUT_MS_KEY">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>ADMIN_OPERATION_TIMEOUT_MS_KEY</h4>
+<pre>public static final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> ADMIN_OPERATION_TIMEOUT_MS_KEY</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../constant-values.html#org.apache.kudu.mapreduce.CommandLineParser.ADMIN_OPERATION_TIMEOUT_MS_KEY">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="SOCKET_READ_TIMEOUT_MS_KEY">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>SOCKET_READ_TIMEOUT_MS_KEY</h4>
+<pre>public static final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> SOCKET_READ_TIMEOUT_MS_KEY</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../constant-values.html#org.apache.kudu.mapreduce.CommandLineParser.SOCKET_READ_TIMEOUT_MS_KEY">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="SOCKET_READ_TIMEOUT_MS_DEFAULT">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>SOCKET_READ_TIMEOUT_MS_DEFAULT</h4>
+<pre>public static final&nbsp;long SOCKET_READ_TIMEOUT_MS_DEFAULT</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../constant-values.html#org.apache.kudu.mapreduce.CommandLineParser.SOCKET_READ_TIMEOUT_MS_DEFAULT">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="NUM_REPLICAS_KEY">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>NUM_REPLICAS_KEY</h4>
+<pre>public static final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> NUM_REPLICAS_KEY</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../constant-values.html#org.apache.kudu.mapreduce.CommandLineParser.NUM_REPLICAS_KEY">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="NUM_REPLICAS_DEFAULT">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>NUM_REPLICAS_DEFAULT</h4>
+<pre>public static final&nbsp;int NUM_REPLICAS_DEFAULT</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../constant-values.html#org.apache.kudu.mapreduce.CommandLineParser.NUM_REPLICAS_DEFAULT">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="constructor.detail">
+<!--   -->
+</a>
+<h3>Constructor Detail</h3>
+<a name="CommandLineParser-org.apache.hadoop.conf.Configuration-">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>CommandLineParser</h4>
+<pre>public&nbsp;CommandLineParser(org.apache.hadoop.conf.Configuration&nbsp;conf)</pre>
+<div class="block">Constructor that uses a Configuration that has already been through
+ <code>GenericOptionsParser</code>'s command line parsing.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>conf</code> - the configuration from which job configurations will be extracted</dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="getMasterAddresses--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getMasterAddresses</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getMasterAddresses()</pre>
+<div class="block">Get the configured master's config.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a string that contains the passed config, or the default value</dd>
+</dl>
+</li>
+</ul>
+<a name="getOperationTimeoutMs--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getOperationTimeoutMs</h4>
+<pre>public&nbsp;long&nbsp;getOperationTimeoutMs()</pre>
+<div class="block">Get the configured timeout for operations on sessions and scanners.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a long that represents the passed timeout, or the default value</dd>
+</dl>
+</li>
+</ul>
+<a name="getAdminOperationTimeoutMs--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getAdminOperationTimeoutMs</h4>
+<pre>public&nbsp;long&nbsp;getAdminOperationTimeoutMs()</pre>
+<div class="block">Get the configured timeout for admin operations.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a long that represents the passed timeout, or the default value</dd>
+</dl>
+</li>
+</ul>
+<a name="getSocketReadTimeoutMs--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getSocketReadTimeoutMs</h4>
+<pre>public&nbsp;long&nbsp;getSocketReadTimeoutMs()</pre>
+<div class="block">Get the configured timeout for socket reads.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a long that represents the passed timeout, or the default value</dd>
+</dl>
+</li>
+</ul>
+<a name="getNumReplicas--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getNumReplicas</h4>
+<pre>public&nbsp;int&nbsp;getNumReplicas()</pre>
+<div class="block">Get the number of replicas to use when configuring a new table.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>an int that represents the passed number of replicas to use, or the default value.</dd>
+</dl>
+</li>
+</ul>
+<a name="getAsyncClient--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getAsyncClient</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client">AsyncKuduClient</a>&nbsp;getAsyncClient()</pre>
+<div class="block">Get an async client connected to the configured Master(s).</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>an async kudu client</dd>
+</dl>
+</li>
+</ul>
+<a name="getClient--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getClient</h4>
+<pre>public&nbsp;<a href="../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a>&nbsp;getClient()</pre>
+<div class="block">Get a client connected to the configured Master(s).</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a kudu client</dd>
+</dl>
+</li>
+</ul>
+<a name="getHelpSnippet--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>getHelpSnippet</h4>
+<pre>public static&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getHelpSnippet()</pre>
+<div class="block">This method returns a single multi-line string that contains the help snippet to append to
+ the tail of a usage() or help() type of method.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a string with all the available configurations and their defaults</dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/CommandLineParser.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev&nbsp;Class</li>
+<li><a href="../../../../org/apache/kudu/mapreduce/KuduTableInputFormat.html" title="class in org.apache.kudu.mapreduce"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/mapreduce/CommandLineParser.html" target="_top">Frames</a></li>
+<li><a href="CommandLineParser.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/KuduTableInputFormat.html b/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/KuduTableInputFormat.html
new file mode 100644
index 0000000..8a6f4df
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/KuduTableInputFormat.html
@@ -0,0 +1,362 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>KuduTableInputFormat (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="KuduTableInputFormat (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":10,"i1":10,"i2":10,"i3":10};
+var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/KuduTableInputFormat.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/mapreduce/CommandLineParser.html" title="class in org.apache.kudu.mapreduce"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/mapreduce/KuduTableMapReduceUtil.html" title="class in org.apache.kudu.mapreduce"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/mapreduce/KuduTableInputFormat.html" target="_top">Frames</a></li>
+<li><a href="KuduTableInputFormat.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.mapreduce</div>
+<h2 title="Class KuduTableInputFormat" class="title">Class KuduTableInputFormat</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li>org.apache.hadoop.mapreduce.InputFormat&lt;org.apache.hadoop.io.NullWritable,<a href="../../../../org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a>&gt;</li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.mapreduce.KuduTableInputFormat</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<dl>
+<dt>All Implemented Interfaces:</dt>
+<dd>org.apache.hadoop.conf.Configurable</dd>
+</dl>
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Evolving
+public class <span class="typeNameLabel">KuduTableInputFormat</span>
+extends org.apache.hadoop.mapreduce.InputFormat&lt;org.apache.hadoop.io.NullWritable,<a href="../../../../org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a>&gt;
+implements org.apache.hadoop.conf.Configurable</pre>
+<div class="block"><p>
+ This input format generates one split per tablet and the only location for each split is that
+ tablet's leader.
+ </p>
+
+ <p>
+ Hadoop doesn't have the concept of "closing" the input format so in order to release the
+ resources we assume that once either <a href="../../../../org/apache/kudu/mapreduce/KuduTableInputFormat.html#getSplits-org.apache.hadoop.mapreduce.JobContext-"><code>getSplits(org.apache.hadoop.mapreduce.JobContext)</code></a>
+ or <code>KuduTableInputFormat.TableRecordReader.close()</code> have been called that
+ the object won't be used again and the AsyncKuduClient is shut down.
+ </p></div>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="constructor.summary">
+<!--   -->
+</a>
+<h3>Constructor Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
+<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colOne" scope="col">Constructor and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/mapreduce/KuduTableInputFormat.html#KuduTableInputFormat--">KuduTableInputFormat</a></span>()</code>&nbsp;</td>
+</tr>
+</table>
+</li>
+</ul>
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code>org.apache.hadoop.mapreduce.RecordReader&lt;org.apache.hadoop.io.NullWritable,<a href="../../../../org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/mapreduce/KuduTableInputFormat.html#createRecordReader-org.apache.hadoop.mapreduce.InputSplit-org.apache.hadoop.mapreduce.TaskAttemptContext-">createRecordReader</a></span>(org.apache.hadoop.mapreduce.InputSplit&nbsp;inputSplit,
+                  org.apache.hadoop.mapreduce.TaskAttemptContext&nbsp;taskAttemptContext)</code>&nbsp;</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code>org.apache.hadoop.conf.Configuration</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/mapreduce/KuduTableInputFormat.html#getConf--">getConf</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.mapreduce.InputSplit&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/mapreduce/KuduTableInputFormat.html#getSplits-org.apache.hadoop.mapreduce.JobContext-">getSplits</a></span>(org.apache.hadoop.mapreduce.JobContext&nbsp;jobContext)</code>&nbsp;</td>
+</tr>
+<tr id="i3" class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/mapreduce/KuduTableInputFormat.html#setConf-org.apache.hadoop.conf.Configuration-">setConf</a></span>(org.apache.hadoop.conf.Configuration&nbsp;entries)</code>&nbsp;</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="constructor.detail">
+<!--   -->
+</a>
+<h3>Constructor Detail</h3>
+<a name="KuduTableInputFormat--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>KuduTableInputFormat</h4>
+<pre>public&nbsp;KuduTableInputFormat()</pre>
+</li>
+</ul>
+</li>
+</ul>
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="getSplits-org.apache.hadoop.mapreduce.JobContext-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getSplits</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.hadoop.mapreduce.InputSplit&gt;&nbsp;getSplits(org.apache.hadoop.mapreduce.JobContext&nbsp;jobContext)
+                                                       throws <a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a>,
+                                                              <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></pre>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code>getSplits</code>&nbsp;in class&nbsp;<code>org.apache.hadoop.mapreduce.InputFormat&lt;org.apache.hadoop.io.NullWritable,<a href="../../../../org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a>&gt;</code></dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></code></dd>
+</dl>
+</li>
+</ul>
+<a name="createRecordReader-org.apache.hadoop.mapreduce.InputSplit-org.apache.hadoop.mapreduce.TaskAttemptContext-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>createRecordReader</h4>
+<pre>public&nbsp;org.apache.hadoop.mapreduce.RecordReader&lt;org.apache.hadoop.io.NullWritable,<a href="../../../../org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a>&gt;&nbsp;createRecordReader(org.apache.hadoop.mapreduce.InputSplit&nbsp;inputSplit,
+                                                                                                                org.apache.hadoop.mapreduce.TaskAttemptContext&nbsp;taskAttemptContext)
+                                                                                                         throws <a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a>,
+                                                                                                                <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></pre>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code>createRecordReader</code>&nbsp;in class&nbsp;<code>org.apache.hadoop.mapreduce.InputFormat&lt;org.apache.hadoop.io.NullWritable,<a href="../../../../org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client">RowResult</a>&gt;</code></dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></code></dd>
+</dl>
+</li>
+</ul>
+<a name="setConf-org.apache.hadoop.conf.Configuration-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setConf</h4>
+<pre>public&nbsp;void&nbsp;setConf(org.apache.hadoop.conf.Configuration&nbsp;entries)</pre>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code>setConf</code>&nbsp;in interface&nbsp;<code>org.apache.hadoop.conf.Configurable</code></dd>
+</dl>
+</li>
+</ul>
+<a name="getConf--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>getConf</h4>
+<pre>public&nbsp;org.apache.hadoop.conf.Configuration&nbsp;getConf()</pre>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code>getConf</code>&nbsp;in interface&nbsp;<code>org.apache.hadoop.conf.Configurable</code></dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/KuduTableInputFormat.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/mapreduce/CommandLineParser.html" title="class in org.apache.kudu.mapreduce"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/mapreduce/KuduTableMapReduceUtil.html" title="class in org.apache.kudu.mapreduce"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/mapreduce/KuduTableInputFormat.html" target="_top">Frames</a></li>
+<li><a href="KuduTableInputFormat.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/KuduTableMapReduceUtil.html b/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/KuduTableMapReduceUtil.html
new file mode 100644
index 0000000..3c61801
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/KuduTableMapReduceUtil.html
@@ -0,0 +1,398 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>KuduTableMapReduceUtil (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="KuduTableMapReduceUtil (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":9,"i1":9,"i2":9,"i3":9,"i4":9,"i5":9};
+var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/KuduTableMapReduceUtil.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/mapreduce/KuduTableInputFormat.html" title="class in org.apache.kudu.mapreduce"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/mapreduce/KuduTableOutputCommitter.html" title="class in org.apache.kudu.mapreduce"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/mapreduce/KuduTableMapReduceUtil.html" target="_top">Frames</a></li>
+<li><a href="KuduTableMapReduceUtil.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.mapreduce</div>
+<h2 title="Class KuduTableMapReduceUtil" class="title">Class KuduTableMapReduceUtil</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.mapreduce.KuduTableMapReduceUtil</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Evolving
+public class <span class="typeNameLabel">KuduTableMapReduceUtil</span>
+extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></pre>
+<div class="block">Utility class to setup MR jobs that use Kudu as an input and/or output.</div>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code>static void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/mapreduce/KuduTableMapReduceUtil.html#addCredentialsToJob-org.apache.kudu.client.KuduClient-org.apache.hadoop.mapreduce.Job-">addCredentialsToJob</a></span>(<a href="../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a>&nbsp;client,
+                   org.apache.hadoop.mapreduce.Job&nbsp;job)</code>
+<div class="block">Export the credentials from a <a href="../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client"><code>KuduClient</code></a> and store them in the given MapReduce
+ <code>Job</code> so that <a href="../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client"><code>KuduClient</code></a>s created from within tasks of that job can
+ authenticate to Kudu.</div>
+</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code>static void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/mapreduce/KuduTableMapReduceUtil.html#addDependencyJars-org.apache.hadoop.conf.Configuration-java.lang.Class...-">addDependencyJars</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf,
+                 <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;?&gt;...&nbsp;classes)</code>
+<div class="block">Add the jars containing the given classes to the job's configuration
+ such that JobClient will ship them to the cluster and add them to
+ the DistributedCache.</div>
+</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code>static void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/mapreduce/KuduTableMapReduceUtil.html#addDependencyJars-org.apache.hadoop.mapreduce.Job-">addDependencyJars</a></span>(org.apache.hadoop.mapreduce.Job&nbsp;job)</code>
+<div class="block">Add the Kudu dependency jars as well as jars for any of the configured
+ job classes to the job configuration, so that JobClient will ship them
+ to the cluster and add them to the DistributedCache.</div>
+</td>
+</tr>
+<tr id="i3" class="rowColor">
+<td class="colFirst"><code>static void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/mapreduce/KuduTableMapReduceUtil.html#addKuduDependencyJars-org.apache.hadoop.conf.Configuration-">addKuduDependencyJars</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf)</code>
+<div class="block">Add Kudu and its dependencies (only) to the job configuration.</div>
+</td>
+</tr>
+<tr id="i4" class="altColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/mapreduce/KuduTableMapReduceUtil.html#getTableFromContext-org.apache.hadoop.mapreduce.TaskInputOutputContext-">getTableFromContext</a></span>(org.apache.hadoop.mapreduce.TaskInputOutputContext&nbsp;context)</code>
+<div class="block">Use this method when setting up a task to get access to the KuduTable in order to create
+ Inserts, Updates, and Deletes.</div>
+</td>
+</tr>
+<tr id="i5" class="rowColor">
+<td class="colFirst"><code>static void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/mapreduce/KuduTableMapReduceUtil.html#importCredentialsFromCurrentSubject-org.apache.kudu.client.KuduClient-">importCredentialsFromCurrentSubject</a></span>(<a href="../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a>&nbsp;client)</code>
+<div class="block">Import credentials from the current thread's JAAS <a href="http://docs.oracle.com/javase/7/docs/api/javax/security/auth/Subject.html?is-external=true" title="class or interface in javax.security.auth"><code>Subject</code></a> into the provided
+ <a href="../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client"><code>KuduClient</code></a>.</div>
+</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="getTableFromContext-org.apache.hadoop.mapreduce.TaskInputOutputContext-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getTableFromContext</h4>
+<pre>public static&nbsp;<a href="../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a>&nbsp;getTableFromContext(org.apache.hadoop.mapreduce.TaskInputOutputContext&nbsp;context)</pre>
+<div class="block">Use this method when setting up a task to get access to the KuduTable in order to create
+ Inserts, Updates, and Deletes.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>context</code> - Map context</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>The kudu table object as setup by the output format</dd>
+</dl>
+</li>
+</ul>
+<a name="addCredentialsToJob-org.apache.kudu.client.KuduClient-org.apache.hadoop.mapreduce.Job-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>addCredentialsToJob</h4>
+<pre>public static&nbsp;void&nbsp;addCredentialsToJob(<a href="../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a>&nbsp;client,
+                                       org.apache.hadoop.mapreduce.Job&nbsp;job)
+                                throws <a href="../../../../org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client">KuduException</a></pre>
+<div class="block">Export the credentials from a <a href="../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client"><code>KuduClient</code></a> and store them in the given MapReduce
+ <code>Job</code> so that <a href="../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client"><code>KuduClient</code></a>s created from within tasks of that job can
+ authenticate to Kudu.
+
+ This must be used before submitting a job when running against a Kudu cluster
+ configured to require authentication. If using <code>KuduTableMapReduceUtil.TableInputFormatConfigurator</code>,
+ <code>KuduTableMapReduceUtil.TableOutputFormatConfigurator</code> or another such utility class, this is called
+ automatically and does not need to be called.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>client</code> - the client whose credentials to export</dd>
+<dd><code>job</code> - the job to configure</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="../../../../org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client">KuduException</a></code> - if credentials cannot be exported</dd>
+</dl>
+</li>
+</ul>
+<a name="importCredentialsFromCurrentSubject-org.apache.kudu.client.KuduClient-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>importCredentialsFromCurrentSubject</h4>
+<pre>public static&nbsp;void&nbsp;importCredentialsFromCurrentSubject(<a href="../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client">KuduClient</a>&nbsp;client)</pre>
+<div class="block">Import credentials from the current thread's JAAS <a href="http://docs.oracle.com/javase/7/docs/api/javax/security/auth/Subject.html?is-external=true" title="class or interface in javax.security.auth"><code>Subject</code></a> into the provided
+ <a href="../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client"><code>KuduClient</code></a>.
+
+ This must be called for any clients created within a MapReduce job in order to
+ adopt the credentials added by <a href="../../../../org/apache/kudu/mapreduce/KuduTableMapReduceUtil.html#addCredentialsToJob-org.apache.kudu.client.KuduClient-org.apache.hadoop.mapreduce.Job-"><code>addCredentialsToJob(KuduClient, Job)</code></a>.
+ When using <a href="../../../../org/apache/kudu/mapreduce/KuduTableInputFormat.html" title="class in org.apache.kudu.mapreduce"><code>KuduTableInputFormat</code></a> or <a href="../../../../org/apache/kudu/mapreduce/KuduTableOutputFormat.html" title="class in org.apache.kudu.mapreduce"><code>KuduTableOutputFormat</code></a>, the
+ implementation automatically handles creating the client and importing necessary
+ credentials. As such, this is only necessary in jobs that explicitly create a
+ <a href="../../../../org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client"><code>KuduClient</code></a>.
+
+ If no appropriate credentials are found, does nothing.</div>
+</li>
+</ul>
+<a name="addDependencyJars-org.apache.hadoop.mapreduce.Job-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>addDependencyJars</h4>
+<pre>public static&nbsp;void&nbsp;addDependencyJars(org.apache.hadoop.mapreduce.Job&nbsp;job)
+                              throws <a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
+<div class="block">Add the Kudu dependency jars as well as jars for any of the configured
+ job classes to the job configuration, so that JobClient will ship them
+ to the cluster and add them to the DistributedCache.</div>
+<dl>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
+</dl>
+</li>
+</ul>
+<a name="addDependencyJars-org.apache.hadoop.conf.Configuration-java.lang.Class...-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>addDependencyJars</h4>
+<pre>public static&nbsp;void&nbsp;addDependencyJars(org.apache.hadoop.conf.Configuration&nbsp;conf,
+                                     <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;?&gt;...&nbsp;classes)
+                              throws <a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
+<div class="block">Add the jars containing the given classes to the job's configuration
+ such that JobClient will ship them to the cluster and add them to
+ the DistributedCache.</div>
+<dl>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
+</dl>
+</li>
+</ul>
+<a name="addKuduDependencyJars-org.apache.hadoop.conf.Configuration-">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>addKuduDependencyJars</h4>
+<pre>public static&nbsp;void&nbsp;addKuduDependencyJars(org.apache.hadoop.conf.Configuration&nbsp;conf)
+                                  throws <a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
+<div class="block">Add Kudu and its dependencies (only) to the job configuration.
+ <p>
+ This is intended as a low-level API, facilitating code reuse between this
+ class and its mapred counterpart. It also of use to external tools that
+ need to build a MapReduce job that interacts with Kudu but want
+ fine-grained control over the jars shipped to the cluster.
+ </p></div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>conf</code> - The Configuration object to extend with dependencies.</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../org/apache/kudu/mapreduce/KuduTableMapReduceUtil.html" title="class in org.apache.kudu.mapreduce"><code>KuduTableMapReduceUtil</code></a>, 
+<a href="https://issues.apache.org/jira/browse/PIG-3285">PIG-3285</a></dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/KuduTableMapReduceUtil.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/mapreduce/KuduTableInputFormat.html" title="class in org.apache.kudu.mapreduce"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/mapreduce/KuduTableOutputCommitter.html" title="class in org.apache.kudu.mapreduce"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/mapreduce/KuduTableMapReduceUtil.html" target="_top">Frames</a></li>
+<li><a href="KuduTableMapReduceUtil.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/KuduTableOutputCommitter.html b/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/KuduTableOutputCommitter.html
new file mode 100644
index 0000000..fe7fc93
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/KuduTableOutputCommitter.html
@@ -0,0 +1,374 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>KuduTableOutputCommitter (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="KuduTableOutputCommitter (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10};
+var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/KuduTableOutputCommitter.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/mapreduce/KuduTableMapReduceUtil.html" title="class in org.apache.kudu.mapreduce"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/mapreduce/KuduTableOutputFormat.html" title="class in org.apache.kudu.mapreduce"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/mapreduce/KuduTableOutputCommitter.html" target="_top">Frames</a></li>
+<li><a href="KuduTableOutputCommitter.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.mapreduce</div>
+<h2 title="Class KuduTableOutputCommitter" class="title">Class KuduTableOutputCommitter</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li>org.apache.hadoop.mapreduce.OutputCommitter</li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.mapreduce.KuduTableOutputCommitter</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Evolving
+public class <span class="typeNameLabel">KuduTableOutputCommitter</span>
+extends org.apache.hadoop.mapreduce.OutputCommitter</pre>
+<div class="block">Small committer class that does not do anything.</div>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="constructor.summary">
+<!--   -->
+</a>
+<h3>Constructor Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
+<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colOne" scope="col">Constructor and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/mapreduce/KuduTableOutputCommitter.html#KuduTableOutputCommitter--">KuduTableOutputCommitter</a></span>()</code>&nbsp;</td>
+</tr>
+</table>
+</li>
+</ul>
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/mapreduce/KuduTableOutputCommitter.html#abortTask-org.apache.hadoop.mapreduce.TaskAttemptContext-">abortTask</a></span>(org.apache.hadoop.mapreduce.TaskAttemptContext&nbsp;taskAttemptContext)</code>&nbsp;</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/mapreduce/KuduTableOutputCommitter.html#commitTask-org.apache.hadoop.mapreduce.TaskAttemptContext-">commitTask</a></span>(org.apache.hadoop.mapreduce.TaskAttemptContext&nbsp;taskAttemptContext)</code>&nbsp;</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/mapreduce/KuduTableOutputCommitter.html#needsTaskCommit-org.apache.hadoop.mapreduce.TaskAttemptContext-">needsTaskCommit</a></span>(org.apache.hadoop.mapreduce.TaskAttemptContext&nbsp;taskAttemptContext)</code>&nbsp;</td>
+</tr>
+<tr id="i3" class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/mapreduce/KuduTableOutputCommitter.html#setupJob-org.apache.hadoop.mapreduce.JobContext-">setupJob</a></span>(org.apache.hadoop.mapreduce.JobContext&nbsp;jobContext)</code>&nbsp;</td>
+</tr>
+<tr id="i4" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/mapreduce/KuduTableOutputCommitter.html#setupTask-org.apache.hadoop.mapreduce.TaskAttemptContext-">setupTask</a></span>(org.apache.hadoop.mapreduce.TaskAttemptContext&nbsp;taskAttemptContext)</code>&nbsp;</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.org.apache.hadoop.mapreduce.OutputCommitter">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;org.apache.hadoop.mapreduce.OutputCommitter</h3>
+<code>abortJob, cleanupJob, commitJob, isRecoverySupported, isRecoverySupported, recoverTask</code></li>
+</ul>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="constructor.detail">
+<!--   -->
+</a>
+<h3>Constructor Detail</h3>
+<a name="KuduTableOutputCommitter--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>KuduTableOutputCommitter</h4>
+<pre>public&nbsp;KuduTableOutputCommitter()</pre>
+</li>
+</ul>
+</li>
+</ul>
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="setupJob-org.apache.hadoop.mapreduce.JobContext-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setupJob</h4>
+<pre>public&nbsp;void&nbsp;setupJob(org.apache.hadoop.mapreduce.JobContext&nbsp;jobContext)
+              throws <a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code>setupJob</code>&nbsp;in class&nbsp;<code>org.apache.hadoop.mapreduce.OutputCommitter</code></dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
+</dl>
+</li>
+</ul>
+<a name="setupTask-org.apache.hadoop.mapreduce.TaskAttemptContext-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setupTask</h4>
+<pre>public&nbsp;void&nbsp;setupTask(org.apache.hadoop.mapreduce.TaskAttemptContext&nbsp;taskAttemptContext)
+               throws <a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code>setupTask</code>&nbsp;in class&nbsp;<code>org.apache.hadoop.mapreduce.OutputCommitter</code></dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
+</dl>
+</li>
+</ul>
+<a name="needsTaskCommit-org.apache.hadoop.mapreduce.TaskAttemptContext-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>needsTaskCommit</h4>
+<pre>public&nbsp;boolean&nbsp;needsTaskCommit(org.apache.hadoop.mapreduce.TaskAttemptContext&nbsp;taskAttemptContext)
+                        throws <a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code>needsTaskCommit</code>&nbsp;in class&nbsp;<code>org.apache.hadoop.mapreduce.OutputCommitter</code></dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
+</dl>
+</li>
+</ul>
+<a name="commitTask-org.apache.hadoop.mapreduce.TaskAttemptContext-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>commitTask</h4>
+<pre>public&nbsp;void&nbsp;commitTask(org.apache.hadoop.mapreduce.TaskAttemptContext&nbsp;taskAttemptContext)
+                throws <a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code>commitTask</code>&nbsp;in class&nbsp;<code>org.apache.hadoop.mapreduce.OutputCommitter</code></dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
+</dl>
+</li>
+</ul>
+<a name="abortTask-org.apache.hadoop.mapreduce.TaskAttemptContext-">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>abortTask</h4>
+<pre>public&nbsp;void&nbsp;abortTask(org.apache.hadoop.mapreduce.TaskAttemptContext&nbsp;taskAttemptContext)
+               throws <a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code>abortTask</code>&nbsp;in class&nbsp;<code>org.apache.hadoop.mapreduce.OutputCommitter</code></dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/KuduTableOutputCommitter.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/mapreduce/KuduTableMapReduceUtil.html" title="class in org.apache.kudu.mapreduce"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/mapreduce/KuduTableOutputFormat.html" title="class in org.apache.kudu.mapreduce"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/mapreduce/KuduTableOutputCommitter.html" target="_top">Frames</a></li>
+<li><a href="KuduTableOutputCommitter.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/KuduTableOutputFormat.html b/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/KuduTableOutputFormat.html
new file mode 100644
index 0000000..4c7b06a
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/KuduTableOutputFormat.html
@@ -0,0 +1,397 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>KuduTableOutputFormat (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="KuduTableOutputFormat (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":10,"i1":10,"i2":9,"i3":10,"i4":10,"i5":10};
+var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/KuduTableOutputFormat.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/mapreduce/KuduTableOutputCommitter.html" title="class in org.apache.kudu.mapreduce"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/mapreduce/TableReducer.html" title="class in org.apache.kudu.mapreduce"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/mapreduce/KuduTableOutputFormat.html" target="_top">Frames</a></li>
+<li><a href="KuduTableOutputFormat.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.mapreduce</div>
+<h2 title="Class KuduTableOutputFormat" class="title">Class KuduTableOutputFormat</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li>org.apache.hadoop.mapreduce.OutputFormat&lt;org.apache.hadoop.io.NullWritable,<a href="../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">Operation</a>&gt;</li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.mapreduce.KuduTableOutputFormat</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<dl>
+<dt>All Implemented Interfaces:</dt>
+<dd>org.apache.hadoop.conf.Configurable</dd>
+</dl>
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Evolving
+public class <span class="typeNameLabel">KuduTableOutputFormat</span>
+extends org.apache.hadoop.mapreduce.OutputFormat&lt;org.apache.hadoop.io.NullWritable,<a href="../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">Operation</a>&gt;
+implements org.apache.hadoop.conf.Configurable</pre>
+<div class="block"><p>
+ Use <code>KuduTableMapReduceUtil.TableOutputFormatConfigurator</code>
+ to correctly setup this output format, then <a href="../../../../org/apache/kudu/mapreduce/KuduTableMapReduceUtil.html#getTableFromContext-org.apache.hadoop.mapreduce.TaskInputOutputContext-"><code>KuduTableMapReduceUtil.getTableFromContext(org.apache.hadoop.mapreduce.TaskInputOutputContext)</code></a>
+ to get a KuduTable.
+ </p>
+
+ <p>
+ Hadoop doesn't have the concept of "closing" the output format so in order to release the
+ resources we assume that once either
+ <a href="../../../../org/apache/kudu/mapreduce/KuduTableOutputFormat.html#checkOutputSpecs-org.apache.hadoop.mapreduce.JobContext-"><code>checkOutputSpecs(org.apache.hadoop.mapreduce.JobContext)</code></a>
+ or <code>KuduTableOutputFormat.TableRecordWriter.close(org.apache.hadoop.mapreduce.TaskAttemptContext)</code>
+ have been called that the object won't be used again and the KuduClient is shut down.
+ </p></div>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="constructor.summary">
+<!--   -->
+</a>
+<h3>Constructor Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
+<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colOne" scope="col">Constructor and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/mapreduce/KuduTableOutputFormat.html#KuduTableOutputFormat--">KuduTableOutputFormat</a></span>()</code>&nbsp;</td>
+</tr>
+</table>
+</li>
+</ul>
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/mapreduce/KuduTableOutputFormat.html#checkOutputSpecs-org.apache.hadoop.mapreduce.JobContext-">checkOutputSpecs</a></span>(org.apache.hadoop.mapreduce.JobContext&nbsp;jobContext)</code>&nbsp;</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code>org.apache.hadoop.conf.Configuration</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/mapreduce/KuduTableOutputFormat.html#getConf--">getConf</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code>static <a href="../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/mapreduce/KuduTableOutputFormat.html#getKuduTable-java.lang.String-">getKuduTable</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;multitonKey)</code>&nbsp;</td>
+</tr>
+<tr id="i3" class="rowColor">
+<td class="colFirst"><code>org.apache.hadoop.mapreduce.OutputCommitter</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/mapreduce/KuduTableOutputFormat.html#getOutputCommitter-org.apache.hadoop.mapreduce.TaskAttemptContext-">getOutputCommitter</a></span>(org.apache.hadoop.mapreduce.TaskAttemptContext&nbsp;taskAttemptContext)</code>&nbsp;</td>
+</tr>
+<tr id="i4" class="altColor">
+<td class="colFirst"><code>org.apache.hadoop.mapreduce.RecordWriter&lt;org.apache.hadoop.io.NullWritable,<a href="../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">Operation</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/mapreduce/KuduTableOutputFormat.html#getRecordWriter-org.apache.hadoop.mapreduce.TaskAttemptContext-">getRecordWriter</a></span>(org.apache.hadoop.mapreduce.TaskAttemptContext&nbsp;taskAttemptContext)</code>&nbsp;</td>
+</tr>
+<tr id="i5" class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/mapreduce/KuduTableOutputFormat.html#setConf-org.apache.hadoop.conf.Configuration-">setConf</a></span>(org.apache.hadoop.conf.Configuration&nbsp;entries)</code>&nbsp;</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="constructor.detail">
+<!--   -->
+</a>
+<h3>Constructor Detail</h3>
+<a name="KuduTableOutputFormat--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>KuduTableOutputFormat</h4>
+<pre>public&nbsp;KuduTableOutputFormat()</pre>
+</li>
+</ul>
+</li>
+</ul>
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="setConf-org.apache.hadoop.conf.Configuration-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>setConf</h4>
+<pre>public&nbsp;void&nbsp;setConf(org.apache.hadoop.conf.Configuration&nbsp;entries)</pre>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code>setConf</code>&nbsp;in interface&nbsp;<code>org.apache.hadoop.conf.Configurable</code></dd>
+</dl>
+</li>
+</ul>
+<a name="getKuduTable-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getKuduTable</h4>
+<pre>public static&nbsp;<a href="../../../../org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client">KuduTable</a>&nbsp;getKuduTable(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;multitonKey)</pre>
+</li>
+</ul>
+<a name="getConf--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getConf</h4>
+<pre>public&nbsp;org.apache.hadoop.conf.Configuration&nbsp;getConf()</pre>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code>getConf</code>&nbsp;in interface&nbsp;<code>org.apache.hadoop.conf.Configurable</code></dd>
+</dl>
+</li>
+</ul>
+<a name="getRecordWriter-org.apache.hadoop.mapreduce.TaskAttemptContext-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getRecordWriter</h4>
+<pre>public&nbsp;org.apache.hadoop.mapreduce.RecordWriter&lt;org.apache.hadoop.io.NullWritable,<a href="../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">Operation</a>&gt;&nbsp;getRecordWriter(org.apache.hadoop.mapreduce.TaskAttemptContext&nbsp;taskAttemptContext)
+                                                                                                      throws <a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a>,
+                                                                                                             <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></pre>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code>getRecordWriter</code>&nbsp;in class&nbsp;<code>org.apache.hadoop.mapreduce.OutputFormat&lt;org.apache.hadoop.io.NullWritable,<a href="../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">Operation</a>&gt;</code></dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></code></dd>
+</dl>
+</li>
+</ul>
+<a name="checkOutputSpecs-org.apache.hadoop.mapreduce.JobContext-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>checkOutputSpecs</h4>
+<pre>public&nbsp;void&nbsp;checkOutputSpecs(org.apache.hadoop.mapreduce.JobContext&nbsp;jobContext)
+                      throws <a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a>,
+                             <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></pre>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code>checkOutputSpecs</code>&nbsp;in class&nbsp;<code>org.apache.hadoop.mapreduce.OutputFormat&lt;org.apache.hadoop.io.NullWritable,<a href="../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">Operation</a>&gt;</code></dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></code></dd>
+</dl>
+</li>
+</ul>
+<a name="getOutputCommitter-org.apache.hadoop.mapreduce.TaskAttemptContext-">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>getOutputCommitter</h4>
+<pre>public&nbsp;org.apache.hadoop.mapreduce.OutputCommitter&nbsp;getOutputCommitter(org.apache.hadoop.mapreduce.TaskAttemptContext&nbsp;taskAttemptContext)
+                                                               throws <a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a>,
+                                                                      <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></pre>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code>getOutputCommitter</code>&nbsp;in class&nbsp;<code>org.apache.hadoop.mapreduce.OutputFormat&lt;org.apache.hadoop.io.NullWritable,<a href="../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">Operation</a>&gt;</code></dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></code></dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/KuduTableOutputFormat.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/mapreduce/KuduTableOutputCommitter.html" title="class in org.apache.kudu.mapreduce"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/kudu/mapreduce/TableReducer.html" title="class in org.apache.kudu.mapreduce"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/mapreduce/KuduTableOutputFormat.html" target="_top">Frames</a></li>
+<li><a href="KuduTableOutputFormat.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/TableReducer.html b/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/TableReducer.html
new file mode 100644
index 0000000..4b8dce7
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/TableReducer.html
@@ -0,0 +1,252 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>TableReducer (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="TableReducer (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/TableReducer.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/mapreduce/KuduTableOutputFormat.html" title="class in org.apache.kudu.mapreduce"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li>Next&nbsp;Class</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/mapreduce/TableReducer.html" target="_top">Frames</a></li>
+<li><a href="TableReducer.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#methods.inherited.from.class.org.apache.hadoop.mapreduce.Reducer">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li>Method</li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.mapreduce</div>
+<h2 title="Class TableReducer" class="title">Class TableReducer&lt;KeyinT,ValueinT,KeyoutT&gt;</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li>org.apache.hadoop.mapreduce.Reducer&lt;KeyinT,ValueinT,KeyoutT,<a href="../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">Operation</a>&gt;</li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.mapreduce.TableReducer&lt;KeyinT,ValueinT,KeyoutT&gt;</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Evolving
+public abstract class <span class="typeNameLabel">TableReducer&lt;KeyinT,ValueinT,KeyoutT&gt;</span>
+extends org.apache.hadoop.mapreduce.Reducer&lt;KeyinT,ValueinT,KeyoutT,<a href="../../../../org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">Operation</a>&gt;</pre>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="constructor.summary">
+<!--   -->
+</a>
+<h3>Constructor Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
+<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colOne" scope="col">Constructor and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/kudu/mapreduce/TableReducer.html#TableReducer--">TableReducer</a></span>()</code>&nbsp;</td>
+</tr>
+</table>
+</li>
+</ul>
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.org.apache.hadoop.mapreduce.Reducer">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;org.apache.hadoop.mapreduce.Reducer</h3>
+<code>cleanup, reduce, run, setup</code></li>
+</ul>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="constructor.detail">
+<!--   -->
+</a>
+<h3>Constructor Detail</h3>
+<a name="TableReducer--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>TableReducer</h4>
+<pre>public&nbsp;TableReducer()</pre>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/TableReducer.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/mapreduce/KuduTableOutputFormat.html" title="class in org.apache.kudu.mapreduce"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li>Next&nbsp;Class</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/mapreduce/TableReducer.html" target="_top">Frames</a></li>
+<li><a href="TableReducer.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#methods.inherited.from.class.org.apache.hadoop.mapreduce.Reducer">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li>Method</li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/class-use/CommandLineParser.html b/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/class-use/CommandLineParser.html
new file mode 100644
index 0000000..bf07d47
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/class-use/CommandLineParser.html
@@ -0,0 +1,125 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.mapreduce.CommandLineParser (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.mapreduce.CommandLineParser (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/mapreduce/CommandLineParser.html" title="class in org.apache.kudu.mapreduce">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/mapreduce/class-use/CommandLineParser.html" target="_top">Frames</a></li>
+<li><a href="CommandLineParser.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.mapreduce.CommandLineParser" class="title">Uses of Class<br>org.apache.kudu.mapreduce.CommandLineParser</h2>
+</div>
+<div class="classUseContainer">No usage of org.apache.kudu.mapreduce.CommandLineParser</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/mapreduce/CommandLineParser.html" title="class in org.apache.kudu.mapreduce">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/mapreduce/class-use/CommandLineParser.html" target="_top">Frames</a></li>
+<li><a href="CommandLineParser.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/class-use/KuduTableInputFormat.html b/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/class-use/KuduTableInputFormat.html
new file mode 100644
index 0000000..d8a565d
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/class-use/KuduTableInputFormat.html
@@ -0,0 +1,125 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.mapreduce.KuduTableInputFormat (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.mapreduce.KuduTableInputFormat (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/mapreduce/KuduTableInputFormat.html" title="class in org.apache.kudu.mapreduce">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/mapreduce/class-use/KuduTableInputFormat.html" target="_top">Frames</a></li>
+<li><a href="KuduTableInputFormat.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.mapreduce.KuduTableInputFormat" class="title">Uses of Class<br>org.apache.kudu.mapreduce.KuduTableInputFormat</h2>
+</div>
+<div class="classUseContainer">No usage of org.apache.kudu.mapreduce.KuduTableInputFormat</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/mapreduce/KuduTableInputFormat.html" title="class in org.apache.kudu.mapreduce">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/mapreduce/class-use/KuduTableInputFormat.html" target="_top">Frames</a></li>
+<li><a href="KuduTableInputFormat.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/class-use/KuduTableMapReduceUtil.html b/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/class-use/KuduTableMapReduceUtil.html
new file mode 100644
index 0000000..97511eb
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/class-use/KuduTableMapReduceUtil.html
@@ -0,0 +1,125 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.mapreduce.KuduTableMapReduceUtil (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.mapreduce.KuduTableMapReduceUtil (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/mapreduce/KuduTableMapReduceUtil.html" title="class in org.apache.kudu.mapreduce">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/mapreduce/class-use/KuduTableMapReduceUtil.html" target="_top">Frames</a></li>
+<li><a href="KuduTableMapReduceUtil.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.mapreduce.KuduTableMapReduceUtil" class="title">Uses of Class<br>org.apache.kudu.mapreduce.KuduTableMapReduceUtil</h2>
+</div>
+<div class="classUseContainer">No usage of org.apache.kudu.mapreduce.KuduTableMapReduceUtil</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/mapreduce/KuduTableMapReduceUtil.html" title="class in org.apache.kudu.mapreduce">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/mapreduce/class-use/KuduTableMapReduceUtil.html" target="_top">Frames</a></li>
+<li><a href="KuduTableMapReduceUtil.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/class-use/KuduTableOutputCommitter.html b/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/class-use/KuduTableOutputCommitter.html
new file mode 100644
index 0000000..852f84b
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/class-use/KuduTableOutputCommitter.html
@@ -0,0 +1,125 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.mapreduce.KuduTableOutputCommitter (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.mapreduce.KuduTableOutputCommitter (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/mapreduce/KuduTableOutputCommitter.html" title="class in org.apache.kudu.mapreduce">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/mapreduce/class-use/KuduTableOutputCommitter.html" target="_top">Frames</a></li>
+<li><a href="KuduTableOutputCommitter.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.mapreduce.KuduTableOutputCommitter" class="title">Uses of Class<br>org.apache.kudu.mapreduce.KuduTableOutputCommitter</h2>
+</div>
+<div class="classUseContainer">No usage of org.apache.kudu.mapreduce.KuduTableOutputCommitter</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/mapreduce/KuduTableOutputCommitter.html" title="class in org.apache.kudu.mapreduce">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/mapreduce/class-use/KuduTableOutputCommitter.html" target="_top">Frames</a></li>
+<li><a href="KuduTableOutputCommitter.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/class-use/KuduTableOutputFormat.html b/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/class-use/KuduTableOutputFormat.html
new file mode 100644
index 0000000..2f4073f
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/class-use/KuduTableOutputFormat.html
@@ -0,0 +1,125 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.mapreduce.KuduTableOutputFormat (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.mapreduce.KuduTableOutputFormat (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/mapreduce/KuduTableOutputFormat.html" title="class in org.apache.kudu.mapreduce">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/mapreduce/class-use/KuduTableOutputFormat.html" target="_top">Frames</a></li>
+<li><a href="KuduTableOutputFormat.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.mapreduce.KuduTableOutputFormat" class="title">Uses of Class<br>org.apache.kudu.mapreduce.KuduTableOutputFormat</h2>
+</div>
+<div class="classUseContainer">No usage of org.apache.kudu.mapreduce.KuduTableOutputFormat</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/mapreduce/KuduTableOutputFormat.html" title="class in org.apache.kudu.mapreduce">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/mapreduce/class-use/KuduTableOutputFormat.html" target="_top">Frames</a></li>
+<li><a href="KuduTableOutputFormat.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/class-use/TableReducer.html b/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/class-use/TableReducer.html
new file mode 100644
index 0000000..50be4ac
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/class-use/TableReducer.html
@@ -0,0 +1,125 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.mapreduce.TableReducer (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.mapreduce.TableReducer (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/mapreduce/TableReducer.html" title="class in org.apache.kudu.mapreduce">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/mapreduce/class-use/TableReducer.html" target="_top">Frames</a></li>
+<li><a href="TableReducer.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.mapreduce.TableReducer" class="title">Uses of Class<br>org.apache.kudu.mapreduce.TableReducer</h2>
+</div>
+<div class="classUseContainer">No usage of org.apache.kudu.mapreduce.TableReducer</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../org/apache/kudu/mapreduce/TableReducer.html" title="class in org.apache.kudu.mapreduce">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/mapreduce/class-use/TableReducer.html" target="_top">Frames</a></li>
+<li><a href="TableReducer.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/package-frame.html b/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/package-frame.html
new file mode 100644
index 0000000..3da5573
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/package-frame.html
@@ -0,0 +1,25 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>org.apache.kudu.mapreduce (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<h1 class="bar"><a href="../../../../org/apache/kudu/mapreduce/package-summary.html" target="classFrame">org.apache.kudu.mapreduce</a></h1>
+<div class="indexContainer">
+<h2 title="Classes">Classes</h2>
+<ul title="Classes">
+<li><a href="CommandLineParser.html" title="class in org.apache.kudu.mapreduce" target="classFrame">CommandLineParser</a></li>
+<li><a href="KuduTableInputFormat.html" title="class in org.apache.kudu.mapreduce" target="classFrame">KuduTableInputFormat</a></li>
+<li><a href="KuduTableMapReduceUtil.html" title="class in org.apache.kudu.mapreduce" target="classFrame">KuduTableMapReduceUtil</a></li>
+<li><a href="KuduTableOutputCommitter.html" title="class in org.apache.kudu.mapreduce" target="classFrame">KuduTableOutputCommitter</a></li>
+<li><a href="KuduTableOutputFormat.html" title="class in org.apache.kudu.mapreduce" target="classFrame">KuduTableOutputFormat</a></li>
+<li><a href="TableReducer.html" title="class in org.apache.kudu.mapreduce" target="classFrame">TableReducer</a></li>
+</ul>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/package-summary.html b/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/package-summary.html
new file mode 100644
index 0000000..300b0bf
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/package-summary.html
@@ -0,0 +1,178 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>org.apache.kudu.mapreduce (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="org.apache.kudu.mapreduce (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li class="navBarCell1Rev">Package</li>
+<li>Class</li>
+<li><a href="package-use.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/flume/sink/package-summary.html">Prev&nbsp;Package</a></li>
+<li><a href="../../../../org/apache/kudu/mapreduce/tools/package-summary.html">Next&nbsp;Package</a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/mapreduce/package-summary.html" target="_top">Frames</a></li>
+<li><a href="package-summary.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h1 title="Package" class="title">Package&nbsp;org.apache.kudu.mapreduce</h1>
+</div>
+<div class="contentContainer">
+<ul class="blockList">
+<li class="blockList">
+<table class="typeSummary" border="0" cellpadding="3" cellspacing="0" summary="Class Summary table, listing classes, and an explanation">
+<caption><span>Class Summary</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Class</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="../../../../org/apache/kudu/mapreduce/CommandLineParser.html" title="class in org.apache.kudu.mapreduce">CommandLineParser</a></td>
+<td class="colLast">
+<div class="block">Utility class that manages common configurations to all MR jobs.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a href="../../../../org/apache/kudu/mapreduce/KuduTableInputFormat.html" title="class in org.apache.kudu.mapreduce">KuduTableInputFormat</a></td>
+<td class="colLast">
+<div class="block">
+ This input format generates one split per tablet and the only location for each split is that
+ tablet's leader.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a href="../../../../org/apache/kudu/mapreduce/KuduTableMapReduceUtil.html" title="class in org.apache.kudu.mapreduce">KuduTableMapReduceUtil</a></td>
+<td class="colLast">
+<div class="block">Utility class to setup MR jobs that use Kudu as an input and/or output.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a href="../../../../org/apache/kudu/mapreduce/KuduTableOutputCommitter.html" title="class in org.apache.kudu.mapreduce">KuduTableOutputCommitter</a></td>
+<td class="colLast">
+<div class="block">Small committer class that does not do anything.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a href="../../../../org/apache/kudu/mapreduce/KuduTableOutputFormat.html" title="class in org.apache.kudu.mapreduce">KuduTableOutputFormat</a></td>
+<td class="colLast">
+<div class="block">
+ Use <code>KuduTableMapReduceUtil.TableOutputFormatConfigurator</code>
+ to correctly setup this output format, then <a href="../../../../org/apache/kudu/mapreduce/KuduTableMapReduceUtil.html#getTableFromContext-org.apache.hadoop.mapreduce.TaskInputOutputContext-"><code>KuduTableMapReduceUtil.getTableFromContext(org.apache.hadoop.mapreduce.TaskInputOutputContext)</code></a>
+ to get a KuduTable.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a href="../../../../org/apache/kudu/mapreduce/TableReducer.html" title="class in org.apache.kudu.mapreduce">TableReducer</a>&lt;KeyinT,ValueinT,KeyoutT&gt;</td>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li class="navBarCell1Rev">Package</li>
+<li>Class</li>
+<li><a href="package-use.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/flume/sink/package-summary.html">Prev&nbsp;Package</a></li>
+<li><a href="../../../../org/apache/kudu/mapreduce/tools/package-summary.html">Next&nbsp;Package</a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/mapreduce/package-summary.html" target="_top">Frames</a></li>
+<li><a href="package-summary.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/package-tree.html b/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/package-tree.html
new file mode 100644
index 0000000..61eaa83
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/package-tree.html
@@ -0,0 +1,159 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>org.apache.kudu.mapreduce Class Hierarchy (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="org.apache.kudu.mapreduce Class Hierarchy (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li>Class</li>
+<li>Use</li>
+<li class="navBarCell1Rev">Tree</li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/flume/sink/package-tree.html">Prev</a></li>
+<li><a href="../../../../org/apache/kudu/mapreduce/tools/package-tree.html">Next</a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/mapreduce/package-tree.html" target="_top">Frames</a></li>
+<li><a href="package-tree.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h1 class="title">Hierarchy For Package org.apache.kudu.mapreduce</h1>
+<span class="packageHierarchyLabel">Package Hierarchies:</span>
+<ul class="horizontal">
+<li><a href="../../../../overview-tree.html">All Packages</a></li>
+</ul>
+</div>
+<div class="contentContainer">
+<h2 title="Class Hierarchy">Class Hierarchy</h2>
+<ul>
+<li type="circle">java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Object</span></a>
+<ul>
+<li type="circle">org.apache.kudu.mapreduce.<a href="../../../../org/apache/kudu/mapreduce/CommandLineParser.html" title="class in org.apache.kudu.mapreduce"><span class="typeNameLink">CommandLineParser</span></a></li>
+<li type="circle">org.apache.hadoop.mapreduce.InputFormat&lt;K,V&gt;
+<ul>
+<li type="circle">org.apache.kudu.mapreduce.<a href="../../../../org/apache/kudu/mapreduce/KuduTableInputFormat.html" title="class in org.apache.kudu.mapreduce"><span class="typeNameLink">KuduTableInputFormat</span></a> (implements org.apache.hadoop.conf.Configurable)</li>
+</ul>
+</li>
+<li type="circle">org.apache.kudu.mapreduce.<a href="../../../../org/apache/kudu/mapreduce/KuduTableMapReduceUtil.html" title="class in org.apache.kudu.mapreduce"><span class="typeNameLink">KuduTableMapReduceUtil</span></a></li>
+<li type="circle">org.apache.hadoop.mapreduce.OutputCommitter
+<ul>
+<li type="circle">org.apache.kudu.mapreduce.<a href="../../../../org/apache/kudu/mapreduce/KuduTableOutputCommitter.html" title="class in org.apache.kudu.mapreduce"><span class="typeNameLink">KuduTableOutputCommitter</span></a></li>
+</ul>
+</li>
+<li type="circle">org.apache.hadoop.mapreduce.OutputFormat&lt;K,V&gt;
+<ul>
+<li type="circle">org.apache.kudu.mapreduce.<a href="../../../../org/apache/kudu/mapreduce/KuduTableOutputFormat.html" title="class in org.apache.kudu.mapreduce"><span class="typeNameLink">KuduTableOutputFormat</span></a> (implements org.apache.hadoop.conf.Configurable)</li>
+</ul>
+</li>
+<li type="circle">org.apache.hadoop.mapreduce.Reducer&lt;KEYIN,VALUEIN,KEYOUT,VALUEOUT&gt;
+<ul>
+<li type="circle">org.apache.kudu.mapreduce.<a href="../../../../org/apache/kudu/mapreduce/TableReducer.html" title="class in org.apache.kudu.mapreduce"><span class="typeNameLink">TableReducer</span></a>&lt;KeyinT,ValueinT,KeyoutT&gt;</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li>Class</li>
+<li>Use</li>
+<li class="navBarCell1Rev">Tree</li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/flume/sink/package-tree.html">Prev</a></li>
+<li><a href="../../../../org/apache/kudu/mapreduce/tools/package-tree.html">Next</a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/mapreduce/package-tree.html" target="_top">Frames</a></li>
+<li><a href="package-tree.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/package-use.html b/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/package-use.html
new file mode 100644
index 0000000..4828b9f
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/package-use.html
@@ -0,0 +1,125 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Package org.apache.kudu.mapreduce (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Package org.apache.kudu.mapreduce (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li>Class</li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/mapreduce/package-use.html" target="_top">Frames</a></li>
+<li><a href="package-use.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h1 title="Uses of Package org.apache.kudu.mapreduce" class="title">Uses of Package<br>org.apache.kudu.mapreduce</h1>
+</div>
+<div class="contentContainer">No usage of org.apache.kudu.mapreduce</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li>Class</li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/mapreduce/package-use.html" target="_top">Frames</a></li>
+<li><a href="package-use.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html b/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html
new file mode 100644
index 0000000..e98511f
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html
@@ -0,0 +1,621 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>BigLinkedListCommon (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="BigLinkedListCommon (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":9,"i1":9,"i2":9};
+var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/BigLinkedListCommon.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev&nbsp;Class</li>
+<li><a href="../../../../../org/apache/kudu/mapreduce/tools/CsvParser.html" title="class in org.apache.kudu.mapreduce.tools"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" target="_top">Frames</a></li>
+<li><a href="BigLinkedListCommon.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.mapreduce.tools</div>
+<h2 title="Class BigLinkedListCommon" class="title">Class BigLinkedListCommon</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.mapreduce.tools.BigLinkedListCommon</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Evolving
+public class <span class="typeNameLabel">BigLinkedListCommon</span>
+extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></pre>
+<div class="block">Static constants, helper methods, and utility classes for BigLinkedList
+ implementations.
+
+ Any definitions which must be kept in-sync between ITBLL implementations
+ should be kept here.</div>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- =========== FIELD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="field.summary">
+<!--   -->
+</a>
+<h3>Field Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
+<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Field and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_CLIENT">COLUMN_CLIENT</a></span></code>
+<div class="block">identifier of the mapred task that generated this row.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static int</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_CLIENT_IDX">COLUMN_CLIENT_IDX</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_KEY_ONE">COLUMN_KEY_ONE</a></span></code>
+<div class="block">Row key, two times 8 bytes.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static int</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_KEY_ONE_IDX">COLUMN_KEY_ONE_IDX</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_KEY_TWO">COLUMN_KEY_TWO</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static int</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_KEY_TWO_IDX">COLUMN_KEY_TWO_IDX</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_PREV_ONE">COLUMN_PREV_ONE</a></span></code>
+<div class="block">Link to the id of the prev node in the linked list, two times 8 bytes.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static int</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_PREV_ONE_IDX">COLUMN_PREV_ONE_IDX</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_PREV_TWO">COLUMN_PREV_TWO</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static int</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_PREV_TWO_IDX">COLUMN_PREV_TWO_IDX</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_ROW_ID">COLUMN_ROW_ID</a></span></code>
+<div class="block">the id of the row within the same client.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static int</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_ROW_ID_IDX">COLUMN_ROW_ID_IDX</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_UPDATE_COUNT">COLUMN_UPDATE_COUNT</a></span></code>
+<div class="block">The number of times this row was updated.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static int</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#COLUMN_UPDATE_COUNT_IDX">COLUMN_UPDATE_COUNT_IDX</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#DEFAULT_HEADS_TABLE_NAME">DEFAULT_HEADS_TABLE_NAME</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#DEFAULT_TABLE_NAME">DEFAULT_TABLE_NAME</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#HEADS_TABLE_NAME_KEY">HEADS_TABLE_NAME_KEY</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#TABLE_NAME_KEY">TABLE_NAME_KEY</a></span></code>&nbsp;</td>
+</tr>
+</table>
+</li>
+</ul>
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client">CreateTableOptions</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#getCreateTableOptions-org.apache.kudu.Schema-int-int-int-">getCreateTableOptions</a></span>(<a href="../../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a>&nbsp;schema,
+                     int&nbsp;numReplicas,
+                     int&nbsp;rangePartitions,
+                     int&nbsp;hashPartitions)</code>&nbsp;</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#getHeadsTableSchema--">getHeadsTableSchema</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html#getTableSchema--">getTableSchema</a></span>()</code>&nbsp;</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ============ FIELD DETAIL =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="field.detail">
+<!--   -->
+</a>
+<h3>Field Detail</h3>
+<a name="TABLE_NAME_KEY">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>TABLE_NAME_KEY</h4>
+<pre>public static final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> TABLE_NAME_KEY</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.mapreduce.tools.BigLinkedListCommon.TABLE_NAME_KEY">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="DEFAULT_TABLE_NAME">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>DEFAULT_TABLE_NAME</h4>
+<pre>public static final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> DEFAULT_TABLE_NAME</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.mapreduce.tools.BigLinkedListCommon.DEFAULT_TABLE_NAME">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="HEADS_TABLE_NAME_KEY">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>HEADS_TABLE_NAME_KEY</h4>
+<pre>public static final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> HEADS_TABLE_NAME_KEY</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.mapreduce.tools.BigLinkedListCommon.HEADS_TABLE_NAME_KEY">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="DEFAULT_HEADS_TABLE_NAME">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>DEFAULT_HEADS_TABLE_NAME</h4>
+<pre>public static final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> DEFAULT_HEADS_TABLE_NAME</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.mapreduce.tools.BigLinkedListCommon.DEFAULT_HEADS_TABLE_NAME">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="COLUMN_KEY_ONE">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>COLUMN_KEY_ONE</h4>
+<pre>public static final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> COLUMN_KEY_ONE</pre>
+<div class="block">Row key, two times 8 bytes.</div>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.mapreduce.tools.BigLinkedListCommon.COLUMN_KEY_ONE">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="COLUMN_KEY_ONE_IDX">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>COLUMN_KEY_ONE_IDX</h4>
+<pre>public static final&nbsp;int COLUMN_KEY_ONE_IDX</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.mapreduce.tools.BigLinkedListCommon.COLUMN_KEY_ONE_IDX">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="COLUMN_KEY_TWO">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>COLUMN_KEY_TWO</h4>
+<pre>public static final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> COLUMN_KEY_TWO</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.mapreduce.tools.BigLinkedListCommon.COLUMN_KEY_TWO">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="COLUMN_KEY_TWO_IDX">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>COLUMN_KEY_TWO_IDX</h4>
+<pre>public static final&nbsp;int COLUMN_KEY_TWO_IDX</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.mapreduce.tools.BigLinkedListCommon.COLUMN_KEY_TWO_IDX">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="COLUMN_PREV_ONE">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>COLUMN_PREV_ONE</h4>
+<pre>public static final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> COLUMN_PREV_ONE</pre>
+<div class="block">Link to the id of the prev node in the linked list, two times 8 bytes.</div>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.mapreduce.tools.BigLinkedListCommon.COLUMN_PREV_ONE">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="COLUMN_PREV_ONE_IDX">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>COLUMN_PREV_ONE_IDX</h4>
+<pre>public static final&nbsp;int COLUMN_PREV_ONE_IDX</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.mapreduce.tools.BigLinkedListCommon.COLUMN_PREV_ONE_IDX">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="COLUMN_PREV_TWO">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>COLUMN_PREV_TWO</h4>
+<pre>public static final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> COLUMN_PREV_TWO</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.mapreduce.tools.BigLinkedListCommon.COLUMN_PREV_TWO">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="COLUMN_PREV_TWO_IDX">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>COLUMN_PREV_TWO_IDX</h4>
+<pre>public static final&nbsp;int COLUMN_PREV_TWO_IDX</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.mapreduce.tools.BigLinkedListCommon.COLUMN_PREV_TWO_IDX">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="COLUMN_ROW_ID">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>COLUMN_ROW_ID</h4>
+<pre>public static final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> COLUMN_ROW_ID</pre>
+<div class="block">the id of the row within the same client.</div>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.mapreduce.tools.BigLinkedListCommon.COLUMN_ROW_ID">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="COLUMN_ROW_ID_IDX">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>COLUMN_ROW_ID_IDX</h4>
+<pre>public static final&nbsp;int COLUMN_ROW_ID_IDX</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.mapreduce.tools.BigLinkedListCommon.COLUMN_ROW_ID_IDX">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="COLUMN_CLIENT">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>COLUMN_CLIENT</h4>
+<pre>public static final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> COLUMN_CLIENT</pre>
+<div class="block">identifier of the mapred task that generated this row.</div>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.mapreduce.tools.BigLinkedListCommon.COLUMN_CLIENT">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="COLUMN_CLIENT_IDX">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>COLUMN_CLIENT_IDX</h4>
+<pre>public static final&nbsp;int COLUMN_CLIENT_IDX</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.mapreduce.tools.BigLinkedListCommon.COLUMN_CLIENT_IDX">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="COLUMN_UPDATE_COUNT">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>COLUMN_UPDATE_COUNT</h4>
+<pre>public static final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> COLUMN_UPDATE_COUNT</pre>
+<div class="block">The number of times this row was updated.</div>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.mapreduce.tools.BigLinkedListCommon.COLUMN_UPDATE_COUNT">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+<a name="COLUMN_UPDATE_COUNT_IDX">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>COLUMN_UPDATE_COUNT_IDX</h4>
+<pre>public static final&nbsp;int COLUMN_UPDATE_COUNT_IDX</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../constant-values.html#org.apache.kudu.mapreduce.tools.BigLinkedListCommon.COLUMN_UPDATE_COUNT_IDX">Constant Field Values</a></dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="getTableSchema--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getTableSchema</h4>
+<pre>public static&nbsp;<a href="../../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a>&nbsp;getTableSchema()</pre>
+</li>
+</ul>
+<a name="getHeadsTableSchema--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getHeadsTableSchema</h4>
+<pre>public static&nbsp;<a href="../../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a>&nbsp;getHeadsTableSchema()</pre>
+</li>
+</ul>
+<a name="getCreateTableOptions-org.apache.kudu.Schema-int-int-int-">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>getCreateTableOptions</h4>
+<pre>public static&nbsp;<a href="../../../../../org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client">CreateTableOptions</a>&nbsp;getCreateTableOptions(<a href="../../../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a>&nbsp;schema,
+                                                       int&nbsp;numReplicas,
+                                                       int&nbsp;rangePartitions,
+                                                       int&nbsp;hashPartitions)</pre>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/BigLinkedListCommon.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev&nbsp;Class</li>
+<li><a href="../../../../../org/apache/kudu/mapreduce/tools/CsvParser.html" title="class in org.apache.kudu.mapreduce.tools"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" target="_top">Frames</a></li>
+<li><a href="BigLinkedListCommon.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/tools/CsvParser.html b/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/tools/CsvParser.html
new file mode 100644
index 0000000..d91cbca
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/tools/CsvParser.html
@@ -0,0 +1,298 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>CsvParser (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="CsvParser (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":10};
+var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/CsvParser.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../../org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../../org/apache/kudu/mapreduce/tools/ImportCsv.html" title="class in org.apache.kudu.mapreduce.tools"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/mapreduce/tools/CsvParser.html" target="_top">Frames</a></li>
+<li><a href="CsvParser.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.mapreduce.tools</div>
+<h2 title="Class CsvParser" class="title">Class CsvParser</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.mapreduce.tools.CsvParser</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Unstable
+public class <span class="typeNameLabel">CsvParser</span>
+extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></pre>
+<div class="block">Column-separated values parser that gives access to the different columns inside each line of
+ data.</div>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="constructor.summary">
+<!--   -->
+</a>
+<h3>Constructor Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
+<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colOne" scope="col">Constructor and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/mapreduce/tools/CsvParser.html#CsvParser-java.lang.String-java.lang.String-">CsvParser</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnsSpecification,
+         <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;separatorStr)</code>&nbsp;</td>
+</tr>
+</table>
+</li>
+</ul>
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code>org.apache.kudu.mapreduce.tools.CsvParser.ParsedLine</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/mapreduce/tools/CsvParser.html#parse-byte:A-int-">parse</a></span>(byte[]&nbsp;lineBytes,
+     int&nbsp;length)</code>
+<div class="block">Creates a ParsedLine of a line of data.</div>
+</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="constructor.detail">
+<!--   -->
+</a>
+<h3>Constructor Detail</h3>
+<a name="CsvParser-java.lang.String-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>CsvParser</h4>
+<pre>public&nbsp;CsvParser(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;columnsSpecification,
+                 <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;separatorStr)</pre>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>columnsSpecification</code> - the list of columns to parse out, comma separated.</dd>
+<dd><code>separatorStr</code> - The 1 byte separator.</dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="parse-byte:A-int-">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>parse</h4>
+<pre>public&nbsp;org.apache.kudu.mapreduce.tools.CsvParser.ParsedLine&nbsp;parse(byte[]&nbsp;lineBytes,
+                                                                  int&nbsp;length)
+                                                           throws org.apache.kudu.mapreduce.tools.CsvParser.BadCsvLineException</pre>
+<div class="block">Creates a ParsedLine of a line of data.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>lineBytes</code> - Whole line as a byte array.</dd>
+<dd><code>length</code> - How long the line really is in the byte array</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>A parsed line of CSV.</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code>org.apache.kudu.mapreduce.tools.CsvParser.BadCsvLineException</code></dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/CsvParser.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../../org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../../org/apache/kudu/mapreduce/tools/ImportCsv.html" title="class in org.apache.kudu.mapreduce.tools"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/mapreduce/tools/CsvParser.html" target="_top">Frames</a></li>
+<li><a href="CsvParser.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/tools/ImportCsv.html b/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/tools/ImportCsv.html
new file mode 100644
index 0000000..42a5c83
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/tools/ImportCsv.html
@@ -0,0 +1,354 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>ImportCsv (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="ImportCsv (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":9,"i1":9,"i2":10};
+var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/ImportCsv.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../../org/apache/kudu/mapreduce/tools/CsvParser.html" title="class in org.apache.kudu.mapreduce.tools"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li>Next&nbsp;Class</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/mapreduce/tools/ImportCsv.html" target="_top">Frames</a></li>
+<li><a href="ImportCsv.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.kudu.mapreduce.tools</div>
+<h2 title="Class ImportCsv" class="title">Class ImportCsv</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li>org.apache.hadoop.conf.Configured</li>
+<li>
+<ul class="inheritance">
+<li>org.apache.kudu.mapreduce.tools.ImportCsv</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<dl>
+<dt>All Implemented Interfaces:</dt>
+<dd>org.apache.hadoop.conf.Configurable, org.apache.hadoop.util.Tool</dd>
+</dl>
+<hr>
+<br>
+<pre>@InterfaceAudience.Public
+ @InterfaceStability.Unstable
+public class <span class="typeNameLabel">ImportCsv</span>
+extends org.apache.hadoop.conf.Configured
+implements org.apache.hadoop.util.Tool</pre>
+<div class="block">Map-only job that reads CSV files and inserts them into a single Kudu table.</div>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="constructor.summary">
+<!--   -->
+</a>
+<h3>Constructor Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
+<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colOne" scope="col">Constructor and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/mapreduce/tools/ImportCsv.html#ImportCsv--">ImportCsv</a></span>()</code>&nbsp;</td>
+</tr>
+</table>
+</li>
+</ul>
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code>static org.apache.hadoop.mapreduce.Job</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/mapreduce/tools/ImportCsv.html#createSubmittableJob-org.apache.hadoop.conf.Configuration-java.lang.String:A-">createSubmittableJob</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf,
+                    <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>[]&nbsp;args)</code>
+<div class="block">Sets up the actual job.</div>
+</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code>static void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/mapreduce/tools/ImportCsv.html#main-java.lang.String:A-">main</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>[]&nbsp;args)</code>&nbsp;</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/kudu/mapreduce/tools/ImportCsv.html#run-java.lang.String:A-">run</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>[]&nbsp;otherArgs)</code>&nbsp;</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.org.apache.hadoop.conf.Configured">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;org.apache.hadoop.conf.Configured</h3>
+<code>getConf, setConf</code></li>
+</ul>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.org.apache.hadoop.conf.Configurable">
+<!--   -->
+</a>
+<h3>Methods inherited from interface&nbsp;org.apache.hadoop.conf.Configurable</h3>
+<code>getConf, setConf</code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="constructor.detail">
+<!--   -->
+</a>
+<h3>Constructor Detail</h3>
+<a name="ImportCsv--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>ImportCsv</h4>
+<pre>public&nbsp;ImportCsv()</pre>
+</li>
+</ul>
+</li>
+</ul>
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="createSubmittableJob-org.apache.hadoop.conf.Configuration-java.lang.String:A-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>createSubmittableJob</h4>
+<pre>public static&nbsp;org.apache.hadoop.mapreduce.Job&nbsp;createSubmittableJob(org.apache.hadoop.conf.Configuration&nbsp;conf,
+                                                                   <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>[]&nbsp;args)
+                                                            throws <a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a>,
+                                                                   <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/ClassNotFoundException.html?is-external=true" title="class or interface in java.lang">ClassNotFoundException</a></pre>
+<div class="block">Sets up the actual job.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>conf</code> - The current configuration.</dd>
+<dd><code>args</code> - The command line parameters.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>The newly created job.</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code> - When setting up the job fails.</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/ClassNotFoundException.html?is-external=true" title="class or interface in java.lang">ClassNotFoundException</a></code></dd>
+</dl>
+</li>
+</ul>
+<a name="run-java.lang.String:A-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>run</h4>
+<pre>public&nbsp;int&nbsp;run(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>[]&nbsp;otherArgs)
+        throws <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code>run</code>&nbsp;in interface&nbsp;<code>org.apache.hadoop.util.Tool</code></dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></code></dd>
+</dl>
+</li>
+</ul>
+<a name="main-java.lang.String:A-">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>main</h4>
+<pre>public static&nbsp;void&nbsp;main(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>[]&nbsp;args)
+                 throws <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
+<dl>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></code></dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/ImportCsv.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../../org/apache/kudu/mapreduce/tools/CsvParser.html" title="class in org.apache.kudu.mapreduce.tools"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li>Next&nbsp;Class</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/mapreduce/tools/ImportCsv.html" target="_top">Frames</a></li>
+<li><a href="ImportCsv.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/tools/class-use/BigLinkedListCommon.html b/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/tools/class-use/BigLinkedListCommon.html
new file mode 100644
index 0000000..efda907
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/tools/class-use/BigLinkedListCommon.html
@@ -0,0 +1,125 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.mapreduce.tools.BigLinkedListCommon (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.mapreduce.tools.BigLinkedListCommon (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../../org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../../index.html?org/apache/kudu/mapreduce/tools/class-use/BigLinkedListCommon.html" target="_top">Frames</a></li>
+<li><a href="BigLinkedListCommon.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.mapreduce.tools.BigLinkedListCommon" class="title">Uses of Class<br>org.apache.kudu.mapreduce.tools.BigLinkedListCommon</h2>
+</div>
+<div class="classUseContainer">No usage of org.apache.kudu.mapreduce.tools.BigLinkedListCommon</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../../org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../../index.html?org/apache/kudu/mapreduce/tools/class-use/BigLinkedListCommon.html" target="_top">Frames</a></li>
+<li><a href="BigLinkedListCommon.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/tools/class-use/CsvParser.html b/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/tools/class-use/CsvParser.html
new file mode 100644
index 0000000..0c1a426
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/tools/class-use/CsvParser.html
@@ -0,0 +1,125 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.mapreduce.tools.CsvParser (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.mapreduce.tools.CsvParser (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../../org/apache/kudu/mapreduce/tools/CsvParser.html" title="class in org.apache.kudu.mapreduce.tools">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../../index.html?org/apache/kudu/mapreduce/tools/class-use/CsvParser.html" target="_top">Frames</a></li>
+<li><a href="CsvParser.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.mapreduce.tools.CsvParser" class="title">Uses of Class<br>org.apache.kudu.mapreduce.tools.CsvParser</h2>
+</div>
+<div class="classUseContainer">No usage of org.apache.kudu.mapreduce.tools.CsvParser</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../../org/apache/kudu/mapreduce/tools/CsvParser.html" title="class in org.apache.kudu.mapreduce.tools">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../../index.html?org/apache/kudu/mapreduce/tools/class-use/CsvParser.html" target="_top">Frames</a></li>
+<li><a href="CsvParser.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/tools/class-use/ImportCsv.html b/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/tools/class-use/ImportCsv.html
new file mode 100644
index 0000000..daa1a0e
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/tools/class-use/ImportCsv.html
@@ -0,0 +1,125 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Class org.apache.kudu.mapreduce.tools.ImportCsv (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Class org.apache.kudu.mapreduce.tools.ImportCsv (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../../org/apache/kudu/mapreduce/tools/ImportCsv.html" title="class in org.apache.kudu.mapreduce.tools">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../../index.html?org/apache/kudu/mapreduce/tools/class-use/ImportCsv.html" target="_top">Frames</a></li>
+<li><a href="ImportCsv.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h2 title="Uses of Class org.apache.kudu.mapreduce.tools.ImportCsv" class="title">Uses of Class<br>org.apache.kudu.mapreduce.tools.ImportCsv</h2>
+</div>
+<div class="classUseContainer">No usage of org.apache.kudu.mapreduce.tools.ImportCsv</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../../overview-summary.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../../../../../../org/apache/kudu/mapreduce/tools/ImportCsv.html" title="class in org.apache.kudu.mapreduce.tools">Class</a></li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../../index.html?org/apache/kudu/mapreduce/tools/class-use/ImportCsv.html" target="_top">Frames</a></li>
+<li><a href="ImportCsv.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/tools/package-frame.html b/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/tools/package-frame.html
new file mode 100644
index 0000000..a9caf73
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/tools/package-frame.html
@@ -0,0 +1,22 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>org.apache.kudu.mapreduce.tools (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<h1 class="bar"><a href="../../../../../org/apache/kudu/mapreduce/tools/package-summary.html" target="classFrame">org.apache.kudu.mapreduce.tools</a></h1>
+<div class="indexContainer">
+<h2 title="Classes">Classes</h2>
+<ul title="Classes">
+<li><a href="BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools" target="classFrame">BigLinkedListCommon</a></li>
+<li><a href="CsvParser.html" title="class in org.apache.kudu.mapreduce.tools" target="classFrame">CsvParser</a></li>
+<li><a href="ImportCsv.html" title="class in org.apache.kudu.mapreduce.tools" target="classFrame">ImportCsv</a></li>
+</ul>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/tools/package-summary.html b/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/tools/package-summary.html
new file mode 100644
index 0000000..340a8e9
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/tools/package-summary.html
@@ -0,0 +1,159 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>org.apache.kudu.mapreduce.tools (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="org.apache.kudu.mapreduce.tools (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li class="navBarCell1Rev">Package</li>
+<li>Class</li>
+<li><a href="package-use.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../../org/apache/kudu/mapreduce/package-summary.html">Prev&nbsp;Package</a></li>
+<li><a href="../../../../../org/apache/kudu/security/package-summary.html">Next&nbsp;Package</a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/mapreduce/tools/package-summary.html" target="_top">Frames</a></li>
+<li><a href="package-summary.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h1 title="Package" class="title">Package&nbsp;org.apache.kudu.mapreduce.tools</h1>
+</div>
+<div class="contentContainer">
+<ul class="blockList">
+<li class="blockList">
+<table class="typeSummary" border="0" cellpadding="3" cellspacing="0" summary="Class Summary table, listing classes, and an explanation">
+<caption><span>Class Summary</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Class</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="../../../../../org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools">BigLinkedListCommon</a></td>
+<td class="colLast">
+<div class="block">Static constants, helper methods, and utility classes for BigLinkedList
+ implementations.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a href="../../../../../org/apache/kudu/mapreduce/tools/CsvParser.html" title="class in org.apache.kudu.mapreduce.tools">CsvParser</a></td>
+<td class="colLast">
+<div class="block">Column-separated values parser that gives access to the different columns inside each line of
+ data.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a href="../../../../../org/apache/kudu/mapreduce/tools/ImportCsv.html" title="class in org.apache.kudu.mapreduce.tools">ImportCsv</a></td>
+<td class="colLast">
+<div class="block">Map-only job that reads CSV files and inserts them into a single Kudu table.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li class="navBarCell1Rev">Package</li>
+<li>Class</li>
+<li><a href="package-use.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../../org/apache/kudu/mapreduce/package-summary.html">Prev&nbsp;Package</a></li>
+<li><a href="../../../../../org/apache/kudu/security/package-summary.html">Next&nbsp;Package</a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/mapreduce/tools/package-summary.html" target="_top">Frames</a></li>
+<li><a href="package-summary.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/tools/package-tree.html b/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/tools/package-tree.html
new file mode 100644
index 0000000..daef836
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/tools/package-tree.html
@@ -0,0 +1,144 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>org.apache.kudu.mapreduce.tools Class Hierarchy (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="org.apache.kudu.mapreduce.tools Class Hierarchy (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li>Class</li>
+<li>Use</li>
+<li class="navBarCell1Rev">Tree</li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../../org/apache/kudu/mapreduce/package-tree.html">Prev</a></li>
+<li><a href="../../../../../org/apache/kudu/security/package-tree.html">Next</a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/mapreduce/tools/package-tree.html" target="_top">Frames</a></li>
+<li><a href="package-tree.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h1 class="title">Hierarchy For Package org.apache.kudu.mapreduce.tools</h1>
+<span class="packageHierarchyLabel">Package Hierarchies:</span>
+<ul class="horizontal">
+<li><a href="../../../../../overview-tree.html">All Packages</a></li>
+</ul>
+</div>
+<div class="contentContainer">
+<h2 title="Class Hierarchy">Class Hierarchy</h2>
+<ul>
+<li type="circle">java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Object</span></a>
+<ul>
+<li type="circle">org.apache.kudu.mapreduce.tools.<a href="../../../../../org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools"><span class="typeNameLink">BigLinkedListCommon</span></a></li>
+<li type="circle">org.apache.hadoop.conf.Configured (implements org.apache.hadoop.conf.Configurable)
+<ul>
+<li type="circle">org.apache.kudu.mapreduce.tools.<a href="../../../../../org/apache/kudu/mapreduce/tools/ImportCsv.html" title="class in org.apache.kudu.mapreduce.tools"><span class="typeNameLink">ImportCsv</span></a> (implements org.apache.hadoop.util.Tool)</li>
+</ul>
+</li>
+<li type="circle">org.apache.kudu.mapreduce.tools.<a href="../../../../../org/apache/kudu/mapreduce/tools/CsvParser.html" title="class in org.apache.kudu.mapreduce.tools"><span class="typeNameLink">CsvParser</span></a></li>
+</ul>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li>Class</li>
+<li>Use</li>
+<li class="navBarCell1Rev">Tree</li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../../org/apache/kudu/mapreduce/package-tree.html">Prev</a></li>
+<li><a href="../../../../../org/apache/kudu/security/package-tree.html">Next</a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/mapreduce/tools/package-tree.html" target="_top">Frames</a></li>
+<li><a href="package-tree.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/tools/package-use.html b/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/tools/package-use.html
new file mode 100644
index 0000000..8c31c80
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/mapreduce/tools/package-use.html
@@ -0,0 +1,125 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Package org.apache.kudu.mapreduce.tools (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Package org.apache.kudu.mapreduce.tools (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li>Class</li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/mapreduce/tools/package-use.html" target="_top">Frames</a></li>
+<li><a href="package-use.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h1 title="Uses of Package org.apache.kudu.mapreduce.tools" class="title">Uses of Package<br>org.apache.kudu.mapreduce.tools</h1>
+</div>
+<div class="contentContainer">No usage of org.apache.kudu.mapreduce.tools</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li>Class</li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../index.html?org/apache/kudu/mapreduce/tools/package-use.html" target="_top">Frames</a></li>
+<li><a href="package-use.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/package-frame.html b/releases/1.4.0/apidocs/org/apache/kudu/package-frame.html
new file mode 100644
index 0000000..f330e5b
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/package-frame.html
@@ -0,0 +1,25 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>org.apache.kudu (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../script.js"></script>
+</head>
+<body>
+<h1 class="bar"><a href="../../../org/apache/kudu/package-summary.html" target="classFrame">org.apache.kudu</a></h1>
+<div class="indexContainer">
+<h2 title="Classes">Classes</h2>
+<ul title="Classes">
+<li><a href="ColumnSchema.html" title="class in org.apache.kudu" target="classFrame">ColumnSchema</a></li>
+<li><a href="Schema.html" title="class in org.apache.kudu" target="classFrame">Schema</a></li>
+</ul>
+<h2 title="Enums">Enums</h2>
+<ul title="Enums">
+<li><a href="Type.html" title="enum in org.apache.kudu" target="classFrame">Type</a></li>
+</ul>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/package-summary.html b/releases/1.4.0/apidocs/org/apache/kudu/package-summary.html
new file mode 100644
index 0000000..3edad0b
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/package-summary.html
@@ -0,0 +1,168 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>org.apache.kudu (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="org.apache.kudu (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../overview-summary.html">Overview</a></li>
+<li class="navBarCell1Rev">Package</li>
+<li>Class</li>
+<li><a href="package-use.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../index-all.html">Index</a></li>
+<li><a href="../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev&nbsp;Package</li>
+<li><a href="../../../org/apache/kudu/annotations/package-summary.html">Next&nbsp;Package</a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../index.html?org/apache/kudu/package-summary.html" target="_top">Frames</a></li>
+<li><a href="package-summary.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h1 title="Package" class="title">Package&nbsp;org.apache.kudu</h1>
+</div>
+<div class="contentContainer">
+<ul class="blockList">
+<li class="blockList">
+<table class="typeSummary" border="0" cellpadding="3" cellspacing="0" summary="Class Summary table, listing classes, and an explanation">
+<caption><span>Class Summary</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Class</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu">ColumnSchema</a></td>
+<td class="colLast">
+<div class="block">Represents a Kudu Table column.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a href="../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu">Schema</a></td>
+<td class="colLast">
+<div class="block">Represents table's schema which is essentially a list of columns.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList">
+<table class="typeSummary" border="0" cellpadding="3" cellspacing="0" summary="Enum Summary table, listing enums, and an explanation">
+<caption><span>Enum Summary</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Enum</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="../../../org/apache/kudu/Type.html" title="enum in org.apache.kudu">Type</a></td>
+<td class="colLast">
+<div class="block">Describes all the types available to build table schemas.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../overview-summary.html">Overview</a></li>
+<li class="navBarCell1Rev">Package</li>
+<li>Class</li>
+<li><a href="package-use.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../index-all.html">Index</a></li>
+<li><a href="../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev&nbsp;Package</li>
+<li><a href="../../../org/apache/kudu/annotations/package-summary.html">Next&nbsp;Package</a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../index.html?org/apache/kudu/package-summary.html" target="_top">Frames</a></li>
+<li><a href="package-summary.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/package-tree.html b/releases/1.4.0/apidocs/org/apache/kudu/package-tree.html
new file mode 100644
index 0000000..861af8f
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/package-tree.html
@@ -0,0 +1,151 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>org.apache.kudu Class Hierarchy (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="org.apache.kudu Class Hierarchy (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li>Class</li>
+<li>Use</li>
+<li class="navBarCell1Rev">Tree</li>
+<li><a href="../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../index-all.html">Index</a></li>
+<li><a href="../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li><a href="../../../org/apache/kudu/annotations/package-tree.html">Next</a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../index.html?org/apache/kudu/package-tree.html" target="_top">Frames</a></li>
+<li><a href="package-tree.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h1 class="title">Hierarchy For Package org.apache.kudu</h1>
+<span class="packageHierarchyLabel">Package Hierarchies:</span>
+<ul class="horizontal">
+<li><a href="../../../overview-tree.html">All Packages</a></li>
+</ul>
+</div>
+<div class="contentContainer">
+<h2 title="Class Hierarchy">Class Hierarchy</h2>
+<ul>
+<li type="circle">java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Object</span></a>
+<ul>
+<li type="circle">org.apache.kudu.<a href="../../../org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu"><span class="typeNameLink">ColumnSchema</span></a></li>
+<li type="circle">org.apache.kudu.<a href="../../../org/apache/kudu/Schema.html" title="class in org.apache.kudu"><span class="typeNameLink">Schema</span></a></li>
+</ul>
+</li>
+</ul>
+<h2 title="Enum Hierarchy">Enum Hierarchy</h2>
+<ul>
+<li type="circle">java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Object</span></a>
+<ul>
+<li type="circle">java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, java.io.<a href="http://docs.oracle.com/javase/7/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
+<ul>
+<li type="circle">org.apache.kudu.<a href="../../../org/apache/kudu/Type.html" title="enum in org.apache.kudu"><span class="typeNameLink">Type</span></a></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li>Class</li>
+<li>Use</li>
+<li class="navBarCell1Rev">Tree</li>
+<li><a href="../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../index-all.html">Index</a></li>
+<li><a href="../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li><a href="../../../org/apache/kudu/annotations/package-tree.html">Next</a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../index.html?org/apache/kudu/package-tree.html" target="_top">Frames</a></li>
+<li><a href="package-tree.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/package-use.html b/releases/1.4.0/apidocs/org/apache/kudu/package-use.html
new file mode 100644
index 0000000..742b4aa
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/package-use.html
@@ -0,0 +1,222 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Package org.apache.kudu (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Package org.apache.kudu (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li>Class</li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../index-all.html">Index</a></li>
+<li><a href="../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../index.html?org/apache/kudu/package-use.html" target="_top">Frames</a></li>
+<li><a href="package-use.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h1 title="Uses of Package org.apache.kudu" class="title">Uses of Package<br>org.apache.kudu</h1>
+</div>
+<div class="contentContainer">
+<ul class="blockList">
+<li class="blockList">
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing packages, and an explanation">
+<caption><span>Packages that use <a href="../../../org/apache/kudu/package-summary.html">org.apache.kudu</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Package</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="#org.apache.kudu">org.apache.kudu</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a href="#org.apache.kudu.client">org.apache.kudu.client</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a href="#org.apache.kudu.mapreduce.tools">org.apache.kudu.mapreduce.tools</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList"><a name="org.apache.kudu">
+<!--   -->
+</a>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing classes, and an explanation">
+<caption><span>Classes in <a href="../../../org/apache/kudu/package-summary.html">org.apache.kudu</a> used by <a href="../../../org/apache/kudu/package-summary.html">org.apache.kudu</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colOne" scope="col">Class and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colOne"><a href="../../../org/apache/kudu/class-use/ColumnSchema.html#org.apache.kudu">ColumnSchema</a>
+<div class="block">Represents a Kudu Table column.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><a href="../../../org/apache/kudu/class-use/Schema.html#org.apache.kudu">Schema</a>
+<div class="block">Represents table's schema which is essentially a list of columns.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colOne"><a href="../../../org/apache/kudu/class-use/Type.html#org.apache.kudu">Type</a>
+<div class="block">Describes all the types available to build table schemas.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList"><a name="org.apache.kudu.client">
+<!--   -->
+</a>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing classes, and an explanation">
+<caption><span>Classes in <a href="../../../org/apache/kudu/package-summary.html">org.apache.kudu</a> used by <a href="../../../org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colOne" scope="col">Class and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colOne"><a href="../../../org/apache/kudu/class-use/ColumnSchema.html#org.apache.kudu.client">ColumnSchema</a>
+<div class="block">Represents a Kudu Table column.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><a href="../../../org/apache/kudu/class-use/Schema.html#org.apache.kudu.client">Schema</a>
+<div class="block">Represents table's schema which is essentially a list of columns.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colOne"><a href="../../../org/apache/kudu/class-use/Type.html#org.apache.kudu.client">Type</a>
+<div class="block">Describes all the types available to build table schemas.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList"><a name="org.apache.kudu.mapreduce.tools">
+<!--   -->
+</a>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing classes, and an explanation">
+<caption><span>Classes in <a href="../../../org/apache/kudu/package-summary.html">org.apache.kudu</a> used by <a href="../../../org/apache/kudu/mapreduce/tools/package-summary.html">org.apache.kudu.mapreduce.tools</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colOne" scope="col">Class and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colOne"><a href="../../../org/apache/kudu/class-use/Schema.html#org.apache.kudu.mapreduce.tools">Schema</a>
+<div class="block">Represents table's schema which is essentially a list of columns.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li>Class</li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../index-all.html">Index</a></li>
+<li><a href="../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../index.html?org/apache/kudu/package-use.html" target="_top">Frames</a></li>
+<li><a href="package-use.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/security/package-frame.html b/releases/1.4.0/apidocs/org/apache/kudu/security/package-frame.html
new file mode 100644
index 0000000..b11aa22
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/security/package-frame.html
@@ -0,0 +1,14 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>org.apache.kudu.security (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<h1 class="bar"><a href="../../../../org/apache/kudu/security/package-summary.html" target="classFrame">org.apache.kudu.security</a></h1>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/security/package-summary.html b/releases/1.4.0/apidocs/org/apache/kudu/security/package-summary.html
new file mode 100644
index 0000000..69db791
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/security/package-summary.html
@@ -0,0 +1,124 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>org.apache.kudu.security (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="org.apache.kudu.security (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li class="navBarCell1Rev">Package</li>
+<li>Class</li>
+<li><a href="package-use.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/mapreduce/tools/package-summary.html">Prev&nbsp;Package</a></li>
+<li><a href="../../../../org/apache/kudu/util/package-summary.html">Next&nbsp;Package</a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/security/package-summary.html" target="_top">Frames</a></li>
+<li><a href="package-summary.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h1 title="Package" class="title">Package&nbsp;org.apache.kudu.security</h1>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li class="navBarCell1Rev">Package</li>
+<li>Class</li>
+<li><a href="package-use.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/mapreduce/tools/package-summary.html">Prev&nbsp;Package</a></li>
+<li><a href="../../../../org/apache/kudu/util/package-summary.html">Next&nbsp;Package</a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/security/package-summary.html" target="_top">Frames</a></li>
+<li><a href="package-summary.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/security/package-tree.html b/releases/1.4.0/apidocs/org/apache/kudu/security/package-tree.html
new file mode 100644
index 0000000..84e27fa
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/security/package-tree.html
@@ -0,0 +1,128 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>org.apache.kudu.security Class Hierarchy (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="org.apache.kudu.security Class Hierarchy (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li>Class</li>
+<li>Use</li>
+<li class="navBarCell1Rev">Tree</li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/mapreduce/tools/package-tree.html">Prev</a></li>
+<li><a href="../../../../org/apache/kudu/util/package-tree.html">Next</a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/security/package-tree.html" target="_top">Frames</a></li>
+<li><a href="package-tree.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h1 class="title">Hierarchy For Package org.apache.kudu.security</h1>
+<span class="packageHierarchyLabel">Package Hierarchies:</span>
+<ul class="horizontal">
+<li><a href="../../../../overview-tree.html">All Packages</a></li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li>Class</li>
+<li>Use</li>
+<li class="navBarCell1Rev">Tree</li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/mapreduce/tools/package-tree.html">Prev</a></li>
+<li><a href="../../../../org/apache/kudu/util/package-tree.html">Next</a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/security/package-tree.html" target="_top">Frames</a></li>
+<li><a href="package-tree.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/security/package-use.html b/releases/1.4.0/apidocs/org/apache/kudu/security/package-use.html
new file mode 100644
index 0000000..1fe452e
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/security/package-use.html
@@ -0,0 +1,125 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Package org.apache.kudu.security (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Package org.apache.kudu.security (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li>Class</li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/security/package-use.html" target="_top">Frames</a></li>
+<li><a href="package-use.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h1 title="Uses of Package org.apache.kudu.security" class="title">Uses of Package<br>org.apache.kudu.security</h1>
+</div>
+<div class="contentContainer">No usage of org.apache.kudu.security</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li>Class</li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/security/package-use.html" target="_top">Frames</a></li>
+<li><a href="package-use.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/util/package-frame.html b/releases/1.4.0/apidocs/org/apache/kudu/util/package-frame.html
new file mode 100644
index 0000000..2e0e6ad
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/util/package-frame.html
@@ -0,0 +1,14 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>org.apache.kudu.util (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<h1 class="bar"><a href="../../../../org/apache/kudu/util/package-summary.html" target="classFrame">org.apache.kudu.util</a></h1>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/util/package-summary.html b/releases/1.4.0/apidocs/org/apache/kudu/util/package-summary.html
new file mode 100644
index 0000000..31fba74
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/util/package-summary.html
@@ -0,0 +1,124 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>org.apache.kudu.util (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="org.apache.kudu.util (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li class="navBarCell1Rev">Package</li>
+<li>Class</li>
+<li><a href="package-use.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/security/package-summary.html">Prev&nbsp;Package</a></li>
+<li>Next&nbsp;Package</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/util/package-summary.html" target="_top">Frames</a></li>
+<li><a href="package-summary.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h1 title="Package" class="title">Package&nbsp;org.apache.kudu.util</h1>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li class="navBarCell1Rev">Package</li>
+<li>Class</li>
+<li><a href="package-use.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/security/package-summary.html">Prev&nbsp;Package</a></li>
+<li>Next&nbsp;Package</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/util/package-summary.html" target="_top">Frames</a></li>
+<li><a href="package-summary.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/util/package-tree.html b/releases/1.4.0/apidocs/org/apache/kudu/util/package-tree.html
new file mode 100644
index 0000000..021d0c5
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/util/package-tree.html
@@ -0,0 +1,128 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>org.apache.kudu.util Class Hierarchy (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="org.apache.kudu.util Class Hierarchy (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li>Class</li>
+<li>Use</li>
+<li class="navBarCell1Rev">Tree</li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/security/package-tree.html">Prev</a></li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/util/package-tree.html" target="_top">Frames</a></li>
+<li><a href="package-tree.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h1 class="title">Hierarchy For Package org.apache.kudu.util</h1>
+<span class="packageHierarchyLabel">Package Hierarchies:</span>
+<ul class="horizontal">
+<li><a href="../../../../overview-tree.html">All Packages</a></li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li>Class</li>
+<li>Use</li>
+<li class="navBarCell1Rev">Tree</li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/kudu/security/package-tree.html">Prev</a></li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/util/package-tree.html" target="_top">Frames</a></li>
+<li><a href="package-tree.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/org/apache/kudu/util/package-use.html b/releases/1.4.0/apidocs/org/apache/kudu/util/package-use.html
new file mode 100644
index 0000000..29a7bec
--- /dev/null
+++ b/releases/1.4.0/apidocs/org/apache/kudu/util/package-use.html
@@ -0,0 +1,125 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Uses of Package org.apache.kudu.util (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Uses of Package org.apache.kudu.util (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li>Class</li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/util/package-use.html" target="_top">Frames</a></li>
+<li><a href="package-use.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h1 title="Uses of Package org.apache.kudu.util" class="title">Uses of Package<br>org.apache.kudu.util</h1>
+</div>
+<div class="contentContainer">No usage of org.apache.kudu.util</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li>Class</li>
+<li class="navBarCell1Rev">Use</li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/kudu/util/package-use.html" target="_top">Frames</a></li>
+<li><a href="package-use.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/overview-frame.html b/releases/1.4.0/apidocs/overview-frame.html
new file mode 100644
index 0000000..06bb34f
--- /dev/null
+++ b/releases/1.4.0/apidocs/overview-frame.html
@@ -0,0 +1,28 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Overview List (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
+<script type="text/javascript" src="script.js"></script>
+</head>
+<body>
+<div class="indexHeader"><span><a href="allclasses-frame.html" target="packageFrame">All&nbsp;Classes</a></span></div>
+<div class="indexContainer">
+<h2 title="Packages">Packages</h2>
+<ul title="Packages">
+<li><a href="org/apache/kudu/package-frame.html" target="packageFrame">org.apache.kudu</a></li>
+<li><a href="org/apache/kudu/annotations/package-frame.html" target="packageFrame">org.apache.kudu.annotations</a></li>
+<li><a href="org/apache/kudu/client/package-frame.html" target="packageFrame">org.apache.kudu.client</a></li>
+<li><a href="org/apache/kudu/flume/sink/package-frame.html" target="packageFrame">org.apache.kudu.flume.sink</a></li>
+<li><a href="org/apache/kudu/mapreduce/package-frame.html" target="packageFrame">org.apache.kudu.mapreduce</a></li>
+<li><a href="org/apache/kudu/mapreduce/tools/package-frame.html" target="packageFrame">org.apache.kudu.mapreduce.tools</a></li>
+<li><a href="org/apache/kudu/security/package-frame.html" target="packageFrame">org.apache.kudu.security</a></li>
+<li><a href="org/apache/kudu/util/package-frame.html" target="packageFrame">org.apache.kudu.util</a></li>
+</ul>
+</div>
+<p>&nbsp;</p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/overview-summary.html b/releases/1.4.0/apidocs/overview-summary.html
new file mode 100644
index 0000000..09b67ee
--- /dev/null
+++ b/releases/1.4.0/apidocs/overview-summary.html
@@ -0,0 +1,167 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Overview (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
+<script type="text/javascript" src="script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Overview (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li class="navBarCell1Rev">Overview</li>
+<li>Package</li>
+<li>Class</li>
+<li>Use</li>
+<li><a href="overview-tree.html">Tree</a></li>
+<li><a href="deprecated-list.html">Deprecated</a></li>
+<li><a href="index-all.html">Index</a></li>
+<li><a href="help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="index.html?overview-summary.html" target="_top">Frames</a></li>
+<li><a href="overview-summary.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h1 class="title">Kudu 1.4.0 API</h1>
+</div>
+<div class="contentContainer">
+<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Packages table, listing packages, and an explanation">
+<caption><span>Packages</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Package</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="org/apache/kudu/package-summary.html">org.apache.kudu</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a href="org/apache/kudu/annotations/package-summary.html">org.apache.kudu.annotations</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a href="org/apache/kudu/client/package-summary.html">org.apache.kudu.client</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a href="org/apache/kudu/flume/sink/package-summary.html">org.apache.kudu.flume.sink</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a href="org/apache/kudu/mapreduce/package-summary.html">org.apache.kudu.mapreduce</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a href="org/apache/kudu/mapreduce/tools/package-summary.html">org.apache.kudu.mapreduce.tools</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a href="org/apache/kudu/security/package-summary.html">org.apache.kudu.security</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a href="org/apache/kudu/util/package-summary.html">org.apache.kudu.util</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li class="navBarCell1Rev">Overview</li>
+<li>Package</li>
+<li>Class</li>
+<li>Use</li>
+<li><a href="overview-tree.html">Tree</a></li>
+<li><a href="deprecated-list.html">Deprecated</a></li>
+<li><a href="index-all.html">Index</a></li>
+<li><a href="help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="index.html?overview-summary.html" target="_top">Frames</a></li>
+<li><a href="overview-summary.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/overview-tree.html b/releases/1.4.0/apidocs/overview-tree.html
new file mode 100644
index 0000000..31562fc
--- /dev/null
+++ b/releases/1.4.0/apidocs/overview-tree.html
@@ -0,0 +1,286 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Class Hierarchy (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
+<script type="text/javascript" src="script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Class Hierarchy (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="overview-summary.html">Overview</a></li>
+<li>Package</li>
+<li>Class</li>
+<li>Use</li>
+<li class="navBarCell1Rev">Tree</li>
+<li><a href="deprecated-list.html">Deprecated</a></li>
+<li><a href="index-all.html">Index</a></li>
+<li><a href="help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="index.html?overview-tree.html" target="_top">Frames</a></li>
+<li><a href="overview-tree.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h1 class="title">Hierarchy For All Packages</h1>
+<span class="packageHierarchyLabel">Package Hierarchies:</span>
+<ul class="horizontal">
+<li><a href="org/apache/kudu/package-tree.html">org.apache.kudu</a>, </li>
+<li><a href="org/apache/kudu/annotations/package-tree.html">org.apache.kudu.annotations</a>, </li>
+<li><a href="org/apache/kudu/client/package-tree.html">org.apache.kudu.client</a>, </li>
+<li><a href="org/apache/kudu/flume/sink/package-tree.html">org.apache.kudu.flume.sink</a>, </li>
+<li><a href="org/apache/kudu/mapreduce/package-tree.html">org.apache.kudu.mapreduce</a>, </li>
+<li><a href="org/apache/kudu/mapreduce/tools/package-tree.html">org.apache.kudu.mapreduce.tools</a>, </li>
+<li><a href="org/apache/kudu/security/package-tree.html">org.apache.kudu.security</a>, </li>
+<li><a href="org/apache/kudu/util/package-tree.html">org.apache.kudu.util</a></li>
+</ul>
+</div>
+<div class="contentContainer">
+<h2 title="Class Hierarchy">Class Hierarchy</h2>
+<ul>
+<li type="circle">java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Object</span></a>
+<ul>
+<li type="circle">org.apache.kudu.client.<a href="org/apache/kudu/client/AbstractKuduScannerBuilder.html" title="class in org.apache.kudu.client"><span class="typeNameLink">AbstractKuduScannerBuilder</span></a>&lt;S,T&gt;
+<ul>
+<li type="circle">org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduScanner.AsyncKuduScannerBuilder.html" title="class in org.apache.kudu.client"><span class="typeNameLink">AsyncKuduScanner.AsyncKuduScannerBuilder</span></a></li>
+<li type="circle">org.apache.kudu.client.<a href="org/apache/kudu/client/KuduScanner.KuduScannerBuilder.html" title="class in org.apache.kudu.client"><span class="typeNameLink">KuduScanner.KuduScannerBuilder</span></a></li>
+<li type="circle">org.apache.kudu.client.<a href="org/apache/kudu/client/KuduScanToken.KuduScanTokenBuilder.html" title="class in org.apache.kudu.client"><span class="typeNameLink">KuduScanToken.KuduScanTokenBuilder</span></a></li>
+</ul>
+</li>
+<li type="circle">org.apache.flume.sink.AbstractSink (implements org.apache.flume.lifecycle.LifecycleAware, org.apache.flume.Sink)
+<ul>
+<li type="circle">org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/KuduSink.html" title="class in org.apache.kudu.flume.sink"><span class="typeNameLink">KuduSink</span></a> (implements org.apache.flume.conf.Configurable)</li>
+</ul>
+</li>
+<li type="circle">org.apache.kudu.client.<a href="org/apache/kudu/client/AlterTableOptions.html" title="class in org.apache.kudu.client"><span class="typeNameLink">AlterTableOptions</span></a></li>
+<li type="circle">org.apache.kudu.client.<a href="org/apache/kudu/client/AlterTableResponse.html" title="class in org.apache.kudu.client"><span class="typeNameLink">AlterTableResponse</span></a></li>
+<li type="circle">org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduClient.html" title="class in org.apache.kudu.client"><span class="typeNameLink">AsyncKuduClient</span></a> (implements java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/AutoCloseable.html?is-external=true" title="class or interface in java.lang">AutoCloseable</a>)</li>
+<li type="circle">org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduClient.AsyncKuduClientBuilder.html" title="class in org.apache.kudu.client"><span class="typeNameLink">AsyncKuduClient.AsyncKuduClientBuilder</span></a></li>
+<li type="circle">org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduScanner.html" title="class in org.apache.kudu.client"><span class="typeNameLink">AsyncKuduScanner</span></a></li>
+<li type="circle">org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduSession.html" title="class in org.apache.kudu.client"><span class="typeNameLink">AsyncKuduSession</span></a> (implements org.apache.kudu.client.<a href="org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client">SessionConfiguration</a>)</li>
+<li type="circle">org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/AvroKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink"><span class="typeNameLink">AvroKuduOperationsProducer</span></a> (implements org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/KuduOperationsProducer.html" title="interface in org.apache.kudu.flume.sink">KuduOperationsProducer</a>)</li>
+<li type="circle">org.apache.kudu.mapreduce.tools.<a href="org/apache/kudu/mapreduce/tools/BigLinkedListCommon.html" title="class in org.apache.kudu.mapreduce.tools"><span class="typeNameLink">BigLinkedListCommon</span></a></li>
+<li type="circle">org.apache.kudu.client.<a href="org/apache/kudu/client/ColumnRangePredicate.html" title="class in org.apache.kudu.client"><span class="typeNameLink">ColumnRangePredicate</span></a></li>
+<li type="circle">org.apache.kudu.<a href="org/apache/kudu/ColumnSchema.html" title="class in org.apache.kudu"><span class="typeNameLink">ColumnSchema</span></a></li>
+<li type="circle">org.apache.kudu.mapreduce.<a href="org/apache/kudu/mapreduce/CommandLineParser.html" title="class in org.apache.kudu.mapreduce"><span class="typeNameLink">CommandLineParser</span></a></li>
+<li type="circle">org.apache.hadoop.conf.Configured (implements org.apache.hadoop.conf.Configurable)
+<ul>
+<li type="circle">org.apache.kudu.mapreduce.tools.<a href="org/apache/kudu/mapreduce/tools/ImportCsv.html" title="class in org.apache.kudu.mapreduce.tools"><span class="typeNameLink">ImportCsv</span></a> (implements org.apache.hadoop.util.Tool)</li>
+</ul>
+</li>
+<li type="circle">org.apache.kudu.client.<a href="org/apache/kudu/client/CreateTableOptions.html" title="class in org.apache.kudu.client"><span class="typeNameLink">CreateTableOptions</span></a></li>
+<li type="circle">org.apache.kudu.mapreduce.tools.<a href="org/apache/kudu/mapreduce/tools/CsvParser.html" title="class in org.apache.kudu.mapreduce.tools"><span class="typeNameLink">CsvParser</span></a></li>
+<li type="circle">org.apache.kudu.client.<a href="org/apache/kudu/client/DeleteTableResponse.html" title="class in org.apache.kudu.client"><span class="typeNameLink">DeleteTableResponse</span></a></li>
+<li type="circle">org.apache.hadoop.mapreduce.InputFormat&lt;K,V&gt;
+<ul>
+<li type="circle">org.apache.kudu.mapreduce.<a href="org/apache/kudu/mapreduce/KuduTableInputFormat.html" title="class in org.apache.kudu.mapreduce"><span class="typeNameLink">KuduTableInputFormat</span></a> (implements org.apache.hadoop.conf.Configurable)</li>
+</ul>
+</li>
+<li type="circle">org.apache.kudu.annotations.<a href="org/apache/kudu/annotations/InterfaceAudience.html" title="class in org.apache.kudu.annotations"><span class="typeNameLink">InterfaceAudience</span></a></li>
+<li type="circle">org.apache.kudu.annotations.<a href="org/apache/kudu/annotations/InterfaceStability.html" title="class in org.apache.kudu.annotations"><span class="typeNameLink">InterfaceStability</span></a></li>
+<li type="circle">org.apache.kudu.client.<a href="org/apache/kudu/client/IsAlterTableDoneResponse.html" title="class in org.apache.kudu.client"><span class="typeNameLink">IsAlterTableDoneResponse</span></a></li>
+<li type="circle">org.apache.kudu.client.<a href="org/apache/kudu/client/KuduClient.html" title="class in org.apache.kudu.client"><span class="typeNameLink">KuduClient</span></a> (implements java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/AutoCloseable.html?is-external=true" title="class or interface in java.lang">AutoCloseable</a>)</li>
+<li type="circle">org.apache.kudu.client.<a href="org/apache/kudu/client/KuduClient.KuduClientBuilder.html" title="class in org.apache.kudu.client"><span class="typeNameLink">KuduClient.KuduClientBuilder</span></a></li>
+<li type="circle">org.apache.kudu.client.<a href="org/apache/kudu/client/KuduPredicate.html" title="class in org.apache.kudu.client"><span class="typeNameLink">KuduPredicate</span></a></li>
+<li type="circle">org.apache.kudu.client.KuduRpc&lt;R&gt;
+<ul>
+<li type="circle">org.apache.kudu.client.<a href="org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Operation</span></a>
+<ul>
+<li type="circle">org.apache.kudu.client.<a href="org/apache/kudu/client/Delete.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Delete</span></a></li>
+<li type="circle">org.apache.kudu.client.<a href="org/apache/kudu/client/Insert.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Insert</span></a></li>
+<li type="circle">org.apache.kudu.client.<a href="org/apache/kudu/client/Update.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Update</span></a></li>
+<li type="circle">org.apache.kudu.client.<a href="org/apache/kudu/client/Upsert.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Upsert</span></a></li>
+</ul>
+</li>
+</ul>
+</li>
+<li type="circle">org.apache.kudu.client.<a href="org/apache/kudu/client/KuduScanner.html" title="class in org.apache.kudu.client"><span class="typeNameLink">KuduScanner</span></a></li>
+<li type="circle">org.apache.kudu.client.<a href="org/apache/kudu/client/KuduScanToken.html" title="class in org.apache.kudu.client"><span class="typeNameLink">KuduScanToken</span></a> (implements java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;)</li>
+<li type="circle">org.apache.kudu.client.<a href="org/apache/kudu/client/KuduSession.html" title="class in org.apache.kudu.client"><span class="typeNameLink">KuduSession</span></a> (implements org.apache.kudu.client.<a href="org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client">SessionConfiguration</a>)</li>
+<li type="circle">org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/KuduSinkConfigurationConstants.html" title="class in org.apache.kudu.flume.sink"><span class="typeNameLink">KuduSinkConfigurationConstants</span></a></li>
+<li type="circle">org.apache.kudu.client.<a href="org/apache/kudu/client/KuduTable.html" title="class in org.apache.kudu.client"><span class="typeNameLink">KuduTable</span></a></li>
+<li type="circle">org.apache.kudu.mapreduce.<a href="org/apache/kudu/mapreduce/KuduTableMapReduceUtil.html" title="class in org.apache.kudu.mapreduce"><span class="typeNameLink">KuduTableMapReduceUtil</span></a></li>
+<li type="circle">org.apache.kudu.client.<a href="org/apache/kudu/client/ListTablesResponse.html" title="class in org.apache.kudu.client"><span class="typeNameLink">ListTablesResponse</span></a></li>
+<li type="circle">org.apache.kudu.client.<a href="org/apache/kudu/client/ListTabletServersResponse.html" title="class in org.apache.kudu.client"><span class="typeNameLink">ListTabletServersResponse</span></a></li>
+<li type="circle">org.apache.kudu.client.<a href="org/apache/kudu/client/LocatedTablet.html" title="class in org.apache.kudu.client"><span class="typeNameLink">LocatedTablet</span></a></li>
+<li type="circle">org.apache.kudu.client.<a href="org/apache/kudu/client/LocatedTablet.Replica.html" title="class in org.apache.kudu.client"><span class="typeNameLink">LocatedTablet.Replica</span></a></li>
+<li type="circle">org.apache.kudu.client.<a href="org/apache/kudu/client/OperationResponse.html" title="class in org.apache.kudu.client"><span class="typeNameLink">OperationResponse</span></a></li>
+<li type="circle">org.apache.hadoop.mapreduce.OutputCommitter
+<ul>
+<li type="circle">org.apache.kudu.mapreduce.<a href="org/apache/kudu/mapreduce/KuduTableOutputCommitter.html" title="class in org.apache.kudu.mapreduce"><span class="typeNameLink">KuduTableOutputCommitter</span></a></li>
+</ul>
+</li>
+<li type="circle">org.apache.hadoop.mapreduce.OutputFormat&lt;K,V&gt;
+<ul>
+<li type="circle">org.apache.kudu.mapreduce.<a href="org/apache/kudu/mapreduce/KuduTableOutputFormat.html" title="class in org.apache.kudu.mapreduce"><span class="typeNameLink">KuduTableOutputFormat</span></a> (implements org.apache.hadoop.conf.Configurable)</li>
+</ul>
+</li>
+<li type="circle">org.apache.kudu.client.<a href="org/apache/kudu/client/PartialRow.html" title="class in org.apache.kudu.client"><span class="typeNameLink">PartialRow</span></a></li>
+<li type="circle">org.apache.hadoop.mapreduce.Reducer&lt;KEYIN,VALUEIN,KEYOUT,VALUEOUT&gt;
+<ul>
+<li type="circle">org.apache.kudu.mapreduce.<a href="org/apache/kudu/mapreduce/TableReducer.html" title="class in org.apache.kudu.mapreduce"><span class="typeNameLink">TableReducer</span></a>&lt;KeyinT,ValueinT,KeyoutT&gt;</li>
+</ul>
+</li>
+<li type="circle">org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/RegexpKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink"><span class="typeNameLink">RegexpKuduOperationsProducer</span></a> (implements org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/KuduOperationsProducer.html" title="interface in org.apache.kudu.flume.sink">KuduOperationsProducer</a>)</li>
+<li type="circle">org.apache.kudu.client.<a href="org/apache/kudu/client/RowError.html" title="class in org.apache.kudu.client"><span class="typeNameLink">RowError</span></a></li>
+<li type="circle">org.apache.kudu.client.<a href="org/apache/kudu/client/RowErrorsAndOverflowStatus.html" title="class in org.apache.kudu.client"><span class="typeNameLink">RowErrorsAndOverflowStatus</span></a></li>
+<li type="circle">org.apache.kudu.client.<a href="org/apache/kudu/client/RowResult.html" title="class in org.apache.kudu.client"><span class="typeNameLink">RowResult</span></a></li>
+<li type="circle">org.apache.kudu.client.<a href="org/apache/kudu/client/RowResultIterator.html" title="class in org.apache.kudu.client"><span class="typeNameLink">RowResultIterator</span></a> (implements java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Iterable.html?is-external=true" title="class or interface in java.lang">Iterable</a>&lt;T&gt;, java.util.<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;E&gt;)</li>
+<li type="circle">org.apache.kudu.<a href="org/apache/kudu/Schema.html" title="class in org.apache.kudu"><span class="typeNameLink">Schema</span></a></li>
+<li type="circle">org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/SimpleKeyedKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink"><span class="typeNameLink">SimpleKeyedKuduOperationsProducer</span></a> (implements org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/KuduOperationsProducer.html" title="interface in org.apache.kudu.flume.sink">KuduOperationsProducer</a>)</li>
+<li type="circle">org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/SimpleKuduOperationsProducer.html" title="class in org.apache.kudu.flume.sink"><span class="typeNameLink">SimpleKuduOperationsProducer</span></a> (implements org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/KuduOperationsProducer.html" title="interface in org.apache.kudu.flume.sink">KuduOperationsProducer</a>)</li>
+<li type="circle">org.apache.kudu.client.<a href="org/apache/kudu/client/Statistics.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Statistics</span></a></li>
+<li type="circle">org.apache.kudu.client.<a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client"><span class="typeNameLink">Status</span></a></li>
+<li type="circle">java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Throwable</span></a> (implements java.io.<a href="http://docs.oracle.com/javase/7/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
+<ul>
+<li type="circle">java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Exception</span></a>
+<ul>
+<li type="circle">java.io.<a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io"><span class="typeNameLink">IOException</span></a>
+<ul>
+<li type="circle">org.apache.kudu.client.<a href="org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client"><span class="typeNameLink">KuduException</span></a>
+<ul>
+<li type="circle">org.apache.kudu.client.<a href="org/apache/kudu/client/PleaseThrottleException.html" title="class in org.apache.kudu.client"><span class="typeNameLink">PleaseThrottleException</span></a> (implements org.apache.kudu.client.<a href="org/apache/kudu/client/HasFailedRpcException.html" title="interface in org.apache.kudu.client">HasFailedRpcException</a>)</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+<h2 title="Interface Hierarchy">Interface Hierarchy</h2>
+<ul>
+<li type="circle">java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/AutoCloseable.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">AutoCloseable</span></a>
+<ul>
+<li type="circle">org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/KuduOperationsProducer.html" title="interface in org.apache.kudu.flume.sink"><span class="typeNameLink">KuduOperationsProducer</span></a> (also extends org.apache.flume.conf.Configurable)</li>
+</ul>
+</li>
+<li type="circle">org.apache.flume.conf.Configurable
+<ul>
+<li type="circle">org.apache.kudu.flume.sink.<a href="org/apache/kudu/flume/sink/KuduOperationsProducer.html" title="interface in org.apache.kudu.flume.sink"><span class="typeNameLink">KuduOperationsProducer</span></a> (also extends java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/AutoCloseable.html?is-external=true" title="class or interface in java.lang">AutoCloseable</a>)</li>
+</ul>
+</li>
+<li type="circle">org.apache.kudu.client.<a href="org/apache/kudu/client/HasFailedRpcException.html" title="interface in org.apache.kudu.client"><span class="typeNameLink">HasFailedRpcException</span></a></li>
+<li type="circle">org.apache.kudu.client.<a href="org/apache/kudu/client/SessionConfiguration.html" title="interface in org.apache.kudu.client"><span class="typeNameLink">SessionConfiguration</span></a></li>
+</ul>
+<h2 title="Enum Hierarchy">Enum Hierarchy</h2>
+<ul>
+<li type="circle">java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Object</span></a>
+<ul>
+<li type="circle">java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;T&gt;, java.io.<a href="http://docs.oracle.com/javase/7/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>)
+<ul>
+<li type="circle">org.apache.kudu.client.<a href="org/apache/kudu/client/AsyncKuduScanner.ReadMode.html" title="enum in org.apache.kudu.client"><span class="typeNameLink">AsyncKuduScanner.ReadMode</span></a></li>
+<li type="circle">org.apache.kudu.client.<a href="org/apache/kudu/client/ExternalConsistencyMode.html" title="enum in org.apache.kudu.client"><span class="typeNameLink">ExternalConsistencyMode</span></a></li>
+<li type="circle">org.apache.kudu.client.<a href="org/apache/kudu/client/KuduPredicate.ComparisonOp.html" title="enum in org.apache.kudu.client"><span class="typeNameLink">KuduPredicate.ComparisonOp</span></a></li>
+<li type="circle">org.apache.kudu.client.<a href="org/apache/kudu/client/RangePartitionBound.html" title="enum in org.apache.kudu.client"><span class="typeNameLink">RangePartitionBound</span></a></li>
+<li type="circle">org.apache.kudu.client.<a href="org/apache/kudu/client/ReplicaSelection.html" title="enum in org.apache.kudu.client"><span class="typeNameLink">ReplicaSelection</span></a></li>
+<li type="circle">org.apache.kudu.client.<a href="org/apache/kudu/client/SessionConfiguration.FlushMode.html" title="enum in org.apache.kudu.client"><span class="typeNameLink">SessionConfiguration.FlushMode</span></a></li>
+<li type="circle">org.apache.kudu.client.<a href="org/apache/kudu/client/Statistics.Statistic.html" title="enum in org.apache.kudu.client"><span class="typeNameLink">Statistics.Statistic</span></a></li>
+<li type="circle">org.apache.kudu.<a href="org/apache/kudu/Type.html" title="enum in org.apache.kudu"><span class="typeNameLink">Type</span></a></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="overview-summary.html">Overview</a></li>
+<li>Package</li>
+<li>Class</li>
+<li>Use</li>
+<li class="navBarCell1Rev">Tree</li>
+<li><a href="deprecated-list.html">Deprecated</a></li>
+<li><a href="index-all.html">Index</a></li>
+<li><a href="help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="index.html?overview-tree.html" target="_top">Frames</a></li>
+<li><a href="overview-tree.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/package-list b/releases/1.4.0/apidocs/package-list
new file mode 100644
index 0000000..bd90479
--- /dev/null
+++ b/releases/1.4.0/apidocs/package-list
@@ -0,0 +1,8 @@
+org.apache.kudu
+org.apache.kudu.annotations
+org.apache.kudu.client
+org.apache.kudu.flume.sink
+org.apache.kudu.mapreduce
+org.apache.kudu.mapreduce.tools
+org.apache.kudu.security
+org.apache.kudu.util
diff --git a/releases/1.4.0/apidocs/script.js b/releases/1.4.0/apidocs/script.js
new file mode 100644
index 0000000..b346356
--- /dev/null
+++ b/releases/1.4.0/apidocs/script.js
@@ -0,0 +1,30 @@
+function show(type)
+{
+    count = 0;
+    for (var key in methods) {
+        var row = document.getElementById(key);
+        if ((methods[key] &  type) != 0) {
+            row.style.display = '';
+            row.className = (count++ % 2) ? rowColor : altColor;
+        }
+        else
+            row.style.display = 'none';
+    }
+    updateTabs(type);
+}
+
+function updateTabs(type)
+{
+    for (var value in tabs) {
+        var sNode = document.getElementById(tabs[value][0]);
+        var spanNode = sNode.firstChild;
+        if (value == type) {
+            sNode.className = activeTableTab;
+            spanNode.innerHTML = tabs[value][1];
+        }
+        else {
+            sNode.className = tableTab;
+            spanNode.innerHTML = "<a href=\"javascript:show("+ value + ");\">" + tabs[value][1] + "</a>";
+        }
+    }
+}
diff --git a/releases/1.4.0/apidocs/serialized-form.html b/releases/1.4.0/apidocs/serialized-form.html
new file mode 100644
index 0000000..89da725
--- /dev/null
+++ b/releases/1.4.0/apidocs/serialized-form.html
@@ -0,0 +1,171 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Serialized Form (Kudu 1.4.0 API)</title>
+<link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
+<script type="text/javascript" src="script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="Serialized Form (Kudu 1.4.0 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="overview-summary.html">Overview</a></li>
+<li>Package</li>
+<li>Class</li>
+<li>Use</li>
+<li><a href="overview-tree.html">Tree</a></li>
+<li><a href="deprecated-list.html">Deprecated</a></li>
+<li><a href="index-all.html">Index</a></li>
+<li><a href="help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="index.html?serialized-form.html" target="_top">Frames</a></li>
+<li><a href="serialized-form.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h1 title="Serialized Form" class="title">Serialized Form</h1>
+</div>
+<div class="serializedFormContainer">
+<ul class="blockList">
+<li class="blockList">
+<h2 title="Package">Package&nbsp;org.apache.kudu.client</h2>
+<ul class="blockList">
+<li class="blockList"><a name="org.apache.kudu.client.KuduException">
+<!--   -->
+</a>
+<h3>Class <a href="org/apache/kudu/client/KuduException.html" title="class in org.apache.kudu.client">org.apache.kudu.client.KuduException</a> extends <a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a> implements Serializable</h3>
+<ul class="blockList">
+<li class="blockList">
+<h3>Serialized Fields</h3>
+<ul class="blockList">
+<li class="blockListLast">
+<h4>status</h4>
+<pre><a href="org/apache/kudu/client/Status.html" title="class in org.apache.kudu.client">Status</a> status</pre>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="blockList"><a name="org.apache.kudu.client.PleaseThrottleException">
+<!--   -->
+</a>
+<h3>Class <a href="org/apache/kudu/client/PleaseThrottleException.html" title="class in org.apache.kudu.client">org.apache.kudu.client.PleaseThrottleException</a> extends org.apache.kudu.client.RecoverableException implements Serializable</h3>
+<ul class="blockList">
+<li class="blockList">
+<h3>Serialized Fields</h3>
+<ul class="blockList">
+<li class="blockList">
+<h4>rpc</h4>
+<pre><a href="org/apache/kudu/client/Operation.html" title="class in org.apache.kudu.client">Operation</a> rpc</pre>
+<div class="block">The RPC that was failed with this exception.</div>
+</li>
+<li class="blockListLast">
+<h4>deferred</h4>
+<pre>com.stumbleupon.async.Deferred&lt;T&gt; deferred</pre>
+<div class="block">A deferred one can wait on before retrying the failed RPC.</div>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="overview-summary.html">Overview</a></li>
+<li>Package</li>
+<li>Class</li>
+<li>Use</li>
+<li><a href="overview-tree.html">Tree</a></li>
+<li><a href="deprecated-list.html">Deprecated</a></li>
+<li><a href="index-all.html">Index</a></li>
+<li><a href="help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li>Prev</li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="index.html?serialized-form.html" target="_top">Frames</a></li>
+<li><a href="serialized-form.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>
diff --git a/releases/1.4.0/apidocs/stylesheet.css b/releases/1.4.0/apidocs/stylesheet.css
new file mode 100644
index 0000000..98055b2
--- /dev/null
+++ b/releases/1.4.0/apidocs/stylesheet.css
@@ -0,0 +1,574 @@
+/* Javadoc style sheet */
+/*
+Overall document style
+*/
+
+@import url('resources/fonts/dejavu.css');
+
+body {
+    background-color:#ffffff;
+    color:#353833;
+    font-family:'DejaVu Sans', Arial, Helvetica, sans-serif;
+    font-size:14px;
+    margin:0;
+}
+a:link, a:visited {
+    text-decoration:none;
+    color:#4A6782;
+}
+a:hover, a:focus {
+    text-decoration:none;
+    color:#bb7a2a;
+}
+a:active {
+    text-decoration:none;
+    color:#4A6782;
+}
+a[name] {
+    color:#353833;
+}
+a[name]:hover {
+    text-decoration:none;
+    color:#353833;
+}
+pre {
+    font-family:'DejaVu Sans Mono', monospace;
+    font-size:14px;
+}
+h1 {
+    font-size:20px;
+}
+h2 {
+    font-size:18px;
+}
+h3 {
+    font-size:16px;
+    font-style:italic;
+}
+h4 {
+    font-size:13px;
+}
+h5 {
+    font-size:12px;
+}
+h6 {
+    font-size:11px;
+}
+ul {
+    list-style-type:disc;
+}
+code, tt {
+    font-family:'DejaVu Sans Mono', monospace;
+    font-size:14px;
+    padding-top:4px;
+    margin-top:8px;
+    line-height:1.4em;
+}
+dt code {
+    font-family:'DejaVu Sans Mono', monospace;
+    font-size:14px;
+    padding-top:4px;
+}
+table tr td dt code {
+    font-family:'DejaVu Sans Mono', monospace;
+    font-size:14px;
+    vertical-align:top;
+    padding-top:4px;
+}
+sup {
+    font-size:8px;
+}
+/*
+Document title and Copyright styles
+*/
+.clear {
+    clear:both;
+    height:0px;
+    overflow:hidden;
+}
+.aboutLanguage {
+    float:right;
+    padding:0px 21px;
+    font-size:11px;
+    z-index:200;
+    margin-top:-9px;
+}
+.legalCopy {
+    margin-left:.5em;
+}
+.bar a, .bar a:link, .bar a:visited, .bar a:active {
+    color:#FFFFFF;
+    text-decoration:none;
+}
+.bar a:hover, .bar a:focus {
+    color:#bb7a2a;
+}
+.tab {
+    background-color:#0066FF;
+    color:#ffffff;
+    padding:8px;
+    width:5em;
+    font-weight:bold;
+}
+/*
+Navigation bar styles
+*/
+.bar {
+    background-color:#4D7A97;
+    color:#FFFFFF;
+    padding:.8em .5em .4em .8em;
+    height:auto;/*height:1.8em;*/
+    font-size:11px;
+    margin:0;
+}
+.topNav {
+    background-color:#4D7A97;
+    color:#FFFFFF;
+    float:left;
+    padding:0;
+    width:100%;
+    clear:right;
+    height:2.8em;
+    padding-top:10px;
+    overflow:hidden;
+    font-size:12px; 
+}
+.bottomNav {
+    margin-top:10px;
+    background-color:#4D7A97;
+    color:#FFFFFF;
+    float:left;
+    padding:0;
+    width:100%;
+    clear:right;
+    height:2.8em;
+    padding-top:10px;
+    overflow:hidden;
+    font-size:12px;
+}
+.subNav {
+    background-color:#dee3e9;
+    float:left;
+    width:100%;
+    overflow:hidden;
+    font-size:12px;
+}
+.subNav div {
+    clear:left;
+    float:left;
+    padding:0 0 5px 6px;
+    text-transform:uppercase;
+}
+ul.navList, ul.subNavList {
+    float:left;
+    margin:0 25px 0 0;
+    padding:0;
+}
+ul.navList li{
+    list-style:none;
+    float:left;
+    padding: 5px 6px;
+    text-transform:uppercase;
+}
+ul.subNavList li{
+    list-style:none;
+    float:left;
+}
+.topNav a:link, .topNav a:active, .topNav a:visited, .bottomNav a:link, .bottomNav a:active, .bottomNav a:visited {
+    color:#FFFFFF;
+    text-decoration:none;
+    text-transform:uppercase;
+}
+.topNav a:hover, .bottomNav a:hover {
+    text-decoration:none;
+    color:#bb7a2a;
+    text-transform:uppercase;
+}
+.navBarCell1Rev {
+    background-color:#F8981D;
+    color:#253441;
+    margin: auto 5px;
+}
+.skipNav {
+    position:absolute;
+    top:auto;
+    left:-9999px;
+    overflow:hidden;
+}
+/*
+Page header and footer styles
+*/
+.header, .footer {
+    clear:both;
+    margin:0 20px;
+    padding:5px 0 0 0;
+}
+.indexHeader {
+    margin:10px;
+    position:relative;
+}
+.indexHeader span{
+    margin-right:15px;
+}
+.indexHeader h1 {
+    font-size:13px;
+}
+.title {
+    color:#2c4557;
+    margin:10px 0;
+}
+.subTitle {
+    margin:5px 0 0 0;
+}
+.header ul {
+    margin:0 0 15px 0;
+    padding:0;
+}
+.footer ul {
+    margin:20px 0 5px 0;
+}
+.header ul li, .footer ul li {
+    list-style:none;
+    font-size:13px;
+}
+/*
+Heading styles
+*/
+div.details ul.blockList ul.blockList ul.blockList li.blockList h4, div.details ul.blockList ul.blockList ul.blockListLast li.blockList h4 {
+    background-color:#dee3e9;
+    border:1px solid #d0d9e0;
+    margin:0 0 6px -8px;
+    padding:7px 5px;
+}
+ul.blockList ul.blockList ul.blockList li.blockList h3 {
+    background-color:#dee3e9;
+    border:1px solid #d0d9e0;
+    margin:0 0 6px -8px;
+    padding:7px 5px;
+}
+ul.blockList ul.blockList li.blockList h3 {
+    padding:0;
+    margin:15px 0;
+}
+ul.blockList li.blockList h2 {
+    padding:0px 0 20px 0;
+}
+/*
+Page layout container styles
+*/
+.contentContainer, .sourceContainer, .classUseContainer, .serializedFormContainer, .constantValuesContainer {
+    clear:both;
+    padding:10px 20px;
+    position:relative;
+}
+.indexContainer {
+    margin:10px;
+    position:relative;
+    font-size:12px;
+}
+.indexContainer h2 {
+    font-size:13px;
+    padding:0 0 3px 0;
+}
+.indexContainer ul {
+    margin:0;
+    padding:0;
+}
+.indexContainer ul li {
+    list-style:none;
+    padding-top:2px;
+}
+.contentContainer .description dl dt, .contentContainer .details dl dt, .serializedFormContainer dl dt {
+    font-size:12px;
+    font-weight:bold;
+    margin:10px 0 0 0;
+    color:#4E4E4E;
+}
+.contentContainer .description dl dd, .contentContainer .details dl dd, .serializedFormContainer dl dd {
+    margin:5px 0 10px 0px;
+    font-size:14px;
+    font-family:'DejaVu Sans Mono',monospace;
+}
+.serializedFormContainer dl.nameValue dt {
+    margin-left:1px;
+    font-size:1.1em;
+    display:inline;
+    font-weight:bold;
+}
+.serializedFormContainer dl.nameValue dd {
+    margin:0 0 0 1px;
+    font-size:1.1em;
+    display:inline;
+}
+/*
+List styles
+*/
+ul.horizontal li {
+    display:inline;
+    font-size:0.9em;
+}
+ul.inheritance {
+    margin:0;
+    padding:0;
+}
+ul.inheritance li {
+    display:inline;
+    list-style:none;
+}
+ul.inheritance li ul.inheritance {
+    margin-left:15px;
+    padding-left:15px;
+    padding-top:1px;
+}
+ul.blockList, ul.blockListLast {
+    margin:10px 0 10px 0;
+    padding:0;
+}
+ul.blockList li.blockList, ul.blockListLast li.blockList {
+    list-style:none;
+    margin-bottom:15px;
+    line-height:1.4;
+}
+ul.blockList ul.blockList li.blockList, ul.blockList ul.blockListLast li.blockList {
+    padding:0px 20px 5px 10px;
+    border:1px solid #ededed; 
+    background-color:#f8f8f8;
+}
+ul.blockList ul.blockList ul.blockList li.blockList, ul.blockList ul.blockList ul.blockListLast li.blockList {
+    padding:0 0 5px 8px;
+    background-color:#ffffff;
+    border:none;
+}
+ul.blockList ul.blockList ul.blockList ul.blockList li.blockList {
+    margin-left:0;
+    padding-left:0;
+    padding-bottom:15px;
+    border:none;
+}
+ul.blockList ul.blockList ul.blockList ul.blockList li.blockListLast {
+    list-style:none;
+    border-bottom:none;
+    padding-bottom:0;
+}
+table tr td dl, table tr td dl dt, table tr td dl dd {
+    margin-top:0;
+    margin-bottom:1px;
+}
+/*
+Table styles
+*/
+.overviewSummary, .memberSummary, .typeSummary, .useSummary, .constantsSummary, .deprecatedSummary {
+    width:100%;
+    border-left:1px solid #EEE; 
+    border-right:1px solid #EEE; 
+    border-bottom:1px solid #EEE; 
+}
+.overviewSummary, .memberSummary  {
+    padding:0px;
+}
+.overviewSummary caption, .memberSummary caption, .typeSummary caption,
+.useSummary caption, .constantsSummary caption, .deprecatedSummary caption {
+    position:relative;
+    text-align:left;
+    background-repeat:no-repeat;
+    color:#253441;
+    font-weight:bold;
+    clear:none;
+    overflow:hidden;
+    padding:0px;
+    padding-top:10px;
+    padding-left:1px;
+    margin:0px;
+    white-space:pre;
+}
+.overviewSummary caption a:link, .memberSummary caption a:link, .typeSummary caption a:link,
+.useSummary caption a:link, .constantsSummary caption a:link, .deprecatedSummary caption a:link,
+.overviewSummary caption a:hover, .memberSummary caption a:hover, .typeSummary caption a:hover,
+.useSummary caption a:hover, .constantsSummary caption a:hover, .deprecatedSummary caption a:hover,
+.overviewSummary caption a:active, .memberSummary caption a:active, .typeSummary caption a:active,
+.useSummary caption a:active, .constantsSummary caption a:active, .deprecatedSummary caption a:active,
+.overviewSummary caption a:visited, .memberSummary caption a:visited, .typeSummary caption a:visited,
+.useSummary caption a:visited, .constantsSummary caption a:visited, .deprecatedSummary caption a:visited {
+    color:#FFFFFF;
+}
+.overviewSummary caption span, .memberSummary caption span, .typeSummary caption span,
+.useSummary caption span, .constantsSummary caption span, .deprecatedSummary caption span {
+    white-space:nowrap;
+    padding-top:5px;
+    padding-left:12px;
+    padding-right:12px;
+    padding-bottom:7px;
+    display:inline-block;
+    float:left;
+    background-color:#F8981D;
+    border: none;
+    height:16px;
+}
+.memberSummary caption span.activeTableTab span {
+    white-space:nowrap;
+    padding-top:5px;
+    padding-left:12px;
+    padding-right:12px;
+    margin-right:3px;
+    display:inline-block;
+    float:left;
+    background-color:#F8981D;
+    height:16px;
+}
+.memberSummary caption span.tableTab span {
+    white-space:nowrap;
+    padding-top:5px;
+    padding-left:12px;
+    padding-right:12px;
+    margin-right:3px;
+    display:inline-block;
+    float:left;
+    background-color:#4D7A97;
+    height:16px;
+}
+.memberSummary caption span.tableTab, .memberSummary caption span.activeTableTab {
+    padding-top:0px;
+    padding-left:0px;
+    padding-right:0px;
+    background-image:none;
+    float:none;
+    display:inline;
+}
+.overviewSummary .tabEnd, .memberSummary .tabEnd, .typeSummary .tabEnd,
+.useSummary .tabEnd, .constantsSummary .tabEnd, .deprecatedSummary .tabEnd {
+    display:none;
+    width:5px;
+    position:relative;
+    float:left;
+    background-color:#F8981D;
+}
+.memberSummary .activeTableTab .tabEnd {
+    display:none;
+    width:5px;
+    margin-right:3px;
+    position:relative; 
+    float:left;
+    background-color:#F8981D;
+}
+.memberSummary .tableTab .tabEnd {
+    display:none;
+    width:5px;
+    margin-right:3px;
+    position:relative;
+    background-color:#4D7A97;
+    float:left;
+
+}
+.overviewSummary td, .memberSummary td, .typeSummary td,
+.useSummary td, .constantsSummary td, .deprecatedSummary td {
+    text-align:left;
+    padding:0px 0px 12px 10px;
+}
+th.colOne, th.colFirst, th.colLast, .useSummary th, .constantsSummary th,
+td.colOne, td.colFirst, td.colLast, .useSummary td, .constantsSummary td{
+    vertical-align:top;
+    padding-right:0px;
+    padding-top:8px;
+    padding-bottom:3px;
+}
+th.colFirst, th.colLast, th.colOne, .constantsSummary th {
+    background:#dee3e9;
+    text-align:left;
+    padding:8px 3px 3px 7px;
+}
+td.colFirst, th.colFirst {
+    white-space:nowrap;
+    font-size:13px;
+}
+td.colLast, th.colLast {
+    font-size:13px;
+}
+td.colOne, th.colOne {
+    font-size:13px;
+}
+.overviewSummary td.colFirst, .overviewSummary th.colFirst,
+.useSummary td.colFirst, .useSummary th.colFirst,
+.overviewSummary td.colOne, .overviewSummary th.colOne,
+.memberSummary td.colFirst, .memberSummary th.colFirst,
+.memberSummary td.colOne, .memberSummary th.colOne,
+.typeSummary td.colFirst{
+    width:25%;
+    vertical-align:top;
+}
+td.colOne a:link, td.colOne a:active, td.colOne a:visited, td.colOne a:hover, td.colFirst a:link, td.colFirst a:active, td.colFirst a:visited, td.colFirst a:hover, td.colLast a:link, td.colLast a:active, td.colLast a:visited, td.colLast a:hover, .constantValuesContainer td a:link, .constantValuesContainer td a:active, .constantValuesContainer td a:visited, .constantValuesContainer td a:hover {
+    font-weight:bold;
+}
+.tableSubHeadingColor {
+    background-color:#EEEEFF;
+}
+.altColor {
+    background-color:#FFFFFF;
+}
+.rowColor {
+    background-color:#EEEEEF;
+}
+/*
+Content styles
+*/
+.description pre {
+    margin-top:0;
+}
+.deprecatedContent {
+    margin:0;
+    padding:10px 0;
+}
+.docSummary {
+    padding:0;
+}
+
+ul.blockList ul.blockList ul.blockList li.blockList h3 {
+    font-style:normal;
+}
+
+div.block {
+    font-size:14px;
+    font-family:'DejaVu Serif', Georgia, "Times New Roman", Times, serif;
+}
+
+td.colLast div {
+    padding-top:0px;
+}
+
+
+td.colLast a {
+    padding-bottom:3px;
+}
+/*
+Formatting effect styles
+*/
+.sourceLineNo {
+    color:green;
+    padding:0 30px 0 0;
+}
+h1.hidden {
+    visibility:hidden;
+    overflow:hidden;
+    font-size:10px;
+}
+.block {
+    display:block;
+    margin:3px 10px 2px 0px;
+    color:#474747;
+}
+.deprecatedLabel, .descfrmTypeLabel, .memberNameLabel, .memberNameLink,
+.overrideSpecifyLabel, .packageHierarchyLabel, .paramLabel, .returnLabel,
+.seeLabel, .simpleTagLabel, .throwsLabel, .typeNameLabel, .typeNameLink {
+    font-weight:bold;
+}
+.deprecationComment, .emphasizedPhrase, .interfaceName {
+    font-style:italic;
+}
+
+div.block div.block span.deprecationComment, div.block div.block span.emphasizedPhrase,
+div.block div.block span.interfaceName {
+    font-style:normal;
+}
+
+div.contentContainer ul.blockList li.blockList h2{
+    padding-bottom:0px;
+}
diff --git a/releases/1.4.0/cpp-client-api/annotated.html b/releases/1.4.0/cpp-client-api/annotated.html
new file mode 100644
index 0000000..d16b246
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/annotated.html
@@ -0,0 +1,150 @@
+<!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.11"/>
+<title>Kudu C++ client API: Class 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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li class="current"><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- 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 class="header">
+  <div class="headertitle">
+<div class="title">Class List</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock">Here are the classes, structs, unions and interfaces with brief descriptions:</div><div class="directory">
+<div class="levels">[detail level <span onclick="javascript:toggleLevel(1);">1</span><span onclick="javascript:toggleLevel(2);">2</span><span onclick="javascript:toggleLevel(3);">3</span>]</div><table class="directory">
+<tr id="row_0_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_0_" class="arrow" onclick="toggleFolder('0_')">&#9660;</span><span class="icona"><span class="icon">N</span></span><b>kudu</b></td><td class="desc"></td></tr>
+<tr id="row_0_0_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span id="arr_0_0_" class="arrow" onclick="toggleFolder('0_0_')">&#9660;</span><span class="icona"><span class="icon">N</span></span><b>client</b></td><td class="desc"></td></tr>
+<tr id="row_0_0_0_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduClient.html" target="_self">KuduClient</a></td><td class="desc">A handle for a connection to a cluster </td></tr>
+<tr id="row_0_0_1_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html" target="_self">KuduClientBuilder</a></td><td class="desc">A "factory" for <a class="el" href="classkudu_1_1client_1_1KuduClient.html" title="A handle for a connection to a cluster. ">KuduClient</a> objects </td></tr>
+<tr id="row_0_0_2_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html" target="_self">KuduColumnSchema</a></td><td class="desc">Representation of the column schema </td></tr>
+<tr id="row_0_0_3_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html" target="_self">KuduColumnSpec</a></td><td class="desc">Builder API for specifying or altering a column within a table schema </td></tr>
+<tr id="row_0_0_4_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html" target="_self">KuduColumnStorageAttributes</a></td><td class="desc">Representation of column storage attributes </td></tr>
+<tr id="row_0_0_5_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduDelete.html" target="_self">KuduDelete</a></td><td class="desc">A single row delete to be sent to the cluster </td></tr>
+<tr id="row_0_0_6_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduError.html" target="_self">KuduError</a></td><td class="desc">This class represents an error which occurred in a write operation </td></tr>
+<tr id="row_0_0_7_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduInsert.html" target="_self">KuduInsert</a></td><td class="desc">A single row insert to be sent to the cluster </td></tr>
+<tr id="row_0_0_8_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduLoggingCallback.html" target="_self">KuduLoggingCallback</a></td><td class="desc">The interface for all logging callbacks </td></tr>
+<tr id="row_0_0_9_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduLoggingFunctionCallback.html" target="_self">KuduLoggingFunctionCallback</a></td><td class="desc">The logging callback that invokes a function by pointer with a single argument </td></tr>
+<tr id="row_0_0_10_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduLoggingMemberCallback.html" target="_self">KuduLoggingMemberCallback</a></td><td class="desc">The logging callback that invokes a member function of an object </td></tr>
+<tr id="row_0_0_11_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduPartitioner.html" target="_self">KuduPartitioner</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_12_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduPartitionerBuilder.html" target="_self">KuduPartitionerBuilder</a></td><td class="desc">Builder for Partitioner instances </td></tr>
+<tr id="row_0_0_13_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html" target="_self">KuduPredicate</a></td><td class="desc">A representation of comparison predicate for Kudu queries </td></tr>
+<tr id="row_0_0_14_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduReplica.html" target="_self">KuduReplica</a></td><td class="desc">In-memory representation of a remote tablet's replica </td></tr>
+<tr id="row_0_0_15_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html" target="_self">KuduScanBatch</a></td><td class="desc">A batch of zero or more rows returned by a scan operation </td></tr>
+<tr id="row_0_0_16_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduScanner.html" target="_self">KuduScanner</a></td><td class="desc">This class is a representation of a single scan </td></tr>
+<tr id="row_0_0_17_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduScanToken.html" target="_self">KuduScanToken</a></td><td class="desc">A scan descriptor limited to a single physical contiguous location </td></tr>
+<tr id="row_0_0_18_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html" target="_self">KuduScanTokenBuilder</a></td><td class="desc">Builds scan tokens for a table </td></tr>
+<tr id="row_0_0_19_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduSchema.html" target="_self">KuduSchema</a></td><td class="desc">A representation of a table's schema </td></tr>
+<tr id="row_0_0_20_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduSchemaBuilder.html" target="_self">KuduSchemaBuilder</a></td><td class="desc">Builder API for constructing a <a class="el" href="classkudu_1_1client_1_1KuduSchema.html" title="A representation of a table&#39;s schema. ">KuduSchema</a> object </td></tr>
+<tr id="row_0_0_21_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduSession.html" target="_self">KuduSession</a></td><td class="desc">Representation of a Kudu client session </td></tr>
+<tr id="row_0_0_22_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduStatusCallback.html" target="_self">KuduStatusCallback</a></td><td class="desc">The interface for all status callbacks </td></tr>
+<tr id="row_0_0_23_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduStatusFunctionCallback.html" target="_self">KuduStatusFunctionCallback</a></td><td class="desc">The status callback that invokes a function by pointer with a single argument </td></tr>
+<tr id="row_0_0_24_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduStatusMemberCallback.html" target="_self">KuduStatusMemberCallback</a></td><td class="desc">The status callback that invokes a member function of an object </td></tr>
+<tr id="row_0_0_25_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduTable.html" target="_self">KuduTable</a></td><td class="desc">A representation of a table on a particular cluster </td></tr>
+<tr id="row_0_0_26_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html" target="_self">KuduTableAlterer</a></td><td class="desc">Alters an existing table based on the provided steps </td></tr>
+<tr id="row_0_0_27_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html" target="_self">KuduTableCreator</a></td><td class="desc">A helper class to create a new table with the desired options </td></tr>
+<tr id="row_0_0_28_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduTablet.html" target="_self">KuduTablet</a></td><td class="desc">In-memory representation of a remote tablet </td></tr>
+<tr id="row_0_0_29_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduTabletServer.html" target="_self">KuduTabletServer</a></td><td class="desc">In-memory representation of a remote tablet server </td></tr>
+<tr id="row_0_0_30_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduUpdate.html" target="_self">KuduUpdate</a></td><td class="desc">A single row update to be sent to the cluster </td></tr>
+<tr id="row_0_0_31_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduUpsert.html" target="_self">KuduUpsert</a></td><td class="desc">A single row upsert to be sent to the cluster </td></tr>
+<tr id="row_0_0_32_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduValue.html" target="_self">KuduValue</a></td><td class="desc">A constant cell value with a specific type </td></tr>
+<tr id="row_0_0_33_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html" target="_self">KuduWriteOperation</a></td><td class="desc">A single-row write operation to be sent to a Kudu table </td></tr>
+<tr id="row_0_0_34_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1ResourceMetrics.html" target="_self">ResourceMetrics</a></td><td class="desc">A generic catalog of simple metrics </td></tr>
+<tr id="row_0_1_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span id="arr_0_1_" class="arrow" onclick="toggleFolder('0_1_')">&#9660;</span><span class="icona"><span class="icon">N</span></span><b>internal_logging</b></td><td class="desc"></td></tr>
+<tr id="row_0_1_0_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1internal__logging_1_1CerrLog.html" target="_self">CerrLog</a></td><td class="desc">A helper for stderr log sink </td></tr>
+<tr id="row_0_1_1_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1internal__logging_1_1NullLog.html" target="_self">NullLog</a></td><td class="desc">A helper for the nil log sink </td></tr>
+<tr id="row_0_2_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1MonoDelta.html" target="_self">MonoDelta</a></td><td class="desc">A representation of a time interval </td></tr>
+<tr id="row_0_3_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1MonoTime.html" target="_self">MonoTime</a></td><td class="desc">Representation of a particular point in time </td></tr>
+<tr id="row_0_4_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span id="arr_0_4_" class="arrow" onclick="toggleFolder('0_4_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1Slice.html" target="_self">Slice</a></td><td class="desc">A wrapper around externally allocated data </td></tr>
+<tr id="row_0_4_0_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structkudu_1_1Slice_1_1Comparator.html" target="_self">Comparator</a></td><td class="desc"><a class="el" href="structkudu_1_1Slice_1_1Comparator.html" title="Comparator struct, useful for ordered collections (like STL maps). ">Comparator</a> struct, useful for ordered collections (like STL maps) </td></tr>
+<tr id="row_0_5_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structkudu_1_1SliceMap.html" target="_self">SliceMap</a></td><td class="desc">STL map whose keys are Slices </td></tr>
+<tr id="row_0_6_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1Status.html" target="_self">Status</a></td><td class="desc">A representation of an operation's outcome </td></tr>
+<tr id="row_1_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classKuduPartialRow.html" target="_self">KuduPartialRow</a></td><td class="desc">A row which may only contain values for a subset of the columns </td></tr>
+</table>
+</div><!-- directory -->
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/arrowdown.png b/releases/1.4.0/cpp-client-api/arrowdown.png
new file mode 100644
index 0000000..0b63f6d
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/arrowdown.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/arrowright.png b/releases/1.4.0/cpp-client-api/arrowright.png
new file mode 100644
index 0000000..c6ee22f
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/arrowright.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/bc_s.png b/releases/1.4.0/cpp-client-api/bc_s.png
new file mode 100644
index 0000000..224b29a
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/bc_s.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/bdwn.png b/releases/1.4.0/cpp-client-api/bdwn.png
new file mode 100644
index 0000000..940a0b9
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/bdwn.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/callbacks_8h_source.html b/releases/1.4.0/cpp-client-api/callbacks_8h_source.html
new file mode 100644
index 0000000..3677b06
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/callbacks_8h_source.html
@@ -0,0 +1,117 @@
+<!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.11"/>
+<title>Kudu C++ client API: include/kudu/client/callbacks.h Source File</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="files.html"><span>File&#160;List</span></a></li>
+      <li><a href="globals.html"><span>File&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_58b01e52e53886b8d78ab5060a2cd2bd.html">kudu</a></li><li class="navelem"><a class="el" href="dir_4eb331d85bb84eae27db9d0af49f6f99.html">client</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">callbacks.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&quot;); 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;<span class="preprocessor">#ifndef KUDU_CLIENT_CALLBACKS_H</span></div><div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#define KUDU_CLIENT_CALLBACKS_H</span></div><div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;</div><div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#ifdef KUDU_HEADERS_NO_STUBS</span></div><div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#include &quot;kudu/gutil/macros.h&quot;</span></div><div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#include &quot;kudu/gutil/port.h&quot;</span></div><div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#include &quot;kudu/client/stubs.h&quot;</span></div><div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="preprocessor">#include &quot;kudu/util/kudu_export.h&quot;</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="keyword">namespace </span><a class="code" href="namespacekudu.html">kudu</a> {</div><div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;</div><div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;<span class="keyword">class </span>Status;</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="keyword">namespace </span>client {</div><div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;</div><div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;</div><div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;<span class="keyword">enum</span> KuduLogSeverity {</div><div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;  SEVERITY_INFO,</div><div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;  SEVERITY_WARNING,</div><div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;  SEVERITY_ERROR,</div><div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;  SEVERITY_FATAL</div><div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;};</div><div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;</div><div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduLoggingCallback.html">   44</a></span>&#160;<span class="keyword">class </span>KUDU_EXPORT <a class="code" href="classkudu_1_1client_1_1KuduLoggingCallback.html">KuduLoggingCallback</a> {</div><div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduLoggingCallback.html">KuduLoggingCallback</a>() {</div><div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;  }</div><div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;</div><div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;  <span class="keyword">virtual</span> ~<a class="code" href="classkudu_1_1client_1_1KuduLoggingCallback.html">KuduLoggingCallback</a>() {</div><div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;  }</div><div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;</div><div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;  <span class="keyword">virtual</span> <span class="keywordtype">void</span> Run(KuduLogSeverity severity,</div><div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;                   <span class="keyword">const</span> <span class="keywordtype">char</span>* filename,</div><div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;                   <span class="keywordtype">int</span> line_number,</div><div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;                   <span class="keyword">const</span> struct ::tm* time,</div><div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;                   <span class="keyword">const</span> <span class="keywordtype">char</span>* message,</div><div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;                   <span class="keywordtype">size_t</span> message_len) = 0;</div><div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;</div><div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;  DISALLOW_COPY_AND_ASSIGN(<a class="code" href="classkudu_1_1client_1_1KuduLoggingCallback.html">KuduLoggingCallback</a>);</div><div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;};</div><div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;</div><div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">typename</span> T&gt;</div><div class="line"><a name="l00081"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduLoggingMemberCallback.html">   81</a></span>&#160;<span class="keyword">class </span>KUDU_EXPORT <a class="code" href="classkudu_1_1client_1_1KuduLoggingMemberCallback.html">KuduLoggingMemberCallback</a> : <span class="keyword">public</span> <a class="code" href="classkudu_1_1client_1_1KuduLoggingCallback.html">KuduLoggingCallback</a> {</div><div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00084"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduLoggingMemberCallback.html#a379dffd7e67238b37b9a4e4ad8e2a3ec">   84</a></span>&#160;  <span class="keyword">typedef</span> void (T::*MemberType)(</div><div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;      KuduLogSeverity severity,</div><div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;      <span class="keyword">const</span> <span class="keywordtype">char</span>* filename,</div><div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;      <span class="keywordtype">int</span> line_number,</div><div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;      <span class="keyword">const</span> struct ::tm* time,</div><div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;      <span class="keyword">const</span> <span class="keywordtype">char</span>* message,</div><div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;      <span class="keywordtype">size_t</span> message_len);</div><div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;</div><div class="line"><a name="l00098"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduLoggingMemberCallback.html#aeda4119b1288db0d055c9800e3485fd8">   98</a></span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduLoggingMemberCallback.html#aeda4119b1288db0d055c9800e3485fd8">KuduLoggingMemberCallback</a>(T* <span class="keywordtype">object</span>, MemberType member)</div><div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;    : object_(object),</div><div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;      member_(member) {</div><div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;  }</div><div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;</div><div class="line"><a name="l00104"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduLoggingMemberCallback.html#a3d75e43bb4af846af66735fabe642a88">  104</a></span>&#160;  <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classkudu_1_1client_1_1KuduLoggingMemberCallback.html#a3d75e43bb4af846af66735fabe642a88">Run</a>(KuduLogSeverity severity,</div><div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;                   <span class="keyword">const</span> <span class="keywordtype">char</span>* filename,</div><div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;                   <span class="keywordtype">int</span> line_number,</div><div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;                   <span class="keyword">const</span> struct ::tm* time,</div><div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;                   <span class="keyword">const</span> <span class="keywordtype">char</span>* message,</div><div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;                   <span class="keywordtype">size_t</span> message_len) OVERRIDE {</div><div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;    (object_-&gt;*member_)(severity, filename, line_number, time,</div><div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;        message, message_len);</div><div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;  }</div><div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;</div><div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;  T* object_;</div><div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;  MemberType member_;</div><div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;};</div><div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;</div><div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">typename</span> T&gt;</div><div class="line"><a name="l00122"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduLoggingFunctionCallback.html">  122</a></span>&#160;<span class="keyword">class </span>KUDU_EXPORT <a class="code" href="classkudu_1_1client_1_1KuduLoggingFunctionCallback.html">KuduLoggingFunctionCallback</a> : <span class="keyword">public</span> <a class="code" href="classkudu_1_1client_1_1KuduLoggingCallback.html">KuduLoggingCallback</a> {</div><div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00125"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduLoggingFunctionCallback.html#a609838f5c92d8f4612d195c161cf4003">  125</a></span>&#160;  <span class="keyword">typedef</span> void (*FunctionType)(T arg,</div><div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;      KuduLogSeverity severity,</div><div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;      <span class="keyword">const</span> <span class="keywordtype">char</span>* filename,</div><div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;      <span class="keywordtype">int</span> line_number,</div><div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;      <span class="keyword">const</span> struct ::tm* time,</div><div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;      <span class="keyword">const</span> <span class="keywordtype">char</span>* message,</div><div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;      <span class="keywordtype">size_t</span> message_len);</div><div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;</div><div class="line"><a name="l00139"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduLoggingFunctionCallback.html#a4263c504b21e0e5827f47a902e908a2c">  139</a></span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduLoggingFunctionCallback.html#a4263c504b21e0e5827f47a902e908a2c">KuduLoggingFunctionCallback</a>(FunctionType <span class="keyword">function</span>, T arg)</div><div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;    : function_(function),</div><div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;      arg_(arg) {</div><div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;  }</div><div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;</div><div class="line"><a name="l00145"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduLoggingFunctionCallback.html#ab5119cbc60675f3ca77e08c1e87ec215">  145</a></span>&#160;  <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classkudu_1_1client_1_1KuduLoggingFunctionCallback.html#ab5119cbc60675f3ca77e08c1e87ec215">Run</a>(KuduLogSeverity severity,</div><div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;                   <span class="keyword">const</span> <span class="keywordtype">char</span>* filename,</div><div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;                   <span class="keywordtype">int</span> line_number,</div><div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;                   <span class="keyword">const</span> struct ::tm* time,</div><div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;                   <span class="keyword">const</span> <span class="keywordtype">char</span>* message,</div><div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;                   <span class="keywordtype">size_t</span> message_len) OVERRIDE {</div><div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;    function_(arg_, severity, filename, line_number, time,</div><div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;              message, message_len);</div><div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;  }</div><div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;</div><div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;  FunctionType function_;</div><div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;  T arg_;</div><div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;};</div><div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;</div><div class="line"><a name="l00161"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduStatusCallback.html">  161</a></span>&#160;<span class="keyword">class </span>KUDU_EXPORT <a class="code" href="classkudu_1_1client_1_1KuduStatusCallback.html">KuduStatusCallback</a> {</div><div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduStatusCallback.html">KuduStatusCallback</a>() {</div><div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;  }</div><div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;</div><div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;  <span class="keyword">virtual</span> ~<a class="code" href="classkudu_1_1client_1_1KuduStatusCallback.html">KuduStatusCallback</a>() {</div><div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;  }</div><div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;</div><div class="line"><a name="l00173"></a><span class="lineno">  173</span>&#160;  <span class="keyword">virtual</span> <span class="keywordtype">void</span> Run(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Status.html">Status</a>&amp; s) = 0;</div><div class="line"><a name="l00174"></a><span class="lineno">  174</span>&#160;</div><div class="line"><a name="l00175"></a><span class="lineno">  175</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00176"></a><span class="lineno">  176</span>&#160;  DISALLOW_COPY_AND_ASSIGN(<a class="code" href="classkudu_1_1client_1_1KuduStatusCallback.html">KuduStatusCallback</a>);</div><div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160;};</div><div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;</div><div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">typename</span> T&gt;</div><div class="line"><a name="l00181"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduStatusMemberCallback.html">  181</a></span>&#160;<span class="keyword">class </span>KUDU_EXPORT <a class="code" href="classkudu_1_1client_1_1KuduStatusMemberCallback.html">KuduStatusMemberCallback</a> : <span class="keyword">public</span> <a class="code" href="classkudu_1_1client_1_1KuduStatusCallback.html">KuduStatusCallback</a> {</div><div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00184"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduStatusMemberCallback.html#a1ad9e466506c3453cdd8429d5744f17a">  184</a></span>&#160;  <span class="keyword">typedef</span> void (T::*MemberType)(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Status.html">Status</a>&amp; s);</div><div class="line"><a name="l00185"></a><span class="lineno">  185</span>&#160;</div><div class="line"><a name="l00192"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduStatusMemberCallback.html#acdb02b9798adf2c80b39cfb024f199aa">  192</a></span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduStatusMemberCallback.html#acdb02b9798adf2c80b39cfb024f199aa">KuduStatusMemberCallback</a>(T* <span class="keywordtype">object</span>, MemberType member)</div><div class="line"><a name="l00193"></a><span class="lineno">  193</span>&#160;    : object_(object),</div><div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160;      member_(member) {</div><div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160;  }</div><div class="line"><a name="l00196"></a><span class="lineno">  196</span>&#160;</div><div class="line"><a name="l00198"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduStatusMemberCallback.html#a94bde1bdcb3cde6f78b11d822be19232">  198</a></span>&#160;  <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classkudu_1_1client_1_1KuduStatusMemberCallback.html#a94bde1bdcb3cde6f78b11d822be19232">Run</a>(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Status.html">Status</a>&amp; s) OVERRIDE {</div><div class="line"><a name="l00199"></a><span class="lineno">  199</span>&#160;    (object_-&gt;*member_)(s);</div><div class="line"><a name="l00200"></a><span class="lineno">  200</span>&#160;  }</div><div class="line"><a name="l00201"></a><span class="lineno">  201</span>&#160;</div><div class="line"><a name="l00202"></a><span class="lineno">  202</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00203"></a><span class="lineno">  203</span>&#160;  T* object_;</div><div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160;  MemberType member_;</div><div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160;};</div><div class="line"><a name="l00206"></a><span class="lineno">  206</span>&#160;</div><div class="line"><a name="l00209"></a><span class="lineno">  209</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">typename</span> T&gt;</div><div class="line"><a name="l00210"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduStatusFunctionCallback.html">  210</a></span>&#160;<span class="keyword">class </span>KUDU_EXPORT <a class="code" href="classkudu_1_1client_1_1KuduStatusFunctionCallback.html">KuduStatusFunctionCallback</a> : <span class="keyword">public</span> <a class="code" href="classkudu_1_1client_1_1KuduStatusCallback.html">KuduStatusCallback</a> {</div><div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00213"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduStatusFunctionCallback.html#a20c231ae32873ea7f462b8f3ea05d910">  213</a></span>&#160;  <span class="keyword">typedef</span> void (*FunctionType)(T arg, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Status.html">Status</a>&amp; s);</div><div class="line"><a name="l00214"></a><span class="lineno">  214</span>&#160;</div><div class="line"><a name="l00222"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduStatusFunctionCallback.html#aca289bbf6ad9720bd74a90550f6c9b3b">  222</a></span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduStatusFunctionCallback.html#aca289bbf6ad9720bd74a90550f6c9b3b">KuduStatusFunctionCallback</a>(FunctionType <span class="keyword">function</span>, T arg)</div><div class="line"><a name="l00223"></a><span class="lineno">  223</span>&#160;    : function_(function),</div><div class="line"><a name="l00224"></a><span class="lineno">  224</span>&#160;      arg_(arg) {</div><div class="line"><a name="l00225"></a><span class="lineno">  225</span>&#160;  }</div><div class="line"><a name="l00226"></a><span class="lineno">  226</span>&#160;</div><div class="line"><a name="l00228"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduStatusFunctionCallback.html#af4c3e7fbd4fed52bcba220f95a27f70a">  228</a></span>&#160;  <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classkudu_1_1client_1_1KuduStatusFunctionCallback.html#af4c3e7fbd4fed52bcba220f95a27f70a">Run</a>(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Status.html">Status</a>&amp; s) OVERRIDE {</div><div class="line"><a name="l00229"></a><span class="lineno">  229</span>&#160;    function_(arg_, s);</div><div class="line"><a name="l00230"></a><span class="lineno">  230</span>&#160;  }</div><div class="line"><a name="l00231"></a><span class="lineno">  231</span>&#160;</div><div class="line"><a name="l00232"></a><span class="lineno">  232</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00233"></a><span class="lineno">  233</span>&#160;  FunctionType function_;</div><div class="line"><a name="l00234"></a><span class="lineno">  234</span>&#160;  T arg_;</div><div class="line"><a name="l00235"></a><span class="lineno">  235</span>&#160;};</div><div class="line"><a name="l00236"></a><span class="lineno">  236</span>&#160;</div><div class="line"><a name="l00237"></a><span class="lineno">  237</span>&#160;} <span class="comment">// namespace client</span></div><div class="line"><a name="l00238"></a><span class="lineno">  238</span>&#160;} <span class="comment">// namespace kudu</span></div><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;</div><div class="line"><a name="l00240"></a><span class="lineno">  240</span>&#160;<span class="preprocessor">#endif</span></div><div class="ttc" id="classkudu_1_1client_1_1KuduLoggingCallback_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduLoggingCallback.html">kudu::client::KuduLoggingCallback</a></div><div class="ttdoc">The interface for all logging callbacks. </div><div class="ttdef"><b>Definition:</b> callbacks.h:44</div></div>
+<div class="ttc" id="classkudu_1_1Status_html"><div class="ttname"><a href="classkudu_1_1Status.html">kudu::Status</a></div><div class="ttdoc">A representation of an operation&amp;#39;s outcome. </div><div class="ttdef"><b>Definition:</b> status.h:130</div></div>
+<div class="ttc" id="namespacekudu_html"><div class="ttname"><a href="namespacekudu.html">kudu</a></div><div class="ttdef"><b>Definition:</b> callbacks.h:28</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduLoggingMemberCallback_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduLoggingMemberCallback.html">kudu::client::KuduLoggingMemberCallback</a></div><div class="ttdoc">The logging callback that invokes a member function of an object. </div><div class="ttdef"><b>Definition:</b> callbacks.h:81</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduStatusFunctionCallback_html_aca289bbf6ad9720bd74a90550f6c9b3b"><div class="ttname"><a href="classkudu_1_1client_1_1KuduStatusFunctionCallback.html#aca289bbf6ad9720bd74a90550f6c9b3b">kudu::client::KuduStatusFunctionCallback::KuduStatusFunctionCallback</a></div><div class="ttdeci">KuduStatusFunctionCallback(FunctionType function, T arg)</div><div class="ttdef"><b>Definition:</b> callbacks.h:222</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduLoggingMemberCallback_html_aeda4119b1288db0d055c9800e3485fd8"><div class="ttname"><a href="classkudu_1_1client_1_1KuduLoggingMemberCallback.html#aeda4119b1288db0d055c9800e3485fd8">kudu::client::KuduLoggingMemberCallback::KuduLoggingMemberCallback</a></div><div class="ttdeci">KuduLoggingMemberCallback(T *object, MemberType member)</div><div class="ttdef"><b>Definition:</b> callbacks.h:98</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduStatusCallback_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduStatusCallback.html">kudu::client::KuduStatusCallback</a></div><div class="ttdoc">The interface for all status callbacks. </div><div class="ttdef"><b>Definition:</b> callbacks.h:161</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduLoggingFunctionCallback_html_ab5119cbc60675f3ca77e08c1e87ec215"><div class="ttname"><a href="classkudu_1_1client_1_1KuduLoggingFunctionCallback.html#ab5119cbc60675f3ca77e08c1e87ec215">kudu::client::KuduLoggingFunctionCallback::Run</a></div><div class="ttdeci">virtual void Run(KuduLogSeverity severity, const char *filename, int line_number, const struct::tm *time, const char *message, size_t message_len) OVERRIDE</div><div class="ttdef"><b>Definition:</b> callbacks.h:145</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduStatusMemberCallback_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduStatusMemberCallback.html">kudu::client::KuduStatusMemberCallback</a></div><div class="ttdoc">The status callback that invokes a member function of an object. </div><div class="ttdef"><b>Definition:</b> callbacks.h:181</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduStatusMemberCallback_html_acdb02b9798adf2c80b39cfb024f199aa"><div class="ttname"><a href="classkudu_1_1client_1_1KuduStatusMemberCallback.html#acdb02b9798adf2c80b39cfb024f199aa">kudu::client::KuduStatusMemberCallback::KuduStatusMemberCallback</a></div><div class="ttdeci">KuduStatusMemberCallback(T *object, MemberType member)</div><div class="ttdef"><b>Definition:</b> callbacks.h:192</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduStatusMemberCallback_html_a94bde1bdcb3cde6f78b11d822be19232"><div class="ttname"><a href="classkudu_1_1client_1_1KuduStatusMemberCallback.html#a94bde1bdcb3cde6f78b11d822be19232">kudu::client::KuduStatusMemberCallback::Run</a></div><div class="ttdeci">virtual void Run(const Status &amp;s) OVERRIDE</div><div class="ttdef"><b>Definition:</b> callbacks.h:198</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduLoggingMemberCallback_html_a3d75e43bb4af846af66735fabe642a88"><div class="ttname"><a href="classkudu_1_1client_1_1KuduLoggingMemberCallback.html#a3d75e43bb4af846af66735fabe642a88">kudu::client::KuduLoggingMemberCallback::Run</a></div><div class="ttdeci">virtual void Run(KuduLogSeverity severity, const char *filename, int line_number, const struct::tm *time, const char *message, size_t message_len) OVERRIDE</div><div class="ttdef"><b>Definition:</b> callbacks.h:104</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduStatusFunctionCallback_html_af4c3e7fbd4fed52bcba220f95a27f70a"><div class="ttname"><a href="classkudu_1_1client_1_1KuduStatusFunctionCallback.html#af4c3e7fbd4fed52bcba220f95a27f70a">kudu::client::KuduStatusFunctionCallback::Run</a></div><div class="ttdeci">virtual void Run(const Status &amp;s) OVERRIDE</div><div class="ttdef"><b>Definition:</b> callbacks.h:228</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduLoggingFunctionCallback_html_a4263c504b21e0e5827f47a902e908a2c"><div class="ttname"><a href="classkudu_1_1client_1_1KuduLoggingFunctionCallback.html#a4263c504b21e0e5827f47a902e908a2c">kudu::client::KuduLoggingFunctionCallback::KuduLoggingFunctionCallback</a></div><div class="ttdeci">KuduLoggingFunctionCallback(FunctionType function, T arg)</div><div class="ttdef"><b>Definition:</b> callbacks.h:139</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduStatusFunctionCallback_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduStatusFunctionCallback.html">kudu::client::KuduStatusFunctionCallback</a></div><div class="ttdoc">The status callback that invokes a function by pointer with a single argument. </div><div class="ttdef"><b>Definition:</b> callbacks.h:210</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduLoggingFunctionCallback_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduLoggingFunctionCallback.html">kudu::client::KuduLoggingFunctionCallback</a></div><div class="ttdoc">The logging callback that invokes a function by pointer with a single argument. </div><div class="ttdef"><b>Definition:</b> callbacks.h:122</div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:02 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classKuduPartialRow-members.html b/releases/1.4.0/cpp-client-api/classKuduPartialRow-members.html
new file mode 100644
index 0000000..94d6fda
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classKuduPartialRow-members.html
@@ -0,0 +1,178 @@
+<!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.11"/>
+<title>Kudu C++ client API: Member 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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </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">KuduPartialRow Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classKuduPartialRow.html#a2d373a8c8682ab6ebdb27137c041be18">AllColumnsSet</a>() const </td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>client::IntKeysTestSetup</b> (defined in <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>)</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>client::KuduWriteOperation</b> (defined in <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>)</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>client::SliceKeysTestSetup</b> (defined in <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>)</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classKuduPartialRow.html#a2721dc18b29237db90a1cda779942533">EncodeRowKey</a>(std::string *encoded_key) const </td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>GetBinary</b>(const Slice &amp;col_name, Slice *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>)</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetBinary</b>(int col_idx, Slice *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>)</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>GetBool</b>(const Slice &amp;col_name, bool *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>)</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetBool</b>(int col_idx, bool *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>)</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>GetDouble</b>(const Slice &amp;col_name, double *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>)</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetDouble</b>(int col_idx, double *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>)</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>GetFloat</b>(const Slice &amp;col_name, float *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>)</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetFloat</b>(int col_idx, float *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>)</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>GetInt16</b>(const Slice &amp;col_name, int16_t *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>)</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetInt16</b>(int col_idx, int16_t *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>)</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>GetInt32</b>(const Slice &amp;col_name, int32_t *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>)</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetInt32</b>(int col_idx, int32_t *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>)</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>GetInt64</b>(const Slice &amp;col_name, int64_t *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>)</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetInt64</b>(int col_idx, int64_t *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>)</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>GetInt8</b>(const Slice &amp;col_name, int8_t *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>)</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetInt8</b>(int col_idx, int8_t *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>)</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>GetString</b>(const Slice &amp;col_name, Slice *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>)</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetString</b>(int col_idx, Slice *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>)</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>GetUnixTimeMicros</b>(const Slice &amp;col_name, int64_t *micros_since_utc_epoch) const WARN_UNUSED_RESULT (defined in <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>)</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetUnixTimeMicros</b>(int col_idx, int64_t *micros_since_utc_epoch) const WARN_UNUSED_RESULT (defined in <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>)</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classKuduPartialRow.html#a592d2ee5fb13a710fcd675cc675f2193">IsColumnSet</a>(const Slice &amp;col_name) const </td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classKuduPartialRow.html#aa53b99d14bb61a010c4857cad17bb8ff">IsColumnSet</a>(int col_idx) const </td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classKuduPartialRow.html#a8e51d3b848636aabe561e3e66b9470e8">IsKeySet</a>() const </td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classKuduPartialRow.html#acaff842dad3af9546b2ed936613e59ab">IsNull</a>(const Slice &amp;col_name) const </td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classKuduPartialRow.html#a0b0a0103eea4cc39fbc89df0a9403a26">IsNull</a>(int col_idx) const </td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>KeyUtilTest</b> (defined in <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>)</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classKuduPartialRow.html#a9eb1cbd1b216f6313a03c82ab67112e4">KuduPartialRow</a>(const Schema *schema)</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"><span class="mlabel">explicit</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classKuduPartialRow.html#ab4ebb399982edbb3e877e38a74c700f1">KuduPartialRow</a>(const KuduPartialRow &amp;other)</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classKuduPartialRow.html#a03cab3e1aa0bef19c14f94181934181f">operator=</a>(KuduPartialRow other)</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>PartitionSchema</b> (defined in <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>)</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>RowOperationsPBDecoder</b> (defined in <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>)</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>RowOperationsPBEncoder</b> (defined in <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>)</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classKuduPartialRow.html#a33abfa2504b7e6323cdbba22ad346023">schema</a>() const </td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>SetBinary</b>(const Slice &amp;col_name, const Slice &amp;val) WARN_UNUSED_RESULT (defined in <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>)</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>SetBinary</b>(int col_idx, const Slice &amp;val) WARN_UNUSED_RESULT (defined in <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>)</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>SetBinaryCopy</b>(const Slice &amp;col_name, const Slice &amp;val) WARN_UNUSED_RESULT (defined in <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>)</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>SetBinaryCopy</b>(int col_idx, const Slice &amp;val) WARN_UNUSED_RESULT (defined in <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>)</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>SetBinaryNoCopy</b>(const Slice &amp;col_name, const Slice &amp;val) WARN_UNUSED_RESULT (defined in <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>)</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>SetBinaryNoCopy</b>(int col_idx, const Slice &amp;val) WARN_UNUSED_RESULT (defined in <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>)</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>SetBool</b>(const Slice &amp;col_name, bool val) WARN_UNUSED_RESULT (defined in <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>)</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>SetBool</b>(int col_idx, bool val) WARN_UNUSED_RESULT (defined in <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>)</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>SetDouble</b>(const Slice &amp;col_name, double val) WARN_UNUSED_RESULT (defined in <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>)</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>SetDouble</b>(int col_idx, double val) WARN_UNUSED_RESULT (defined in <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>)</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>SetFloat</b>(const Slice &amp;col_name, float val) WARN_UNUSED_RESULT (defined in <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>)</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>SetFloat</b>(int col_idx, float val) WARN_UNUSED_RESULT (defined in <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>)</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>SetInt16</b>(const Slice &amp;col_name, int16_t val) WARN_UNUSED_RESULT (defined in <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>)</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>SetInt16</b>(int col_idx, int16_t val) WARN_UNUSED_RESULT (defined in <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>)</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>SetInt32</b>(const Slice &amp;col_name, int32_t val) WARN_UNUSED_RESULT (defined in <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>)</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>SetInt32</b>(int col_idx, int32_t val) WARN_UNUSED_RESULT (defined in <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>)</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>SetInt64</b>(const Slice &amp;col_name, int64_t val) WARN_UNUSED_RESULT (defined in <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>)</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>SetInt64</b>(int col_idx, int64_t val) WARN_UNUSED_RESULT (defined in <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>)</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>SetInt8</b>(const Slice &amp;col_name, int8_t val) WARN_UNUSED_RESULT (defined in <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>)</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>SetInt8</b>(int col_idx, int8_t val) WARN_UNUSED_RESULT (defined in <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>)</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classKuduPartialRow.html#aedbcf22d41791c5ae28e978eb9054cc5">SetNull</a>(const Slice &amp;col_name) WARN_UNUSED_RESULT</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classKuduPartialRow.html#abeaa8d438650b7796e30e9865bb83d2f">SetNull</a>(int col_idx) WARN_UNUSED_RESULT</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>SetString</b>(const Slice &amp;col_name, const Slice &amp;val) WARN_UNUSED_RESULT (defined in <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>)</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>SetString</b>(int col_idx, const Slice &amp;val) WARN_UNUSED_RESULT (defined in <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>)</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>SetStringCopy</b>(const Slice &amp;col_name, const Slice &amp;val) WARN_UNUSED_RESULT (defined in <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>)</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>SetStringCopy</b>(int col_idx, const Slice &amp;val) WARN_UNUSED_RESULT (defined in <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>)</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>SetStringNoCopy</b>(const Slice &amp;col_name, const Slice &amp;val) WARN_UNUSED_RESULT (defined in <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>)</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>SetStringNoCopy</b>(int col_idx, const Slice &amp;val) WARN_UNUSED_RESULT (defined in <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>)</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>SetUnixTimeMicros</b>(const Slice &amp;col_name, int64_t micros_since_utc_epoch) WARN_UNUSED_RESULT (defined in <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>)</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>SetUnixTimeMicros</b>(int col_idx, int64_t micros_since_utc_epoch) WARN_UNUSED_RESULT (defined in <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>)</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>tablet::NumTypeRowOps</b> (defined in <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>)</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>tablet::SliceTypeRowOps</b> (defined in <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>)</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>TestScanSpec</b> (defined in <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>)</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classKuduPartialRow.html#ae76fac9268c7baa2cbcb8ccd2b22f49a">ToEncodedRowKeyOrDie</a>() const </td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classKuduPartialRow.html#a998461fed88b566d159c2a3062353aa9">ToString</a>() const </td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classKuduPartialRow.html#adccabf294832ba33fce80a72992f6e23">Unset</a>(const Slice &amp;col_name) WARN_UNUSED_RESULT</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classKuduPartialRow.html#a8f65b552d35d23e6fc494cb1f6dcd394">Unset</a>(int col_idx) WARN_UNUSED_RESULT</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>~KuduPartialRow</b>() (defined in <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>)</td><td class="entry"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+</table></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:02 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classKuduPartialRow.html b/releases/1.4.0/cpp-client-api/classKuduPartialRow.html
new file mode 100644
index 0000000..320f6d3
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classKuduPartialRow.html
@@ -0,0 +1,853 @@
+<!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.11"/>
+<title>Kudu C++ client API: KuduPartialRow Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </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="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#friends">Friends</a> &#124;
+<a href="classKuduPartialRow-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">KuduPartialRow Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>A row which may only contain values for a subset of the columns.  
+ <a href="classKuduPartialRow.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="partial__row_8h_source.html">partial_row.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a9eb1cbd1b216f6313a03c82ab67112e4"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKuduPartialRow.html#a9eb1cbd1b216f6313a03c82ab67112e4">KuduPartialRow</a> (const Schema *<a class="el" href="classKuduPartialRow.html#a33abfa2504b7e6323cdbba22ad346023">schema</a>)</td></tr>
+<tr class="separator:a9eb1cbd1b216f6313a03c82ab67112e4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab4ebb399982edbb3e877e38a74c700f1"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKuduPartialRow.html#ab4ebb399982edbb3e877e38a74c700f1">KuduPartialRow</a> (const <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a> &amp;other)</td></tr>
+<tr class="separator:ab4ebb399982edbb3e877e38a74c700f1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a03cab3e1aa0bef19c14f94181934181f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKuduPartialRow.html#a03cab3e1aa0bef19c14f94181934181f">operator=</a> (<a class="el" href="classKuduPartialRow.html">KuduPartialRow</a> other)</td></tr>
+<tr class="separator:a03cab3e1aa0bef19c14f94181934181f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aedbcf22d41791c5ae28e978eb9054cc5"><td class="memItemLeft" align="right" valign="top">Status&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKuduPartialRow.html#aedbcf22d41791c5ae28e978eb9054cc5">SetNull</a> (const Slice &amp;col_name) WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:aedbcf22d41791c5ae28e978eb9054cc5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abeaa8d438650b7796e30e9865bb83d2f"><td class="memItemLeft" align="right" valign="top">Status&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKuduPartialRow.html#abeaa8d438650b7796e30e9865bb83d2f">SetNull</a> (int col_idx) WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:abeaa8d438650b7796e30e9865bb83d2f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adccabf294832ba33fce80a72992f6e23"><td class="memItemLeft" align="right" valign="top">Status&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKuduPartialRow.html#adccabf294832ba33fce80a72992f6e23">Unset</a> (const Slice &amp;col_name) WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:adccabf294832ba33fce80a72992f6e23"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8f65b552d35d23e6fc494cb1f6dcd394"><td class="memItemLeft" align="right" valign="top">Status&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKuduPartialRow.html#a8f65b552d35d23e6fc494cb1f6dcd394">Unset</a> (int col_idx) WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:a8f65b552d35d23e6fc494cb1f6dcd394"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a592d2ee5fb13a710fcd675cc675f2193"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKuduPartialRow.html#a592d2ee5fb13a710fcd675cc675f2193">IsColumnSet</a> (const Slice &amp;col_name) const </td></tr>
+<tr class="separator:a592d2ee5fb13a710fcd675cc675f2193"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa53b99d14bb61a010c4857cad17bb8ff"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKuduPartialRow.html#aa53b99d14bb61a010c4857cad17bb8ff">IsColumnSet</a> (int col_idx) const </td></tr>
+<tr class="separator:aa53b99d14bb61a010c4857cad17bb8ff"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acaff842dad3af9546b2ed936613e59ab"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKuduPartialRow.html#acaff842dad3af9546b2ed936613e59ab">IsNull</a> (const Slice &amp;col_name) const </td></tr>
+<tr class="separator:acaff842dad3af9546b2ed936613e59ab"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0b0a0103eea4cc39fbc89df0a9403a26"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKuduPartialRow.html#a0b0a0103eea4cc39fbc89df0a9403a26">IsNull</a> (int col_idx) const </td></tr>
+<tr class="separator:a0b0a0103eea4cc39fbc89df0a9403a26"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2721dc18b29237db90a1cda779942533"><td class="memItemLeft" align="right" valign="top">Status&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKuduPartialRow.html#a2721dc18b29237db90a1cda779942533">EncodeRowKey</a> (std::string *encoded_key) const </td></tr>
+<tr class="separator:a2721dc18b29237db90a1cda779942533"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae76fac9268c7baa2cbcb8ccd2b22f49a"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKuduPartialRow.html#ae76fac9268c7baa2cbcb8ccd2b22f49a">ToEncodedRowKeyOrDie</a> () const </td></tr>
+<tr class="separator:ae76fac9268c7baa2cbcb8ccd2b22f49a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8e51d3b848636aabe561e3e66b9470e8"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKuduPartialRow.html#a8e51d3b848636aabe561e3e66b9470e8">IsKeySet</a> () const </td></tr>
+<tr class="separator:a8e51d3b848636aabe561e3e66b9470e8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2d373a8c8682ab6ebdb27137c041be18"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKuduPartialRow.html#a2d373a8c8682ab6ebdb27137c041be18">AllColumnsSet</a> () const </td></tr>
+<tr class="separator:a2d373a8c8682ab6ebdb27137c041be18"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a998461fed88b566d159c2a3062353aa9"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKuduPartialRow.html#a998461fed88b566d159c2a3062353aa9">ToString</a> () const </td></tr>
+<tr class="separator:a998461fed88b566d159c2a3062353aa9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a33abfa2504b7e6323cdbba22ad346023"><td class="memItemLeft" align="right" valign="top">const Schema *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKuduPartialRow.html#a33abfa2504b7e6323cdbba22ad346023">schema</a> () const </td></tr>
+<tr class="separator:a33abfa2504b7e6323cdbba22ad346023"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr><td colspan="2"><div class="groupHeader">Setters for integral type columns by name.</div></td></tr>
+<tr><td colspan="2"><div class="groupText"><p>Set value for a column by name.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">col_name</td><td>Name of the target column. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">val</td><td>The value to set. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
+</div></td></tr>
+<tr class="memitem:aeca0f9adc600ac2e24918e981a47252d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aeca0f9adc600ac2e24918e981a47252d"></a>
+Status&#160;</td><td class="memItemRight" valign="bottom"><b>SetBool</b> (const Slice &amp;col_name, bool val) WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:aeca0f9adc600ac2e24918e981a47252d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a81d62690c48e6c1bbcaa0bb8f10f553f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a81d62690c48e6c1bbcaa0bb8f10f553f"></a>
+Status&#160;</td><td class="memItemRight" valign="bottom"><b>SetInt8</b> (const Slice &amp;col_name, int8_t val) WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:a81d62690c48e6c1bbcaa0bb8f10f553f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a46bebd1ee3d723d7529c5935545f3810"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a46bebd1ee3d723d7529c5935545f3810"></a>
+Status&#160;</td><td class="memItemRight" valign="bottom"><b>SetInt16</b> (const Slice &amp;col_name, int16_t val) WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:a46bebd1ee3d723d7529c5935545f3810"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0980615e522c4e7f8c8ddf80df0ec887"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0980615e522c4e7f8c8ddf80df0ec887"></a>
+Status&#160;</td><td class="memItemRight" valign="bottom"><b>SetInt32</b> (const Slice &amp;col_name, int32_t val) WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:a0980615e522c4e7f8c8ddf80df0ec887"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abaa3b48abbafa7b224dbc6c199a430d4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abaa3b48abbafa7b224dbc6c199a430d4"></a>
+Status&#160;</td><td class="memItemRight" valign="bottom"><b>SetInt64</b> (const Slice &amp;col_name, int64_t val) WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:abaa3b48abbafa7b224dbc6c199a430d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0f3cbad9ded11b6b19815b130eb7038a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0f3cbad9ded11b6b19815b130eb7038a"></a>
+Status&#160;</td><td class="memItemRight" valign="bottom"><b>SetUnixTimeMicros</b> (const Slice &amp;col_name, int64_t micros_since_utc_epoch) WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:a0f3cbad9ded11b6b19815b130eb7038a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a63f7bc57c1bc9a924466754eeac76a7b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a63f7bc57c1bc9a924466754eeac76a7b"></a>
+Status&#160;</td><td class="memItemRight" valign="bottom"><b>SetFloat</b> (const Slice &amp;col_name, float val) WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:a63f7bc57c1bc9a924466754eeac76a7b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab65a91210596b8fffce9d0052858af20"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab65a91210596b8fffce9d0052858af20"></a>
+Status&#160;</td><td class="memItemRight" valign="bottom"><b>SetDouble</b> (const Slice &amp;col_name, double val) WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:ab65a91210596b8fffce9d0052858af20"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr><td colspan="2"><div class="groupHeader">Setters for integral type columns by index.</div></td></tr>
+<tr><td colspan="2"><div class="groupText"><p>Set value for a column by index.</p>
+<p>These setters are the same as corresponding column-name-based setters, but with numeric column indexes. These are faster since they avoid hashmap lookups, so should be preferred in performance-sensitive code (e.g. bulk loaders).</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">col_idx</td><td>The index of the target column. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">val</td><td>The value to set. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
+</div></td></tr>
+<tr class="memitem:a8500986269930b88336c36bc50328768"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8500986269930b88336c36bc50328768"></a>
+Status&#160;</td><td class="memItemRight" valign="bottom"><b>SetBool</b> (int col_idx, bool val) WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:a8500986269930b88336c36bc50328768"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af6d10997e70e776eb353ad67abc78d79"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af6d10997e70e776eb353ad67abc78d79"></a>
+Status&#160;</td><td class="memItemRight" valign="bottom"><b>SetInt8</b> (int col_idx, int8_t val) WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:af6d10997e70e776eb353ad67abc78d79"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adb92cc301cbcc89ef46e9bebbe86c508"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="adb92cc301cbcc89ef46e9bebbe86c508"></a>
+Status&#160;</td><td class="memItemRight" valign="bottom"><b>SetInt16</b> (int col_idx, int16_t val) WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:adb92cc301cbcc89ef46e9bebbe86c508"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac883d7bfb3cbdb7986a18895320097ad"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac883d7bfb3cbdb7986a18895320097ad"></a>
+Status&#160;</td><td class="memItemRight" valign="bottom"><b>SetInt32</b> (int col_idx, int32_t val) WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:ac883d7bfb3cbdb7986a18895320097ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a62224148c353a9eba4e19574a61fe369"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a62224148c353a9eba4e19574a61fe369"></a>
+Status&#160;</td><td class="memItemRight" valign="bottom"><b>SetInt64</b> (int col_idx, int64_t val) WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:a62224148c353a9eba4e19574a61fe369"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a691d2ce90e503f939c07f5e874d6a536"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a691d2ce90e503f939c07f5e874d6a536"></a>
+Status&#160;</td><td class="memItemRight" valign="bottom"><b>SetUnixTimeMicros</b> (int col_idx, int64_t micros_since_utc_epoch) WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:a691d2ce90e503f939c07f5e874d6a536"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad0b76030c919b941997ffd047b12f40e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad0b76030c919b941997ffd047b12f40e"></a>
+Status&#160;</td><td class="memItemRight" valign="bottom"><b>SetFloat</b> (int col_idx, float val) WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:ad0b76030c919b941997ffd047b12f40e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7ee7f7a17437d338e58dd6a82431729d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7ee7f7a17437d338e58dd6a82431729d"></a>
+Status&#160;</td><td class="memItemRight" valign="bottom"><b>SetDouble</b> (int col_idx, double val) WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:a7ee7f7a17437d338e58dd6a82431729d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr><td colspan="2"><div class="groupHeader">Setters for binary/string columns by name (copying).</div></td></tr>
+<tr><td colspan="2"><div class="groupText"><p>Set the binary/string value for a column by name, copying the specified data immediately.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">col_name</td><td>Name of the target column. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">val</td><td>The value to set. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
+</div></td></tr>
+<tr class="memitem:ae4b6f159c53f0c61ca5d0ad1615deeb3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae4b6f159c53f0c61ca5d0ad1615deeb3"></a>
+Status&#160;</td><td class="memItemRight" valign="bottom"><b>SetBinary</b> (const Slice &amp;col_name, const Slice &amp;val) WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:ae4b6f159c53f0c61ca5d0ad1615deeb3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8d00b3a45ec8612187eba6751742beab"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8d00b3a45ec8612187eba6751742beab"></a>
+Status&#160;</td><td class="memItemRight" valign="bottom"><b>SetString</b> (const Slice &amp;col_name, const Slice &amp;val) WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:a8d00b3a45ec8612187eba6751742beab"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ace5ff767150c15d8368f258cf8b4fe78"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ace5ff767150c15d8368f258cf8b4fe78"></a>
+Status&#160;</td><td class="memItemRight" valign="bottom"><b>SetBinaryCopy</b> (const Slice &amp;col_name, const Slice &amp;val) WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:ace5ff767150c15d8368f258cf8b4fe78"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aac6ae9c9f8267cd6a52e46121b5f0199"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aac6ae9c9f8267cd6a52e46121b5f0199"></a>
+Status&#160;</td><td class="memItemRight" valign="bottom"><b>SetStringCopy</b> (const Slice &amp;col_name, const Slice &amp;val) WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:aac6ae9c9f8267cd6a52e46121b5f0199"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr><td colspan="2"><div class="groupHeader">Setters for binary/string columns by index (copying).</div></td></tr>
+<tr><td colspan="2"><div class="groupText"><p>Set the binary/string value for a column by index, copying the specified data immediately.</p>
+<p>These setters are the same as the corresponding column-name-based setters, but with numeric column indexes. These are faster since they avoid hashmap lookups, so should be preferred in performance-sensitive code (e.g. bulk loaders).</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">col_idx</td><td>The index of the target column. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">val</td><td>The value to set. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
+</div></td></tr>
+<tr class="memitem:aa58ca5345b45b8bd0f3d700d75fa661c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa58ca5345b45b8bd0f3d700d75fa661c"></a>
+Status&#160;</td><td class="memItemRight" valign="bottom"><b>SetBinary</b> (int col_idx, const Slice &amp;val) WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:aa58ca5345b45b8bd0f3d700d75fa661c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0e606cb958eab0db1b12289aca255819"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0e606cb958eab0db1b12289aca255819"></a>
+Status&#160;</td><td class="memItemRight" valign="bottom"><b>SetString</b> (int col_idx, const Slice &amp;val) WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:a0e606cb958eab0db1b12289aca255819"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9da30ad760f428b2d5f70a1fe4eba827"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9da30ad760f428b2d5f70a1fe4eba827"></a>
+Status&#160;</td><td class="memItemRight" valign="bottom"><b>SetStringCopy</b> (int col_idx, const Slice &amp;val) WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:a9da30ad760f428b2d5f70a1fe4eba827"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1b5c60e7a1b34f29615eb00d40e4ca35"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1b5c60e7a1b34f29615eb00d40e4ca35"></a>
+Status&#160;</td><td class="memItemRight" valign="bottom"><b>SetBinaryCopy</b> (int col_idx, const Slice &amp;val) WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:a1b5c60e7a1b34f29615eb00d40e4ca35"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr><td colspan="2"><div class="groupHeader">Setters for binary/string columns by name (non-copying).</div></td></tr>
+<tr><td colspan="2"><div class="groupText"><p>Set the binary/string value for a column by name, not copying the specified data.</p>
+<dl class="section note"><dt>Note</dt><dd>The specified data must remain valid until the corresponding RPC calls are completed to be able to access error buffers, if any errors happened (the errors can be fetched using the KuduSession::GetPendingErrors() method).</dd></dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">col_name</td><td>Name of the target column. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">val</td><td>The value to set. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
+</div></td></tr>
+<tr class="memitem:a75d35ae76b436eea6ac2af27e179460f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a75d35ae76b436eea6ac2af27e179460f"></a>
+Status&#160;</td><td class="memItemRight" valign="bottom"><b>SetBinaryNoCopy</b> (const Slice &amp;col_name, const Slice &amp;val) WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:a75d35ae76b436eea6ac2af27e179460f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2a698140e257b13d559bdfc220540f73"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2a698140e257b13d559bdfc220540f73"></a>
+Status&#160;</td><td class="memItemRight" valign="bottom"><b>SetStringNoCopy</b> (const Slice &amp;col_name, const Slice &amp;val) WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:a2a698140e257b13d559bdfc220540f73"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr><td colspan="2"><div class="groupHeader">Setters for binary/string columns by index (non-copying).</div></td></tr>
+<tr><td colspan="2"><div class="groupText"><p>Set the binary/string value for a column by index, not copying the specified data.</p>
+<p>These setters are the same as the corresponding column-name-based setters, but with numeric column indexes. These are faster since they avoid hashmap lookups, so should be preferred in performance-sensitive code (e.g. bulk loaders).</p>
+<dl class="section note"><dt>Note</dt><dd>The specified data must remain valid until the corresponding RPC calls are completed to be able to access error buffers, if any errors happened (the errors can be fetched using the KuduSession::GetPendingErrors() method).</dd></dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">col_idx</td><td>The index of the target column. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">val</td><td>The value to set. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
+</div></td></tr>
+<tr class="memitem:a66586a8208c3f7e90cf01fcb359a4793"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a66586a8208c3f7e90cf01fcb359a4793"></a>
+Status&#160;</td><td class="memItemRight" valign="bottom"><b>SetBinaryNoCopy</b> (int col_idx, const Slice &amp;val) WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:a66586a8208c3f7e90cf01fcb359a4793"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae6ad2c3b84a65f3d7062fe4fcf8eb5bd"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae6ad2c3b84a65f3d7062fe4fcf8eb5bd"></a>
+Status&#160;</td><td class="memItemRight" valign="bottom"><b>SetStringNoCopy</b> (int col_idx, const Slice &amp;val) WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:ae6ad2c3b84a65f3d7062fe4fcf8eb5bd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr><td colspan="2"><div class="groupHeader">Getters for integral type columns by column name.</div></td></tr>
+<tr><td colspan="2"><div class="groupText"><p>Get value of the column specified by name.</p>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. Return a bad Status if at least one of the following is <code>true:</code> <ul>
+<li>The type does not match. </li>
+<li>The value is unset. </li>
+<li>The value is <code>NULL</code>. </li>
+</ul>
+</dd></dl>
+</div></td></tr>
+<tr class="memitem:a8087c08eae65c609192c0dc0960334c2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8087c08eae65c609192c0dc0960334c2"></a>
+Status&#160;</td><td class="memItemRight" valign="bottom"><b>GetBool</b> (const Slice &amp;col_name, bool *val) const WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:a8087c08eae65c609192c0dc0960334c2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3cb0b4c5358ac4b42551f016f8a1cad4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3cb0b4c5358ac4b42551f016f8a1cad4"></a>
+Status&#160;</td><td class="memItemRight" valign="bottom"><b>GetInt8</b> (const Slice &amp;col_name, int8_t *val) const WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:a3cb0b4c5358ac4b42551f016f8a1cad4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5de48c13b1a83abefc0a1b5262f69a93"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5de48c13b1a83abefc0a1b5262f69a93"></a>
+Status&#160;</td><td class="memItemRight" valign="bottom"><b>GetInt16</b> (const Slice &amp;col_name, int16_t *val) const WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:a5de48c13b1a83abefc0a1b5262f69a93"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9956360f9208549aab03d9284ff80b46"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9956360f9208549aab03d9284ff80b46"></a>
+Status&#160;</td><td class="memItemRight" valign="bottom"><b>GetInt32</b> (const Slice &amp;col_name, int32_t *val) const WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:a9956360f9208549aab03d9284ff80b46"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae64a1264303b8081cf5ee8dbd44fc6dc"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae64a1264303b8081cf5ee8dbd44fc6dc"></a>
+Status&#160;</td><td class="memItemRight" valign="bottom"><b>GetInt64</b> (const Slice &amp;col_name, int64_t *val) const WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:ae64a1264303b8081cf5ee8dbd44fc6dc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5aa39a18379e4339ac88138dfc5223f8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5aa39a18379e4339ac88138dfc5223f8"></a>
+Status&#160;</td><td class="memItemRight" valign="bottom"><b>GetUnixTimeMicros</b> (const Slice &amp;col_name, int64_t *micros_since_utc_epoch) const WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:a5aa39a18379e4339ac88138dfc5223f8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9d5bdd73756eb630a7a8268677244afc"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9d5bdd73756eb630a7a8268677244afc"></a>
+Status&#160;</td><td class="memItemRight" valign="bottom"><b>GetFloat</b> (const Slice &amp;col_name, float *val) const WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:a9d5bdd73756eb630a7a8268677244afc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5ee25fdcff40d212e8e7cad67675c8fd"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5ee25fdcff40d212e8e7cad67675c8fd"></a>
+Status&#160;</td><td class="memItemRight" valign="bottom"><b>GetDouble</b> (const Slice &amp;col_name, double *val) const WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:a5ee25fdcff40d212e8e7cad67675c8fd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr><td colspan="2"><div class="groupHeader">Getters for column of integral type by column index.</div></td></tr>
+<tr><td colspan="2"><div class="groupText"><p>Get value of a column of integral type by column index.</p>
+<p>These getters are the same as the corresponding column-name-based getters, but with numeric column indexes. These are faster since they avoid hashmap lookups, so should be preferred in performance-sensitive code (e.g. bulk loaders).</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">col_idx</td><td>The index of the target column. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. Return a bad Status if at least one of the following is <code>true:</code> <ul>
+<li>The type does not match. </li>
+<li>The value is unset. </li>
+<li>The value is <code>NULL</code>. </li>
+</ul>
+</dd></dl>
+</div></td></tr>
+<tr class="memitem:afd863a5f5a4803a89f6a2db06ba54931"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afd863a5f5a4803a89f6a2db06ba54931"></a>
+Status&#160;</td><td class="memItemRight" valign="bottom"><b>GetBool</b> (int col_idx, bool *val) const WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:afd863a5f5a4803a89f6a2db06ba54931"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ada872affe8163dfa6420c0f191f9c650"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ada872affe8163dfa6420c0f191f9c650"></a>
+Status&#160;</td><td class="memItemRight" valign="bottom"><b>GetInt8</b> (int col_idx, int8_t *val) const WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:ada872affe8163dfa6420c0f191f9c650"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a918cb01437d863fa0a35a9a72b7bac1a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a918cb01437d863fa0a35a9a72b7bac1a"></a>
+Status&#160;</td><td class="memItemRight" valign="bottom"><b>GetInt16</b> (int col_idx, int16_t *val) const WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:a918cb01437d863fa0a35a9a72b7bac1a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a869dcfb0e7847489b31b125e79e683dc"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a869dcfb0e7847489b31b125e79e683dc"></a>
+Status&#160;</td><td class="memItemRight" valign="bottom"><b>GetInt32</b> (int col_idx, int32_t *val) const WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:a869dcfb0e7847489b31b125e79e683dc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9ded00965652dde7d94769f01df01dc9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9ded00965652dde7d94769f01df01dc9"></a>
+Status&#160;</td><td class="memItemRight" valign="bottom"><b>GetInt64</b> (int col_idx, int64_t *val) const WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:a9ded00965652dde7d94769f01df01dc9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab328b8a04618328a7b4c72217138e246"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab328b8a04618328a7b4c72217138e246"></a>
+Status&#160;</td><td class="memItemRight" valign="bottom"><b>GetUnixTimeMicros</b> (int col_idx, int64_t *micros_since_utc_epoch) const WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:ab328b8a04618328a7b4c72217138e246"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1a53cf17ad2cd746b7512ae3ecd6131f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1a53cf17ad2cd746b7512ae3ecd6131f"></a>
+Status&#160;</td><td class="memItemRight" valign="bottom"><b>GetFloat</b> (int col_idx, float *val) const WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:a1a53cf17ad2cd746b7512ae3ecd6131f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4b4fae6f8be68e97b0e7145ea55fae9f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4b4fae6f8be68e97b0e7145ea55fae9f"></a>
+Status&#160;</td><td class="memItemRight" valign="bottom"><b>GetDouble</b> (int col_idx, double *val) const WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:a4b4fae6f8be68e97b0e7145ea55fae9f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr><td colspan="2"><div class="groupHeader">Getters for string/binary column by column name.</div></td></tr>
+<tr><td colspan="2"><div class="groupText"><p>Get the string/binary value for a column by its name.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">col_name</td><td>Name of the column. </td></tr>
+    <tr><td class="paramdir">[out]</td><td class="paramname">val</td><td>Pointer to the placeholder to put the resulting value. Note that the method does not copy the value. Callers should copy the resulting Slice if necessary. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. Return a bad Status if at least one of the following is <code>true:</code> <ul>
+<li>The type does not match. </li>
+<li>The value is unset. </li>
+<li>The value is <code>NULL</code>. </li>
+</ul>
+</dd></dl>
+</div></td></tr>
+<tr class="memitem:a0c31a9a374229b15103111913c8378ee"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0c31a9a374229b15103111913c8378ee"></a>
+Status&#160;</td><td class="memItemRight" valign="bottom"><b>GetString</b> (const Slice &amp;col_name, Slice *val) const WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:a0c31a9a374229b15103111913c8378ee"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa144a55744bff07d34cd9db7788cb38e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa144a55744bff07d34cd9db7788cb38e"></a>
+Status&#160;</td><td class="memItemRight" valign="bottom"><b>GetBinary</b> (const Slice &amp;col_name, Slice *val) const WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:aa144a55744bff07d34cd9db7788cb38e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr><td colspan="2"><div class="groupHeader">Getters for string/binary column by column index.</div></td></tr>
+<tr><td colspan="2"><div class="groupText"><p>Get the string/binary value for a column by its index.</p>
+<p>These methods are faster than their name-based counterparts since they use indices to avoid hashmap lookups, so index-based getters should be preferred in performance-sensitive code.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">col_index</td><td>The index of the column. </td></tr>
+    <tr><td class="paramdir">[out]</td><td class="paramname">val</td><td>Pointer to the placeholder to put the resulting value. Note that the method does not copy the value. Callers should copy the resulting Slice if necessary. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. Return a bad Status if at least one of the following is <code>true:</code> <ul>
+<li>The type does not match. </li>
+<li>The value is unset. </li>
+<li>The value is <code>NULL</code>. </li>
+</ul>
+</dd></dl>
+</div></td></tr>
+<tr class="memitem:a6867fbfce181081810ab2522fbf764bd"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6867fbfce181081810ab2522fbf764bd"></a>
+Status&#160;</td><td class="memItemRight" valign="bottom"><b>GetString</b> (int col_idx, Slice *val) const WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:a6867fbfce181081810ab2522fbf764bd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1c6b9c1cdf9f80ddeea53117ddc5545d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1c6b9c1cdf9f80ddeea53117ddc5545d"></a>
+Status&#160;</td><td class="memItemRight" valign="bottom"><b>GetBinary</b> (int col_idx, Slice *val) const WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:a1c6b9c1cdf9f80ddeea53117ddc5545d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
+Friends</h2></td></tr>
+<tr class="memitem:a3efada50725e9e8ef4456b4b68418260"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3efada50725e9e8ef4456b4b68418260"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>client::KuduWriteOperation</b></td></tr>
+<tr class="separator:a3efada50725e9e8ef4456b4b68418260"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a35ea4a80cbbfa13186cc711cee6b415e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a35ea4a80cbbfa13186cc711cee6b415e"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>KeyUtilTest</b></td></tr>
+<tr class="separator:a35ea4a80cbbfa13186cc711cee6b415e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a563871d13e91ee68a82ce1bffca940e9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a563871d13e91ee68a82ce1bffca940e9"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>PartitionSchema</b></td></tr>
+<tr class="separator:a563871d13e91ee68a82ce1bffca940e9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a10abd48a6357bdd00368d25fffc0496f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a10abd48a6357bdd00368d25fffc0496f"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>RowOperationsPBDecoder</b></td></tr>
+<tr class="separator:a10abd48a6357bdd00368d25fffc0496f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a06f23e742142966df27182b92677b056"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a06f23e742142966df27182b92677b056"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>RowOperationsPBEncoder</b></td></tr>
+<tr class="separator:a06f23e742142966df27182b92677b056"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4784a03ff6ec372a1becfc5bbec699d5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4784a03ff6ec372a1becfc5bbec699d5"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>TestScanSpec</b></td></tr>
+<tr class="separator:a4784a03ff6ec372a1becfc5bbec699d5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3b3ee3bd7a920b4711cd7cbacc4c337b"><td class="memTemplParams" colspan="2"><a class="anchor" id="a3b3ee3bd7a920b4711cd7cbacc4c337b"></a>
+template&lt;typename KeyTypeWrapper &gt; </td></tr>
+<tr class="memitem:a3b3ee3bd7a920b4711cd7cbacc4c337b"><td class="memTemplItemLeft" align="right" valign="top">struct&#160;</td><td class="memTemplItemRight" valign="bottom"><b>client::SliceKeysTestSetup</b></td></tr>
+<tr class="separator:a3b3ee3bd7a920b4711cd7cbacc4c337b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2fdb763189252025742f253796785197"><td class="memTemplParams" colspan="2"><a class="anchor" id="a2fdb763189252025742f253796785197"></a>
+template&lt;typename KeyTypeWrapper &gt; </td></tr>
+<tr class="memitem:a2fdb763189252025742f253796785197"><td class="memTemplItemLeft" align="right" valign="top">struct&#160;</td><td class="memTemplItemRight" valign="bottom"><b>client::IntKeysTestSetup</b></td></tr>
+<tr class="separator:a2fdb763189252025742f253796785197"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7cf78e143d1fb91daae00290cbe43616"><td class="memTemplParams" colspan="2"><a class="anchor" id="a7cf78e143d1fb91daae00290cbe43616"></a>
+template&lt;typename KeyTypeWrapper &gt; </td></tr>
+<tr class="memitem:a7cf78e143d1fb91daae00290cbe43616"><td class="memTemplItemLeft" align="right" valign="top">struct&#160;</td><td class="memTemplItemRight" valign="bottom"><b>tablet::SliceTypeRowOps</b></td></tr>
+<tr class="separator:a7cf78e143d1fb91daae00290cbe43616"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab1a9e9afc588ccb6e46b09661f7f3a47"><td class="memTemplParams" colspan="2"><a class="anchor" id="ab1a9e9afc588ccb6e46b09661f7f3a47"></a>
+template&lt;typename KeyTypeWrapper &gt; </td></tr>
+<tr class="memitem:ab1a9e9afc588ccb6e46b09661f7f3a47"><td class="memTemplItemLeft" align="right" valign="top">struct&#160;</td><td class="memTemplItemRight" valign="bottom"><b>tablet::NumTypeRowOps</b></td></tr>
+<tr class="separator:ab1a9e9afc588ccb6e46b09661f7f3a47"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>A row which may only contain values for a subset of the columns. </p>
+<p>This object contains a normal contiguous row, plus a bitfield indicating which columns have been set. Additionally, this type may optionally own copies of indirect data for variable length columns. </p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a9eb1cbd1b216f6313a03c82ab67112e4"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">KuduPartialRow::KuduPartialRow </td>
+          <td>(</td>
+          <td class="paramtype">const Schema *&#160;</td>
+          <td class="paramname"><em>schema</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">explicit</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">schema</td><td>Schema to use for the row. The given Schema object must remain valid for the lifetime of this row. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="ab4ebb399982edbb3e877e38a74c700f1"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">KuduPartialRow::KuduPartialRow </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a> &amp;&#160;</td>
+          <td class="paramname"><em>other</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Create a copy of <a class="el" href="classKuduPartialRow.html" title="A row which may only contain values for a subset of the columns. ">KuduPartialRow</a> instance.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">other</td><td><a class="el" href="classKuduPartialRow.html" title="A row which may only contain values for a subset of the columns. ">KuduPartialRow</a> instance to copy from. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a2d373a8c8682ab6ebdb27137c041be18"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool KuduPartialRow::AllColumnsSet </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd><code>true</code> if all column values have been set. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a2721dc18b29237db90a1cda779942533"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">Status KuduPartialRow::EncodeRowKey </td>
+          <td>(</td>
+          <td class="paramtype">std::string *&#160;</td>
+          <td class="paramname"><em>encoded_key</em></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Encode a row key.</p>
+<p>The result is suitable for use as a tablet split key, an encoded key range, etc.</p>
+<dl class="section pre"><dt>Precondition</dt><dd>All of the key columns must be set.</dd></dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[out]</td><td class="paramname">encoded_key</td><td>The encoded key (i.e. the result of the encoding). </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. In particular, this method returns InvalidArgument if not all the key columns are set. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a592d2ee5fb13a710fcd675cc675f2193"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool KuduPartialRow::IsColumnSet </td>
+          <td>(</td>
+          <td class="paramtype">const Slice &amp;&#160;</td>
+          <td class="paramname"><em>col_name</em></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Check whether the specified column is set for the row.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">col_name</td><td>Name of the column. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd><code>true</code> iff the given column has been specified. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="aa53b99d14bb61a010c4857cad17bb8ff"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool KuduPartialRow::IsColumnSet </td>
+          <td>(</td>
+          <td class="paramtype">int&#160;</td>
+          <td class="paramname"><em>col_idx</em></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Check whether the specified column is set for the row.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">col_idx</td><td>The index of the column. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd><code>true</code> iff the given column has been specified. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a8e51d3b848636aabe561e3e66b9470e8"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool KuduPartialRow::IsKeySet </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd><code>true</code> if all key column values have been set for this mutation. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="acaff842dad3af9546b2ed936613e59ab"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool KuduPartialRow::IsNull </td>
+          <td>(</td>
+          <td class="paramtype">const Slice &amp;&#160;</td>
+          <td class="paramname"><em>col_name</em></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Check whether the specified column is <code>NULL</code> for the row.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">col_name</td><td>Name of the target column. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd><code>true</code> iff the given column's value is <code>NULL</code>. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a0b0a0103eea4cc39fbc89df0a9403a26"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool KuduPartialRow::IsNull </td>
+          <td>(</td>
+          <td class="paramtype">int&#160;</td>
+          <td class="paramname"><em>col_idx</em></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Check whether the specified column is <code>NULL</code> for the row.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">col_idx</td><td>The index of the column. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd><code>true</code> iff the given column's value is <code>NULL</code>. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a03cab3e1aa0bef19c14f94181934181f"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>&amp; KuduPartialRow::operator= </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>&#160;</td>
+          <td class="paramname"><em>other</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Overwrite this <a class="el" href="classKuduPartialRow.html" title="A row which may only contain values for a subset of the columns. ">KuduPartialRow</a> instance with data from other instance.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">other</td><td><a class="el" href="classKuduPartialRow.html" title="A row which may only contain values for a subset of the columns. ">KuduPartialRow</a> instance to assign from. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Reference to the updated object. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a33abfa2504b7e6323cdbba22ad346023"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">const Schema* KuduPartialRow::schema </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd>The schema object for the partial row. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="aedbcf22d41791c5ae28e978eb9054cc5"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">Status KuduPartialRow::SetNull </td>
+          <td>(</td>
+          <td class="paramtype">const Slice &amp;&#160;</td>
+          <td class="paramname"><em>col_name</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Set column value to <code>NULL</code>; the column is identified by its name.</p>
+<p>This will only succeed on nullable columns. Use <a class="el" href="classKuduPartialRow.html#adccabf294832ba33fce80a72992f6e23">Unset()</a> to restore column value to its default.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">col_name</td><td>Name of the target column. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="abeaa8d438650b7796e30e9865bb83d2f"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">Status KuduPartialRow::SetNull </td>
+          <td>(</td>
+          <td class="paramtype">int&#160;</td>
+          <td class="paramname"><em>col_idx</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Set column value to <code>NULL</code>; the column is identified by its index.</p>
+<p>This will only succeed on nullable columns. Use <a class="el" href="classKuduPartialRow.html#adccabf294832ba33fce80a72992f6e23">Unset()</a> to restore column value to its default.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">col_idx</td><td>The index of the target column. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ae76fac9268c7baa2cbcb8ccd2b22f49a"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::string KuduPartialRow::ToEncodedRowKeyOrDie </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Convenience method which is similar to EncodeRowKey.</p>
+<p>This is equivalent to the EncodeRowKey, but triggers a FATAL error on failure.</p>
+<dl class="section return"><dt>Returns</dt><dd>The encoded key. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a998461fed88b566d159c2a3062353aa9"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::string KuduPartialRow::ToString </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd>String representation for the partial row. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="adccabf294832ba33fce80a72992f6e23"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">Status KuduPartialRow::Unset </td>
+          <td>(</td>
+          <td class="paramtype">const Slice &amp;&#160;</td>
+          <td class="paramname"><em>col_name</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Unset the given column by name, restoring its default value.</p>
+<dl class="section note"><dt>Note</dt><dd>This is different from setting it to <code>NULL</code>.</dd></dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">col_name</td><td>Name of the target column. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a8f65b552d35d23e6fc494cb1f6dcd394"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">Status KuduPartialRow::Unset </td>
+          <td>(</td>
+          <td class="paramtype">int&#160;</td>
+          <td class="paramname"><em>col_idx</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Unset the given column by index, restoring its default value.</p>
+<dl class="section note"><dt>Note</dt><dd>This is different from setting it to <code>NULL</code>.</dd></dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">col_idx</td><td>The index of the target column. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/kudu/common/<a class="el" href="partial__row_8h_source.html">partial_row.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:02 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classes.html b/releases/1.4.0/cpp-client-api/classes.html
new file mode 100644
index 0000000..4436dbc
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classes.html
@@ -0,0 +1,122 @@
+<!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.11"/>
+<title>Kudu C++ client API: Class Index</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li class="current"><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- 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 class="header">
+  <div class="headertitle">
+<div class="title">Class Index</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="qindex"><a class="qindex" href="#letter_C">C</a>&#160;|&#160;<a class="qindex" href="#letter_K">K</a>&#160;|&#160;<a class="qindex" href="#letter_M">M</a>&#160;|&#160;<a class="qindex" href="#letter_N">N</a>&#160;|&#160;<a class="qindex" href="#letter_R">R</a>&#160;|&#160;<a class="qindex" href="#letter_S">S</a></div>
+<table class="classindex">
+<tr><td rowspan="2" valign="bottom"><a name="letter_C"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;C&#160;&#160;</div></td></tr></table>
+</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduError.html">KuduError</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduScanToken.html">KuduScanToken</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduTabletServer.html">KuduTabletServer</a> (kudu::client)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_R"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;R&#160;&#160;</div></td></tr></table>
+</td></tr>
+<tr><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduInsert.html">KuduInsert</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html">KuduScanTokenBuilder</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduUpdate.html">KuduUpdate</a> (kudu::client)&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="classkudu_1_1internal__logging_1_1CerrLog.html">CerrLog</a> (kudu::internal_logging)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduLoggingCallback.html">KuduLoggingCallback</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduUpsert.html">KuduUpsert</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1ResourceMetrics.html">ResourceMetrics</a> (kudu::client)&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="structkudu_1_1Slice_1_1Comparator.html">Slice::Comparator</a> (kudu)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduLoggingFunctionCallback.html">KuduLoggingFunctionCallback</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduSchemaBuilder.html">KuduSchemaBuilder</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduValue.html">KuduValue</a> (kudu::client)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_S"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;S&#160;&#160;</div></td></tr></table>
+</td></tr>
+<tr><td rowspan="2" valign="bottom"><a name="letter_K"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;K&#160;&#160;</div></td></tr></table>
+</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduLoggingMemberCallback.html">KuduLoggingMemberCallback</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduSession.html">KuduSession</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">KuduWriteOperation</a> (kudu::client)&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduStatusCallback.html">KuduStatusCallback</a> (kudu::client)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_M"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;M&#160;&#160;</div></td></tr></table>
+</td><td valign="top"><a class="el" href="classkudu_1_1Slice.html">Slice</a> (kudu)&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">KuduClient</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduPartitioner.html">KuduPartitioner</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduStatusFunctionCallback.html">KuduStatusFunctionCallback</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structkudu_1_1SliceMap.html">SliceMap</a> (kudu)&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduPartitionerBuilder.html">KuduPartitionerBuilder</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduStatusMemberCallback.html">KuduStatusMemberCallback</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a> (kudu)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a> (kudu)&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html">KuduColumnSchema</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">KuduPredicate</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduTable.html">KuduTable</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1MonoTime.html">MonoTime</a> (kudu)&#160;&#160;&#160;</td><td></td></tr>
+<tr><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html">KuduColumnSpec</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduReplica.html">KuduReplica</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html">KuduTableAlterer</a> (kudu::client)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_N"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;N&#160;&#160;</div></td></tr></table>
+</td><td></td></tr>
+<tr><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html">KuduColumnStorageAttributes</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">KuduScanBatch</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html">KuduTableCreator</a> (kudu::client)&#160;&#160;&#160;</td><td></td></tr>
+<tr><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduDelete.html">KuduDelete</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">KuduScanner</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1client_1_1KuduTablet.html">KuduTablet</a> (kudu::client)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classkudu_1_1internal__logging_1_1NullLog.html">NullLog</a> (kudu::internal_logging)&#160;&#160;&#160;</td><td></td></tr>
+<tr><td></td><td></td><td></td><td></td><td></td></tr>
+</table>
+<div class="qindex"><a class="qindex" href="#letter_C">C</a>&#160;|&#160;<a class="qindex" href="#letter_K">K</a>&#160;|&#160;<a class="qindex" href="#letter_M">M</a>&#160;|&#160;<a class="qindex" href="#letter_N">N</a>&#160;|&#160;<a class="qindex" href="#letter_R">R</a>&#160;|&#160;<a class="qindex" href="#letter_S">S</a></div>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1MonoDelta-members.html b/releases/1.4.0/cpp-client-api/classkudu_1_1MonoDelta-members.html
new file mode 100644
index 0000000..dce97e3
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1MonoDelta-members.html
@@ -0,0 +1,124 @@
+<!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.11"/>
+<title>Kudu C++ client API: Member 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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">kudu::MonoDelta Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classkudu_1_1MonoDelta.html">kudu::MonoDelta</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1MonoDelta.html#a3d139854a8baaa7c59b3e5d59aba95bc">Equals</a>(const MonoDelta &amp;rhs) const </td><td class="entry"><a class="el" href="classkudu_1_1MonoDelta.html">kudu::MonoDelta</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>FromMicroseconds</b>(int64_t us) (defined in <a class="el" href="classkudu_1_1MonoDelta.html">kudu::MonoDelta</a>)</td><td class="entry"><a class="el" href="classkudu_1_1MonoDelta.html">kudu::MonoDelta</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>FromMilliseconds</b>(int64_t ms) (defined in <a class="el" href="classkudu_1_1MonoDelta.html">kudu::MonoDelta</a>)</td><td class="entry"><a class="el" href="classkudu_1_1MonoDelta.html">kudu::MonoDelta</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>FromNanoseconds</b>(int64_t ns) (defined in <a class="el" href="classkudu_1_1MonoDelta.html">kudu::MonoDelta</a>)</td><td class="entry"><a class="el" href="classkudu_1_1MonoDelta.html">kudu::MonoDelta</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>FromSeconds</b>(double seconds) (defined in <a class="el" href="classkudu_1_1MonoDelta.html">kudu::MonoDelta</a>)</td><td class="entry"><a class="el" href="classkudu_1_1MonoDelta.html">kudu::MonoDelta</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1MonoDelta.html#aad3a0f1a1fc2e504ff137e55cfe068a3">Initialized</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1MonoDelta.html">kudu::MonoDelta</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1MonoDelta.html#a8f4ae8075a1ff013115a558d97e1ad4c">LessThan</a>(const MonoDelta &amp;rhs) const </td><td class="entry"><a class="el" href="classkudu_1_1MonoDelta.html">kudu::MonoDelta</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1MonoDelta.html#ad0646900f0927ad9be6302fcda8bfe5f">MonoDelta</a>()</td><td class="entry"><a class="el" href="classkudu_1_1MonoDelta.html">kudu::MonoDelta</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>MonoTime</b> (defined in <a class="el" href="classkudu_1_1MonoDelta.html">kudu::MonoDelta</a>)</td><td class="entry"><a class="el" href="classkudu_1_1MonoDelta.html">kudu::MonoDelta</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1MonoDelta.html#a218cc5fcd3ce70365210b7c5587aa6ff">MoreThan</a>(const MonoDelta &amp;rhs) const </td><td class="entry"><a class="el" href="classkudu_1_1MonoDelta.html">kudu::MonoDelta</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1MonoDelta.html#a4854924550c571f8af548270da52ac22">NanosToTimeSpec</a>(int64_t nanos, struct timespec *ts)</td><td class="entry"><a class="el" href="classkudu_1_1MonoDelta.html">kudu::MonoDelta</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>ToMicroseconds</b>() const  (defined in <a class="el" href="classkudu_1_1MonoDelta.html">kudu::MonoDelta</a>)</td><td class="entry"><a class="el" href="classkudu_1_1MonoDelta.html">kudu::MonoDelta</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>ToMilliseconds</b>() const  (defined in <a class="el" href="classkudu_1_1MonoDelta.html">kudu::MonoDelta</a>)</td><td class="entry"><a class="el" href="classkudu_1_1MonoDelta.html">kudu::MonoDelta</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>ToNanoseconds</b>() const  (defined in <a class="el" href="classkudu_1_1MonoDelta.html">kudu::MonoDelta</a>)</td><td class="entry"><a class="el" href="classkudu_1_1MonoDelta.html">kudu::MonoDelta</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>ToSeconds</b>() const  (defined in <a class="el" href="classkudu_1_1MonoDelta.html">kudu::MonoDelta</a>)</td><td class="entry"><a class="el" href="classkudu_1_1MonoDelta.html">kudu::MonoDelta</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1MonoDelta.html#a85141ae2fb1820cef6c7ab0f0305e1af">ToString</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1MonoDelta.html">kudu::MonoDelta</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1MonoDelta.html#af72679c7dcec94a486b91e92aa3cb4b4">ToTimeSpec</a>(struct timespec *ts) const </td><td class="entry"><a class="el" href="classkudu_1_1MonoDelta.html">kudu::MonoDelta</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1MonoDelta.html#af154577344dbba2afa5438872fc3ebd6">ToTimeVal</a>(struct timeval *tv) const </td><td class="entry"><a class="el" href="classkudu_1_1MonoDelta.html">kudu::MonoDelta</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:02 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1MonoDelta.html b/releases/1.4.0/cpp-client-api/classkudu_1_1MonoDelta.html
new file mode 100644
index 0000000..356c08c
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1MonoDelta.html
@@ -0,0 +1,397 @@
+<!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.11"/>
+<title>Kudu C++ client API: kudu::MonoDelta Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
+<a href="#friends">Friends</a> &#124;
+<a href="classkudu_1_1MonoDelta-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">kudu::MonoDelta Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>A representation of a time interval.  
+ <a href="classkudu_1_1MonoDelta.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="monotime_8h_source.html">monotime.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:ad0646900f0927ad9be6302fcda8bfe5f"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1MonoDelta.html#ad0646900f0927ad9be6302fcda8bfe5f">MonoDelta</a> ()</td></tr>
+<tr class="separator:ad0646900f0927ad9be6302fcda8bfe5f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aad3a0f1a1fc2e504ff137e55cfe068a3"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1MonoDelta.html#aad3a0f1a1fc2e504ff137e55cfe068a3">Initialized</a> () const </td></tr>
+<tr class="separator:aad3a0f1a1fc2e504ff137e55cfe068a3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8f4ae8075a1ff013115a558d97e1ad4c"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1MonoDelta.html#a8f4ae8075a1ff013115a558d97e1ad4c">LessThan</a> (const <a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a> &amp;rhs) const </td></tr>
+<tr class="separator:a8f4ae8075a1ff013115a558d97e1ad4c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a218cc5fcd3ce70365210b7c5587aa6ff"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1MonoDelta.html#a218cc5fcd3ce70365210b7c5587aa6ff">MoreThan</a> (const <a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a> &amp;rhs) const </td></tr>
+<tr class="separator:a218cc5fcd3ce70365210b7c5587aa6ff"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3d139854a8baaa7c59b3e5d59aba95bc"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1MonoDelta.html#a3d139854a8baaa7c59b3e5d59aba95bc">Equals</a> (const <a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a> &amp;rhs) const </td></tr>
+<tr class="separator:a3d139854a8baaa7c59b3e5d59aba95bc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a85141ae2fb1820cef6c7ab0f0305e1af"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1MonoDelta.html#a85141ae2fb1820cef6c7ab0f0305e1af">ToString</a> () const </td></tr>
+<tr class="separator:a85141ae2fb1820cef6c7ab0f0305e1af"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af154577344dbba2afa5438872fc3ebd6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1MonoDelta.html#af154577344dbba2afa5438872fc3ebd6">ToTimeVal</a> (struct timeval *tv) const </td></tr>
+<tr class="separator:af154577344dbba2afa5438872fc3ebd6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af72679c7dcec94a486b91e92aa3cb4b4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1MonoDelta.html#af72679c7dcec94a486b91e92aa3cb4b4">ToTimeSpec</a> (struct timespec *ts) const </td></tr>
+<tr class="separator:af72679c7dcec94a486b91e92aa3cb4b4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr><td colspan="2"><div class="groupHeader">Converters into seconds representation (and ubiquitous SI prefixes).</div></td></tr>
+<tr><td colspan="2"><div class="groupText"><dl class="section return"><dt>Returns</dt><dd>Representation of the time interval in appropriate SI units. </dd></dl>
+</div></td></tr>
+<tr class="memitem:a8a64198bbba49f048c88cb13046a852f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8a64198bbba49f048c88cb13046a852f"></a>
+double&#160;</td><td class="memItemRight" valign="bottom"><b>ToSeconds</b> () const </td></tr>
+<tr class="separator:a8a64198bbba49f048c88cb13046a852f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2f746f58e9993d4ed181d9bc16a1a60f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2f746f58e9993d4ed181d9bc16a1a60f"></a>
+int64_t&#160;</td><td class="memItemRight" valign="bottom"><b>ToMilliseconds</b> () const </td></tr>
+<tr class="separator:a2f746f58e9993d4ed181d9bc16a1a60f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3eda4c7ce2320bbce4c11796c378b909"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3eda4c7ce2320bbce4c11796c378b909"></a>
+int64_t&#160;</td><td class="memItemRight" valign="bottom"><b>ToMicroseconds</b> () const </td></tr>
+<tr class="separator:a3eda4c7ce2320bbce4c11796c378b909"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa5e8557e21cc93d8ca2e8409da910cc9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa5e8557e21cc93d8ca2e8409da910cc9"></a>
+int64_t&#160;</td><td class="memItemRight" valign="bottom"><b>ToNanoseconds</b> () const </td></tr>
+<tr class="separator:aa5e8557e21cc93d8ca2e8409da910cc9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
+Static Public Member Functions</h2></td></tr>
+<tr class="memitem:a4854924550c571f8af548270da52ac22"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1MonoDelta.html#a4854924550c571f8af548270da52ac22">NanosToTimeSpec</a> (int64_t nanos, struct timespec *ts)</td></tr>
+<tr class="separator:a4854924550c571f8af548270da52ac22"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr><td colspan="2"><div class="groupHeader">Converters from seconds representation (and ubiquitous SI prefixes).</div></td></tr>
+<tr><td colspan="2"><div class="groupText"><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">seconds/ms/us/ns</td><td>Time interval representation in seconds (with ubiquitous SI prefixes). </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>The resulting <a class="el" href="classkudu_1_1MonoDelta.html" title="A representation of a time interval. ">MonoDelta</a> object initialized in accordance with the specified parameter. </dd></dl>
+</div></td></tr>
+<tr class="memitem:a87624954c9ebd4a2c255910072592db1"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a87624954c9ebd4a2c255910072592db1"></a>
+static <a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a>&#160;</td><td class="memItemRight" valign="bottom"><b>FromSeconds</b> (double seconds)</td></tr>
+<tr class="separator:a87624954c9ebd4a2c255910072592db1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac5c505cedf9a8a8ce7082c347fb4363a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac5c505cedf9a8a8ce7082c347fb4363a"></a>
+static <a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a>&#160;</td><td class="memItemRight" valign="bottom"><b>FromMilliseconds</b> (int64_t ms)</td></tr>
+<tr class="separator:ac5c505cedf9a8a8ce7082c347fb4363a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad50c159b220bb8e63d8d05c21053113d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad50c159b220bb8e63d8d05c21053113d"></a>
+static <a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a>&#160;</td><td class="memItemRight" valign="bottom"><b>FromMicroseconds</b> (int64_t us)</td></tr>
+<tr class="separator:ad50c159b220bb8e63d8d05c21053113d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae9e5f2bd1058b01309f82ae960520819"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae9e5f2bd1058b01309f82ae960520819"></a>
+static <a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a>&#160;</td><td class="memItemRight" valign="bottom"><b>FromNanoseconds</b> (int64_t ns)</td></tr>
+<tr class="separator:ae9e5f2bd1058b01309f82ae960520819"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
+Friends</h2></td></tr>
+<tr class="memitem:a515a8bfe73d4c4170695024fd9ebc3c9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a515a8bfe73d4c4170695024fd9ebc3c9"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>MonoTime</b></td></tr>
+<tr class="separator:a515a8bfe73d4c4170695024fd9ebc3c9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>A representation of a time interval. </p>
+<p>The <a class="el" href="classkudu_1_1MonoDelta.html" title="A representation of a time interval. ">MonoDelta</a> class represents an elapsed duration of time &ndash; i.e. the delta between two <a class="el" href="classkudu_1_1MonoTime.html" title="Representation of a particular point in time. ">MonoTime</a> instances. </p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="ad0646900f0927ad9be6302fcda8bfe5f"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">kudu::MonoDelta::MonoDelta </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Build a <a class="el" href="classkudu_1_1MonoDelta.html" title="A representation of a time interval. ">MonoDelta</a> object.</p>
+<dl class="section note"><dt>Note</dt><dd>A <a class="el" href="classkudu_1_1MonoDelta.html" title="A representation of a time interval. ">MonoDelta</a> instance built with the this default constructor is "uninitialized" and may not be used for any operation. </dd></dl>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a3d139854a8baaa7c59b3e5d59aba95bc"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool kudu::MonoDelta::Equals </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a> &amp;&#160;</td>
+          <td class="paramname"><em>rhs</em></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Check whether this time interval has the same duration as the specified one.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">rhs</td><td>A time interval for comparison. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd><code>true</code> iff this time interval has the same duration as the the specified one. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="aad3a0f1a1fc2e504ff137e55cfe068a3"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool kudu::MonoDelta::Initialized </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd><code>true</code> iff this object is initialized. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a8f4ae8075a1ff013115a558d97e1ad4c"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool kudu::MonoDelta::LessThan </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a> &amp;&#160;</td>
+          <td class="paramname"><em>rhs</em></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Check whether this time interval is shorter than the specified one.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">rhs</td><td>A time interval for comparison. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd><code>true</code> iff this time interval is strictly shorter than the specified one. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a218cc5fcd3ce70365210b7c5587aa6ff"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool kudu::MonoDelta::MoreThan </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a> &amp;&#160;</td>
+          <td class="paramname"><em>rhs</em></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Check whether this time interval is longer than the specified one.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">rhs</td><td>A time interval for comparison. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd><code>true</code> iff this time interval is strictly longer than the specified one. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a4854924550c571f8af548270da52ac22"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">static void kudu::MonoDelta::NanosToTimeSpec </td>
+          <td>(</td>
+          <td class="paramtype">int64_t&#160;</td>
+          <td class="paramname"><em>nanos</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">struct timespec *&#160;</td>
+          <td class="paramname"><em>ts</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Convert a nanosecond value to a timespec.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">nanos</td><td>Representation of a relative point in time in nanoseconds. </td></tr>
+    <tr><td class="paramdir">[out]</td><td class="paramname">ts</td><td>Placeholder for the resulting timespec representation. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="a85141ae2fb1820cef6c7ab0f0305e1af"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::string kudu::MonoDelta::ToString </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd>String representation of this interval's duration (in seconds). </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="af72679c7dcec94a486b91e92aa3cb4b4"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void kudu::MonoDelta::ToTimeSpec </td>
+          <td>(</td>
+          <td class="paramtype">struct timespec *&#160;</td>
+          <td class="paramname"><em>ts</em></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Represent this time interval as a timespec structure, with nanosecond accuracy.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[out]</td><td class="paramname">ts</td><td>Placeholder for the result value. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="af154577344dbba2afa5438872fc3ebd6"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void kudu::MonoDelta::ToTimeVal </td>
+          <td>(</td>
+          <td class="paramtype">struct timeval *&#160;</td>
+          <td class="paramname"><em>tv</em></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Represent this time interval as a timeval structure, with microsecond accuracy.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[out]</td><td class="paramname">tv</td><td>Placeholder for the result value. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/kudu/util/<a class="el" href="monotime_8h_source.html">monotime.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:02 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1MonoTime-members.html b/releases/1.4.0/cpp-client-api/classkudu_1_1MonoTime-members.html
new file mode 100644
index 0000000..9b5b19a
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1MonoTime-members.html
@@ -0,0 +1,124 @@
+<!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.11"/>
+<title>Kudu C++ client API: Member 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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><a class="el" href="classkudu_1_1MonoTime.html">MonoTime</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">kudu::MonoTime Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classkudu_1_1MonoTime.html">kudu::MonoTime</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1MonoTime.html#a17dd3af0b55e8d19dc986101ba998de1">AddDelta</a>(const MonoDelta &amp;delta)</td><td class="entry"><a class="el" href="classkudu_1_1MonoTime.html">kudu::MonoTime</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1MonoTime.html#a20b322e3ce700c15445943ec02255623">ComesBefore</a>(const MonoTime &amp;rhs) const </td><td class="entry"><a class="el" href="classkudu_1_1MonoTime.html">kudu::MonoTime</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1MonoTime.html#aa553eb3e11cae70a9ee8839a39fc7a14">Earliest</a>(const MonoTime &amp;a, const MonoTime &amp;b)</td><td class="entry"><a class="el" href="classkudu_1_1MonoTime.html">kudu::MonoTime</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1MonoTime.html#a25f2816574ca7f424b79644e30774818">Equals</a>(const MonoTime &amp;other) const </td><td class="entry"><a class="el" href="classkudu_1_1MonoTime.html">kudu::MonoTime</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1MonoTime.html#ae1a49263c54563ea72ea10033ab8ccdb">GetDeltaSince</a>(const MonoTime &amp;rhs) const </td><td class="entry"><a class="el" href="classkudu_1_1MonoTime.html">kudu::MonoTime</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1MonoTime.html#a4ba08bf71a2496672338522952301926">Initialized</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1MonoTime.html">kudu::MonoTime</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kMicrosecondsPerSecond</b> (defined in <a class="el" href="classkudu_1_1MonoTime.html">kudu::MonoTime</a>)</td><td class="entry"><a class="el" href="classkudu_1_1MonoTime.html">kudu::MonoTime</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>kNanosecondsPerMicrosecond</b> (defined in <a class="el" href="classkudu_1_1MonoTime.html">kudu::MonoTime</a>)</td><td class="entry"><a class="el" href="classkudu_1_1MonoTime.html">kudu::MonoTime</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>kNanosecondsPerMillisecond</b> (defined in <a class="el" href="classkudu_1_1MonoTime.html">kudu::MonoTime</a>)</td><td class="entry"><a class="el" href="classkudu_1_1MonoTime.html">kudu::MonoTime</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>kNanosecondsPerSecond</b> (defined in <a class="el" href="classkudu_1_1MonoTime.html">kudu::MonoTime</a>)</td><td class="entry"><a class="el" href="classkudu_1_1MonoTime.html">kudu::MonoTime</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1MonoTime.html#a28d08092b30ccefc5e45a6e228034ef9">Max</a>()</td><td class="entry"><a class="el" href="classkudu_1_1MonoTime.html">kudu::MonoTime</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1MonoTime.html#acf4fc0351fe9245431932e481e002b99">Min</a>()</td><td class="entry"><a class="el" href="classkudu_1_1MonoTime.html">kudu::MonoTime</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>MonoDelta</b> (defined in <a class="el" href="classkudu_1_1MonoTime.html">kudu::MonoTime</a>)</td><td class="entry"><a class="el" href="classkudu_1_1MonoTime.html">kudu::MonoTime</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1MonoTime.html#a8f49b7fd2e217b5541d4ce45bda63bd4">MonoTime</a>()</td><td class="entry"><a class="el" href="classkudu_1_1MonoTime.html">kudu::MonoTime</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1MonoTime.html#a6c83d5c31e6ea5a869a655646f924783">Now</a>()</td><td class="entry"><a class="el" href="classkudu_1_1MonoTime.html">kudu::MonoTime</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>operator+=</b>(const MonoDelta &amp;delta) (defined in <a class="el" href="classkudu_1_1MonoTime.html">kudu::MonoTime</a>)</td><td class="entry"><a class="el" href="classkudu_1_1MonoTime.html">kudu::MonoTime</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1MonoTime.html#a2264cf528d0a346e60e0921022333bf8">operator-=</a>(const MonoDelta &amp;delta)</td><td class="entry"><a class="el" href="classkudu_1_1MonoTime.html">kudu::MonoTime</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1MonoTime.html#a47cd514149a06d1fbf2d10d08ef29957">ToString</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1MonoTime.html">kudu::MonoTime</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:02 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1MonoTime.html b/releases/1.4.0/cpp-client-api/classkudu_1_1MonoTime.html
new file mode 100644
index 0000000..6345c19
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1MonoTime.html
@@ -0,0 +1,471 @@
+<!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.11"/>
+<title>Kudu C++ client API: kudu::MonoTime Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><a class="el" href="classkudu_1_1MonoTime.html">MonoTime</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
+<a href="#friends">Friends</a> &#124;
+<a href="classkudu_1_1MonoTime-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">kudu::MonoTime Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>Representation of a particular point in time.  
+ <a href="classkudu_1_1MonoTime.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="monotime_8h_source.html">monotime.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a8f49b7fd2e217b5541d4ce45bda63bd4"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1MonoTime.html#a8f49b7fd2e217b5541d4ce45bda63bd4">MonoTime</a> ()</td></tr>
+<tr class="separator:a8f49b7fd2e217b5541d4ce45bda63bd4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4ba08bf71a2496672338522952301926"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1MonoTime.html#a4ba08bf71a2496672338522952301926">Initialized</a> () const </td></tr>
+<tr class="separator:a4ba08bf71a2496672338522952301926"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae1a49263c54563ea72ea10033ab8ccdb"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1MonoTime.html#ae1a49263c54563ea72ea10033ab8ccdb">GetDeltaSince</a> (const <a class="el" href="classkudu_1_1MonoTime.html">MonoTime</a> &amp;rhs) const </td></tr>
+<tr class="separator:ae1a49263c54563ea72ea10033ab8ccdb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a17dd3af0b55e8d19dc986101ba998de1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1MonoTime.html#a17dd3af0b55e8d19dc986101ba998de1">AddDelta</a> (const <a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a> &amp;delta)</td></tr>
+<tr class="separator:a17dd3af0b55e8d19dc986101ba998de1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a20b322e3ce700c15445943ec02255623"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1MonoTime.html#a20b322e3ce700c15445943ec02255623">ComesBefore</a> (const <a class="el" href="classkudu_1_1MonoTime.html">MonoTime</a> &amp;rhs) const </td></tr>
+<tr class="separator:a20b322e3ce700c15445943ec02255623"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a47cd514149a06d1fbf2d10d08ef29957"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1MonoTime.html#a47cd514149a06d1fbf2d10d08ef29957">ToString</a> () const </td></tr>
+<tr class="separator:a47cd514149a06d1fbf2d10d08ef29957"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a25f2816574ca7f424b79644e30774818"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1MonoTime.html#a25f2816574ca7f424b79644e30774818">Equals</a> (const <a class="el" href="classkudu_1_1MonoTime.html">MonoTime</a> &amp;other) const </td></tr>
+<tr class="separator:a25f2816574ca7f424b79644e30774818"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr><td colspan="2"><div class="groupHeader">Syntactic sugar: increment/decrement operators for MonoTime.</div></td></tr>
+<tr><td colspan="2"><div class="groupText"><p>Add a delta to the point in time represented by the object.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">delta</td><td>The delta to add. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Reference to the modified object. </dd></dl>
+</div></td></tr>
+<tr class="memitem:a017b8fce3205d1c9a936d96cc4a5b452"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a017b8fce3205d1c9a936d96cc4a5b452"></a>
+<a class="el" href="classkudu_1_1MonoTime.html">MonoTime</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>operator+=</b> (const <a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a> &amp;delta)</td></tr>
+<tr class="separator:a017b8fce3205d1c9a936d96cc4a5b452"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2264cf528d0a346e60e0921022333bf8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1MonoTime.html">MonoTime</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1MonoTime.html#a2264cf528d0a346e60e0921022333bf8">operator-=</a> (const <a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a> &amp;delta)</td></tr>
+<tr class="separator:a2264cf528d0a346e60e0921022333bf8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
+Static Public Member Functions</h2></td></tr>
+<tr class="memitem:a6c83d5c31e6ea5a869a655646f924783"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classkudu_1_1MonoTime.html">MonoTime</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1MonoTime.html#a6c83d5c31e6ea5a869a655646f924783">Now</a> ()</td></tr>
+<tr class="separator:a6c83d5c31e6ea5a869a655646f924783"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a28d08092b30ccefc5e45a6e228034ef9"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classkudu_1_1MonoTime.html">MonoTime</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1MonoTime.html#a28d08092b30ccefc5e45a6e228034ef9">Max</a> ()</td></tr>
+<tr class="separator:a28d08092b30ccefc5e45a6e228034ef9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acf4fc0351fe9245431932e481e002b99"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classkudu_1_1MonoTime.html">MonoTime</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1MonoTime.html#acf4fc0351fe9245431932e481e002b99">Min</a> ()</td></tr>
+<tr class="separator:acf4fc0351fe9245431932e481e002b99"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa553eb3e11cae70a9ee8839a39fc7a14"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="classkudu_1_1MonoTime.html">MonoTime</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1MonoTime.html#aa553eb3e11cae70a9ee8839a39fc7a14">Earliest</a> (const <a class="el" href="classkudu_1_1MonoTime.html">MonoTime</a> &amp;a, const <a class="el" href="classkudu_1_1MonoTime.html">MonoTime</a> &amp;b)</td></tr>
+<tr class="separator:aa553eb3e11cae70a9ee8839a39fc7a14"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-attribs"></a>
+Static Public Attributes</h2></td></tr>
+<tr><td colspan="2"><div class="groupHeader">Conversion constants for ubiquitous time units.</div></td></tr>
+<tr class="memitem:a33db0c34f47f05d63bf2fddbff5b6b18"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a33db0c34f47f05d63bf2fddbff5b6b18"></a>
+static const int64_t&#160;</td><td class="memItemRight" valign="bottom"><b>kNanosecondsPerSecond</b> = 1000000000L</td></tr>
+<tr class="separator:a33db0c34f47f05d63bf2fddbff5b6b18"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab2f5fba731df8ae202ffadf7c5c49ef7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab2f5fba731df8ae202ffadf7c5c49ef7"></a>
+static const int64_t&#160;</td><td class="memItemRight" valign="bottom"><b>kNanosecondsPerMillisecond</b> = 1000000L</td></tr>
+<tr class="separator:ab2f5fba731df8ae202ffadf7c5c49ef7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8df74187bdc60ef6192c0a4467ed9583"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8df74187bdc60ef6192c0a4467ed9583"></a>
+static const int64_t&#160;</td><td class="memItemRight" valign="bottom"><b>kNanosecondsPerMicrosecond</b> = 1000L</td></tr>
+<tr class="separator:a8df74187bdc60ef6192c0a4467ed9583"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad4b22e81d4c5bf23d2dc545f86865d9f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad4b22e81d4c5bf23d2dc545f86865d9f"></a>
+static const int64_t&#160;</td><td class="memItemRight" valign="bottom"><b>kMicrosecondsPerSecond</b> = 1000000L</td></tr>
+<tr class="separator:ad4b22e81d4c5bf23d2dc545f86865d9f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
+Friends</h2></td></tr>
+<tr class="memitem:ad1cb31436a9f10ed819de0dd68405766"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad1cb31436a9f10ed819de0dd68405766"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>MonoDelta</b></td></tr>
+<tr class="separator:ad1cb31436a9f10ed819de0dd68405766"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>Representation of a particular point in time. </p>
+<p>The <a class="el" href="classkudu_1_1MonoTime.html" title="Representation of a particular point in time. ">MonoTime</a> class represents a particular point in time, relative to some fixed but unspecified reference point.</p>
+<p>This time is monotonic, meaning that if the user changes his or her system clock, the monotime does not change. </p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a8f49b7fd2e217b5541d4ce45bda63bd4"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">kudu::MonoTime::MonoTime </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Build a <a class="el" href="classkudu_1_1MonoTime.html" title="Representation of a particular point in time. ">MonoTime</a> object. The resulting object is not initialized and not ready to use. </p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a17dd3af0b55e8d19dc986101ba998de1"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void kudu::MonoTime::AddDelta </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a> &amp;&#160;</td>
+          <td class="paramname"><em>delta</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Advance this object's time specification by the specified interval.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">delta</td><td>The time interval to add. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="a20b322e3ce700c15445943ec02255623"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool kudu::MonoTime::ComesBefore </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="classkudu_1_1MonoTime.html">MonoTime</a> &amp;&#160;</td>
+          <td class="paramname"><em>rhs</em></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Check whether the point in time specified by this object is earlier than the specified one.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">rhs</td><td>The other <a class="el" href="classkudu_1_1MonoTime.html" title="Representation of a particular point in time. ">MonoTime</a> object to compare with. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd><code>true</code> iff the point in time represented by this <a class="el" href="classkudu_1_1MonoTime.html" title="Representation of a particular point in time. ">MonoTime</a> object is earlier then the point in time represented by the parameter. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="aa553eb3e11cae70a9ee8839a39fc7a14"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">static const <a class="el" href="classkudu_1_1MonoTime.html">MonoTime</a>&amp; kudu::MonoTime::Earliest </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="classkudu_1_1MonoTime.html">MonoTime</a> &amp;&#160;</td>
+          <td class="paramname"><em>a</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const <a class="el" href="classkudu_1_1MonoTime.html">MonoTime</a> &amp;&#160;</td>
+          <td class="paramname"><em>b</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Select the earliest between the specified time points.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">a</td><td>The first <a class="el" href="classkudu_1_1MonoTime.html" title="Representation of a particular point in time. ">MonoTime</a> object to select from. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">b</td><td>The second <a class="el" href="classkudu_1_1MonoTime.html" title="Representation of a particular point in time. ">MonoTime</a> object to select from. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>The earliest (minimum) of the two monotimes. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a25f2816574ca7f424b79644e30774818"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool kudu::MonoTime::Equals </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="classkudu_1_1MonoTime.html">MonoTime</a> &amp;&#160;</td>
+          <td class="paramname"><em>other</em></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Check whether this object represents the same point in time as the other.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">other</td><td>The other <a class="el" href="classkudu_1_1MonoTime.html" title="Representation of a particular point in time. ">MonoTime</a> object to compare. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd><code>true</code> iff the point in time represented by this <a class="el" href="classkudu_1_1MonoTime.html" title="Representation of a particular point in time. ">MonoTime</a> object is the same as the one represented by the other. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ae1a49263c54563ea72ea10033ab8ccdb"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a> kudu::MonoTime::GetDeltaSince </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="classkudu_1_1MonoTime.html">MonoTime</a> &amp;&#160;</td>
+          <td class="paramname"><em>rhs</em></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Compute time interval between the point in time specified by this and the specified object.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">rhs</td><td>The object that corresponds to the left boundary of the time interval, where this object corresponds to the right boundary of the interval. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>The resulting time interval represented as a <a class="el" href="classkudu_1_1MonoDelta.html" title="A representation of a time interval. ">MonoDelta</a> object. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a4ba08bf71a2496672338522952301926"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool kudu::MonoTime::Initialized </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd><code>true</code> iff the object is initialized. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a28d08092b30ccefc5e45a6e228034ef9"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">static <a class="el" href="classkudu_1_1MonoTime.html">MonoTime</a> kudu::MonoTime::Max </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd><a class="el" href="classkudu_1_1MonoTime.html" title="Representation of a particular point in time. ">MonoTime</a> equal to farthest possible time into the future. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="acf4fc0351fe9245431932e481e002b99"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">static <a class="el" href="classkudu_1_1MonoTime.html">MonoTime</a> kudu::MonoTime::Min </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd><a class="el" href="classkudu_1_1MonoTime.html" title="Representation of a particular point in time. ">MonoTime</a> equal to farthest possible time into the past. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a6c83d5c31e6ea5a869a655646f924783"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">static <a class="el" href="classkudu_1_1MonoTime.html">MonoTime</a> kudu::MonoTime::Now </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Get current time in <a class="el" href="classkudu_1_1MonoTime.html" title="Representation of a particular point in time. ">MonoTime</a> representation.</p>
+<dl class="section return"><dt>Returns</dt><dd>Time specification for the moment of the method's invocation. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a2264cf528d0a346e60e0921022333bf8"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1MonoTime.html">MonoTime</a>&amp; kudu::MonoTime::operator-= </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a> &amp;&#160;</td>
+          <td class="paramname"><em>delta</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Substract a delta from the point in time represented by the object.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">delta</td><td>The delta to substract. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Reference to the modified object. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a47cd514149a06d1fbf2d10d08ef29957"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::string kudu::MonoTime::ToString </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd>String representation of the object (in seconds). </dd></dl>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/kudu/util/<a class="el" href="monotime_8h_source.html">monotime.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:02 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1Slice-members.html b/releases/1.4.0/cpp-client-api/classkudu_1_1Slice-members.html
new file mode 100644
index 0000000..9af50db
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1Slice-members.html
@@ -0,0 +1,126 @@
+<!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.11"/>
+<title>Kudu C++ client API: Member 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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><a class="el" href="classkudu_1_1Slice.html">Slice</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">kudu::Slice Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classkudu_1_1Slice.html">kudu::Slice</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1Slice.html#a069b48816f49b29abbd291a09dd21f4e">check_size</a>(size_t expected_size) const </td><td class="entry"><a class="el" href="classkudu_1_1Slice.html">kudu::Slice</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1Slice.html#afb914c0769f019a7c2f28b755cba5eb5">clear</a>()</td><td class="entry"><a class="el" href="classkudu_1_1Slice.html">kudu::Slice</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1Slice.html#a0ecc8d893b73a664c69396ad30b14d98">compare</a>(const Slice &amp;b) const </td><td class="entry"><a class="el" href="classkudu_1_1Slice.html">kudu::Slice</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1Slice.html#a2d90a4590b995fb55229d25effb0c5bb">data</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1Slice.html">kudu::Slice</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1Slice.html#a79e41b882b0a85259be89f5698e27372">empty</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1Slice.html">kudu::Slice</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1Slice.html#a2771156d34daa166067b8d319ad7d164">mutable_data</a>()</td><td class="entry"><a class="el" href="classkudu_1_1Slice.html">kudu::Slice</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1Slice.html#a1323493265790d022203af0d8b31fd9c">operator==</a>(const Slice &amp;x, const Slice &amp;y)</td><td class="entry"><a class="el" href="classkudu_1_1Slice.html">kudu::Slice</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1Slice.html#a5ff06bc0fd9734536a464e604ec226f2">operator[]</a>(size_t n) const </td><td class="entry"><a class="el" href="classkudu_1_1Slice.html">kudu::Slice</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1Slice.html#a4bb1c9fe13873623b5a5a118830b1806">relocate</a>(uint8_t *d)</td><td class="entry"><a class="el" href="classkudu_1_1Slice.html">kudu::Slice</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1Slice.html#a00f5d310f9ebf17c198cf3feb69c3842">remove_prefix</a>(size_t n)</td><td class="entry"><a class="el" href="classkudu_1_1Slice.html">kudu::Slice</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1Slice.html#a141b4a1fc0555d57f192e574e427c146">size</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1Slice.html">kudu::Slice</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1Slice.html#aaee66c59ee434349680679bdf0462b66">Slice</a>()</td><td class="entry"><a class="el" href="classkudu_1_1Slice.html">kudu::Slice</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1Slice.html#a904b8732b247676c52cbd9147b34c54c">Slice</a>(const uint8_t *d, size_t n)</td><td class="entry"><a class="el" href="classkudu_1_1Slice.html">kudu::Slice</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1Slice.html#a9cb396203dd2c589e7d4f10bd80461d5">Slice</a>(const char *d, size_t n)</td><td class="entry"><a class="el" href="classkudu_1_1Slice.html">kudu::Slice</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1Slice.html#a13838e07b6dcea1895a774ab1ba62bdd">Slice</a>(const std::string &amp;s)</td><td class="entry"><a class="el" href="classkudu_1_1Slice.html">kudu::Slice</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1Slice.html#ae8c6057eea15f8136e62255fd766e345">Slice</a>(const char *s)</td><td class="entry"><a class="el" href="classkudu_1_1Slice.html">kudu::Slice</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1Slice.html#a3ad7697d76b8205099d43ca552c12b8d">starts_with</a>(const Slice &amp;x) const </td><td class="entry"><a class="el" href="classkudu_1_1Slice.html">kudu::Slice</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1Slice.html#a412d632121ba52444d891c7a4f31dd42">ToDebugString</a>(size_t max_len=0) const </td><td class="entry"><a class="el" href="classkudu_1_1Slice.html">kudu::Slice</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1Slice.html#a730a4e2cdf7d40818fa95c164a18d381">ToString</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1Slice.html">kudu::Slice</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1Slice.html#a20f1c8e91ff0209e5c8f86766ef63d44">truncate</a>(size_t n)</td><td class="entry"><a class="el" href="classkudu_1_1Slice.html">kudu::Slice</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+</table></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:02 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1Slice.html b/releases/1.4.0/cpp-client-api/classkudu_1_1Slice.html
new file mode 100644
index 0000000..f73d53f
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1Slice.html
@@ -0,0 +1,727 @@
+<!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.11"/>
+<title>Kudu C++ client API: kudu::Slice Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><a class="el" href="classkudu_1_1Slice.html">Slice</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a> &#124;
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#friends">Friends</a> &#124;
+<a href="classkudu_1_1Slice-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">kudu::Slice Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>A wrapper around externally allocated data.  
+ <a href="classkudu_1_1Slice.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="slice_8h_source.html">slice.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structkudu_1_1Slice_1_1Comparator.html">Comparator</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="structkudu_1_1Slice_1_1Comparator.html" title="Comparator struct, useful for ordered collections (like STL maps). ">Comparator</a> struct, useful for ordered collections (like STL maps).  <a href="structkudu_1_1Slice_1_1Comparator.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:aaee66c59ee434349680679bdf0462b66"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aaee66c59ee434349680679bdf0462b66"></a>
+&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1Slice.html#aaee66c59ee434349680679bdf0462b66">Slice</a> ()</td></tr>
+<tr class="memdesc:aaee66c59ee434349680679bdf0462b66"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create an empty slice. <br /></td></tr>
+<tr class="separator:aaee66c59ee434349680679bdf0462b66"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a904b8732b247676c52cbd9147b34c54c"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1Slice.html#a904b8732b247676c52cbd9147b34c54c">Slice</a> (const uint8_t *d, size_t n)</td></tr>
+<tr class="separator:a904b8732b247676c52cbd9147b34c54c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9cb396203dd2c589e7d4f10bd80461d5"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1Slice.html#a9cb396203dd2c589e7d4f10bd80461d5">Slice</a> (const char *d, size_t n)</td></tr>
+<tr class="separator:a9cb396203dd2c589e7d4f10bd80461d5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a13838e07b6dcea1895a774ab1ba62bdd"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1Slice.html#a13838e07b6dcea1895a774ab1ba62bdd">Slice</a> (const std::string &amp;s)</td></tr>
+<tr class="separator:a13838e07b6dcea1895a774ab1ba62bdd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae8c6057eea15f8136e62255fd766e345"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1Slice.html#ae8c6057eea15f8136e62255fd766e345">Slice</a> (const char *s)</td></tr>
+<tr class="separator:ae8c6057eea15f8136e62255fd766e345"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2d90a4590b995fb55229d25effb0c5bb"><td class="memItemLeft" align="right" valign="top">const uint8_t *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1Slice.html#a2d90a4590b995fb55229d25effb0c5bb">data</a> () const </td></tr>
+<tr class="separator:a2d90a4590b995fb55229d25effb0c5bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2771156d34daa166067b8d319ad7d164"><td class="memItemLeft" align="right" valign="top">uint8_t *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1Slice.html#a2771156d34daa166067b8d319ad7d164">mutable_data</a> ()</td></tr>
+<tr class="separator:a2771156d34daa166067b8d319ad7d164"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a141b4a1fc0555d57f192e574e427c146"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1Slice.html#a141b4a1fc0555d57f192e574e427c146">size</a> () const </td></tr>
+<tr class="separator:a141b4a1fc0555d57f192e574e427c146"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a79e41b882b0a85259be89f5698e27372"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1Slice.html#a79e41b882b0a85259be89f5698e27372">empty</a> () const </td></tr>
+<tr class="separator:a79e41b882b0a85259be89f5698e27372"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5ff06bc0fd9734536a464e604ec226f2"><td class="memItemLeft" align="right" valign="top">const uint8_t &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1Slice.html#a5ff06bc0fd9734536a464e604ec226f2">operator[]</a> (size_t n) const </td></tr>
+<tr class="separator:a5ff06bc0fd9734536a464e604ec226f2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afb914c0769f019a7c2f28b755cba5eb5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afb914c0769f019a7c2f28b755cba5eb5"></a>
+void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1Slice.html#afb914c0769f019a7c2f28b755cba5eb5">clear</a> ()</td></tr>
+<tr class="memdesc:afb914c0769f019a7c2f28b755cba5eb5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Change this slice to refer to an empty array. <br /></td></tr>
+<tr class="separator:afb914c0769f019a7c2f28b755cba5eb5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a00f5d310f9ebf17c198cf3feb69c3842"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1Slice.html#a00f5d310f9ebf17c198cf3feb69c3842">remove_prefix</a> (size_t n)</td></tr>
+<tr class="separator:a00f5d310f9ebf17c198cf3feb69c3842"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a20f1c8e91ff0209e5c8f86766ef63d44"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1Slice.html#a20f1c8e91ff0209e5c8f86766ef63d44">truncate</a> (size_t n)</td></tr>
+<tr class="separator:a20f1c8e91ff0209e5c8f86766ef63d44"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a069b48816f49b29abbd291a09dd21f4e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1Slice.html#a069b48816f49b29abbd291a09dd21f4e">check_size</a> (size_t expected_size) const </td></tr>
+<tr class="separator:a069b48816f49b29abbd291a09dd21f4e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a730a4e2cdf7d40818fa95c164a18d381"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1Slice.html#a730a4e2cdf7d40818fa95c164a18d381">ToString</a> () const </td></tr>
+<tr class="separator:a730a4e2cdf7d40818fa95c164a18d381"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a412d632121ba52444d891c7a4f31dd42"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1Slice.html#a412d632121ba52444d891c7a4f31dd42">ToDebugString</a> (size_t max_len=0) const </td></tr>
+<tr class="separator:a412d632121ba52444d891c7a4f31dd42"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0ecc8d893b73a664c69396ad30b14d98"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1Slice.html#a0ecc8d893b73a664c69396ad30b14d98">compare</a> (const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;b) const </td></tr>
+<tr class="separator:a0ecc8d893b73a664c69396ad30b14d98"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3ad7697d76b8205099d43ca552c12b8d"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1Slice.html#a3ad7697d76b8205099d43ca552c12b8d">starts_with</a> (const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;x) const </td></tr>
+<tr class="separator:a3ad7697d76b8205099d43ca552c12b8d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4bb1c9fe13873623b5a5a118830b1806"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1Slice.html#a4bb1c9fe13873623b5a5a118830b1806">relocate</a> (uint8_t *d)</td></tr>
+<tr class="separator:a4bb1c9fe13873623b5a5a118830b1806"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
+Friends</h2></td></tr>
+<tr class="memitem:a1323493265790d022203af0d8b31fd9c"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1Slice.html#a1323493265790d022203af0d8b31fd9c">operator==</a> (const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;x, const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;y)</td></tr>
+<tr class="separator:a1323493265790d022203af0d8b31fd9c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>A wrapper around externally allocated data. </p>
+<p><a class="el" href="classkudu_1_1Slice.html" title="A wrapper around externally allocated data. ">Slice</a> is a simple structure containing a pointer into some external storage and a size. The user of a <a class="el" href="classkudu_1_1Slice.html" title="A wrapper around externally allocated data. ">Slice</a> must ensure that the slice is not used after the corresponding external storage has been deallocated.</p>
+<p>Multiple threads can invoke const methods on a <a class="el" href="classkudu_1_1Slice.html" title="A wrapper around externally allocated data. ">Slice</a> without external synchronization, but if any of the threads may call a non-const method, all threads accessing the same <a class="el" href="classkudu_1_1Slice.html" title="A wrapper around externally allocated data. ">Slice</a> must use external synchronization.</p>
+<p>Slices can be built around faststrings and StringPieces using constructors with implicit casts. Both StringPieces and faststrings depend on a great deal of gutil code. </p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a904b8732b247676c52cbd9147b34c54c"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">kudu::Slice::Slice </td>
+          <td>(</td>
+          <td class="paramtype">const uint8_t *&#160;</td>
+          <td class="paramname"><em>d</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">size_t&#160;</td>
+          <td class="paramname"><em>n</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Create a slice that refers to a <code>uint8_t</code> byte array.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">d</td><td>The input array. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">n</td><td>Number of bytes in the array. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="a9cb396203dd2c589e7d4f10bd80461d5"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">kudu::Slice::Slice </td>
+          <td>(</td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>d</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">size_t&#160;</td>
+          <td class="paramname"><em>n</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Create a slice that refers to a <code>char</code> byte array.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">d</td><td>The input array. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">n</td><td>Number of bytes in the array. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="a13838e07b6dcea1895a774ab1ba62bdd"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">kudu::Slice::Slice </td>
+          <td>(</td>
+          <td class="paramtype">const std::string &amp;&#160;</td>
+          <td class="paramname"><em>s</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Create a slice that refers to the contents of the given string.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">s</td><td>The input string. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="ae8c6057eea15f8136e62255fd766e345"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">kudu::Slice::Slice </td>
+          <td>(</td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>s</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Create a slice that refers to a C-string s[0,strlen(s)-1].</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">s</td><td>The input C-string. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a069b48816f49b29abbd291a09dd21f4e"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::Slice::check_size </td>
+          <td>(</td>
+          <td class="paramtype">size_t&#160;</td>
+          <td class="paramname"><em>expected_size</em></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Check that the slice has the expected size.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">expected_size</td><td></td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Status::Corruption() iff <a class="el" href="classkudu_1_1Slice.html#a141b4a1fc0555d57f192e574e427c146">size()</a> != <code>expected_size</code> </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a0ecc8d893b73a664c69396ad30b14d98"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">int kudu::Slice::compare </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;&#160;</td>
+          <td class="paramname"><em>b</em></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Do a three-way comparison of the slice's data.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">b</td><td>The other slice to compare with. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Values are <ul>
+<li>&lt; 0 iff "*this" &lt; "b" </li>
+<li>== 0 iff "*this" == "b" </li>
+<li>&gt; 0 iff "*this" &gt; "b" </li>
+</ul>
+</dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a2d90a4590b995fb55229d25effb0c5bb"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">const uint8_t* kudu::Slice::data </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd>A pointer to the beginning of the referenced data. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a79e41b882b0a85259be89f5698e27372"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool kudu::Slice::empty </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd><code>true</code> iff the length of the referenced data is zero. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a2771156d34daa166067b8d319ad7d164"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">uint8_t* kudu::Slice::mutable_data </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd>A mutable pointer to the beginning of the referenced data. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a5ff06bc0fd9734536a464e604ec226f2"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">const uint8_t&amp; kudu::Slice::operator[] </td>
+          <td>(</td>
+          <td class="paramtype">size_t&#160;</td>
+          <td class="paramname"><em>n</em></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<dl class="section pre"><dt>Precondition</dt><dd>n &lt; <a class="el" href="classkudu_1_1Slice.html#a141b4a1fc0555d57f192e574e427c146">size()</a></dd></dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">n</td><td>The index of the byte. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>the n-th byte in the referenced data. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a4bb1c9fe13873623b5a5a118830b1806"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void kudu::Slice::relocate </td>
+          <td>(</td>
+          <td class="paramtype">uint8_t *&#160;</td>
+          <td class="paramname"><em>d</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Relocate/copy the slice's data into a new location.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">d</td><td>The new location for the data. If it's the same location, then no relocation is done. It is assumed that the new location is large enough to fit the data. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="a00f5d310f9ebf17c198cf3feb69c3842"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void kudu::Slice::remove_prefix </td>
+          <td>(</td>
+          <td class="paramtype">size_t&#160;</td>
+          <td class="paramname"><em>n</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Drop the first "n" bytes from this slice.</p>
+<dl class="section pre"><dt>Precondition</dt><dd>n &lt;= <a class="el" href="classkudu_1_1Slice.html#a141b4a1fc0555d57f192e574e427c146">size()</a></dd></dl>
+<dl class="section note"><dt>Note</dt><dd>Only the base and bounds of the slice are changed; the data is not modified.</dd></dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">n</td><td>Number of bytes that should be dropped from the beginning. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="a141b4a1fc0555d57f192e574e427c146"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">size_t kudu::Slice::size </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd>The length (in bytes) of the referenced data. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a3ad7697d76b8205099d43ca552c12b8d"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool kudu::Slice::starts_with </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;&#160;</td>
+          <td class="paramname"><em>x</em></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Check whether the slice starts with the given prefix. </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">x</td><td>The slice in question. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd><code>true</code> iff "x" is a prefix of "*this" </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a412d632121ba52444d891c7a4f31dd42"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::string kudu::Slice::ToDebugString </td>
+          <td>(</td>
+          <td class="paramtype">size_t&#160;</td>
+          <td class="paramname"><em>max_len</em> = <code>0</code></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Get printable representation of the data in the slice.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">max_len</td><td>The maximum number of bytes to output in the printable format; <code>0</code> means no limit. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>A string with printable representation of the data. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a730a4e2cdf7d40818fa95c164a18d381"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::string kudu::Slice::ToString </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd>A string that contains a copy of the referenced data. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a20f1c8e91ff0209e5c8f86766ef63d44"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void kudu::Slice::truncate </td>
+          <td>(</td>
+          <td class="paramtype">size_t&#160;</td>
+          <td class="paramname"><em>n</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Truncate the slice to the given number of bytes.</p>
+<dl class="section pre"><dt>Precondition</dt><dd>n &lt;= <a class="el" href="classkudu_1_1Slice.html#a141b4a1fc0555d57f192e574e427c146">size()</a></dd></dl>
+<dl class="section note"><dt>Note</dt><dd>Only the base and bounds of the slice are changed; the data is not modified.</dd></dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">n</td><td>The new size of the slice. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<h2 class="groupheader">Friends And Related Function Documentation</h2>
+<a class="anchor" id="a1323493265790d022203af0d8b31fd9c"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool operator== </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;&#160;</td>
+          <td class="paramname"><em>x</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;&#160;</td>
+          <td class="paramname"><em>y</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">friend</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Check whether two slices are identical.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">x</td><td>One slice. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">y</td><td>Another slice. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd><code>true</code> iff two slices contain byte-for-byte identical data. </dd></dl>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/kudu/util/<a class="el" href="slice_8h_source.html">slice.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:02 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1Status-members.html b/releases/1.4.0/cpp-client-api/classkudu_1_1Status-members.html
new file mode 100644
index 0000000..6205a58
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1Status-members.html
@@ -0,0 +1,156 @@
+<!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.11"/>
+<title>Kudu C++ client API: Member 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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><a class="el" href="classkudu_1_1Status.html">Status</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">kudu::Status Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classkudu_1_1Status.html">kudu::Status</a>, including all inherited members.</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Aborted</b>(const Slice &amp;msg, const Slice &amp;msg2=Slice(), int16_t posix_code=-1) (defined in <a class="el" href="classkudu_1_1Status.html">kudu::Status</a>)</td><td class="entry"><a class="el" href="classkudu_1_1Status.html">kudu::Status</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>AlreadyPresent</b>(const Slice &amp;msg, const Slice &amp;msg2=Slice(), int16_t posix_code=-1) (defined in <a class="el" href="classkudu_1_1Status.html">kudu::Status</a>)</td><td class="entry"><a class="el" href="classkudu_1_1Status.html">kudu::Status</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1Status.html#a67d1309561f0064e1bda0fbd0d1aaabb">CloneAndAppend</a>(const Slice &amp;msg) const </td><td class="entry"><a class="el" href="classkudu_1_1Status.html">kudu::Status</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1Status.html#acb46c72bc79ef8178696b83a01014b9e">CloneAndPrepend</a>(const Slice &amp;msg) const </td><td class="entry"><a class="el" href="classkudu_1_1Status.html">kudu::Status</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1Status.html#aa5bc607c51a4e9e3c461aad27db409c3">CodeAsString</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1Status.html">kudu::Status</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>ConfigurationError</b>(const Slice &amp;msg, const Slice &amp;msg2=Slice(), int16_t posix_code=-1) (defined in <a class="el" href="classkudu_1_1Status.html">kudu::Status</a>)</td><td class="entry"><a class="el" href="classkudu_1_1Status.html">kudu::Status</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Corruption</b>(const Slice &amp;msg, const Slice &amp;msg2=Slice(), int16_t posix_code=-1) (defined in <a class="el" href="classkudu_1_1Status.html">kudu::Status</a>)</td><td class="entry"><a class="el" href="classkudu_1_1Status.html">kudu::Status</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>EndOfFile</b>(const Slice &amp;msg, const Slice &amp;msg2=Slice(), int64_t posix_code=-1) (defined in <a class="el" href="classkudu_1_1Status.html">kudu::Status</a>)</td><td class="entry"><a class="el" href="classkudu_1_1Status.html">kudu::Status</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>IllegalState</b>(const Slice &amp;msg, const Slice &amp;msg2=Slice(), int16_t posix_code=-1) (defined in <a class="el" href="classkudu_1_1Status.html">kudu::Status</a>)</td><td class="entry"><a class="el" href="classkudu_1_1Status.html">kudu::Status</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>Incomplete</b>(const Slice &amp;msg, const Slice &amp;msg2=Slice(), int64_t posix_code=-1) (defined in <a class="el" href="classkudu_1_1Status.html">kudu::Status</a>)</td><td class="entry"><a class="el" href="classkudu_1_1Status.html">kudu::Status</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>InvalidArgument</b>(const Slice &amp;msg, const Slice &amp;msg2=Slice(), int16_t posix_code=-1) (defined in <a class="el" href="classkudu_1_1Status.html">kudu::Status</a>)</td><td class="entry"><a class="el" href="classkudu_1_1Status.html">kudu::Status</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>IOError</b>(const Slice &amp;msg, const Slice &amp;msg2=Slice(), int16_t posix_code=-1) (defined in <a class="el" href="classkudu_1_1Status.html">kudu::Status</a>)</td><td class="entry"><a class="el" href="classkudu_1_1Status.html">kudu::Status</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1Status.html#ad4fe06882fdfb2a040e4d7d10363ca0a">IsAborted</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1Status.html">kudu::Status</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1Status.html#ab9e4ddf4c48889f365c6d359ae560e1c">IsAlreadyPresent</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1Status.html">kudu::Status</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1Status.html#a8d31d26943101023125666bbbea002e3">IsConfigurationError</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1Status.html">kudu::Status</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1Status.html#a36fa7d6fc0cd9ab1f9ad48e4a7614bc9">IsCorruption</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1Status.html">kudu::Status</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1Status.html#adead843ea27f50252f561c995c97b2e6">IsEndOfFile</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1Status.html">kudu::Status</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1Status.html#a75e5cf90718eea9654c7e58546ea1aa2">IsIllegalState</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1Status.html">kudu::Status</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1Status.html#af68a02f8069b1a8670fcc1b7acd869b9">IsIncomplete</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1Status.html">kudu::Status</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1Status.html#a56e991c78f5a4aed32b97fbeccf13c2c">IsInvalidArgument</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1Status.html">kudu::Status</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1Status.html#a991a91d7c07ffa41e6802a12f34d1acf">IsIOError</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1Status.html">kudu::Status</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1Status.html#a70c83ddb5b234e814db84dfbbb751d0c">IsNetworkError</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1Status.html">kudu::Status</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1Status.html#aef9c22bc13669be3e2289844ec916244">IsNotAuthorized</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1Status.html">kudu::Status</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1Status.html#a38e1a8eb7b23092569cb61983ebb671d">IsNotFound</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1Status.html">kudu::Status</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1Status.html#a2b1672aba7ec84133cd086186b27821b">IsNotSupported</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1Status.html">kudu::Status</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1Status.html#a96a35401df4ecd6420c86c65bc3e05f9">IsRemoteError</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1Status.html">kudu::Status</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1Status.html#abc68e44f825df4e221e9fcce419a90cf">IsRuntimeError</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1Status.html">kudu::Status</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1Status.html#a7bce15fc7b4d95b0bdffce963972cce8">IsServiceUnavailable</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1Status.html">kudu::Status</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1Status.html#a80fe0286d8e3ac011a611afbac4edb11">IsTimedOut</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1Status.html">kudu::Status</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1Status.html#a325666f396d7f9900403765cecbaecbf">IsUninitialized</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1Status.html">kudu::Status</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1Status.html#a6dd1852c4c78a3c6d8ace5155546db93">memory_footprint_excluding_this</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1Status.html">kudu::Status</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1Status.html#a7a2d4eb7636a485b5b2cc42f0b8ad627">memory_footprint_including_this</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1Status.html">kudu::Status</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1Status.html#a3547012ea31cc504141f2222eec38857">message</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1Status.html">kudu::Status</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>NetworkError</b>(const Slice &amp;msg, const Slice &amp;msg2=Slice(), int16_t posix_code=-1) (defined in <a class="el" href="classkudu_1_1Status.html">kudu::Status</a>)</td><td class="entry"><a class="el" href="classkudu_1_1Status.html">kudu::Status</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>NotAuthorized</b>(const Slice &amp;msg, const Slice &amp;msg2=Slice(), int16_t posix_code=-1) (defined in <a class="el" href="classkudu_1_1Status.html">kudu::Status</a>)</td><td class="entry"><a class="el" href="classkudu_1_1Status.html">kudu::Status</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>NotFound</b>(const Slice &amp;msg, const Slice &amp;msg2=Slice(), int16_t posix_code=-1) (defined in <a class="el" href="classkudu_1_1Status.html">kudu::Status</a>)</td><td class="entry"><a class="el" href="classkudu_1_1Status.html">kudu::Status</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>NotSupported</b>(const Slice &amp;msg, const Slice &amp;msg2=Slice(), int16_t posix_code=-1) (defined in <a class="el" href="classkudu_1_1Status.html">kudu::Status</a>)</td><td class="entry"><a class="el" href="classkudu_1_1Status.html">kudu::Status</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1Status.html#abf6454dcb72bfa92189a0595b5a858a7">ok</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1Status.html">kudu::Status</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1Status.html#adaff3248b2f66041d0a7dd59f118b7ac">OK</a>()</td><td class="entry"><a class="el" href="classkudu_1_1Status.html">kudu::Status</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1Status.html#aa387797d8a80892563d56244a2351a88">operator=</a>(const Status &amp;s)</td><td class="entry"><a class="el" href="classkudu_1_1Status.html">kudu::Status</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1Status.html#a20d5b34e3507a5dd326029a87df641dc">posix_code</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1Status.html">kudu::Status</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>RemoteError</b>(const Slice &amp;msg, const Slice &amp;msg2=Slice(), int16_t posix_code=-1) (defined in <a class="el" href="classkudu_1_1Status.html">kudu::Status</a>)</td><td class="entry"><a class="el" href="classkudu_1_1Status.html">kudu::Status</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>RuntimeError</b>(const Slice &amp;msg, const Slice &amp;msg2=Slice(), int16_t posix_code=-1) (defined in <a class="el" href="classkudu_1_1Status.html">kudu::Status</a>)</td><td class="entry"><a class="el" href="classkudu_1_1Status.html">kudu::Status</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>ServiceUnavailable</b>(const Slice &amp;msg, const Slice &amp;msg2=Slice(), int16_t posix_code=-1) (defined in <a class="el" href="classkudu_1_1Status.html">kudu::Status</a>)</td><td class="entry"><a class="el" href="classkudu_1_1Status.html">kudu::Status</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1Status.html#ad14eb530b3449967ee976aaa1c0bcde0">Status</a>()</td><td class="entry"><a class="el" href="classkudu_1_1Status.html">kudu::Status</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1Status.html#affca5639a3341212bb23ae7f5c701803">Status</a>(const Status &amp;s)</td><td class="entry"><a class="el" href="classkudu_1_1Status.html">kudu::Status</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>TimedOut</b>(const Slice &amp;msg, const Slice &amp;msg2=Slice(), int16_t posix_code=-1) (defined in <a class="el" href="classkudu_1_1Status.html">kudu::Status</a>)</td><td class="entry"><a class="el" href="classkudu_1_1Status.html">kudu::Status</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1Status.html#ab10872bd6ee01ee1b93a351fd0c1b104">ToString</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1Status.html">kudu::Status</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Uninitialized</b>(const Slice &amp;msg, const Slice &amp;msg2=Slice(), int16_t posix_code=-1) (defined in <a class="el" href="classkudu_1_1Status.html">kudu::Status</a>)</td><td class="entry"><a class="el" href="classkudu_1_1Status.html">kudu::Status</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>~Status</b>() (defined in <a class="el" href="classkudu_1_1Status.html">kudu::Status</a>)</td><td class="entry"><a class="el" href="classkudu_1_1Status.html">kudu::Status</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+</table></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1Status.html b/releases/1.4.0/cpp-client-api/classkudu_1_1Status.html
new file mode 100644
index 0000000..fd018e6
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1Status.html
@@ -0,0 +1,944 @@
+<!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.11"/>
+<title>Kudu C++ client API: kudu::Status Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><a class="el" href="classkudu_1_1Status.html">Status</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
+<a href="classkudu_1_1Status-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">kudu::Status Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>A representation of an operation's outcome.  
+ <a href="classkudu_1_1Status.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="status_8h_source.html">status.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:ad14eb530b3449967ee976aaa1c0bcde0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad14eb530b3449967ee976aaa1c0bcde0"></a>
+&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1Status.html#ad14eb530b3449967ee976aaa1c0bcde0">Status</a> ()</td></tr>
+<tr class="memdesc:ad14eb530b3449967ee976aaa1c0bcde0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create an object representing success status. <br /></td></tr>
+<tr class="separator:ad14eb530b3449967ee976aaa1c0bcde0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:affca5639a3341212bb23ae7f5c701803"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1Status.html#affca5639a3341212bb23ae7f5c701803">Status</a> (const <a class="el" href="classkudu_1_1Status.html">Status</a> &amp;s)</td></tr>
+<tr class="separator:affca5639a3341212bb23ae7f5c701803"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa387797d8a80892563d56244a2351a88"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1Status.html#aa387797d8a80892563d56244a2351a88">operator=</a> (const <a class="el" href="classkudu_1_1Status.html">Status</a> &amp;s)</td></tr>
+<tr class="separator:aa387797d8a80892563d56244a2351a88"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abf6454dcb72bfa92189a0595b5a858a7"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1Status.html#abf6454dcb72bfa92189a0595b5a858a7">ok</a> () const </td></tr>
+<tr class="separator:abf6454dcb72bfa92189a0595b5a858a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a38e1a8eb7b23092569cb61983ebb671d"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1Status.html#a38e1a8eb7b23092569cb61983ebb671d">IsNotFound</a> () const </td></tr>
+<tr class="separator:a38e1a8eb7b23092569cb61983ebb671d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a36fa7d6fc0cd9ab1f9ad48e4a7614bc9"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1Status.html#a36fa7d6fc0cd9ab1f9ad48e4a7614bc9">IsCorruption</a> () const </td></tr>
+<tr class="separator:a36fa7d6fc0cd9ab1f9ad48e4a7614bc9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2b1672aba7ec84133cd086186b27821b"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1Status.html#a2b1672aba7ec84133cd086186b27821b">IsNotSupported</a> () const </td></tr>
+<tr class="separator:a2b1672aba7ec84133cd086186b27821b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a991a91d7c07ffa41e6802a12f34d1acf"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1Status.html#a991a91d7c07ffa41e6802a12f34d1acf">IsIOError</a> () const </td></tr>
+<tr class="separator:a991a91d7c07ffa41e6802a12f34d1acf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a56e991c78f5a4aed32b97fbeccf13c2c"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1Status.html#a56e991c78f5a4aed32b97fbeccf13c2c">IsInvalidArgument</a> () const </td></tr>
+<tr class="separator:a56e991c78f5a4aed32b97fbeccf13c2c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab9e4ddf4c48889f365c6d359ae560e1c"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1Status.html#ab9e4ddf4c48889f365c6d359ae560e1c">IsAlreadyPresent</a> () const </td></tr>
+<tr class="separator:ab9e4ddf4c48889f365c6d359ae560e1c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abc68e44f825df4e221e9fcce419a90cf"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1Status.html#abc68e44f825df4e221e9fcce419a90cf">IsRuntimeError</a> () const </td></tr>
+<tr class="separator:abc68e44f825df4e221e9fcce419a90cf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a70c83ddb5b234e814db84dfbbb751d0c"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1Status.html#a70c83ddb5b234e814db84dfbbb751d0c">IsNetworkError</a> () const </td></tr>
+<tr class="separator:a70c83ddb5b234e814db84dfbbb751d0c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a75e5cf90718eea9654c7e58546ea1aa2"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1Status.html#a75e5cf90718eea9654c7e58546ea1aa2">IsIllegalState</a> () const </td></tr>
+<tr class="separator:a75e5cf90718eea9654c7e58546ea1aa2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aef9c22bc13669be3e2289844ec916244"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1Status.html#aef9c22bc13669be3e2289844ec916244">IsNotAuthorized</a> () const </td></tr>
+<tr class="separator:aef9c22bc13669be3e2289844ec916244"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad4fe06882fdfb2a040e4d7d10363ca0a"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1Status.html#ad4fe06882fdfb2a040e4d7d10363ca0a">IsAborted</a> () const </td></tr>
+<tr class="separator:ad4fe06882fdfb2a040e4d7d10363ca0a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a96a35401df4ecd6420c86c65bc3e05f9"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1Status.html#a96a35401df4ecd6420c86c65bc3e05f9">IsRemoteError</a> () const </td></tr>
+<tr class="separator:a96a35401df4ecd6420c86c65bc3e05f9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7bce15fc7b4d95b0bdffce963972cce8"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1Status.html#a7bce15fc7b4d95b0bdffce963972cce8">IsServiceUnavailable</a> () const </td></tr>
+<tr class="separator:a7bce15fc7b4d95b0bdffce963972cce8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a80fe0286d8e3ac011a611afbac4edb11"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1Status.html#a80fe0286d8e3ac011a611afbac4edb11">IsTimedOut</a> () const </td></tr>
+<tr class="separator:a80fe0286d8e3ac011a611afbac4edb11"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a325666f396d7f9900403765cecbaecbf"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1Status.html#a325666f396d7f9900403765cecbaecbf">IsUninitialized</a> () const </td></tr>
+<tr class="separator:a325666f396d7f9900403765cecbaecbf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8d31d26943101023125666bbbea002e3"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1Status.html#a8d31d26943101023125666bbbea002e3">IsConfigurationError</a> () const </td></tr>
+<tr class="separator:a8d31d26943101023125666bbbea002e3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af68a02f8069b1a8670fcc1b7acd869b9"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1Status.html#af68a02f8069b1a8670fcc1b7acd869b9">IsIncomplete</a> () const </td></tr>
+<tr class="separator:af68a02f8069b1a8670fcc1b7acd869b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adead843ea27f50252f561c995c97b2e6"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1Status.html#adead843ea27f50252f561c995c97b2e6">IsEndOfFile</a> () const </td></tr>
+<tr class="separator:adead843ea27f50252f561c995c97b2e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab10872bd6ee01ee1b93a351fd0c1b104"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1Status.html#ab10872bd6ee01ee1b93a351fd0c1b104">ToString</a> () const </td></tr>
+<tr class="separator:ab10872bd6ee01ee1b93a351fd0c1b104"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa5bc607c51a4e9e3c461aad27db409c3"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1Status.html#aa5bc607c51a4e9e3c461aad27db409c3">CodeAsString</a> () const </td></tr>
+<tr class="separator:aa5bc607c51a4e9e3c461aad27db409c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3547012ea31cc504141f2222eec38857"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Slice.html">Slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1Status.html#a3547012ea31cc504141f2222eec38857">message</a> () const </td></tr>
+<tr class="separator:a3547012ea31cc504141f2222eec38857"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a20d5b34e3507a5dd326029a87df641dc"><td class="memItemLeft" align="right" valign="top">int16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1Status.html#a20d5b34e3507a5dd326029a87df641dc">posix_code</a> () const </td></tr>
+<tr class="separator:a20d5b34e3507a5dd326029a87df641dc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acb46c72bc79ef8178696b83a01014b9e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1Status.html#acb46c72bc79ef8178696b83a01014b9e">CloneAndPrepend</a> (const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;msg) const </td></tr>
+<tr class="separator:acb46c72bc79ef8178696b83a01014b9e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a67d1309561f0064e1bda0fbd0d1aaabb"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1Status.html#a67d1309561f0064e1bda0fbd0d1aaabb">CloneAndAppend</a> (const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;msg) const </td></tr>
+<tr class="separator:a67d1309561f0064e1bda0fbd0d1aaabb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6dd1852c4c78a3c6d8ace5155546db93"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1Status.html#a6dd1852c4c78a3c6d8ace5155546db93">memory_footprint_excluding_this</a> () const </td></tr>
+<tr class="separator:a6dd1852c4c78a3c6d8ace5155546db93"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7a2d4eb7636a485b5b2cc42f0b8ad627"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1Status.html#a7a2d4eb7636a485b5b2cc42f0b8ad627">memory_footprint_including_this</a> () const </td></tr>
+<tr class="separator:a7a2d4eb7636a485b5b2cc42f0b8ad627"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
+Static Public Member Functions</h2></td></tr>
+<tr class="memitem:adaff3248b2f66041d0a7dd59f118b7ac"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1Status.html#adaff3248b2f66041d0a7dd59f118b7ac">OK</a> ()</td></tr>
+<tr class="separator:adaff3248b2f66041d0a7dd59f118b7ac"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr><td colspan="2"><div class="groupHeader">Methods to build status objects for various types of errors.</div></td></tr>
+<tr><td colspan="2"><div class="groupText"><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">msg</td><td>The informational message on the error. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">msg2</td><td>Additional information on the error (optional). </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">posix_code</td><td>POSIX error code, if applicable (optional). </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>The error status of an appropriate type. </dd></dl>
+</div></td></tr>
+<tr class="memitem:aa8230a85d171ad384e028e5782d097b3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa8230a85d171ad384e028e5782d097b3"></a>
+static <a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><b>NotFound</b> (const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;msg, const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;msg2=<a class="el" href="classkudu_1_1Slice.html">Slice</a>(), int16_t <a class="el" href="classkudu_1_1Status.html#a20d5b34e3507a5dd326029a87df641dc">posix_code</a>=-1)</td></tr>
+<tr class="separator:aa8230a85d171ad384e028e5782d097b3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5c0ed04aa8234b9c1aedeafc4dd3d2ee"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5c0ed04aa8234b9c1aedeafc4dd3d2ee"></a>
+static <a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><b>Corruption</b> (const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;msg, const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;msg2=<a class="el" href="classkudu_1_1Slice.html">Slice</a>(), int16_t <a class="el" href="classkudu_1_1Status.html#a20d5b34e3507a5dd326029a87df641dc">posix_code</a>=-1)</td></tr>
+<tr class="separator:a5c0ed04aa8234b9c1aedeafc4dd3d2ee"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7c0794b535ba74db59d6d614b385b29c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7c0794b535ba74db59d6d614b385b29c"></a>
+static <a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><b>NotSupported</b> (const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;msg, const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;msg2=<a class="el" href="classkudu_1_1Slice.html">Slice</a>(), int16_t <a class="el" href="classkudu_1_1Status.html#a20d5b34e3507a5dd326029a87df641dc">posix_code</a>=-1)</td></tr>
+<tr class="separator:a7c0794b535ba74db59d6d614b385b29c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab2b8ecb3407d7cdfc3c7650708d3fef4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab2b8ecb3407d7cdfc3c7650708d3fef4"></a>
+static <a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><b>InvalidArgument</b> (const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;msg, const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;msg2=<a class="el" href="classkudu_1_1Slice.html">Slice</a>(), int16_t <a class="el" href="classkudu_1_1Status.html#a20d5b34e3507a5dd326029a87df641dc">posix_code</a>=-1)</td></tr>
+<tr class="separator:ab2b8ecb3407d7cdfc3c7650708d3fef4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a41a842907942a84ac34f0912de723862"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a41a842907942a84ac34f0912de723862"></a>
+static <a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><b>IOError</b> (const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;msg, const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;msg2=<a class="el" href="classkudu_1_1Slice.html">Slice</a>(), int16_t <a class="el" href="classkudu_1_1Status.html#a20d5b34e3507a5dd326029a87df641dc">posix_code</a>=-1)</td></tr>
+<tr class="separator:a41a842907942a84ac34f0912de723862"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa352708c157096893132e7bfa17f2c45"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa352708c157096893132e7bfa17f2c45"></a>
+static <a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><b>AlreadyPresent</b> (const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;msg, const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;msg2=<a class="el" href="classkudu_1_1Slice.html">Slice</a>(), int16_t <a class="el" href="classkudu_1_1Status.html#a20d5b34e3507a5dd326029a87df641dc">posix_code</a>=-1)</td></tr>
+<tr class="separator:aa352708c157096893132e7bfa17f2c45"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2da56794897fa2cb3c96181f29796692"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2da56794897fa2cb3c96181f29796692"></a>
+static <a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><b>RuntimeError</b> (const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;msg, const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;msg2=<a class="el" href="classkudu_1_1Slice.html">Slice</a>(), int16_t <a class="el" href="classkudu_1_1Status.html#a20d5b34e3507a5dd326029a87df641dc">posix_code</a>=-1)</td></tr>
+<tr class="separator:a2da56794897fa2cb3c96181f29796692"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abd07058e176fba0e87c48e955a97f0af"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abd07058e176fba0e87c48e955a97f0af"></a>
+static <a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><b>NetworkError</b> (const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;msg, const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;msg2=<a class="el" href="classkudu_1_1Slice.html">Slice</a>(), int16_t <a class="el" href="classkudu_1_1Status.html#a20d5b34e3507a5dd326029a87df641dc">posix_code</a>=-1)</td></tr>
+<tr class="separator:abd07058e176fba0e87c48e955a97f0af"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a65232f9f7de16f12db13e6c55137c48b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a65232f9f7de16f12db13e6c55137c48b"></a>
+static <a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><b>IllegalState</b> (const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;msg, const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;msg2=<a class="el" href="classkudu_1_1Slice.html">Slice</a>(), int16_t <a class="el" href="classkudu_1_1Status.html#a20d5b34e3507a5dd326029a87df641dc">posix_code</a>=-1)</td></tr>
+<tr class="separator:a65232f9f7de16f12db13e6c55137c48b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac9f5fdc99726585961544969dcb3b2ba"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac9f5fdc99726585961544969dcb3b2ba"></a>
+static <a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><b>NotAuthorized</b> (const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;msg, const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;msg2=<a class="el" href="classkudu_1_1Slice.html">Slice</a>(), int16_t <a class="el" href="classkudu_1_1Status.html#a20d5b34e3507a5dd326029a87df641dc">posix_code</a>=-1)</td></tr>
+<tr class="separator:ac9f5fdc99726585961544969dcb3b2ba"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a66d4341c1c1bb677284608fd51686144"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a66d4341c1c1bb677284608fd51686144"></a>
+static <a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><b>Aborted</b> (const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;msg, const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;msg2=<a class="el" href="classkudu_1_1Slice.html">Slice</a>(), int16_t <a class="el" href="classkudu_1_1Status.html#a20d5b34e3507a5dd326029a87df641dc">posix_code</a>=-1)</td></tr>
+<tr class="separator:a66d4341c1c1bb677284608fd51686144"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aefdc372dd5a3c4e122bb9f49738c667f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aefdc372dd5a3c4e122bb9f49738c667f"></a>
+static <a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><b>RemoteError</b> (const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;msg, const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;msg2=<a class="el" href="classkudu_1_1Slice.html">Slice</a>(), int16_t <a class="el" href="classkudu_1_1Status.html#a20d5b34e3507a5dd326029a87df641dc">posix_code</a>=-1)</td></tr>
+<tr class="separator:aefdc372dd5a3c4e122bb9f49738c667f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a56570d57662d3d3e2225269386213568"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a56570d57662d3d3e2225269386213568"></a>
+static <a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><b>ServiceUnavailable</b> (const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;msg, const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;msg2=<a class="el" href="classkudu_1_1Slice.html">Slice</a>(), int16_t <a class="el" href="classkudu_1_1Status.html#a20d5b34e3507a5dd326029a87df641dc">posix_code</a>=-1)</td></tr>
+<tr class="separator:a56570d57662d3d3e2225269386213568"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a06a1e762a63b7b72171d781f657adffe"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a06a1e762a63b7b72171d781f657adffe"></a>
+static <a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><b>TimedOut</b> (const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;msg, const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;msg2=<a class="el" href="classkudu_1_1Slice.html">Slice</a>(), int16_t <a class="el" href="classkudu_1_1Status.html#a20d5b34e3507a5dd326029a87df641dc">posix_code</a>=-1)</td></tr>
+<tr class="separator:a06a1e762a63b7b72171d781f657adffe"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac586c6af12c09103c53cfc941139cc15"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac586c6af12c09103c53cfc941139cc15"></a>
+static <a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><b>Uninitialized</b> (const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;msg, const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;msg2=<a class="el" href="classkudu_1_1Slice.html">Slice</a>(), int16_t <a class="el" href="classkudu_1_1Status.html#a20d5b34e3507a5dd326029a87df641dc">posix_code</a>=-1)</td></tr>
+<tr class="separator:ac586c6af12c09103c53cfc941139cc15"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aeb67c65dc9c5d3f6665e80a4dbbf9801"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aeb67c65dc9c5d3f6665e80a4dbbf9801"></a>
+static <a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><b>ConfigurationError</b> (const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;msg, const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;msg2=<a class="el" href="classkudu_1_1Slice.html">Slice</a>(), int16_t <a class="el" href="classkudu_1_1Status.html#a20d5b34e3507a5dd326029a87df641dc">posix_code</a>=-1)</td></tr>
+<tr class="separator:aeb67c65dc9c5d3f6665e80a4dbbf9801"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab70860cab096ae35d905a5d15241d69b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab70860cab096ae35d905a5d15241d69b"></a>
+static <a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><b>Incomplete</b> (const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;msg, const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;msg2=<a class="el" href="classkudu_1_1Slice.html">Slice</a>(), int64_t <a class="el" href="classkudu_1_1Status.html#a20d5b34e3507a5dd326029a87df641dc">posix_code</a>=-1)</td></tr>
+<tr class="separator:ab70860cab096ae35d905a5d15241d69b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aeab02d311b0e5d44310b0dcc1e37359b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aeab02d311b0e5d44310b0dcc1e37359b"></a>
+static <a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><b>EndOfFile</b> (const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;msg, const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;msg2=<a class="el" href="classkudu_1_1Slice.html">Slice</a>(), int64_t <a class="el" href="classkudu_1_1Status.html#a20d5b34e3507a5dd326029a87df641dc">posix_code</a>=-1)</td></tr>
+<tr class="separator:aeab02d311b0e5d44310b0dcc1e37359b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>A representation of an operation's outcome. </p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="affca5639a3341212bb23ae7f5c701803"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">kudu::Status::Status </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="classkudu_1_1Status.html">Status</a> &amp;&#160;</td>
+          <td class="paramname"><em>s</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Copy the specified status.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">s</td><td>The status object to copy from. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a67d1309561f0064e1bda0fbd0d1aaabb"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::Status::CloneAndAppend </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;&#160;</td>
+          <td class="paramname"><em>msg</em></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Clone the object and add the specified suffix to the clone's message.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">msg</td><td>The message to append. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>A new <a class="el" href="classkudu_1_1Status.html" title="A representation of an operation&#39;s outcome. ">Status</a> object with the same state plus an additional trailing message. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="acb46c72bc79ef8178696b83a01014b9e"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::Status::CloneAndPrepend </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;&#160;</td>
+          <td class="paramname"><em>msg</em></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Clone the object and add the specified prefix to the clone's message.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">msg</td><td>The message to prepend. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>A new <a class="el" href="classkudu_1_1Status.html" title="A representation of an operation&#39;s outcome. ">Status</a> object with the same state plus an additional leading message. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="aa5bc607c51a4e9e3c461aad27db409c3"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::string kudu::Status::CodeAsString </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd>A string representation of the status code, without the message text or POSIX code information. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ad4fe06882fdfb2a040e4d7d10363ca0a"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool kudu::Status::IsAborted </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd><code>true</code> iff the status indicates an Aborted error. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ab9e4ddf4c48889f365c6d359ae560e1c"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool kudu::Status::IsAlreadyPresent </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd><code>true</code> iff the status indicates an AlreadyPresent error. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a8d31d26943101023125666bbbea002e3"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool kudu::Status::IsConfigurationError </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd><code>true</code> iff the status indicates ConfigurationError. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a36fa7d6fc0cd9ab1f9ad48e4a7614bc9"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool kudu::Status::IsCorruption </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd><code>true</code> iff the status indicates a Corruption error. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="adead843ea27f50252f561c995c97b2e6"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool kudu::Status::IsEndOfFile </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd><code>true</code> iff the status indicates end of file. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a75e5cf90718eea9654c7e58546ea1aa2"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool kudu::Status::IsIllegalState </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd><code>true</code> iff the status indicates an IllegalState error. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="af68a02f8069b1a8670fcc1b7acd869b9"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool kudu::Status::IsIncomplete </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd><code>true</code> iff the status indicates Incomplete. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a56e991c78f5a4aed32b97fbeccf13c2c"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool kudu::Status::IsInvalidArgument </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd><code>true</code> iff the status indicates an InvalidArgument error. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a991a91d7c07ffa41e6802a12f34d1acf"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool kudu::Status::IsIOError </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd><code>true</code> iff the status indicates an IOError. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a70c83ddb5b234e814db84dfbbb751d0c"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool kudu::Status::IsNetworkError </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd><code>true</code> iff the status indicates a NetworkError. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="aef9c22bc13669be3e2289844ec916244"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool kudu::Status::IsNotAuthorized </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd><code>true</code> iff the status indicates a NotAuthorized error. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a38e1a8eb7b23092569cb61983ebb671d"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool kudu::Status::IsNotFound </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd><code>true</code> iff the status indicates a NotFound error. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a2b1672aba7ec84133cd086186b27821b"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool kudu::Status::IsNotSupported </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd><code>true</code> iff the status indicates a NotSupported error. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a96a35401df4ecd6420c86c65bc3e05f9"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool kudu::Status::IsRemoteError </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd><code>true</code> iff the status indicates a RemoteError. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="abc68e44f825df4e221e9fcce419a90cf"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool kudu::Status::IsRuntimeError </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd><code>true</code> iff the status indicates a RuntimeError. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a7bce15fc7b4d95b0bdffce963972cce8"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool kudu::Status::IsServiceUnavailable </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd><code>true</code> iff the status indicates ServiceUnavailable. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a80fe0286d8e3ac011a611afbac4edb11"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool kudu::Status::IsTimedOut </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd><code>true</code> iff the status indicates TimedOut. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a325666f396d7f9900403765cecbaecbf"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool kudu::Status::IsUninitialized </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd><code>true</code> iff the status indicates Uninitialized. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a6dd1852c4c78a3c6d8ace5155546db93"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">size_t kudu::Status::memory_footprint_excluding_this </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd>The memory usage of this object without the object itself. Should be used when embedded inside another object. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a7a2d4eb7636a485b5b2cc42f0b8ad627"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">size_t kudu::Status::memory_footprint_including_this </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd>The memory usage of this object including the object itself. Should be used when allocated on the heap. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a3547012ea31cc504141f2222eec38857"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Slice.html">Slice</a> kudu::Status::message </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>This is similar to ToString, except that it does not include the stringified error code or POSIX code.</p>
+<dl class="section note"><dt>Note</dt><dd>The returned <a class="el" href="classkudu_1_1Slice.html" title="A wrapper around externally allocated data. ">Slice</a> is only valid as long as this <a class="el" href="classkudu_1_1Status.html" title="A representation of an operation&#39;s outcome. ">Status</a> object remains live and unchanged.</dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>The message portion of the <a class="el" href="classkudu_1_1Status.html" title="A representation of an operation&#39;s outcome. ">Status</a>. For <code>OK</code> statuses, this returns an empty string. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="adaff3248b2f66041d0a7dd59f118b7ac"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">static <a class="el" href="classkudu_1_1Status.html">Status</a> kudu::Status::OK </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd>A success status. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="abf6454dcb72bfa92189a0595b5a858a7"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool kudu::Status::ok </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd><code>true</code> iff the status indicates success. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="aa387797d8a80892563d56244a2351a88"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> &amp; kudu::Status::operator= </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="classkudu_1_1Status.html">Status</a> &amp;&#160;</td>
+          <td class="paramname"><em>s</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Assign the specified status.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">s</td><td>The status object to assign from. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>The reference to the modified object. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a20d5b34e3507a5dd326029a87df641dc"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">int16_t kudu::Status::posix_code </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd>The POSIX code associated with this <a class="el" href="classkudu_1_1Status.html" title="A representation of an operation&#39;s outcome. ">Status</a> object, or <code>-1</code> if there is none. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ab10872bd6ee01ee1b93a351fd0c1b104"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::string kudu::Status::ToString </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd>A string representation of this status suitable for printing. Returns the string "OK" for success. </dd></dl>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/kudu/util/<a class="el" href="status_8h_source.html">status.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduClient-members.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduClient-members.html
new file mode 100644
index 0000000..cceb1a0
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduClient-members.html
@@ -0,0 +1,148 @@
+<!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.11"/>
+<title>Kudu C++ client API: Member 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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">KuduClient</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">kudu::client::KuduClient Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a>, including all inherited members.</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>::kudu::SecurityUnknownTskTest</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>ClientTest</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11aa801886067da41dacd0c9c2b8091f08d8">CLOSEST_REPLICA</a> enum value</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#aacfcd61c7cc1bf7817d1aa0bb738414f">default_admin_operation_timeout</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a2d0e8397e979e651a23eb240513a5556">default_rpc_timeout</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a9d7cbad036bc74c71873a428abce5c1d">DeleteTable</a>(const std::string &amp;table_name)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a974b491e5d0864f4aa3f60347fa1b62e">ExportAuthenticationCredentials</a>(std::string *authn_creds) const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11aaa060fb6126a3e3fa80079f885dc7d48f">FIRST_REPLICA</a> enum value</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a3a671b3540c74ef7c358bb98e95031e0">GetLatestObservedTimestamp</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a2aa649e05e0cfb0e10ebce98fb4d7a65">GetTableSchema</a>(const std::string &amp;table_name, KuduSchema *schema)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>internal::Batcher</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>internal::GetTableSchemaRpc</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>internal::LookupRpc</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>internal::MetaCache</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>internal::RemoteTablet</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>internal::RemoteTabletServer</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>internal::WriteRpc</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a7a331e528759296089837b4611c01809">IsAlterTableInProgress</a>(const std::string &amp;table_name, bool *alter_in_progress)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a2f0323b439d8658b2ac31fde7f46de63">IsCreateTableInProgress</a>(const std::string &amp;table_name, bool *create_in_progress)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a6f52dff0717d6e96863aff068bfb3795">IsMultiMaster</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a196f1a18c000cdca309d05161caaddaa">kNoTimestamp</a></td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>KuduClientBuilder</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>KuduPartitionerBuilder</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>KuduScanner</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>KuduScanToken</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>KuduScanTokenBuilder</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>KuduSession</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>KuduTable</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>KuduTableAlterer</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>KuduTableCreator</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11aafb912836db348061379d0e0a9055e239">LEADER_ONLY</a> enum value</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a3ab09f69753b8c99ac7b2eeed03faa1d">ListTables</a>(std::vector&lt; std::string &gt; *tables, const std::string &amp;filter=&quot;&quot;)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#ae283a49551a081524b41f5d8e51e68d9">ListTabletServers</a>(std::vector&lt; KuduTabletServer * &gt; *tablet_servers)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a1f5b9bf8767b44f03f4d3220dfd5f925">NewSession</a>()</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a116bbcf13dc0991ad2a3129630075aea">NewTableAlterer</a>(const std::string &amp;table_name)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a003f13604b4fb378f61e133a9b49d153">NewTableCreator</a>()</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#aa82a09718ffe68d3255195e736aec8d7">OpenTable</a>(const std::string &amp;table_name, sp::shared_ptr&lt; KuduTable &gt; *table)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11a">ReplicaSelection</a> enum name</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a0809b055eda76fd68988462f2a9791dd">SetLatestObservedTimestamp</a>(uint64_t ht_timestamp)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a96e9a6c0a16a8825c291528ac27af818">TableExists</a>(const std::string &amp;table_name, bool *exists)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>tools::LeaderMasterProxy</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>~KuduClient</b>() (defined in <a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduClient.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduClient.html
new file mode 100644
index 0000000..11ab63f
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduClient.html
@@ -0,0 +1,744 @@
+<!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.11"/>
+<title>Kudu C++ client API: kudu::client::KuduClient Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">KuduClient</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-types">Public Types</a> &#124;
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pub-static-attribs">Static Public Attributes</a> &#124;
+<a href="#friends">Friends</a> &#124;
+<a href="classkudu_1_1client_1_1KuduClient-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">kudu::client::KuduClient Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>A handle for a connection to a cluster.  
+ <a href="classkudu_1_1client_1_1KuduClient.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="client_8h_source.html">client.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for kudu::client::KuduClient:</div>
+<div class="dyncontent">
+<div class="center"><img src="classkudu_1_1client_1_1KuduClient__inherit__graph.png" border="0" usemap="#kudu_1_1client_1_1KuduClient_inherit__map" alt="Inheritance graph"/></div>
+<map name="kudu_1_1client_1_1KuduClient_inherit__map" id="kudu_1_1client_1_1KuduClient_inherit__map">
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<div class="dynheader">
+Collaboration diagram for kudu::client::KuduClient:</div>
+<div class="dyncontent">
+<div class="center"><img src="classkudu_1_1client_1_1KuduClient__coll__graph.png" border="0" usemap="#kudu_1_1client_1_1KuduClient_coll__map" alt="Collaboration graph"/></div>
+<map name="kudu_1_1client_1_1KuduClient_coll__map" id="kudu_1_1client_1_1KuduClient_coll__map">
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
+Public Types</h2></td></tr>
+<tr class="memitem:aef70c7f3a596ecda4040f9d46514b11a"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11a">ReplicaSelection</a> { <a class="el" href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11aafb912836db348061379d0e0a9055e239">LEADER_ONLY</a>, 
+<a class="el" href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11aa801886067da41dacd0c9c2b8091f08d8">CLOSEST_REPLICA</a>, 
+<a class="el" href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11aaa060fb6126a3e3fa80079f885dc7d48f">FIRST_REPLICA</a>
+ }<tr class="memdesc:aef70c7f3a596ecda4040f9d46514b11a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Policy with which to choose amongst multiple replicas.  <a href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11a">More...</a><br /></td></tr>
+</td></tr>
+<tr class="separator:aef70c7f3a596ecda4040f9d46514b11a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a003f13604b4fb378f61e133a9b49d153"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html">KuduTableCreator</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a003f13604b4fb378f61e133a9b49d153">NewTableCreator</a> ()</td></tr>
+<tr class="separator:a003f13604b4fb378f61e133a9b49d153"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2f0323b439d8658b2ac31fde7f46de63"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a2f0323b439d8658b2ac31fde7f46de63">IsCreateTableInProgress</a> (const std::string &amp;table_name, bool *create_in_progress)</td></tr>
+<tr class="separator:a2f0323b439d8658b2ac31fde7f46de63"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9d7cbad036bc74c71873a428abce5c1d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a9d7cbad036bc74c71873a428abce5c1d">DeleteTable</a> (const std::string &amp;table_name)</td></tr>
+<tr class="separator:a9d7cbad036bc74c71873a428abce5c1d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a116bbcf13dc0991ad2a3129630075aea"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html">KuduTableAlterer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a116bbcf13dc0991ad2a3129630075aea">NewTableAlterer</a> (const std::string &amp;table_name)</td></tr>
+<tr class="separator:a116bbcf13dc0991ad2a3129630075aea"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7a331e528759296089837b4611c01809"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a7a331e528759296089837b4611c01809">IsAlterTableInProgress</a> (const std::string &amp;table_name, bool *alter_in_progress)</td></tr>
+<tr class="separator:a7a331e528759296089837b4611c01809"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2aa649e05e0cfb0e10ebce98fb4d7a65"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a2aa649e05e0cfb0e10ebce98fb4d7a65">GetTableSchema</a> (const std::string &amp;table_name, <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a> *schema)</td></tr>
+<tr class="separator:a2aa649e05e0cfb0e10ebce98fb4d7a65"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae283a49551a081524b41f5d8e51e68d9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#ae283a49551a081524b41f5d8e51e68d9">ListTabletServers</a> (std::vector&lt; <a class="el" href="classkudu_1_1client_1_1KuduTabletServer.html">KuduTabletServer</a> * &gt; *tablet_servers)</td></tr>
+<tr class="separator:ae283a49551a081524b41f5d8e51e68d9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3ab09f69753b8c99ac7b2eeed03faa1d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a3ab09f69753b8c99ac7b2eeed03faa1d">ListTables</a> (std::vector&lt; std::string &gt; *tables, const std::string &amp;filter=&quot;&quot;)</td></tr>
+<tr class="separator:a3ab09f69753b8c99ac7b2eeed03faa1d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a96e9a6c0a16a8825c291528ac27af818"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a96e9a6c0a16a8825c291528ac27af818">TableExists</a> (const std::string &amp;table_name, bool *exists)</td></tr>
+<tr class="separator:a96e9a6c0a16a8825c291528ac27af818"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa82a09718ffe68d3255195e736aec8d7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#aa82a09718ffe68d3255195e736aec8d7">OpenTable</a> (const std::string &amp;table_name, sp::shared_ptr&lt; <a class="el" href="classkudu_1_1client_1_1KuduTable.html">KuduTable</a> &gt; *table)</td></tr>
+<tr class="separator:aa82a09718ffe68d3255195e736aec8d7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1f5b9bf8767b44f03f4d3220dfd5f925"><td class="memItemLeft" align="right" valign="top">sp::shared_ptr&lt; <a class="el" href="classkudu_1_1client_1_1KuduSession.html">KuduSession</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a1f5b9bf8767b44f03f4d3220dfd5f925">NewSession</a> ()</td></tr>
+<tr class="separator:a1f5b9bf8767b44f03f4d3220dfd5f925"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6f52dff0717d6e96863aff068bfb3795"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a6f52dff0717d6e96863aff068bfb3795">IsMultiMaster</a> () const </td></tr>
+<tr class="separator:a6f52dff0717d6e96863aff068bfb3795"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aacfcd61c7cc1bf7817d1aa0bb738414f"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#aacfcd61c7cc1bf7817d1aa0bb738414f">default_admin_operation_timeout</a> () const </td></tr>
+<tr class="separator:aacfcd61c7cc1bf7817d1aa0bb738414f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2d0e8397e979e651a23eb240513a5556"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a2d0e8397e979e651a23eb240513a5556">default_rpc_timeout</a> () const </td></tr>
+<tr class="separator:a2d0e8397e979e651a23eb240513a5556"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3a671b3540c74ef7c358bb98e95031e0"><td class="memItemLeft" align="right" valign="top">uint64_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a3a671b3540c74ef7c358bb98e95031e0">GetLatestObservedTimestamp</a> () const </td></tr>
+<tr class="separator:a3a671b3540c74ef7c358bb98e95031e0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0809b055eda76fd68988462f2a9791dd"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a0809b055eda76fd68988462f2a9791dd">SetLatestObservedTimestamp</a> (uint64_t ht_timestamp)</td></tr>
+<tr class="separator:a0809b055eda76fd68988462f2a9791dd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a974b491e5d0864f4aa3f60347fa1b62e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a974b491e5d0864f4aa3f60347fa1b62e">ExportAuthenticationCredentials</a> (std::string *authn_creds) const </td></tr>
+<tr class="separator:a974b491e5d0864f4aa3f60347fa1b62e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-attribs"></a>
+Static Public Attributes</h2></td></tr>
+<tr class="memitem:a196f1a18c000cdca309d05161caaddaa"><td class="memItemLeft" align="right" valign="top">static const uint64_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a196f1a18c000cdca309d05161caaddaa">kNoTimestamp</a></td></tr>
+<tr class="separator:a196f1a18c000cdca309d05161caaddaa"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
+Friends</h2></td></tr>
+<tr class="memitem:ada57057f15990c8cc54770c782fa9ad4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ada57057f15990c8cc54770c782fa9ad4"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>internal::Batcher</b></td></tr>
+<tr class="separator:ada57057f15990c8cc54770c782fa9ad4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1d6afdd81ae5d2f0207f7224a058132c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1d6afdd81ae5d2f0207f7224a058132c"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>internal::GetTableSchemaRpc</b></td></tr>
+<tr class="separator:a1d6afdd81ae5d2f0207f7224a058132c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a78c0756675d700d01d123aea8ca18751"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a78c0756675d700d01d123aea8ca18751"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>internal::LookupRpc</b></td></tr>
+<tr class="separator:a78c0756675d700d01d123aea8ca18751"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acb6757f44c88e6b23da105cca0299aee"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acb6757f44c88e6b23da105cca0299aee"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>internal::MetaCache</b></td></tr>
+<tr class="separator:acb6757f44c88e6b23da105cca0299aee"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a01410a9ff63da146890f75dcda841e99"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a01410a9ff63da146890f75dcda841e99"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>internal::RemoteTablet</b></td></tr>
+<tr class="separator:a01410a9ff63da146890f75dcda841e99"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2cd42cd8503e7c94b878c96c42b2fd10"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2cd42cd8503e7c94b878c96c42b2fd10"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>internal::RemoteTabletServer</b></td></tr>
+<tr class="separator:a2cd42cd8503e7c94b878c96c42b2fd10"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8241e8597925b7121abc27b5024c9773"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8241e8597925b7121abc27b5024c9773"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>internal::WriteRpc</b></td></tr>
+<tr class="separator:a8241e8597925b7121abc27b5024c9773"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aba2affbf999dd265d3a7f8c30598fec7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aba2affbf999dd265d3a7f8c30598fec7"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>ClientTest</b></td></tr>
+<tr class="separator:aba2affbf999dd265d3a7f8c30598fec7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad396ed74a6421797a2320caf02bec46c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad396ed74a6421797a2320caf02bec46c"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>KuduClientBuilder</b></td></tr>
+<tr class="separator:ad396ed74a6421797a2320caf02bec46c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4a88b01a7cf6a8b126e310af8a973077"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4a88b01a7cf6a8b126e310af8a973077"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>KuduPartitionerBuilder</b></td></tr>
+<tr class="separator:a4a88b01a7cf6a8b126e310af8a973077"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a79d30f3059c783e077627a6f6d153c1b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a79d30f3059c783e077627a6f6d153c1b"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>KuduScanner</b></td></tr>
+<tr class="separator:a79d30f3059c783e077627a6f6d153c1b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a08335df27491aef74f8ed104799ab541"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a08335df27491aef74f8ed104799ab541"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>KuduScanToken</b></td></tr>
+<tr class="separator:a08335df27491aef74f8ed104799ab541"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a644ef5d9d668e5772acd6dc03c4f14ee"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a644ef5d9d668e5772acd6dc03c4f14ee"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>KuduScanTokenBuilder</b></td></tr>
+<tr class="separator:a644ef5d9d668e5772acd6dc03c4f14ee"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae192dc54e7e8c25675182bacad0d0b6e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae192dc54e7e8c25675182bacad0d0b6e"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>KuduSession</b></td></tr>
+<tr class="separator:ae192dc54e7e8c25675182bacad0d0b6e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a770744f0111b5919212173a7efaf85cd"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a770744f0111b5919212173a7efaf85cd"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>KuduTable</b></td></tr>
+<tr class="separator:a770744f0111b5919212173a7efaf85cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3460d221abb050e895feac294530a58f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3460d221abb050e895feac294530a58f"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>KuduTableAlterer</b></td></tr>
+<tr class="separator:a3460d221abb050e895feac294530a58f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af500eb2379d14e4e6603db2c69faa783"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af500eb2379d14e4e6603db2c69faa783"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>KuduTableCreator</b></td></tr>
+<tr class="separator:af500eb2379d14e4e6603db2c69faa783"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6ea0a9ac656faa8d48cc1f0b413fb7a7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6ea0a9ac656faa8d48cc1f0b413fb7a7"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>::kudu::SecurityUnknownTskTest</b></td></tr>
+<tr class="separator:a6ea0a9ac656faa8d48cc1f0b413fb7a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abd8d8500650a19511fc193f5f2f09220"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abd8d8500650a19511fc193f5f2f09220"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>tools::LeaderMasterProxy</b></td></tr>
+<tr class="separator:abd8d8500650a19511fc193f5f2f09220"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>A handle for a connection to a cluster. </p>
+<p>The <a class="el" href="classkudu_1_1client_1_1KuduClient.html" title="A handle for a connection to a cluster. ">KuduClient</a> class represents a connection to a cluster. From the user perspective, they should only need to create one of these in their application, likely a singleton &ndash; but it is not a singleton in Kudu in any way. Different <a class="el" href="classkudu_1_1client_1_1KuduClient.html" title="A handle for a connection to a cluster. ">KuduClient</a> objects do not interact with each other &ndash; no connection pooling, etc. With the exception of common properties managed by free (non-member) functions in the kudu::client namespace, each <a class="el" href="classkudu_1_1client_1_1KuduClient.html" title="A handle for a connection to a cluster. ">KuduClient</a> object is sandboxed with no global cross-client state.</p>
+<p>In the implementation, the client holds various pieces of common infrastructure which is not table-specific: </p><ul>
+<li>RPC messenger: reactor threads and RPC connections are pooled here </li>
+<li>Authentication: the client is initialized with some credentials, and all accesses through it share those credentials. </li>
+<li>Caches: caches of table schemas, tablet locations, tablet server IP addresses, etc are shared per-client.</li>
+</ul>
+<p>In order to actually write data to the cluster, callers must first create a <a class="el" href="classkudu_1_1client_1_1KuduSession.html" title="Representation of a Kudu client session. ">KuduSession</a> object using <a class="el" href="classkudu_1_1client_1_1KuduClient.html#a1f5b9bf8767b44f03f4d3220dfd5f925">NewSession()</a>. A <a class="el" href="classkudu_1_1client_1_1KuduClient.html" title="A handle for a connection to a cluster. ">KuduClient</a> may have several associated sessions.</p>
+<dl class="section note"><dt>Note</dt><dd>This class is thread-safe.</dd></dl>
+<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000001">Todo:</a></b></dt><dd>Cluster administration functions are likely to be in this class as well. </dd></dl>
+</div><h2 class="groupheader">Member Enumeration Documentation</h2>
+<a class="anchor" id="aef70c7f3a596ecda4040f9d46514b11a"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">enum <a class="el" href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11a">kudu::client::KuduClient::ReplicaSelection</a></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Policy with which to choose amongst multiple replicas. </p>
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="aef70c7f3a596ecda4040f9d46514b11aafb912836db348061379d0e0a9055e239"></a>LEADER_ONLY&#160;</td><td class="fielddoc">
+<p>Select the LEADER replica. </p>
+</td></tr>
+<tr><td class="fieldname"><a class="anchor" id="aef70c7f3a596ecda4040f9d46514b11aa801886067da41dacd0c9c2b8091f08d8"></a>CLOSEST_REPLICA&#160;</td><td class="fielddoc">
+<p>Select the closest replica to the client, or a random one if all replicas are equidistant. </p>
+</td></tr>
+<tr><td class="fieldname"><a class="anchor" id="aef70c7f3a596ecda4040f9d46514b11aaa060fb6126a3e3fa80079f885dc7d48f"></a>FIRST_REPLICA&#160;</td><td class="fielddoc">
+<p>Select the first replica in the list. </p>
+</td></tr>
+</table>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="aacfcd61c7cc1bf7817d1aa0bb738414f"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">const <a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a>&amp; kudu::client::KuduClient::default_admin_operation_timeout </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd>Default timeout for admin operations. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a2d0e8397e979e651a23eb240513a5556"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">const <a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a>&amp; kudu::client::KuduClient::default_rpc_timeout </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd>Default timeout for RPCs. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a9d7cbad036bc74c71873a428abce5c1d"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduClient::DeleteTable </td>
+          <td>(</td>
+          <td class="paramtype">const std::string &amp;&#160;</td>
+          <td class="paramname"><em>table_name</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Delete/drop a table.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">table_name</td><td>Name of the table to drop. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation status. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a974b491e5d0864f4aa3f60347fa1b62e"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduClient::ExportAuthenticationCredentials </td>
+          <td>(</td>
+          <td class="paramtype">std::string *&#160;</td>
+          <td class="paramname"><em>authn_creds</em></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Export the current authentication credentials from this client. This includes the necessary credentials to authenticate to the cluster, as well as to authenticate the cluster to the client.</p>
+<p>The resulting binary string may be passed into a new C++ client via the <code><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html#a5c411bc4638cbf77e5d318f5049b0b7e">KuduClientBuilder::import_authentication_credentials</a></code> method, or into a new Java client via <code>KuduClient::importAuthenticationCredentials</code>.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[out]</td><td class="paramname">authn_creds</td><td>The resulting binary authentication credentials. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd><a class="el" href="classkudu_1_1Status.html" title="A representation of an operation&#39;s outcome. ">Status</a> object for the operation. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a3a671b3540c74ef7c358bb98e95031e0"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">uint64_t kudu::client::KuduClient::GetLatestObservedTimestamp </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Get the highest HybridTime timestamp observed by the client.</p>
+<p>The latest observed timestamp can be used to start a snapshot scan on a table which is guaranteed to contain all data written or previously read by this client. See <a class="el" href="classkudu_1_1client_1_1KuduScanner.html" title="This class is a representation of a single scan. ">KuduScanner</a> for more details on timestamps.</p>
+<p>How to get Read-Your-Writes consistency: the code snippet below uses <a class="el" href="classkudu_1_1client_1_1KuduClient.html#a3a671b3540c74ef7c358bb98e95031e0">KuduClient::GetLatestObservedTimestamp()</a> along with <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#ab13dbb301197b411dec4cd6870801bae">KuduScanner::SetSnapshotRaw()</a> to perform READ_AT_SNAPSHOT scan containing the data which has just been written. Notice extra 1 added to the timestamp passed to <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#ab13dbb301197b411dec4cd6870801bae">KuduScanner::SetSnapshotRaw()</a>: </p><div class="fragment"><div class="line">shared_ptr&lt;KuduClient&gt; client;</div><div class="line">... <span class="comment">// open/initialize the client</span></div><div class="line">shared_ptr&lt;KuduSession&gt; session(client-&gt;NewSession());</div><div class="line">... <span class="comment">// set Kudu session properties</span></div><div class="line">shared_ptr&lt;KuduTable&gt; table;</div><div class="line">... <span class="comment">// open the table</span></div><div class="line">unique_ptr&lt;KuduInsert&gt; insert_op(table-&gt;NewInsert());</div><div class="line">... <span class="comment">// populate new insert operation with data</span></div><div class="line">RETURN_NOT_OK(session-&gt;Apply(insert_op.release()));</div><div class="line">RETURN_NOT_OK(session-&gt;Flush());</div><div class="line">uint64_t snapshot_timestamp = client-&gt;GetLatestObservedTimestamp() + 1;</div><div class="line">KuduScanner scanner(table.get());</div><div class="line">RETURN_NOT_OK(scanner.SetSnapshotRaw(snapshot_timestamp));</div><div class="line">RETURN_NOT_OK(scanner.SetSelection(<a class="code" href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11aafb912836db348061379d0e0a9055e239">KuduClient::LEADER_ONLY</a>));</div><div class="line">RETURN_NOT_OK(scanner.SetReadMode(<a class="code" href="classkudu_1_1client_1_1KuduScanner.html#a36fdb59d6488618363331269d3f58348a380798cc81589d865b7b2549e186b2e2">KuduScanner::READ_AT_SNAPSHOT</a>));</div><div class="line">RETURN_NOT_OK(scanner.Open());</div><div class="line">... <span class="comment">// retrieve scanned rows</span></div></div><!-- fragment --><p> There are currently races in which, in rare occasions, Read-Your-Writes consistency might not hold even in this case. These are being taken care of as part of <a href="https://issues.apache.org/jira/browse/KUDU-430">KUDU-430</a></p>
+<dl class="section note"><dt>Note</dt><dd>This method is experimental and will either disappear or change in a future release.</dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>Highest HybridTime timestamp observed by the client. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a2aa649e05e0cfb0e10ebce98fb4d7a65"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduClient::GetTableSchema </td>
+          <td>(</td>
+          <td class="paramtype">const std::string &amp;&#160;</td>
+          <td class="paramname"><em>table_name</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a> *&#160;</td>
+          <td class="paramname"><em>schema</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Get table's schema.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">table_name</td><td>Name of the table. </td></tr>
+    <tr><td class="paramdir">[out]</td><td class="paramname">schema</td><td>Raw pointer to the schema object; caller gets ownership. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation status. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a7a331e528759296089837b4611c01809"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduClient::IsAlterTableInProgress </td>
+          <td>(</td>
+          <td class="paramtype">const std::string &amp;&#160;</td>
+          <td class="paramname"><em>table_name</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">bool *&#160;</td>
+          <td class="paramname"><em>alter_in_progress</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Check if table alteration is in-progress.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">table_name</td><td>Name of the table. </td></tr>
+    <tr><td class="paramdir">[out]</td><td class="paramname">alter_in_progress</td><td>The value is set only in case of success; it is <code>true</code> iff the operation is in progress. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation status. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a2f0323b439d8658b2ac31fde7f46de63"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduClient::IsCreateTableInProgress </td>
+          <td>(</td>
+          <td class="paramtype">const std::string &amp;&#160;</td>
+          <td class="paramname"><em>table_name</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">bool *&#160;</td>
+          <td class="paramname"><em>create_in_progress</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Check whether a create table operation is in-progress.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">table_name</td><td>Name of the table. </td></tr>
+    <tr><td class="paramdir">[out]</td><td class="paramname">create_in_progress</td><td>The value is set only in case of success; it is <code>true</code> iff the operation is in progress. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation status. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a6f52dff0717d6e96863aff068bfb3795"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool kudu::client::KuduClient::IsMultiMaster </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd><code>true</code> iff client is configured to talk to multiple Kudu master servers. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a3ab09f69753b8c99ac7b2eeed03faa1d"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduClient::ListTables </td>
+          <td>(</td>
+          <td class="paramtype">std::vector&lt; std::string &gt; *&#160;</td>
+          <td class="paramname"><em>tables</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const std::string &amp;&#160;</td>
+          <td class="paramname"><em>filter</em> = <code>&quot;&quot;</code>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>List only those tables whose names pass a substring match on <code>filter</code>.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[out]</td><td class="paramname">tables</td><td>The placeholder for the result. Appended only on success. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">filter</td><td>Substring filter to use; empty sub-string filter matches all tables. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd><a class="el" href="classkudu_1_1Status.html" title="A representation of an operation&#39;s outcome. ">Status</a> object for the operation. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ae283a49551a081524b41f5d8e51e68d9"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduClient::ListTabletServers </td>
+          <td>(</td>
+          <td class="paramtype">std::vector&lt; <a class="el" href="classkudu_1_1client_1_1KuduTabletServer.html">KuduTabletServer</a> * &gt; *&#160;</td>
+          <td class="paramname"><em>tablet_servers</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Get information on current tablet servers.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[out]</td><td class="paramname">tablet_servers</td><td>The placeholder for the result. The caller takes ownership of the container's elements. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation status. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a1f5b9bf8767b44f03f4d3220dfd5f925"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">sp::shared_ptr&lt;<a class="el" href="classkudu_1_1client_1_1KuduSession.html">KuduSession</a>&gt; kudu::client::KuduClient::NewSession </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Create a new session for interacting with the cluster.</p>
+<p>This is a fully local operation (no RPCs or blocking).</p>
+<dl class="section return"><dt>Returns</dt><dd>A new session object; caller is responsible for destroying it. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a116bbcf13dc0991ad2a3129630075aea"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html">KuduTableAlterer</a>* kudu::client::KuduClient::NewTableAlterer </td>
+          <td>(</td>
+          <td class="paramtype">const std::string &amp;&#160;</td>
+          <td class="paramname"><em>table_name</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Create a <a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html" title="Alters an existing table based on the provided steps. ">KuduTableAlterer</a> object.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">table_name</td><td>Name of the table to alter. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Pointer to newly created object: it is the caller's responsibility to free it. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a003f13604b4fb378f61e133a9b49d153"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html">KuduTableCreator</a>* kudu::client::KuduClient::NewTableCreator </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Create a <a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html" title="A helper class to create a new table with the desired options. ">KuduTableCreator</a> object.</p>
+<dl class="section return"><dt>Returns</dt><dd>Pointer to newly created object; it is the caller's responsibility to free it. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="aa82a09718ffe68d3255195e736aec8d7"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduClient::OpenTable </td>
+          <td>(</td>
+          <td class="paramtype">const std::string &amp;&#160;</td>
+          <td class="paramname"><em>table_name</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">sp::shared_ptr&lt; <a class="el" href="classkudu_1_1client_1_1KuduTable.html">KuduTable</a> &gt; *&#160;</td>
+          <td class="paramname"><em>table</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Open table with the given name.</p>
+<p>This method does an RPC to ensure that the table exists and looks up its schema.</p>
+<dl class="section note"><dt>Note</dt><dd>New range partitions created by other clients will immediately be available after opening the table.</dd></dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">table_name</td><td>Name of the table. </td></tr>
+    <tr><td class="paramdir">[out]</td><td class="paramname">table</td><td>The result table. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation status.</dd></dl>
+<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000002">Todo:</a></b></dt><dd><p class="startdd">Should we offer an async version of this as well? </p>
+<p class="enddd">Probably should have a configurable timeout in <a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html" title="A &quot;factory&quot; for KuduClient objects. ">KuduClientBuilder</a>? </p>
+</dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a0809b055eda76fd68988462f2a9791dd"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void kudu::client::KuduClient::SetLatestObservedTimestamp </td>
+          <td>(</td>
+          <td class="paramtype">uint64_t&#160;</td>
+          <td class="paramname"><em>ht_timestamp</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Sets the latest observed HybridTime timestamp.</p>
+<p>This is only useful when forwarding timestamps between clients to enforce external consistency when using <a class="el" href="classkudu_1_1client_1_1KuduSession.html#aabd55109ba3b086bbe33b277cdd40d22ae978fab7451faebf4399830b603c855c">KuduSession::CLIENT_PROPAGATED</a> external consistency mode.</p>
+<p>The HybridTime encoded timestamp should be obtained from another client's <a class="el" href="classkudu_1_1client_1_1KuduClient.html#a3a671b3540c74ef7c358bb98e95031e0">KuduClient::GetLatestObservedTimestamp()</a> method.</p>
+<dl class="section note"><dt>Note</dt><dd>This method is experimental and will either disappear or change in a future release.</dd></dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">ht_timestamp</td><td>Timestamp encoded in HybridTime format. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="a96e9a6c0a16a8825c291528ac27af818"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduClient::TableExists </td>
+          <td>(</td>
+          <td class="paramtype">const std::string &amp;&#160;</td>
+          <td class="paramname"><em>table_name</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">bool *&#160;</td>
+          <td class="paramname"><em>exists</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Check if the table given by 'table_name' exists.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">table_name</td><td>Name of the table. </td></tr>
+    <tr><td class="paramdir">[out]</td><td class="paramname">exists</td><td>Set only on success; set to <code>true</code> iff table exists. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd><a class="el" href="classkudu_1_1Status.html" title="A representation of an operation&#39;s outcome. ">Status</a> object for the operation. </dd></dl>
+
+</div>
+</div>
+<h2 class="groupheader">Member Data Documentation</h2>
+<a class="anchor" id="a196f1a18c000cdca309d05161caaddaa"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">const uint64_t kudu::client::KuduClient::kNoTimestamp</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Value for the latest observed timestamp when none has been observed or set. </p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/kudu/client/<a class="el" href="client_8h_source.html">client.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduClientBuilder-members.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduClientBuilder-members.html
new file mode 100644
index 0000000..e15af4f
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduClientBuilder-members.html
@@ -0,0 +1,115 @@
+<!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.11"/>
+<title>Kudu C++ client API: Member 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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">kudu::client::KuduClientBuilder Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html">kudu::client::KuduClientBuilder</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html#add149f1c1c2d3653e6a6cae4f44fa90c">add_master_server_addr</a>(const std::string &amp;addr)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html">kudu::client::KuduClientBuilder</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html#a1585dd6eff82519fe81088d1cfd35b77">Build</a>(sp::shared_ptr&lt; KuduClient &gt; *client)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html">kudu::client::KuduClientBuilder</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html#a08f4d2bf7053c6336e625ee2e6eeddd1">clear_master_server_addrs</a>()</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html">kudu::client::KuduClientBuilder</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html#a6114bb56e4d9d1231df0ef73c9aec752">default_admin_operation_timeout</a>(const MonoDelta &amp;timeout)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html">kudu::client::KuduClientBuilder</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html#a1813e8c8d24e92a0a710724000e2b3df">default_rpc_timeout</a>(const MonoDelta &amp;timeout)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html">kudu::client::KuduClientBuilder</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html#a5c411bc4638cbf77e5d318f5049b0b7e">import_authentication_credentials</a>(std::string authn_creds)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html">kudu::client::KuduClientBuilder</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>KuduClientBuilder</b>() (defined in <a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html">kudu::client::KuduClientBuilder</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html">kudu::client::KuduClientBuilder</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html#a0c1b92afad7a6e21c5ea781fb7d42114">master_server_addrs</a>(const std::vector&lt; std::string &gt; &amp;addrs)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html">kudu::client::KuduClientBuilder</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~KuduClientBuilder</b>() (defined in <a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html">kudu::client::KuduClientBuilder</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html">kudu::client::KuduClientBuilder</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduClientBuilder.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduClientBuilder.html
new file mode 100644
index 0000000..6762905
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduClientBuilder.html
@@ -0,0 +1,301 @@
+<!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.11"/>
+<title>Kudu C++ client API: kudu::client::KuduClientBuilder Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="classkudu_1_1client_1_1KuduClientBuilder-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">kudu::client::KuduClientBuilder Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>A "factory" for <a class="el" href="classkudu_1_1client_1_1KuduClient.html" title="A handle for a connection to a cluster. ">KuduClient</a> objects.  
+ <a href="classkudu_1_1client_1_1KuduClientBuilder.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="client_8h_source.html">client.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a08f4d2bf7053c6336e625ee2e6eeddd1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html#a08f4d2bf7053c6336e625ee2e6eeddd1">clear_master_server_addrs</a> ()</td></tr>
+<tr class="separator:a08f4d2bf7053c6336e625ee2e6eeddd1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0c1b92afad7a6e21c5ea781fb7d42114"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html#a0c1b92afad7a6e21c5ea781fb7d42114">master_server_addrs</a> (const std::vector&lt; std::string &gt; &amp;addrs)</td></tr>
+<tr class="separator:a0c1b92afad7a6e21c5ea781fb7d42114"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:add149f1c1c2d3653e6a6cae4f44fa90c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html#add149f1c1c2d3653e6a6cae4f44fa90c">add_master_server_addr</a> (const std::string &amp;addr)</td></tr>
+<tr class="separator:add149f1c1c2d3653e6a6cae4f44fa90c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6114bb56e4d9d1231df0ef73c9aec752"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html#a6114bb56e4d9d1231df0ef73c9aec752">default_admin_operation_timeout</a> (const <a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a> &amp;timeout)</td></tr>
+<tr class="separator:a6114bb56e4d9d1231df0ef73c9aec752"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1813e8c8d24e92a0a710724000e2b3df"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html#a1813e8c8d24e92a0a710724000e2b3df">default_rpc_timeout</a> (const <a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a> &amp;timeout)</td></tr>
+<tr class="separator:a1813e8c8d24e92a0a710724000e2b3df"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5c411bc4638cbf77e5d318f5049b0b7e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html#a5c411bc4638cbf77e5d318f5049b0b7e">import_authentication_credentials</a> (std::string authn_creds)</td></tr>
+<tr class="separator:a5c411bc4638cbf77e5d318f5049b0b7e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1585dd6eff82519fe81088d1cfd35b77"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html#a1585dd6eff82519fe81088d1cfd35b77">Build</a> (sp::shared_ptr&lt; <a class="el" href="classkudu_1_1client_1_1KuduClient.html">KuduClient</a> &gt; *client)</td></tr>
+<tr class="separator:a1585dd6eff82519fe81088d1cfd35b77"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>A "factory" for <a class="el" href="classkudu_1_1client_1_1KuduClient.html" title="A handle for a connection to a cluster. ">KuduClient</a> objects. </p>
+<p>This class is used to create instances of the <a class="el" href="classkudu_1_1client_1_1KuduClient.html" title="A handle for a connection to a cluster. ">KuduClient</a> class with pre-set options/parameters. </p>
+</div><h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="add149f1c1c2d3653e6a6cae4f44fa90c"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a>&amp; kudu::client::KuduClientBuilder::add_master_server_addr </td>
+          <td>(</td>
+          <td class="paramtype">const std::string &amp;&#160;</td>
+          <td class="paramname"><em>addr</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Add an RPC address of a master to work with.</p>
+<p>At least one master is required.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">addr</td><td>RPC address of master server to add. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Reference to the updated object. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a1585dd6eff82519fe81088d1cfd35b77"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduClientBuilder::Build </td>
+          <td>(</td>
+          <td class="paramtype">sp::shared_ptr&lt; <a class="el" href="classkudu_1_1client_1_1KuduClient.html">KuduClient</a> &gt; *&#160;</td>
+          <td class="paramname"><em>client</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Create a client object.</p>
+<dl class="section note"><dt>Note</dt><dd>KuduClients objects are shared amongst multiple threads and, as such, are stored in shared pointers.</dd></dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[out]</td><td class="paramname">client</td><td>The newly created object wrapped in a shared pointer. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation status. The return value may indicate an error in the create operation, or a misuse of the builder; in the latter case, only the last error is returned. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a08f4d2bf7053c6336e625ee2e6eeddd1"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a>&amp; kudu::client::KuduClientBuilder::clear_master_server_addrs </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Clear the set of master addresses.</p>
+<dl class="section return"><dt>Returns</dt><dd>Reference to the updated object. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a6114bb56e4d9d1231df0ef73c9aec752"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a>&amp; kudu::client::KuduClientBuilder::default_admin_operation_timeout </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a> &amp;&#160;</td>
+          <td class="paramname"><em>timeout</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Set the default timeout for administrative operations.</p>
+<p>Using this method it is possible to modify the default timeout for operations like CreateTable, AlterTable, etc. By default it is 30 seconds.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">timeout</td><td>Timeout value to set. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Reference to the updated object. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a1813e8c8d24e92a0a710724000e2b3df"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a>&amp; kudu::client::KuduClientBuilder::default_rpc_timeout </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a> &amp;&#160;</td>
+          <td class="paramname"><em>timeout</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Set the default timeout for individual RPCs.</p>
+<p>If not provided, defaults to 10 seconds.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">timeout</td><td>Timeout value to set. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Reference to the updated object. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a5c411bc4638cbf77e5d318f5049b0b7e"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a>&amp; kudu::client::KuduClientBuilder::import_authentication_credentials </td>
+          <td>(</td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>authn_creds</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Import serialized authentication credentials from another client.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">authn_creds</td><td>The serialized authentication credentials, provided by a call to <code><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a974b491e5d0864f4aa3f60347fa1b62e">KuduClient.ExportAuthenticationCredentials</a></code> in the C++ client or <code>KuduClient::exportAuthenticationCredentials</code> in the Java client. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Reference to the updated object. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a0c1b92afad7a6e21c5ea781fb7d42114"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a>&amp; kudu::client::KuduClientBuilder::master_server_addrs </td>
+          <td>(</td>
+          <td class="paramtype">const std::vector&lt; std::string &gt; &amp;&#160;</td>
+          <td class="paramname"><em>addrs</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Add RPC addresses of multiple masters.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">addrs</td><td>RPC addresses of masters to add. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Reference to the updated object. </dd></dl>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/kudu/client/<a class="el" href="client_8h_source.html">client.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduClient__coll__graph.map b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduClient__coll__graph.map
new file mode 100644
index 0000000..5acaeb9
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduClient__coll__graph.map
@@ -0,0 +1,2 @@
+<map id="kudu::client::KuduClient" name="kudu::client::KuduClient">
+</map>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduClient__coll__graph.md5 b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduClient__coll__graph.md5
new file mode 100644
index 0000000..878188b
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduClient__coll__graph.md5
@@ -0,0 +1 @@
+8fc74f31cdad44608d2154b658cbd7a2
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduClient__coll__graph.png b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduClient__coll__graph.png
new file mode 100644
index 0000000..dc93af2
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduClient__coll__graph.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduClient__inherit__graph.map b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduClient__inherit__graph.map
new file mode 100644
index 0000000..5acaeb9
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduClient__inherit__graph.map
@@ -0,0 +1,2 @@
+<map id="kudu::client::KuduClient" name="kudu::client::KuduClient">
+</map>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduClient__inherit__graph.md5 b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduClient__inherit__graph.md5
new file mode 100644
index 0000000..878188b
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduClient__inherit__graph.md5
@@ -0,0 +1 @@
+8fc74f31cdad44608d2154b658cbd7a2
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduClient__inherit__graph.png b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduClient__inherit__graph.png
new file mode 100644
index 0000000..dc93af2
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduClient__inherit__graph.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduColumnSchema-members.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduColumnSchema-members.html
new file mode 100644
index 0000000..4d8715c
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduColumnSchema-members.html
@@ -0,0 +1,132 @@
+<!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.11"/>
+<title>Kudu C++ client API: Member 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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html">KuduColumnSchema</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">kudu::client::KuduColumnSchema Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html">kudu::client::KuduColumnSchema</a>, including all inherited members.</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>BINARY</b> enum value (defined in <a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html">kudu::client::KuduColumnSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html">kudu::client::KuduColumnSchema</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>BOOL</b> enum value (defined in <a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html">kudu::client::KuduColumnSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html">kudu::client::KuduColumnSchema</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html#a11234db43eb8b758a65ba1b08f6b65b0">CopyFrom</a>(const KuduColumnSchema &amp;other)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html">kudu::client::KuduColumnSchema</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html#aba69238e70af5c887a4fb11fa2a120c5">DataType</a> enum name</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html">kudu::client::KuduColumnSchema</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html#af362af4f9c937c2b7fa90ef284cfbd1c">DataTypeToString</a>(DataType type)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html">kudu::client::KuduColumnSchema</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>DOUBLE</b> enum value (defined in <a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html">kudu::client::KuduColumnSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html">kudu::client::KuduColumnSchema</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html#a9f0b1346b66394d7372e401c8eb5458a">Equals</a>(const KuduColumnSchema &amp;other) const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html">kudu::client::KuduColumnSchema</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>FLOAT</b> enum value (defined in <a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html">kudu::client::KuduColumnSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html">kudu::client::KuduColumnSchema</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>INT16</b> enum value (defined in <a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html">kudu::client::KuduColumnSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html">kudu::client::KuduColumnSchema</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>INT32</b> enum value (defined in <a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html">kudu::client::KuduColumnSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html">kudu::client::KuduColumnSchema</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>INT64</b> enum value (defined in <a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html">kudu::client::KuduColumnSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html">kudu::client::KuduColumnSchema</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>INT8</b> enum value (defined in <a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html">kudu::client::KuduColumnSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html">kudu::client::KuduColumnSchema</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html#a45ea4feefa1c69b1ec6bc5f0316ed7ec">is_nullable</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html">kudu::client::KuduColumnSchema</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html#aaa771e9d224978f735b3aabb04bc129a">KuduColumnSchema</a>(const std::string &amp;name, DataType type, bool is_nullable=false, const void *default_value=NULL, KuduColumnStorageAttributes attributes=KuduColumnStorageAttributes()) ATTRIBUTE_DEPRECATED(&quot;use KuduSchemaBuilder instead&quot;)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html">kudu::client::KuduColumnSchema</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html#afc82e98af83ba61079ba5d30401b5872">KuduColumnSchema</a>(const KuduColumnSchema &amp;other)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html">kudu::client::KuduColumnSchema</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>KuduColumnSpec</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html">kudu::client::KuduColumnSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html">kudu::client::KuduColumnSchema</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>KuduSchema</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html">kudu::client::KuduColumnSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html">kudu::client::KuduColumnSchema</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>KuduSchemaBuilder</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html">kudu::client::KuduColumnSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html">kudu::client::KuduColumnSchema</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>KuduTableAlterer</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html">kudu::client::KuduColumnSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html">kudu::client::KuduColumnSchema</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>name</b>() const  (defined in <a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html">kudu::client::KuduColumnSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html">kudu::client::KuduColumnSchema</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html#a4b58da787c8e7dc14987aa74a54f199e">operator=</a>(const KuduColumnSchema &amp;other)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html">kudu::client::KuduColumnSchema</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>STRING</b> enum value (defined in <a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html">kudu::client::KuduColumnSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html">kudu::client::KuduColumnSchema</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html#aba69238e70af5c887a4fb11fa2a120c5a27d1b7aca7cf9a01d9258a41bbe3b505">TIMESTAMP</a> enum value</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html">kudu::client::KuduColumnSchema</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html#a138fb61c6f39afbd2696642216486e56">type</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html">kudu::client::KuduColumnSchema</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>UNIXTIME_MICROS</b> enum value (defined in <a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html">kudu::client::KuduColumnSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html">kudu::client::KuduColumnSchema</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>~KuduColumnSchema</b>() (defined in <a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html">kudu::client::KuduColumnSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html">kudu::client::KuduColumnSchema</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduColumnSchema.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduColumnSchema.html
new file mode 100644
index 0000000..09aa8df
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduColumnSchema.html
@@ -0,0 +1,420 @@
+<!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.11"/>
+<title>Kudu C++ client API: kudu::client::KuduColumnSchema Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html">KuduColumnSchema</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-types">Public Types</a> &#124;
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
+<a href="#friends">Friends</a> &#124;
+<a href="classkudu_1_1client_1_1KuduColumnSchema-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">kudu::client::KuduColumnSchema Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>Representation of the column schema.  
+ <a href="classkudu_1_1client_1_1KuduColumnSchema.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="schema_8h_source.html">schema.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
+Public Types</h2></td></tr>
+<tr class="memitem:aba69238e70af5c887a4fb11fa2a120c5"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html#aba69238e70af5c887a4fb11fa2a120c5">DataType</a> { <br />
+&#160;&#160;<b>INT8</b> = 0, 
+<b>INT16</b> = 1, 
+<b>INT32</b> = 2, 
+<b>INT64</b> = 3, 
+<br />
+&#160;&#160;<b>STRING</b> = 4, 
+<b>BOOL</b> = 5, 
+<b>FLOAT</b> = 6, 
+<b>DOUBLE</b> = 7, 
+<br />
+&#160;&#160;<b>BINARY</b> = 8, 
+<b>UNIXTIME_MICROS</b> = 9, 
+<a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html#aba69238e70af5c887a4fb11fa2a120c5a27d1b7aca7cf9a01d9258a41bbe3b505">TIMESTAMP</a> = UNIXTIME_MICROS
+<br />
+ }<tr class="memdesc:aba69238e70af5c887a4fb11fa2a120c5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Supported data types for columns.  <a href="classkudu_1_1client_1_1KuduColumnSchema.html#aba69238e70af5c887a4fb11fa2a120c5">More...</a><br /></td></tr>
+</td></tr>
+<tr class="separator:aba69238e70af5c887a4fb11fa2a120c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:aaa771e9d224978f735b3aabb04bc129a"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html#aaa771e9d224978f735b3aabb04bc129a">KuduColumnSchema</a> (const std::string &amp;name, <a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html#aba69238e70af5c887a4fb11fa2a120c5">DataType</a> <a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html#a138fb61c6f39afbd2696642216486e56">type</a>, bool <a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html#a45ea4feefa1c69b1ec6bc5f0316ed7ec">is_nullable</a>=false, const void *default_value=NULL, <a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html">KuduColumnStorageAttributes</a> attributes=<a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html">KuduColumnStorageAttributes</a>()) ATTRIBUTE_DEPRECATED(&quot;use <a class="el" href="classkudu_1_1client_1_1KuduSchemaBuilder.html">KuduSchemaBuilder</a> instead&quot;)</td></tr>
+<tr class="separator:aaa771e9d224978f735b3aabb04bc129a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afc82e98af83ba61079ba5d30401b5872"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html#afc82e98af83ba61079ba5d30401b5872">KuduColumnSchema</a> (const <a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html">KuduColumnSchema</a> &amp;other)</td></tr>
+<tr class="separator:afc82e98af83ba61079ba5d30401b5872"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4b58da787c8e7dc14987aa74a54f199e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html">KuduColumnSchema</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html#a4b58da787c8e7dc14987aa74a54f199e">operator=</a> (const <a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html">KuduColumnSchema</a> &amp;other)</td></tr>
+<tr class="separator:a4b58da787c8e7dc14987aa74a54f199e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a11234db43eb8b758a65ba1b08f6b65b0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html#a11234db43eb8b758a65ba1b08f6b65b0">CopyFrom</a> (const <a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html">KuduColumnSchema</a> &amp;other)</td></tr>
+<tr class="separator:a11234db43eb8b758a65ba1b08f6b65b0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9f0b1346b66394d7372e401c8eb5458a"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html#a9f0b1346b66394d7372e401c8eb5458a">Equals</a> (const <a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html">KuduColumnSchema</a> &amp;other) const </td></tr>
+<tr class="separator:a9f0b1346b66394d7372e401c8eb5458a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr><td colspan="2"><div class="groupHeader">Getters to expose column schema information.</div></td></tr>
+<tr><td colspan="2"><div class="groupText"><dl class="todo"><dt><b><a class="el" href="todo.html#_todo000012">Todo:</a></b></dt><dd>Expose default column value and attributes?</dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>Name of the column schema. </dd></dl>
+</div></td></tr>
+<tr class="memitem:a501574ac49553c050388f17ef1d7ef16"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a501574ac49553c050388f17ef1d7ef16"></a>
+const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>name</b> () const </td></tr>
+<tr class="separator:a501574ac49553c050388f17ef1d7ef16"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a138fb61c6f39afbd2696642216486e56"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html#aba69238e70af5c887a4fb11fa2a120c5">DataType</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html#a138fb61c6f39afbd2696642216486e56">type</a> () const </td></tr>
+<tr class="separator:a138fb61c6f39afbd2696642216486e56"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a45ea4feefa1c69b1ec6bc5f0316ed7ec"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html#a45ea4feefa1c69b1ec6bc5f0316ed7ec">is_nullable</a> () const </td></tr>
+<tr class="separator:a45ea4feefa1c69b1ec6bc5f0316ed7ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
+Static Public Member Functions</h2></td></tr>
+<tr class="memitem:af362af4f9c937c2b7fa90ef284cfbd1c"><td class="memItemLeft" align="right" valign="top">static std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html#af362af4f9c937c2b7fa90ef284cfbd1c">DataTypeToString</a> (<a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html#aba69238e70af5c887a4fb11fa2a120c5">DataType</a> <a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html#a138fb61c6f39afbd2696642216486e56">type</a>)</td></tr>
+<tr class="separator:af362af4f9c937c2b7fa90ef284cfbd1c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
+Friends</h2></td></tr>
+<tr class="memitem:a2e6c5f4ca00ab2d2d3e227bf22a7f111"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2e6c5f4ca00ab2d2d3e227bf22a7f111"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>KuduColumnSpec</b></td></tr>
+<tr class="separator:a2e6c5f4ca00ab2d2d3e227bf22a7f111"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4af4daf696b3cec04856fc804558ffa8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4af4daf696b3cec04856fc804558ffa8"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>KuduSchema</b></td></tr>
+<tr class="separator:a4af4daf696b3cec04856fc804558ffa8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab04cec7242eaf6df17c2923f939df780"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab04cec7242eaf6df17c2923f939df780"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>KuduSchemaBuilder</b></td></tr>
+<tr class="separator:ab04cec7242eaf6df17c2923f939df780"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3460d221abb050e895feac294530a58f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3460d221abb050e895feac294530a58f"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>KuduTableAlterer</b></td></tr>
+<tr class="separator:a3460d221abb050e895feac294530a58f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>Representation of the column schema. </p>
+</div><h2 class="groupheader">Member Enumeration Documentation</h2>
+<a class="anchor" id="aba69238e70af5c887a4fb11fa2a120c5"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">enum <a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html#aba69238e70af5c887a4fb11fa2a120c5">kudu::client::KuduColumnSchema::DataType</a></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Supported data types for columns. </p>
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="aba69238e70af5c887a4fb11fa2a120c5a27d1b7aca7cf9a01d9258a41bbe3b505"></a>TIMESTAMP&#160;</td><td class="fielddoc">
+<p>deprecated, use UNIXTIME_MICROS </p>
+</td></tr>
+</table>
+
+</div>
+</div>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="aaa771e9d224978f735b3aabb04bc129a"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">kudu::client::KuduColumnSchema::KuduColumnSchema </td>
+          <td>(</td>
+          <td class="paramtype">const std::string &amp;&#160;</td>
+          <td class="paramname"><em>name</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html#aba69238e70af5c887a4fb11fa2a120c5">DataType</a>&#160;</td>
+          <td class="paramname"><em>type</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">bool&#160;</td>
+          <td class="paramname"><em>is_nullable</em> = <code>false</code>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const void *&#160;</td>
+          <td class="paramname"><em>default_value</em> = <code>NULL</code>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html">KuduColumnStorageAttributes</a>&#160;</td>
+          <td class="paramname"><em>attributes</em> = <code><a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html">KuduColumnStorageAttributes</a>()</code>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000011">Deprecated:</a></b></dt><dd>Use <a class="el" href="classkudu_1_1client_1_1KuduSchemaBuilder.html" title="Builder API for constructing a KuduSchema object. ">KuduSchemaBuilder</a> instead.</dd></dl>
+<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000011">Todo:</a></b></dt><dd>KUDU-809: make this hard-to-use constructor private. Clients should use the Builder API. Currently only the Python API uses this old API.</dd></dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">name</td><td>The name of the column. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">type</td><td>The type of the column. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">is_nullable</td><td>Whether the column is nullable. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">default_value</td><td>Default value for the column. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">attributes</td><td>Column storage attributes. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="afc82e98af83ba61079ba5d30401b5872"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">kudu::client::KuduColumnSchema::KuduColumnSchema </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html">KuduColumnSchema</a> &amp;&#160;</td>
+          <td class="paramname"><em>other</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Construct <a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html" title="Representation of the column schema. ">KuduColumnSchema</a> object as a copy of another object.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">other</td><td>The reference object to copy from. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a11234db43eb8b758a65ba1b08f6b65b0"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void kudu::client::KuduColumnSchema::CopyFrom </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html">KuduColumnSchema</a> &amp;&#160;</td>
+          <td class="paramname"><em>other</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Make this object an identical copy of the other one.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">other</td><td>The reference object to copy from. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="af362af4f9c937c2b7fa90ef284cfbd1c"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">static std::string kudu::client::KuduColumnSchema::DataTypeToString </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html#aba69238e70af5c887a4fb11fa2a120c5">DataType</a>&#160;</td>
+          <td class="paramname"><em>type</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">type</td><td>Column data type. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>String representation of the column data type. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a9f0b1346b66394d7372e401c8eb5458a"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool kudu::client::KuduColumnSchema::Equals </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html">KuduColumnSchema</a> &amp;&#160;</td>
+          <td class="paramname"><em>other</em></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Check whether the object is identical to the other one.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">other</td><td>The reference object to compare with. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd><code>true</code> iff the object is identical to the specified one. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a45ea4feefa1c69b1ec6bc5f0316ed7ec"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool kudu::client::KuduColumnSchema::is_nullable </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd><code>true</code> iff the column schema has the nullable attribute set. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a4b58da787c8e7dc14987aa74a54f199e"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html">KuduColumnSchema</a>&amp; kudu::client::KuduColumnSchema::operator= </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html">KuduColumnSchema</a> &amp;&#160;</td>
+          <td class="paramname"><em>other</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>The assignment operator.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">other</td><td>The reference object to assign from. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>The updated object. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a138fb61c6f39afbd2696642216486e56"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html#aba69238e70af5c887a4fb11fa2a120c5">DataType</a> kudu::client::KuduColumnSchema::type </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd>Type of the column schema. </dd></dl>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/kudu/client/<a class="el" href="schema_8h_source.html">schema.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduColumnSpec-members.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduColumnSpec-members.html
new file mode 100644
index 0000000..4414783
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduColumnSpec-members.html
@@ -0,0 +1,118 @@
+<!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.11"/>
+<title>Kudu C++ client API: Member 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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html">KuduColumnSpec</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">kudu::client::KuduColumnSpec Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html">kudu::client::KuduColumnSpec</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html#a8502dd68c6743c7c66b2b6a02d41a4e6">BlockSize</a>(int32_t block_size)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html">kudu::client::KuduColumnSpec</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html#ad9ed2e008ee926ee50c23e664d854e8b">Compression</a>(KuduColumnStorageAttributes::CompressionType compression)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html">kudu::client::KuduColumnSpec</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html#a92c63c0e1872c03fcabeac19d802f6c7">Default</a>(KuduValue *value)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html">kudu::client::KuduColumnSpec</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html#ae0ceeb41ac1427c2472a2f28778b6e97">Encoding</a>(KuduColumnStorageAttributes::EncodingType encoding)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html">kudu::client::KuduColumnSpec</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>KuduSchemaBuilder</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html">kudu::client::KuduColumnSpec</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html">kudu::client::KuduColumnSpec</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>KuduTableAlterer</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html">kudu::client::KuduColumnSpec</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html">kudu::client::KuduColumnSpec</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html#af8c64c5a8a7a93ec644d481f23d91cca">NotNull</a>()</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html">kudu::client::KuduColumnSpec</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html#aab05d7d45f4cd2dadb8e0c715d87e841">Nullable</a>()</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html">kudu::client::KuduColumnSpec</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>PrimaryKey</b>() (defined in <a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html">kudu::client::KuduColumnSpec</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html">kudu::client::KuduColumnSpec</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>RemoveDefault</b>() (defined in <a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html">kudu::client::KuduColumnSpec</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html">kudu::client::KuduColumnSpec</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html#abeb2cbbaa01253165202574db03872f4">RenameTo</a>(const std::string &amp;new_name)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html">kudu::client::KuduColumnSpec</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html#a67e794a08387e17ba430d6942419a2c2">Type</a>(KuduColumnSchema::DataType type)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html">kudu::client::KuduColumnSpec</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduColumnSpec.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduColumnSpec.html
new file mode 100644
index 0000000..9986a1d
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduColumnSpec.html
@@ -0,0 +1,354 @@
+<!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.11"/>
+<title>Kudu C++ client API: kudu::client::KuduColumnSpec Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html">KuduColumnSpec</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#friends">Friends</a> &#124;
+<a href="classkudu_1_1client_1_1KuduColumnSpec-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">kudu::client::KuduColumnSpec Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>Builder API for specifying or altering a column within a table schema.  
+ <a href="classkudu_1_1client_1_1KuduColumnSpec.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="schema_8h_source.html">schema.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a92c63c0e1872c03fcabeac19d802f6c7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html">KuduColumnSpec</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html#a92c63c0e1872c03fcabeac19d802f6c7">Default</a> (<a class="el" href="classkudu_1_1client_1_1KuduValue.html">KuduValue</a> *value)</td></tr>
+<tr class="separator:a92c63c0e1872c03fcabeac19d802f6c7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad9ed2e008ee926ee50c23e664d854e8b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html">KuduColumnSpec</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html#ad9ed2e008ee926ee50c23e664d854e8b">Compression</a> (<a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#af579406931a40daa5cb9e10603341a78">KuduColumnStorageAttributes::CompressionType</a> compression)</td></tr>
+<tr class="separator:ad9ed2e008ee926ee50c23e664d854e8b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae0ceeb41ac1427c2472a2f28778b6e97"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html">KuduColumnSpec</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html#ae0ceeb41ac1427c2472a2f28778b6e97">Encoding</a> (<a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#aeb835a12e6f40b1a619afa8abd773b6d">KuduColumnStorageAttributes::EncodingType</a> encoding)</td></tr>
+<tr class="separator:ae0ceeb41ac1427c2472a2f28778b6e97"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8502dd68c6743c7c66b2b6a02d41a4e6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html">KuduColumnSpec</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html#a8502dd68c6743c7c66b2b6a02d41a4e6">BlockSize</a> (int32_t block_size)</td></tr>
+<tr class="separator:a8502dd68c6743c7c66b2b6a02d41a4e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr><td colspan="2"><div class="groupHeader">Operations only relevant for Create Table</div></td></tr>
+<tr><td colspan="2"><div class="groupText"><p>Set the column to be the primary key of the table.</p>
+<p>This may only be used to set non-composite primary keys. If a composite key is desired, use <a class="el" href="classkudu_1_1client_1_1KuduSchemaBuilder.html#ad4c1619445fea575a775f23752b6bfb9">KuduSchemaBuilder::SetPrimaryKey()</a>. This may not be used in conjunction with <a class="el" href="classkudu_1_1client_1_1KuduSchemaBuilder.html#ad4c1619445fea575a775f23752b6bfb9">KuduSchemaBuilder::SetPrimaryKey()</a>.</p>
+<dl class="section note"><dt>Note</dt><dd>Primary keys may not be changed after a table is created.</dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>Pointer to the modified object. </dd></dl>
+</div></td></tr>
+<tr class="memitem:a48a1457d2f4379a59c29280907c7f3c2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a48a1457d2f4379a59c29280907c7f3c2"></a>
+<a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html">KuduColumnSpec</a> *&#160;</td><td class="memItemRight" valign="bottom"><b>PrimaryKey</b> ()</td></tr>
+<tr class="separator:a48a1457d2f4379a59c29280907c7f3c2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af8c64c5a8a7a93ec644d481f23d91cca"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html">KuduColumnSpec</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html#af8c64c5a8a7a93ec644d481f23d91cca">NotNull</a> ()</td></tr>
+<tr class="separator:af8c64c5a8a7a93ec644d481f23d91cca"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aab05d7d45f4cd2dadb8e0c715d87e841"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html">KuduColumnSpec</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html#aab05d7d45f4cd2dadb8e0c715d87e841">Nullable</a> ()</td></tr>
+<tr class="separator:aab05d7d45f4cd2dadb8e0c715d87e841"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a67e794a08387e17ba430d6942419a2c2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html">KuduColumnSpec</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html#a67e794a08387e17ba430d6942419a2c2">Type</a> (<a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html#aba69238e70af5c887a4fb11fa2a120c5">KuduColumnSchema::DataType</a> type)</td></tr>
+<tr class="separator:a67e794a08387e17ba430d6942419a2c2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr><td colspan="2"><div class="groupHeader">Operations only relevant for Alter Table</div></td></tr>
+<tr><td colspan="2"><div class="groupText"><p>Remove the default value for the column.</p>
+<p>Without a default, clients must always specify a value for the column when inserting data.</p>
+<dl class="section return"><dt>Returns</dt><dd>Pointer to the modified object. </dd></dl>
+</div></td></tr>
+<tr class="memitem:ade0ba64b4ff59889755800b817419b82"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ade0ba64b4ff59889755800b817419b82"></a>
+<a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html">KuduColumnSpec</a> *&#160;</td><td class="memItemRight" valign="bottom"><b>RemoveDefault</b> ()</td></tr>
+<tr class="separator:ade0ba64b4ff59889755800b817419b82"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abeb2cbbaa01253165202574db03872f4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html">KuduColumnSpec</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html#abeb2cbbaa01253165202574db03872f4">RenameTo</a> (const std::string &amp;new_name)</td></tr>
+<tr class="separator:abeb2cbbaa01253165202574db03872f4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
+Friends</h2></td></tr>
+<tr class="memitem:ab04cec7242eaf6df17c2923f939df780"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab04cec7242eaf6df17c2923f939df780"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>KuduSchemaBuilder</b></td></tr>
+<tr class="separator:ab04cec7242eaf6df17c2923f939df780"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3460d221abb050e895feac294530a58f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3460d221abb050e895feac294530a58f"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>KuduTableAlterer</b></td></tr>
+<tr class="separator:a3460d221abb050e895feac294530a58f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>Builder API for specifying or altering a column within a table schema. </p>
+<p>An object of this type cannot be constructed directly, but rather is returned from <a class="el" href="classkudu_1_1client_1_1KuduSchemaBuilder.html#a0fdf28d49cc05ba4f3182f7398ddf600">KuduSchemaBuilder::AddColumn()</a> to specify a column within a Schema.</p>
+<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000009">Todo:</a></b></dt><dd>KUDU-861: this API will also be used for an improved AlterTable API. </dd></dl>
+</div><h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a8502dd68c6743c7c66b2b6a02d41a4e6"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html">KuduColumnSpec</a>* kudu::client::KuduColumnSpec::BlockSize </td>
+          <td>(</td>
+          <td class="paramtype">int32_t&#160;</td>
+          <td class="paramname"><em>block_size</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Set the target block size for the column.</p>
+<p>This is the number of bytes of user data packed per block on disk, and represents the unit of IO when reading the column. Larger values may improve scan performance, particularly on spinning media. Smaller values may improve random access performance, particularly for workloads that have high cache hit rates or operate on fast storage such as SSD.</p>
+<dl class="section note"><dt>Note</dt><dd>The block size specified here corresponds to uncompressed data. The actual size of the unit read from disk may be smaller if compression is enabled.</dd>
+<dd>
+It's recommended that this not be set any lower than 4096 (4KB) or higher than 1048576 (1MB). </dd></dl>
+<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000013">Todo:</a></b></dt><dd>KUDU-1107: move above info to docs</dd></dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">block_size</td><td>Block size (in bytes) to use. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Pointer to the modified object. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ad9ed2e008ee926ee50c23e664d854e8b"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html">KuduColumnSpec</a>* kudu::client::KuduColumnSpec::Compression </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#af579406931a40daa5cb9e10603341a78">KuduColumnStorageAttributes::CompressionType</a>&#160;</td>
+          <td class="paramname"><em>compression</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Set the preferred compression type for the column.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">compression</td><td>The compression type to use. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Pointer to the modified object. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a92c63c0e1872c03fcabeac19d802f6c7"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html">KuduColumnSpec</a>* kudu::client::KuduColumnSpec::Default </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classkudu_1_1client_1_1KuduValue.html">KuduValue</a> *&#160;</td>
+          <td class="paramname"><em>value</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Set the default value for the column.</p>
+<p>When adding a new column to a table, this default value will be used to fill the new column in all existing rows. The default value will also be used when inserting a new row with no value for the column.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>The value to use as the default. The <a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html" title="Builder API for specifying or altering a column within a table schema. ">KuduColumnSpec</a> takes ownership over the passed parameter.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Pointer to the modified object. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ae0ceeb41ac1427c2472a2f28778b6e97"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html">KuduColumnSpec</a>* kudu::client::KuduColumnSpec::Encoding </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#aeb835a12e6f40b1a619afa8abd773b6d">KuduColumnStorageAttributes::EncodingType</a>&#160;</td>
+          <td class="paramname"><em>encoding</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Set the preferred encoding for the column.</p>
+<dl class="section note"><dt>Note</dt><dd>Not all encodings are supported for all column types.</dd></dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">encoding</td><td>The encoding to use. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Pointer to the modified object. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="af8c64c5a8a7a93ec644d481f23d91cca"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html">KuduColumnSpec</a>* kudu::client::KuduColumnSpec::NotNull </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Set the column to be not nullable.</p>
+<dl class="section note"><dt>Note</dt><dd>Column nullability may not be changed once a table is created.</dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>Pointer to the modified object. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="aab05d7d45f4cd2dadb8e0c715d87e841"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html">KuduColumnSpec</a>* kudu::client::KuduColumnSpec::Nullable </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Set the column to be nullable (the default).</p>
+<dl class="section note"><dt>Note</dt><dd>Column nullability may not be changed once a table is created.</dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>Pointer to the modified object. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="abeb2cbbaa01253165202574db03872f4"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html">KuduColumnSpec</a>* kudu::client::KuduColumnSpec::RenameTo </td>
+          <td>(</td>
+          <td class="paramtype">const std::string &amp;&#160;</td>
+          <td class="paramname"><em>new_name</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Rename the column.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">new_name</td><td>The new name for the column. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Pointer to the modified object. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a67e794a08387e17ba430d6942419a2c2"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html">KuduColumnSpec</a>* kudu::client::KuduColumnSpec::Type </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html#aba69238e70af5c887a4fb11fa2a120c5">KuduColumnSchema::DataType</a>&#160;</td>
+          <td class="paramname"><em>type</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Set the data type of the column.</p>
+<dl class="section note"><dt>Note</dt><dd>Column data types may not be changed once a table is created.</dd></dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">type</td><td>The data type to set. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Pointer to the modified object. </dd></dl>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/kudu/client/<a class="el" href="schema_8h_source.html">schema.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduColumnStorageAttributes-members.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduColumnStorageAttributes-members.html
new file mode 100644
index 0000000..d09ab98
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduColumnStorageAttributes-members.html
@@ -0,0 +1,124 @@
+<!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.11"/>
+<title>Kudu C++ client API: Member 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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html">KuduColumnStorageAttributes</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">kudu::client::KuduColumnStorageAttributes Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html">kudu::client::KuduColumnStorageAttributes</a>, including all inherited members.</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>AUTO_ENCODING</b> enum value (defined in <a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html">kudu::client::KuduColumnStorageAttributes</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html">kudu::client::KuduColumnStorageAttributes</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>BIT_SHUFFLE</b> enum value (defined in <a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html">kudu::client::KuduColumnStorageAttributes</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html">kudu::client::KuduColumnStorageAttributes</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#a00ef1e67c5fdd537d35f102748b1ad9d">compression</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html">kudu::client::KuduColumnStorageAttributes</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#af579406931a40daa5cb9e10603341a78">CompressionType</a> enum name</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html">kudu::client::KuduColumnStorageAttributes</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>DEFAULT_COMPRESSION</b> enum value (defined in <a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html">kudu::client::KuduColumnStorageAttributes</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html">kudu::client::KuduColumnStorageAttributes</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>DICT_ENCODING</b> enum value (defined in <a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html">kudu::client::KuduColumnStorageAttributes</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html">kudu::client::KuduColumnStorageAttributes</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#acd93d52b48be7d87a0d3fd4500048f2e">encoding</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html">kudu::client::KuduColumnStorageAttributes</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#aeb835a12e6f40b1a619afa8abd773b6d">EncodingType</a> enum name</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html">kudu::client::KuduColumnStorageAttributes</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#aeb835a12e6f40b1a619afa8abd773b6da28c1ed31be30579070232164c24b4b82">GROUP_VARINT</a> enum value</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html">kudu::client::KuduColumnStorageAttributes</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#a2d6e5bec50a7305b3b4d75d21d000fab">KuduColumnStorageAttributes</a>(EncodingType encoding=AUTO_ENCODING, CompressionType compression=DEFAULT_COMPRESSION, int32_t block_size=0) ATTRIBUTE_DEPRECATED(&quot;this const ructor will be private in a future release&quot;)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html">kudu::client::KuduColumnStorageAttributes</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>LZ4</b> enum value (defined in <a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html">kudu::client::KuduColumnStorageAttributes</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html">kudu::client::KuduColumnStorageAttributes</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>NO_COMPRESSION</b> enum value (defined in <a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html">kudu::client::KuduColumnStorageAttributes</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html">kudu::client::KuduColumnStorageAttributes</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>PLAIN_ENCODING</b> enum value (defined in <a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html">kudu::client::KuduColumnStorageAttributes</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html">kudu::client::KuduColumnStorageAttributes</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>PREFIX_ENCODING</b> enum value (defined in <a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html">kudu::client::KuduColumnStorageAttributes</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html">kudu::client::KuduColumnStorageAttributes</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>RLE</b> enum value (defined in <a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html">kudu::client::KuduColumnStorageAttributes</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html">kudu::client::KuduColumnStorageAttributes</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>SNAPPY</b> enum value (defined in <a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html">kudu::client::KuduColumnStorageAttributes</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html">kudu::client::KuduColumnStorageAttributes</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#ac41bdd2fadff633e94b514ad1465fa44">ToString</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html">kudu::client::KuduColumnStorageAttributes</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>ZLIB</b> enum value (defined in <a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html">kudu::client::KuduColumnStorageAttributes</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html">kudu::client::KuduColumnStorageAttributes</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduColumnStorageAttributes.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduColumnStorageAttributes.html
new file mode 100644
index 0000000..d47677c
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduColumnStorageAttributes.html
@@ -0,0 +1,292 @@
+<!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.11"/>
+<title>Kudu C++ client API: kudu::client::KuduColumnStorageAttributes Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html">KuduColumnStorageAttributes</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-types">Public Types</a> &#124;
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="classkudu_1_1client_1_1KuduColumnStorageAttributes-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">kudu::client::KuduColumnStorageAttributes Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>Representation of column storage attributes.  
+ <a href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="schema_8h_source.html">schema.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
+Public Types</h2></td></tr>
+<tr class="memitem:aeb835a12e6f40b1a619afa8abd773b6d"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#aeb835a12e6f40b1a619afa8abd773b6d">EncodingType</a> { <br />
+&#160;&#160;<b>AUTO_ENCODING</b> = 0, 
+<b>PLAIN_ENCODING</b> = 1, 
+<b>PREFIX_ENCODING</b> = 2, 
+<b>RLE</b> = 4, 
+<br />
+&#160;&#160;<b>DICT_ENCODING</b> = 5, 
+<b>BIT_SHUFFLE</b> = 6, 
+<a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#aeb835a12e6f40b1a619afa8abd773b6da28c1ed31be30579070232164c24b4b82">GROUP_VARINT</a> = 3
+<br />
+ }<tr class="memdesc:aeb835a12e6f40b1a619afa8abd773b6d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Column encoding types.  <a href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#aeb835a12e6f40b1a619afa8abd773b6d">More...</a><br /></td></tr>
+</td></tr>
+<tr class="separator:aeb835a12e6f40b1a619afa8abd773b6d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af579406931a40daa5cb9e10603341a78"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af579406931a40daa5cb9e10603341a78"></a>enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#af579406931a40daa5cb9e10603341a78">CompressionType</a> { <br />
+&#160;&#160;<b>DEFAULT_COMPRESSION</b> = 0, 
+<b>NO_COMPRESSION</b> = 1, 
+<b>SNAPPY</b> = 2, 
+<b>LZ4</b> = 3, 
+<br />
+&#160;&#160;<b>ZLIB</b> = 4
+<br />
+ }<tr class="memdesc:af579406931a40daa5cb9e10603341a78"><td class="mdescLeft">&#160;</td><td class="mdescRight">Column compression types. <br /></td></tr>
+</td></tr>
+<tr class="separator:af579406931a40daa5cb9e10603341a78"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a2d6e5bec50a7305b3b4d75d21d000fab"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#a2d6e5bec50a7305b3b4d75d21d000fab">KuduColumnStorageAttributes</a> (<a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#aeb835a12e6f40b1a619afa8abd773b6d">EncodingType</a> <a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#acd93d52b48be7d87a0d3fd4500048f2e">encoding</a>=AUTO_ENCODING, <a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#af579406931a40daa5cb9e10603341a78">CompressionType</a> <a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#a00ef1e67c5fdd537d35f102748b1ad9d">compression</a>=DEFAULT_COMPRESSION, int32_t block_size=0) ATTRIBUTE_DEPRECATED(&quot;this const ructor will be private in a future release&quot;)</td></tr>
+<tr class="separator:a2d6e5bec50a7305b3b4d75d21d000fab"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acd93d52b48be7d87a0d3fd4500048f2e"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#aeb835a12e6f40b1a619afa8abd773b6d">EncodingType</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#acd93d52b48be7d87a0d3fd4500048f2e">encoding</a> () const </td></tr>
+<tr class="separator:acd93d52b48be7d87a0d3fd4500048f2e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a00ef1e67c5fdd537d35f102748b1ad9d"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#af579406931a40daa5cb9e10603341a78">CompressionType</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#a00ef1e67c5fdd537d35f102748b1ad9d">compression</a> () const </td></tr>
+<tr class="separator:a00ef1e67c5fdd537d35f102748b1ad9d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac41bdd2fadff633e94b514ad1465fa44"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#ac41bdd2fadff633e94b514ad1465fa44">ToString</a> () const </td></tr>
+<tr class="separator:ac41bdd2fadff633e94b514ad1465fa44"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>Representation of column storage attributes. </p>
+</div><h2 class="groupheader">Member Enumeration Documentation</h2>
+<a class="anchor" id="aeb835a12e6f40b1a619afa8abd773b6d"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">enum <a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#aeb835a12e6f40b1a619afa8abd773b6d">kudu::client::KuduColumnStorageAttributes::EncodingType</a></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Column encoding types. </p>
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="aeb835a12e6f40b1a619afa8abd773b6da28c1ed31be30579070232164c24b4b82"></a>GROUP_VARINT&#160;</td><td class="fielddoc">
+<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000010">Deprecated:</a></b></dt><dd>GROUP_VARINT is not supported for valid types, and will fall back to another encoding on the server side. </dd></dl>
+</td></tr>
+</table>
+
+</div>
+</div>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a2d6e5bec50a7305b3b4d75d21d000fab"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">kudu::client::KuduColumnStorageAttributes::KuduColumnStorageAttributes </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#aeb835a12e6f40b1a619afa8abd773b6d">EncodingType</a>&#160;</td>
+          <td class="paramname"><em>encoding</em> = <code>AUTO_ENCODING</code>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#af579406931a40daa5cb9e10603341a78">CompressionType</a>&#160;</td>
+          <td class="paramname"><em>compression</em> = <code>DEFAULT_COMPRESSION</code>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">int32_t&#160;</td>
+          <td class="paramname"><em>block_size</em> = <code>0</code>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td> const</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">explicit</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000009">Deprecated:</a></b></dt><dd>This constructor is deprecated for external use, and will be made private in a future release.</dd></dl>
+<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000010">Todo:</a></b></dt><dd>Make this constructor private.</dd></dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">encoding</td><td>Encoding type for the column storage. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">compression</td><td>Compression type for the column storage. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">block_size</td><td>Block size (in bytes, uncompressed data) for the column storage. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a00ef1e67c5fdd537d35f102748b1ad9d"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">const <a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#af579406931a40daa5cb9e10603341a78">CompressionType</a> kudu::client::KuduColumnStorageAttributes::compression </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd>Comporession type for the column storage. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="acd93d52b48be7d87a0d3fd4500048f2e"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">const <a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#aeb835a12e6f40b1a619afa8abd773b6d">EncodingType</a> kudu::client::KuduColumnStorageAttributes::encoding </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd>Encoding type for the column storage. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ac41bdd2fadff633e94b514ad1465fa44"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::string kudu::client::KuduColumnStorageAttributes::ToString </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd>String representation of the storage attributes. </dd></dl>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/kudu/client/<a class="el" href="schema_8h_source.html">schema.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduDelete-members.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduDelete-members.html
new file mode 100644
index 0000000..ca8af37
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduDelete-members.html
@@ -0,0 +1,117 @@
+<!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.11"/>
+<title>Kudu C++ client API: Member 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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduDelete.html">KuduDelete</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">kudu::client::KuduDelete Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classkudu_1_1client_1_1KuduDelete.html">kudu::client::KuduDelete</a>, including all inherited members.</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>DELETE</b> enum value (defined in <a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>INSERT</b> enum value (defined in <a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>KuduTable</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduDelete.html">kudu::client::KuduDelete</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduDelete.html">kudu::client::KuduDelete</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html#a8889770ce62e2ca0ce5d55c9c90af6bc">mutable_row</a>()</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html#a973b342ced786b23754b57fd83b34aa3">row</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduDelete.html#a586dc46e1d10118465e3b834ac578de0">ToString</a>() const OVERRIDE</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduDelete.html">kudu::client::KuduDelete</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html#a87d94ee5801a6b16fc6d1f44ee2e4357">Type</a> enum name</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>UPDATE</b> enum value (defined in <a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>UPSERT</b> enum value (defined in <a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>~KuduDelete</b>() (defined in <a class="el" href="classkudu_1_1client_1_1KuduDelete.html">kudu::client::KuduDelete</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduDelete.html">kudu::client::KuduDelete</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~KuduWriteOperation</b>() (defined in <a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+</table></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduDelete.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduDelete.html
new file mode 100644
index 0000000..996b517
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduDelete.html
@@ -0,0 +1,191 @@
+<!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.11"/>
+<title>Kudu C++ client API: kudu::client::KuduDelete Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduDelete.html">KuduDelete</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#friends">Friends</a> &#124;
+<a href="classkudu_1_1client_1_1KuduDelete-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">kudu::client::KuduDelete Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>A single row delete to be sent to the cluster.  
+ <a href="classkudu_1_1client_1_1KuduDelete.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="write__op_8h_source.html">write_op.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for kudu::client::KuduDelete:</div>
+<div class="dyncontent">
+<div class="center"><img src="classkudu_1_1client_1_1KuduDelete__inherit__graph.png" border="0" usemap="#kudu_1_1client_1_1KuduDelete_inherit__map" alt="Inheritance graph"/></div>
+<map name="kudu_1_1client_1_1KuduDelete_inherit__map" id="kudu_1_1client_1_1KuduDelete_inherit__map">
+<area shape="rect" id="node2" href="classkudu_1_1client_1_1KuduWriteOperation.html" title="A single&#45;row write operation to be sent to a Kudu table. " alt="" coords="5,5,220,32"/>
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<div class="dynheader">
+Collaboration diagram for kudu::client::KuduDelete:</div>
+<div class="dyncontent">
+<div class="center"><img src="classkudu_1_1client_1_1KuduDelete__coll__graph.png" border="0" usemap="#kudu_1_1client_1_1KuduDelete_coll__map" alt="Collaboration graph"/></div>
+<map name="kudu_1_1client_1_1KuduDelete_coll__map" id="kudu_1_1client_1_1KuduDelete_coll__map">
+<area shape="rect" id="node2" href="classkudu_1_1client_1_1KuduWriteOperation.html" title="A single&#45;row write operation to be sent to a Kudu table. " alt="" coords="5,5,220,32"/>
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a586dc46e1d10118465e3b834ac578de0"><td class="memItemLeft" align="right" valign="top">virtual std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduDelete.html#a586dc46e1d10118465e3b834ac578de0">ToString</a> () const OVERRIDE</td></tr>
+<tr class="separator:a586dc46e1d10118465e3b834ac578de0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classkudu_1_1client_1_1KuduWriteOperation"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classkudu_1_1client_1_1KuduWriteOperation')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a></td></tr>
+<tr class="memitem:a973b342ced786b23754b57fd83b34aa3 inherit pub_methods_classkudu_1_1client_1_1KuduWriteOperation"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html#a973b342ced786b23754b57fd83b34aa3">row</a> () const </td></tr>
+<tr class="separator:a973b342ced786b23754b57fd83b34aa3 inherit pub_methods_classkudu_1_1client_1_1KuduWriteOperation"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8889770ce62e2ca0ce5d55c9c90af6bc inherit pub_methods_classkudu_1_1client_1_1KuduWriteOperation"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html#a8889770ce62e2ca0ce5d55c9c90af6bc">mutable_row</a> ()</td></tr>
+<tr class="separator:a8889770ce62e2ca0ce5d55c9c90af6bc inherit pub_methods_classkudu_1_1client_1_1KuduWriteOperation"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
+Friends</h2></td></tr>
+<tr class="memitem:a770744f0111b5919212173a7efaf85cd"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a770744f0111b5919212173a7efaf85cd"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>KuduTable</b></td></tr>
+<tr class="separator:a770744f0111b5919212173a7efaf85cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
+Additional Inherited Members</h2></td></tr>
+<tr class="inherit_header pub_types_classkudu_1_1client_1_1KuduWriteOperation"><td colspan="2" onclick="javascript:toggleInherit('pub_types_classkudu_1_1client_1_1KuduWriteOperation')"><img src="closed.png" alt="-"/>&#160;Public Types inherited from <a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a></td></tr>
+<tr class="memitem:a87d94ee5801a6b16fc6d1f44ee2e4357 inherit pub_types_classkudu_1_1client_1_1KuduWriteOperation"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a87d94ee5801a6b16fc6d1f44ee2e4357"></a>enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html#a87d94ee5801a6b16fc6d1f44ee2e4357">Type</a> { <b>INSERT</b> = 1, 
+<b>UPDATE</b> = 2, 
+<b>DELETE</b> = 3, 
+<b>UPSERT</b> = 4
+ }<tr class="memdesc:a87d94ee5801a6b16fc6d1f44ee2e4357"><td class="mdescLeft">&#160;</td><td class="mdescRight">Write operation types. <br /></td></tr>
+</td></tr>
+<tr class="separator:a87d94ee5801a6b16fc6d1f44ee2e4357 inherit pub_types_classkudu_1_1client_1_1KuduWriteOperation"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>A single row delete to be sent to the cluster. </p>
+<dl class="section pre"><dt>Precondition</dt><dd>A delete requires the key columns to be set in the embedded <a class="el" href="classKuduPartialRow.html" title="A row which may only contain values for a subset of the columns. ">KuduPartialRow</a> object. </dd></dl>
+</div><h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a586dc46e1d10118465e3b834ac578de0"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual std::string kudu::client::KuduDelete::ToString </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p></p>
+<dl class="section return"><dt>Returns</dt><dd>String representation of the operation. </dd></dl>
+
+<p>Implements <a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html#a50b5405c4dfc7af038daa4780aea6e19">kudu::client::KuduWriteOperation</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/kudu/client/<a class="el" href="write__op_8h_source.html">write_op.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduDelete__coll__graph.map b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduDelete__coll__graph.map
new file mode 100644
index 0000000..33d2b3e
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduDelete__coll__graph.map
@@ -0,0 +1,3 @@
+<map id="kudu::client::KuduDelete" name="kudu::client::KuduDelete">
+<area shape="rect" id="node2" href="$classkudu_1_1client_1_1KuduWriteOperation.html" title="A single&#45;row write operation to be sent to a Kudu table. " alt="" coords="5,5,220,32"/>
+</map>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduDelete__coll__graph.md5 b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduDelete__coll__graph.md5
new file mode 100644
index 0000000..3eca426
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduDelete__coll__graph.md5
@@ -0,0 +1 @@
+f393a9210ab4c2981b9b2a30b0b77f44
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduDelete__coll__graph.png b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduDelete__coll__graph.png
new file mode 100644
index 0000000..1275f3c
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduDelete__coll__graph.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduDelete__inherit__graph.map b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduDelete__inherit__graph.map
new file mode 100644
index 0000000..33d2b3e
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduDelete__inherit__graph.map
@@ -0,0 +1,3 @@
+<map id="kudu::client::KuduDelete" name="kudu::client::KuduDelete">
+<area shape="rect" id="node2" href="$classkudu_1_1client_1_1KuduWriteOperation.html" title="A single&#45;row write operation to be sent to a Kudu table. " alt="" coords="5,5,220,32"/>
+</map>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduDelete__inherit__graph.md5 b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduDelete__inherit__graph.md5
new file mode 100644
index 0000000..3eca426
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduDelete__inherit__graph.md5
@@ -0,0 +1 @@
+f393a9210ab4c2981b9b2a30b0b77f44
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduDelete__inherit__graph.png b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduDelete__inherit__graph.png
new file mode 100644
index 0000000..1275f3c
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduDelete__inherit__graph.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduError-members.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduError-members.html
new file mode 100644
index 0000000..37d39ec
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduError-members.html
@@ -0,0 +1,114 @@
+<!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.11"/>
+<title>Kudu C++ client API: Member 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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduError.html">KuduError</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">kudu::client::KuduError Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classkudu_1_1client_1_1KuduError.html">kudu::client::KuduError</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduError.html#aaa1558d1db19ae85cf8ce1979b3e538a">failed_op</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduError.html">kudu::client::KuduError</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>internal::Batcher</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduError.html">kudu::client::KuduError</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduError.html">kudu::client::KuduError</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>internal::ErrorCollector</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduError.html">kudu::client::KuduError</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduError.html">kudu::client::KuduError</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>KuduSession</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduError.html">kudu::client::KuduError</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduError.html">kudu::client::KuduError</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduError.html#ae1a49bd16eeff4d2ab88fa70e1dc3c6a">release_failed_op</a>()</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduError.html">kudu::client::KuduError</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduError.html#abd5c5cd46255c8587a5562aec197077c">status</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduError.html">kudu::client::KuduError</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduError.html#a178b3cee942e4fbbe21fef859c8da3aa">was_possibly_successful</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduError.html">kudu::client::KuduError</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>~KuduError</b>() (defined in <a class="el" href="classkudu_1_1client_1_1KuduError.html">kudu::client::KuduError</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduError.html">kudu::client::KuduError</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduError.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduError.html
new file mode 100644
index 0000000..f51438c
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduError.html
@@ -0,0 +1,211 @@
+<!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.11"/>
+<title>Kudu C++ client API: kudu::client::KuduError Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduError.html">KuduError</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#friends">Friends</a> &#124;
+<a href="classkudu_1_1client_1_1KuduError-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">kudu::client::KuduError Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This class represents an error which occurred in a write operation.  
+ <a href="classkudu_1_1client_1_1KuduError.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="client_8h_source.html">client.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:abd5c5cd46255c8587a5562aec197077c"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classkudu_1_1Status.html">Status</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduError.html#abd5c5cd46255c8587a5562aec197077c">status</a> () const </td></tr>
+<tr class="separator:abd5c5cd46255c8587a5562aec197077c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaa1558d1db19ae85cf8ce1979b3e538a"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">KuduWriteOperation</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduError.html#aaa1558d1db19ae85cf8ce1979b3e538a">failed_op</a> () const </td></tr>
+<tr class="separator:aaa1558d1db19ae85cf8ce1979b3e538a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae1a49bd16eeff4d2ab88fa70e1dc3c6a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">KuduWriteOperation</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduError.html#ae1a49bd16eeff4d2ab88fa70e1dc3c6a">release_failed_op</a> ()</td></tr>
+<tr class="separator:ae1a49bd16eeff4d2ab88fa70e1dc3c6a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a178b3cee942e4fbbe21fef859c8da3aa"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduError.html#a178b3cee942e4fbbe21fef859c8da3aa">was_possibly_successful</a> () const </td></tr>
+<tr class="separator:a178b3cee942e4fbbe21fef859c8da3aa"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
+Friends</h2></td></tr>
+<tr class="memitem:ada57057f15990c8cc54770c782fa9ad4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ada57057f15990c8cc54770c782fa9ad4"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>internal::Batcher</b></td></tr>
+<tr class="separator:ada57057f15990c8cc54770c782fa9ad4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a13cd21cbf8fb61eb49faa404b75f6851"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a13cd21cbf8fb61eb49faa404b75f6851"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>internal::ErrorCollector</b></td></tr>
+<tr class="separator:a13cd21cbf8fb61eb49faa404b75f6851"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae192dc54e7e8c25675182bacad0d0b6e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae192dc54e7e8c25675182bacad0d0b6e"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>KuduSession</b></td></tr>
+<tr class="separator:ae192dc54e7e8c25675182bacad0d0b6e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>This class represents an error which occurred in a write operation. </p>
+<p>Using an instance of this class, it is possible to track error details such as the operation which caused the error, along with whatever the actual error was. </p>
+</div><h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="aaa1558d1db19ae85cf8ce1979b3e538a"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">const <a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">KuduWriteOperation</a>&amp; kudu::client::KuduError::failed_op </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd>The operation which failed. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ae1a49bd16eeff4d2ab88fa70e1dc3c6a"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">KuduWriteOperation</a>* kudu::client::KuduError::release_failed_op </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Release the operation that failed.</p>
+<p>This method must be called only once on an instance of the <a class="el" href="classkudu_1_1client_1_1KuduError.html" title="This class represents an error which occurred in a write operation. ">KuduError</a> class.</p>
+<dl class="section return"><dt>Returns</dt><dd>Raw pointer to write operation object. The caller takes ownership of the returned object. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="abd5c5cd46255c8587a5562aec197077c"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">const <a class="el" href="classkudu_1_1Status.html">Status</a>&amp; kudu::client::KuduError::status </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd>The actual error which occurred. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a178b3cee942e4fbbe21fef859c8da3aa"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool kudu::client::KuduError::was_possibly_successful </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Check if there is a chance that the requested operation was successful.</p>
+<p>In some cases, it is possible that the server did receive and successfully perform the requested operation, but the client can't tell whether or not it was successful. For example, if the call times out, the server may still succeed in processing at a later time.</p>
+<dl class="section return"><dt>Returns</dt><dd>This function returns <code>true</code> if there is some chance that the server did process the operation, and <code>false</code> if it can guarantee that the operation did not succeed. </dd></dl>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/kudu/client/<a class="el" href="client_8h_source.html">client.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduInsert-members.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduInsert-members.html
new file mode 100644
index 0000000..f0d5c9b
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduInsert-members.html
@@ -0,0 +1,117 @@
+<!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.11"/>
+<title>Kudu C++ client API: Member 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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduInsert.html">KuduInsert</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">kudu::client::KuduInsert Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classkudu_1_1client_1_1KuduInsert.html">kudu::client::KuduInsert</a>, including all inherited members.</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>DELETE</b> enum value (defined in <a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>INSERT</b> enum value (defined in <a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>KuduTable</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduInsert.html">kudu::client::KuduInsert</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduInsert.html">kudu::client::KuduInsert</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html#a8889770ce62e2ca0ce5d55c9c90af6bc">mutable_row</a>()</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html#a973b342ced786b23754b57fd83b34aa3">row</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduInsert.html#a7c0fb45a5bfa96574b6328be392ba240">ToString</a>() const OVERRIDE</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduInsert.html">kudu::client::KuduInsert</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html#a87d94ee5801a6b16fc6d1f44ee2e4357">Type</a> enum name</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>UPDATE</b> enum value (defined in <a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>UPSERT</b> enum value (defined in <a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>~KuduInsert</b>() (defined in <a class="el" href="classkudu_1_1client_1_1KuduInsert.html">kudu::client::KuduInsert</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduInsert.html">kudu::client::KuduInsert</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~KuduWriteOperation</b>() (defined in <a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+</table></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduInsert.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduInsert.html
new file mode 100644
index 0000000..e0f5b99
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduInsert.html
@@ -0,0 +1,191 @@
+<!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.11"/>
+<title>Kudu C++ client API: kudu::client::KuduInsert Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduInsert.html">KuduInsert</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#friends">Friends</a> &#124;
+<a href="classkudu_1_1client_1_1KuduInsert-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">kudu::client::KuduInsert Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>A single row insert to be sent to the cluster.  
+ <a href="classkudu_1_1client_1_1KuduInsert.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="write__op_8h_source.html">write_op.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for kudu::client::KuduInsert:</div>
+<div class="dyncontent">
+<div class="center"><img src="classkudu_1_1client_1_1KuduInsert__inherit__graph.png" border="0" usemap="#kudu_1_1client_1_1KuduInsert_inherit__map" alt="Inheritance graph"/></div>
+<map name="kudu_1_1client_1_1KuduInsert_inherit__map" id="kudu_1_1client_1_1KuduInsert_inherit__map">
+<area shape="rect" id="node2" href="classkudu_1_1client_1_1KuduWriteOperation.html" title="A single&#45;row write operation to be sent to a Kudu table. " alt="" coords="5,5,220,32"/>
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<div class="dynheader">
+Collaboration diagram for kudu::client::KuduInsert:</div>
+<div class="dyncontent">
+<div class="center"><img src="classkudu_1_1client_1_1KuduInsert__coll__graph.png" border="0" usemap="#kudu_1_1client_1_1KuduInsert_coll__map" alt="Collaboration graph"/></div>
+<map name="kudu_1_1client_1_1KuduInsert_coll__map" id="kudu_1_1client_1_1KuduInsert_coll__map">
+<area shape="rect" id="node2" href="classkudu_1_1client_1_1KuduWriteOperation.html" title="A single&#45;row write operation to be sent to a Kudu table. " alt="" coords="5,5,220,32"/>
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a7c0fb45a5bfa96574b6328be392ba240"><td class="memItemLeft" align="right" valign="top">virtual std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduInsert.html#a7c0fb45a5bfa96574b6328be392ba240">ToString</a> () const OVERRIDE</td></tr>
+<tr class="separator:a7c0fb45a5bfa96574b6328be392ba240"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classkudu_1_1client_1_1KuduWriteOperation"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classkudu_1_1client_1_1KuduWriteOperation')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a></td></tr>
+<tr class="memitem:a973b342ced786b23754b57fd83b34aa3 inherit pub_methods_classkudu_1_1client_1_1KuduWriteOperation"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html#a973b342ced786b23754b57fd83b34aa3">row</a> () const </td></tr>
+<tr class="separator:a973b342ced786b23754b57fd83b34aa3 inherit pub_methods_classkudu_1_1client_1_1KuduWriteOperation"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8889770ce62e2ca0ce5d55c9c90af6bc inherit pub_methods_classkudu_1_1client_1_1KuduWriteOperation"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html#a8889770ce62e2ca0ce5d55c9c90af6bc">mutable_row</a> ()</td></tr>
+<tr class="separator:a8889770ce62e2ca0ce5d55c9c90af6bc inherit pub_methods_classkudu_1_1client_1_1KuduWriteOperation"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
+Friends</h2></td></tr>
+<tr class="memitem:a770744f0111b5919212173a7efaf85cd"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a770744f0111b5919212173a7efaf85cd"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>KuduTable</b></td></tr>
+<tr class="separator:a770744f0111b5919212173a7efaf85cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
+Additional Inherited Members</h2></td></tr>
+<tr class="inherit_header pub_types_classkudu_1_1client_1_1KuduWriteOperation"><td colspan="2" onclick="javascript:toggleInherit('pub_types_classkudu_1_1client_1_1KuduWriteOperation')"><img src="closed.png" alt="-"/>&#160;Public Types inherited from <a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a></td></tr>
+<tr class="memitem:a87d94ee5801a6b16fc6d1f44ee2e4357 inherit pub_types_classkudu_1_1client_1_1KuduWriteOperation"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a87d94ee5801a6b16fc6d1f44ee2e4357"></a>enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html#a87d94ee5801a6b16fc6d1f44ee2e4357">Type</a> { <b>INSERT</b> = 1, 
+<b>UPDATE</b> = 2, 
+<b>DELETE</b> = 3, 
+<b>UPSERT</b> = 4
+ }<tr class="memdesc:a87d94ee5801a6b16fc6d1f44ee2e4357"><td class="mdescLeft">&#160;</td><td class="mdescRight">Write operation types. <br /></td></tr>
+</td></tr>
+<tr class="separator:a87d94ee5801a6b16fc6d1f44ee2e4357 inherit pub_types_classkudu_1_1client_1_1KuduWriteOperation"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>A single row insert to be sent to the cluster. </p>
+<dl class="section pre"><dt>Precondition</dt><dd>An insert requires all key columns to be set, as well as all columns which do not have default values. </dd></dl>
+</div><h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a7c0fb45a5bfa96574b6328be392ba240"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual std::string kudu::client::KuduInsert::ToString </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p></p>
+<dl class="section return"><dt>Returns</dt><dd>String representation of the operation. </dd></dl>
+
+<p>Implements <a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html#a50b5405c4dfc7af038daa4780aea6e19">kudu::client::KuduWriteOperation</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/kudu/client/<a class="el" href="write__op_8h_source.html">write_op.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduInsert__coll__graph.map b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduInsert__coll__graph.map
new file mode 100644
index 0000000..5bf9496
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduInsert__coll__graph.map
@@ -0,0 +1,3 @@
+<map id="kudu::client::KuduInsert" name="kudu::client::KuduInsert">
+<area shape="rect" id="node2" href="$classkudu_1_1client_1_1KuduWriteOperation.html" title="A single&#45;row write operation to be sent to a Kudu table. " alt="" coords="5,5,220,32"/>
+</map>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduInsert__coll__graph.md5 b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduInsert__coll__graph.md5
new file mode 100644
index 0000000..e13ec13
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduInsert__coll__graph.md5
@@ -0,0 +1 @@
+57ce200a977271746ebced85584af238
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduInsert__coll__graph.png b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduInsert__coll__graph.png
new file mode 100644
index 0000000..b2819d3
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduInsert__coll__graph.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduInsert__inherit__graph.map b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduInsert__inherit__graph.map
new file mode 100644
index 0000000..5bf9496
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduInsert__inherit__graph.map
@@ -0,0 +1,3 @@
+<map id="kudu::client::KuduInsert" name="kudu::client::KuduInsert">
+<area shape="rect" id="node2" href="$classkudu_1_1client_1_1KuduWriteOperation.html" title="A single&#45;row write operation to be sent to a Kudu table. " alt="" coords="5,5,220,32"/>
+</map>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduInsert__inherit__graph.md5 b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduInsert__inherit__graph.md5
new file mode 100644
index 0000000..e13ec13
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduInsert__inherit__graph.md5
@@ -0,0 +1 @@
+57ce200a977271746ebced85584af238
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduInsert__inherit__graph.png b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduInsert__inherit__graph.png
new file mode 100644
index 0000000..b2819d3
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduInsert__inherit__graph.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduLoggingCallback-members.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduLoggingCallback-members.html
new file mode 100644
index 0000000..9e09fe2
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduLoggingCallback-members.html
@@ -0,0 +1,109 @@
+<!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.11"/>
+<title>Kudu C++ client API: Member 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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduLoggingCallback.html">KuduLoggingCallback</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">kudu::client::KuduLoggingCallback Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classkudu_1_1client_1_1KuduLoggingCallback.html">kudu::client::KuduLoggingCallback</a>, including all inherited members.</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>KuduLoggingCallback</b>() (defined in <a class="el" href="classkudu_1_1client_1_1KuduLoggingCallback.html">kudu::client::KuduLoggingCallback</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduLoggingCallback.html">kudu::client::KuduLoggingCallback</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduLoggingCallback.html#ad9d5ac9b45246c5a4304d53ee86102eb">Run</a>(KuduLogSeverity severity, const char *filename, int line_number, const struct::tm *time, const char *message, size_t message_len)=0</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduLoggingCallback.html">kudu::client::KuduLoggingCallback</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~KuduLoggingCallback</b>() (defined in <a class="el" href="classkudu_1_1client_1_1KuduLoggingCallback.html">kudu::client::KuduLoggingCallback</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduLoggingCallback.html">kudu::client::KuduLoggingCallback</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+</table></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduLoggingCallback.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduLoggingCallback.html
new file mode 100644
index 0000000..95d076a
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduLoggingCallback.html
@@ -0,0 +1,205 @@
+<!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.11"/>
+<title>Kudu C++ client API: kudu::client::KuduLoggingCallback Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduLoggingCallback.html">KuduLoggingCallback</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="classkudu_1_1client_1_1KuduLoggingCallback-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">kudu::client::KuduLoggingCallback Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>The interface for all logging callbacks.  
+ <a href="classkudu_1_1client_1_1KuduLoggingCallback.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="callbacks_8h_source.html">callbacks.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for kudu::client::KuduLoggingCallback:</div>
+<div class="dyncontent">
+<div class="center"><img src="classkudu_1_1client_1_1KuduLoggingCallback__inherit__graph.png" border="0" usemap="#kudu_1_1client_1_1KuduLoggingCallback_inherit__map" alt="Inheritance graph"/></div>
+<map name="kudu_1_1client_1_1KuduLoggingCallback_inherit__map" id="kudu_1_1client_1_1KuduLoggingCallback_inherit__map">
+<area shape="rect" id="node2" href="classkudu_1_1client_1_1KuduLoggingFunctionCallback.html" title="The logging callback that invokes a function by pointer with a single argument. " alt="" coords="225,5,397,47"/>
+<area shape="rect" id="node3" href="classkudu_1_1client_1_1KuduLoggingMemberCallback.html" title="The logging callback that invokes a member function of an object. " alt="" coords="225,71,397,112"/>
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:ad9d5ac9b45246c5a4304d53ee86102eb"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduLoggingCallback.html#ad9d5ac9b45246c5a4304d53ee86102eb">Run</a> (KuduLogSeverity severity, const char *filename, int line_number, const struct::tm *time, const char *message, size_t message_len)=0</td></tr>
+<tr class="separator:ad9d5ac9b45246c5a4304d53ee86102eb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>The interface for all logging callbacks. </p>
+</div><h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="ad9d5ac9b45246c5a4304d53ee86102eb"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual void kudu::client::KuduLoggingCallback::Run </td>
+          <td>(</td>
+          <td class="paramtype">KuduLogSeverity&#160;</td>
+          <td class="paramname"><em>severity</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>filename</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">int&#160;</td>
+          <td class="paramname"><em>line_number</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const struct::tm *&#160;</td>
+          <td class="paramname"><em>time</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>message</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">size_t&#160;</td>
+          <td class="paramname"><em>message_len</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Log the message.</p>
+<dl class="section note"><dt>Note</dt><dd>The <code>message</code> is NOT terminated with an endline.</dd></dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">severity</td><td>Severity of the log message. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">filename</td><td>The name of the source file the message is originated from. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">line_number</td><td>The line of the source file the message is originated from. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">time</td><td>The absolute time when the log event was generated. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">message</td><td>The message to log. It's not terminated with an endline. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">message_len</td><td>Number of characters in the <code>message</code>. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p>Implemented in <a class="el" href="classkudu_1_1client_1_1KuduLoggingFunctionCallback.html#ab5119cbc60675f3ca77e08c1e87ec215">kudu::client::KuduLoggingFunctionCallback&lt; T &gt;</a>, and <a class="el" href="classkudu_1_1client_1_1KuduLoggingMemberCallback.html#a3d75e43bb4af846af66735fabe642a88">kudu::client::KuduLoggingMemberCallback&lt; T &gt;</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/kudu/client/<a class="el" href="callbacks_8h_source.html">callbacks.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduLoggingCallback__inherit__graph.map b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduLoggingCallback__inherit__graph.map
new file mode 100644
index 0000000..d47cacc
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduLoggingCallback__inherit__graph.map
@@ -0,0 +1,4 @@
+<map id="kudu::client::KuduLoggingCallback" name="kudu::client::KuduLoggingCallback">
+<area shape="rect" id="node2" href="$classkudu_1_1client_1_1KuduLoggingFunctionCallback.html" title="The logging callback that invokes a function by pointer with a single argument. " alt="" coords="225,5,397,47"/>
+<area shape="rect" id="node3" href="$classkudu_1_1client_1_1KuduLoggingMemberCallback.html" title="The logging callback that invokes a member function of an object. " alt="" coords="225,71,397,112"/>
+</map>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduLoggingCallback__inherit__graph.md5 b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduLoggingCallback__inherit__graph.md5
new file mode 100644
index 0000000..698fd0e
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduLoggingCallback__inherit__graph.md5
@@ -0,0 +1 @@
+2c7973af166a3552bb94dc77904bddfe
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduLoggingCallback__inherit__graph.png b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduLoggingCallback__inherit__graph.png
new file mode 100644
index 0000000..179bace
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduLoggingCallback__inherit__graph.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduLoggingFunctionCallback-members.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduLoggingFunctionCallback-members.html
new file mode 100644
index 0000000..48dff52
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduLoggingFunctionCallback-members.html
@@ -0,0 +1,111 @@
+<!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.11"/>
+<title>Kudu C++ client API: Member 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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduLoggingFunctionCallback.html">KuduLoggingFunctionCallback</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">kudu::client::KuduLoggingFunctionCallback&lt; T &gt; Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classkudu_1_1client_1_1KuduLoggingFunctionCallback.html">kudu::client::KuduLoggingFunctionCallback&lt; T &gt;</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduLoggingFunctionCallback.html#a609838f5c92d8f4612d195c161cf4003">FunctionType</a> typedef</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduLoggingFunctionCallback.html">kudu::client::KuduLoggingFunctionCallback&lt; T &gt;</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>KuduLoggingCallback</b>() (defined in <a class="el" href="classkudu_1_1client_1_1KuduLoggingCallback.html">kudu::client::KuduLoggingCallback</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduLoggingCallback.html">kudu::client::KuduLoggingCallback</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduLoggingFunctionCallback.html#a4263c504b21e0e5827f47a902e908a2c">KuduLoggingFunctionCallback</a>(FunctionType function, T arg)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduLoggingFunctionCallback.html">kudu::client::KuduLoggingFunctionCallback&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduLoggingFunctionCallback.html#ab5119cbc60675f3ca77e08c1e87ec215">Run</a>(KuduLogSeverity severity, const char *filename, int line_number, const struct::tm *time, const char *message, size_t message_len) OVERRIDE</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduLoggingFunctionCallback.html">kudu::client::KuduLoggingFunctionCallback&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~KuduLoggingCallback</b>() (defined in <a class="el" href="classkudu_1_1client_1_1KuduLoggingCallback.html">kudu::client::KuduLoggingCallback</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduLoggingCallback.html">kudu::client::KuduLoggingCallback</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+</table></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduLoggingFunctionCallback.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduLoggingFunctionCallback.html
new file mode 100644
index 0000000..7e7e264
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduLoggingFunctionCallback.html
@@ -0,0 +1,274 @@
+<!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.11"/>
+<title>Kudu C++ client API: kudu::client::KuduLoggingFunctionCallback&lt; T &gt; Class Template Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduLoggingFunctionCallback.html">KuduLoggingFunctionCallback</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-types">Public Types</a> &#124;
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="classkudu_1_1client_1_1KuduLoggingFunctionCallback-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">kudu::client::KuduLoggingFunctionCallback&lt; T &gt; Class Template Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>The logging callback that invokes a function by pointer with a single argument.  
+ <a href="classkudu_1_1client_1_1KuduLoggingFunctionCallback.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="callbacks_8h_source.html">callbacks.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for kudu::client::KuduLoggingFunctionCallback&lt; T &gt;:</div>
+<div class="dyncontent">
+<div class="center"><img src="classkudu_1_1client_1_1KuduLoggingFunctionCallback__inherit__graph.png" border="0" usemap="#kudu_1_1client_1_1KuduLoggingFunctionCallback_3_01T_01_4_inherit__map" alt="Inheritance graph"/></div>
+<map name="kudu_1_1client_1_1KuduLoggingFunctionCallback_3_01T_01_4_inherit__map" id="kudu_1_1client_1_1KuduLoggingFunctionCallback_3_01T_01_4_inherit__map">
+<area shape="rect" id="node2" href="classkudu_1_1client_1_1KuduLoggingCallback.html" title="The interface for all logging callbacks. " alt="" coords="5,5,177,47"/>
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<div class="dynheader">
+Collaboration diagram for kudu::client::KuduLoggingFunctionCallback&lt; T &gt;:</div>
+<div class="dyncontent">
+<div class="center"><img src="classkudu_1_1client_1_1KuduLoggingFunctionCallback__coll__graph.png" border="0" usemap="#kudu_1_1client_1_1KuduLoggingFunctionCallback_3_01T_01_4_coll__map" alt="Collaboration graph"/></div>
+<map name="kudu_1_1client_1_1KuduLoggingFunctionCallback_3_01T_01_4_coll__map" id="kudu_1_1client_1_1KuduLoggingFunctionCallback_3_01T_01_4_coll__map">
+<area shape="rect" id="node2" href="classkudu_1_1client_1_1KuduLoggingCallback.html" title="The interface for all logging callbacks. " alt="" coords="5,5,177,47"/>
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
+Public Types</h2></td></tr>
+<tr class="memitem:a609838f5c92d8f4612d195c161cf4003"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a609838f5c92d8f4612d195c161cf4003"></a>
+typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduLoggingFunctionCallback.html#a609838f5c92d8f4612d195c161cf4003">FunctionType</a>) (T arg, KuduLogSeverity severity, const char *filename, int line_number, const struct::tm *time, const char *message, size_t message_len)</td></tr>
+<tr class="memdesc:a609838f5c92d8f4612d195c161cf4003"><td class="mdescLeft">&#160;</td><td class="mdescRight">A handy typedef for the function with appropriate signature. <br /></td></tr>
+<tr class="separator:a609838f5c92d8f4612d195c161cf4003"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a4263c504b21e0e5827f47a902e908a2c"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduLoggingFunctionCallback.html#a4263c504b21e0e5827f47a902e908a2c">KuduLoggingFunctionCallback</a> (<a class="el" href="classkudu_1_1client_1_1KuduLoggingFunctionCallback.html#a609838f5c92d8f4612d195c161cf4003">FunctionType</a> function, T arg)</td></tr>
+<tr class="separator:a4263c504b21e0e5827f47a902e908a2c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab5119cbc60675f3ca77e08c1e87ec215"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduLoggingFunctionCallback.html#ab5119cbc60675f3ca77e08c1e87ec215">Run</a> (KuduLogSeverity severity, const char *filename, int line_number, const struct::tm *time, const char *message, size_t message_len) OVERRIDE</td></tr>
+<tr class="separator:ab5119cbc60675f3ca77e08c1e87ec215"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><h3>template&lt;typename T&gt;<br />
+class kudu::client::KuduLoggingFunctionCallback&lt; T &gt;</h3>
+
+<p>The logging callback that invokes a function by pointer with a single argument. </p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a4263c504b21e0e5827f47a902e908a2c"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T &gt; </div>
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduLoggingFunctionCallback.html">kudu::client::KuduLoggingFunctionCallback</a>&lt; T &gt;::<a class="el" href="classkudu_1_1client_1_1KuduLoggingFunctionCallback.html">KuduLoggingFunctionCallback</a> </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classkudu_1_1client_1_1KuduLoggingFunctionCallback.html#a609838f5c92d8f4612d195c161cf4003">FunctionType</a>&#160;</td>
+          <td class="paramname"><em>function</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">T&#160;</td>
+          <td class="paramname"><em>arg</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Build an instance of <a class="el" href="classkudu_1_1client_1_1KuduLoggingFunctionCallback.html" title="The logging callback that invokes a function by pointer with a single argument. ">KuduLoggingFunctionCallback</a>.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">function</td><td>A pointer to the logging function to invoke with the <code>arg</code> argument. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">arg</td><td>An argument for the function invocation. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="ab5119cbc60675f3ca77e08c1e87ec215"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T &gt; </div>
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual void <a class="el" href="classkudu_1_1client_1_1KuduLoggingFunctionCallback.html">kudu::client::KuduLoggingFunctionCallback</a>&lt; T &gt;::Run </td>
+          <td>(</td>
+          <td class="paramtype">KuduLogSeverity&#160;</td>
+          <td class="paramname"><em>severity</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>filename</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">int&#160;</td>
+          <td class="paramname"><em>line_number</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const struct::tm *&#160;</td>
+          <td class="paramname"><em>time</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>message</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">size_t&#160;</td>
+          <td class="paramname"><em>message_len</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p></p>
+<p>Log the message.</p>
+<dl class="section note"><dt>Note</dt><dd>The <code>message</code> is NOT terminated with an endline.</dd></dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">severity</td><td>Severity of the log message. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">filename</td><td>The name of the source file the message is originated from. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">line_number</td><td>The line of the source file the message is originated from. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">time</td><td>The absolute time when the log event was generated. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">message</td><td>The message to log. It's not terminated with an endline. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">message_len</td><td>Number of characters in the <code>message</code>. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p>Implements <a class="el" href="classkudu_1_1client_1_1KuduLoggingCallback.html#ad9d5ac9b45246c5a4304d53ee86102eb">kudu::client::KuduLoggingCallback</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/kudu/client/<a class="el" href="callbacks_8h_source.html">callbacks.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduLoggingFunctionCallback__coll__graph.map b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduLoggingFunctionCallback__coll__graph.map
new file mode 100644
index 0000000..8dfde55
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduLoggingFunctionCallback__coll__graph.map
@@ -0,0 +1,3 @@
+<map id="kudu::client::KuduLoggingFunctionCallback&lt; T &gt;" name="kudu::client::KuduLoggingFunctionCallback&lt; T &gt;">
+<area shape="rect" id="node2" href="$classkudu_1_1client_1_1KuduLoggingCallback.html" title="The interface for all logging callbacks. " alt="" coords="5,5,177,47"/>
+</map>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduLoggingFunctionCallback__coll__graph.md5 b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduLoggingFunctionCallback__coll__graph.md5
new file mode 100644
index 0000000..bfa0dfa
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduLoggingFunctionCallback__coll__graph.md5
@@ -0,0 +1 @@
+016ee1c24e4730995317d933c2008176
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduLoggingFunctionCallback__coll__graph.png b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduLoggingFunctionCallback__coll__graph.png
new file mode 100644
index 0000000..eb77960
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduLoggingFunctionCallback__coll__graph.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduLoggingFunctionCallback__inherit__graph.map b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduLoggingFunctionCallback__inherit__graph.map
new file mode 100644
index 0000000..8dfde55
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduLoggingFunctionCallback__inherit__graph.map
@@ -0,0 +1,3 @@
+<map id="kudu::client::KuduLoggingFunctionCallback&lt; T &gt;" name="kudu::client::KuduLoggingFunctionCallback&lt; T &gt;">
+<area shape="rect" id="node2" href="$classkudu_1_1client_1_1KuduLoggingCallback.html" title="The interface for all logging callbacks. " alt="" coords="5,5,177,47"/>
+</map>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduLoggingFunctionCallback__inherit__graph.md5 b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduLoggingFunctionCallback__inherit__graph.md5
new file mode 100644
index 0000000..bfa0dfa
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduLoggingFunctionCallback__inherit__graph.md5
@@ -0,0 +1 @@
+016ee1c24e4730995317d933c2008176
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduLoggingFunctionCallback__inherit__graph.png b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduLoggingFunctionCallback__inherit__graph.png
new file mode 100644
index 0000000..eb77960
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduLoggingFunctionCallback__inherit__graph.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduLoggingMemberCallback-members.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduLoggingMemberCallback-members.html
new file mode 100644
index 0000000..ebc4f6f
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduLoggingMemberCallback-members.html
@@ -0,0 +1,111 @@
+<!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.11"/>
+<title>Kudu C++ client API: Member 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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduLoggingMemberCallback.html">KuduLoggingMemberCallback</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">kudu::client::KuduLoggingMemberCallback&lt; T &gt; Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classkudu_1_1client_1_1KuduLoggingMemberCallback.html">kudu::client::KuduLoggingMemberCallback&lt; T &gt;</a>, including all inherited members.</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>KuduLoggingCallback</b>() (defined in <a class="el" href="classkudu_1_1client_1_1KuduLoggingCallback.html">kudu::client::KuduLoggingCallback</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduLoggingCallback.html">kudu::client::KuduLoggingCallback</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduLoggingMemberCallback.html#aeda4119b1288db0d055c9800e3485fd8">KuduLoggingMemberCallback</a>(T *object, MemberType member)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduLoggingMemberCallback.html">kudu::client::KuduLoggingMemberCallback&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduLoggingMemberCallback.html#a379dffd7e67238b37b9a4e4ad8e2a3ec">MemberType</a> typedef</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduLoggingMemberCallback.html">kudu::client::KuduLoggingMemberCallback&lt; T &gt;</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduLoggingMemberCallback.html#a3d75e43bb4af846af66735fabe642a88">Run</a>(KuduLogSeverity severity, const char *filename, int line_number, const struct::tm *time, const char *message, size_t message_len) OVERRIDE</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduLoggingMemberCallback.html">kudu::client::KuduLoggingMemberCallback&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~KuduLoggingCallback</b>() (defined in <a class="el" href="classkudu_1_1client_1_1KuduLoggingCallback.html">kudu::client::KuduLoggingCallback</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduLoggingCallback.html">kudu::client::KuduLoggingCallback</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+</table></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduLoggingMemberCallback.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduLoggingMemberCallback.html
new file mode 100644
index 0000000..ced45f0
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduLoggingMemberCallback.html
@@ -0,0 +1,274 @@
+<!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.11"/>
+<title>Kudu C++ client API: kudu::client::KuduLoggingMemberCallback&lt; T &gt; Class Template Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduLoggingMemberCallback.html">KuduLoggingMemberCallback</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-types">Public Types</a> &#124;
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="classkudu_1_1client_1_1KuduLoggingMemberCallback-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">kudu::client::KuduLoggingMemberCallback&lt; T &gt; Class Template Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>The logging callback that invokes a member function of an object.  
+ <a href="classkudu_1_1client_1_1KuduLoggingMemberCallback.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="callbacks_8h_source.html">callbacks.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for kudu::client::KuduLoggingMemberCallback&lt; T &gt;:</div>
+<div class="dyncontent">
+<div class="center"><img src="classkudu_1_1client_1_1KuduLoggingMemberCallback__inherit__graph.png" border="0" usemap="#kudu_1_1client_1_1KuduLoggingMemberCallback_3_01T_01_4_inherit__map" alt="Inheritance graph"/></div>
+<map name="kudu_1_1client_1_1KuduLoggingMemberCallback_3_01T_01_4_inherit__map" id="kudu_1_1client_1_1KuduLoggingMemberCallback_3_01T_01_4_inherit__map">
+<area shape="rect" id="node2" href="classkudu_1_1client_1_1KuduLoggingCallback.html" title="The interface for all logging callbacks. " alt="" coords="5,5,177,47"/>
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<div class="dynheader">
+Collaboration diagram for kudu::client::KuduLoggingMemberCallback&lt; T &gt;:</div>
+<div class="dyncontent">
+<div class="center"><img src="classkudu_1_1client_1_1KuduLoggingMemberCallback__coll__graph.png" border="0" usemap="#kudu_1_1client_1_1KuduLoggingMemberCallback_3_01T_01_4_coll__map" alt="Collaboration graph"/></div>
+<map name="kudu_1_1client_1_1KuduLoggingMemberCallback_3_01T_01_4_coll__map" id="kudu_1_1client_1_1KuduLoggingMemberCallback_3_01T_01_4_coll__map">
+<area shape="rect" id="node2" href="classkudu_1_1client_1_1KuduLoggingCallback.html" title="The interface for all logging callbacks. " alt="" coords="5,5,177,47"/>
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
+Public Types</h2></td></tr>
+<tr class="memitem:a379dffd7e67238b37b9a4e4ad8e2a3ec"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a379dffd7e67238b37b9a4e4ad8e2a3ec"></a>
+typedef void(T::*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduLoggingMemberCallback.html#a379dffd7e67238b37b9a4e4ad8e2a3ec">MemberType</a>) (KuduLogSeverity severity, const char *filename, int line_number, const struct::tm *time, const char *message, size_t message_len)</td></tr>
+<tr class="memdesc:a379dffd7e67238b37b9a4e4ad8e2a3ec"><td class="mdescLeft">&#160;</td><td class="mdescRight">A handy typedef for the member function with appropriate signature. <br /></td></tr>
+<tr class="separator:a379dffd7e67238b37b9a4e4ad8e2a3ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:aeda4119b1288db0d055c9800e3485fd8"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduLoggingMemberCallback.html#aeda4119b1288db0d055c9800e3485fd8">KuduLoggingMemberCallback</a> (T *object, <a class="el" href="classkudu_1_1client_1_1KuduLoggingMemberCallback.html#a379dffd7e67238b37b9a4e4ad8e2a3ec">MemberType</a> member)</td></tr>
+<tr class="separator:aeda4119b1288db0d055c9800e3485fd8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3d75e43bb4af846af66735fabe642a88"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduLoggingMemberCallback.html#a3d75e43bb4af846af66735fabe642a88">Run</a> (KuduLogSeverity severity, const char *filename, int line_number, const struct::tm *time, const char *message, size_t message_len) OVERRIDE</td></tr>
+<tr class="separator:a3d75e43bb4af846af66735fabe642a88"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><h3>template&lt;typename T&gt;<br />
+class kudu::client::KuduLoggingMemberCallback&lt; T &gt;</h3>
+
+<p>The logging callback that invokes a member function of an object. </p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="aeda4119b1288db0d055c9800e3485fd8"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T &gt; </div>
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduLoggingMemberCallback.html">kudu::client::KuduLoggingMemberCallback</a>&lt; T &gt;::<a class="el" href="classkudu_1_1client_1_1KuduLoggingMemberCallback.html">KuduLoggingMemberCallback</a> </td>
+          <td>(</td>
+          <td class="paramtype">T *&#160;</td>
+          <td class="paramname"><em>object</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="classkudu_1_1client_1_1KuduLoggingMemberCallback.html#a379dffd7e67238b37b9a4e4ad8e2a3ec">MemberType</a>&#160;</td>
+          <td class="paramname"><em>member</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Build an instance of <a class="el" href="classkudu_1_1client_1_1KuduLoggingMemberCallback.html" title="The logging callback that invokes a member function of an object. ">KuduLoggingMemberCallback</a>.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">object</td><td>A pointer to the object. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">member</td><td>A pointer to the member function of the <code>object</code> to invoke. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a3d75e43bb4af846af66735fabe642a88"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T &gt; </div>
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual void <a class="el" href="classkudu_1_1client_1_1KuduLoggingMemberCallback.html">kudu::client::KuduLoggingMemberCallback</a>&lt; T &gt;::Run </td>
+          <td>(</td>
+          <td class="paramtype">KuduLogSeverity&#160;</td>
+          <td class="paramname"><em>severity</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>filename</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">int&#160;</td>
+          <td class="paramname"><em>line_number</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const struct::tm *&#160;</td>
+          <td class="paramname"><em>time</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>message</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">size_t&#160;</td>
+          <td class="paramname"><em>message_len</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p></p>
+<p>Log the message.</p>
+<dl class="section note"><dt>Note</dt><dd>The <code>message</code> is NOT terminated with an endline.</dd></dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">severity</td><td>Severity of the log message. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">filename</td><td>The name of the source file the message is originated from. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">line_number</td><td>The line of the source file the message is originated from. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">time</td><td>The absolute time when the log event was generated. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">message</td><td>The message to log. It's not terminated with an endline. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">message_len</td><td>Number of characters in the <code>message</code>. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p>Implements <a class="el" href="classkudu_1_1client_1_1KuduLoggingCallback.html#ad9d5ac9b45246c5a4304d53ee86102eb">kudu::client::KuduLoggingCallback</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/kudu/client/<a class="el" href="callbacks_8h_source.html">callbacks.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduLoggingMemberCallback__coll__graph.map b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduLoggingMemberCallback__coll__graph.map
new file mode 100644
index 0000000..f206a17
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduLoggingMemberCallback__coll__graph.map
@@ -0,0 +1,3 @@
+<map id="kudu::client::KuduLoggingMemberCallback&lt; T &gt;" name="kudu::client::KuduLoggingMemberCallback&lt; T &gt;">
+<area shape="rect" id="node2" href="$classkudu_1_1client_1_1KuduLoggingCallback.html" title="The interface for all logging callbacks. " alt="" coords="5,5,177,47"/>
+</map>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduLoggingMemberCallback__coll__graph.md5 b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduLoggingMemberCallback__coll__graph.md5
new file mode 100644
index 0000000..a0e8efe
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduLoggingMemberCallback__coll__graph.md5
@@ -0,0 +1 @@
+012126fc0629bbfc59f09f34ee196150
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduLoggingMemberCallback__coll__graph.png b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduLoggingMemberCallback__coll__graph.png
new file mode 100644
index 0000000..9fc86c3
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduLoggingMemberCallback__coll__graph.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduLoggingMemberCallback__inherit__graph.map b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduLoggingMemberCallback__inherit__graph.map
new file mode 100644
index 0000000..f206a17
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduLoggingMemberCallback__inherit__graph.map
@@ -0,0 +1,3 @@
+<map id="kudu::client::KuduLoggingMemberCallback&lt; T &gt;" name="kudu::client::KuduLoggingMemberCallback&lt; T &gt;">
+<area shape="rect" id="node2" href="$classkudu_1_1client_1_1KuduLoggingCallback.html" title="The interface for all logging callbacks. " alt="" coords="5,5,177,47"/>
+</map>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduLoggingMemberCallback__inherit__graph.md5 b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduLoggingMemberCallback__inherit__graph.md5
new file mode 100644
index 0000000..a0e8efe
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduLoggingMemberCallback__inherit__graph.md5
@@ -0,0 +1 @@
+012126fc0629bbfc59f09f34ee196150
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduLoggingMemberCallback__inherit__graph.png b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduLoggingMemberCallback__inherit__graph.png
new file mode 100644
index 0000000..9fc86c3
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduLoggingMemberCallback__inherit__graph.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduPartitioner-members.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduPartitioner-members.html
new file mode 100644
index 0000000..f99ad2f
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduPartitioner-members.html
@@ -0,0 +1,110 @@
+<!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.11"/>
+<title>Kudu C++ client API: Member 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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduPartitioner.html">KuduPartitioner</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">kudu::client::KuduPartitioner Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classkudu_1_1client_1_1KuduPartitioner.html">kudu::client::KuduPartitioner</a>, including all inherited members.</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>KuduPartitionerBuilder</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduPartitioner.html">kudu::client::KuduPartitioner</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduPartitioner.html">kudu::client::KuduPartitioner</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduPartitioner.html#af692612faaccb259bf3d15f2bf5b246d">NumPartitions</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduPartitioner.html">kudu::client::KuduPartitioner</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduPartitioner.html#a05d816ba08d85d5c0c95025e12d2e369">PartitionRow</a>(const KuduPartialRow &amp;row, int *partition)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduPartitioner.html">kudu::client::KuduPartitioner</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>~KuduPartitioner</b>() (defined in <a class="el" href="classkudu_1_1client_1_1KuduPartitioner.html">kudu::client::KuduPartitioner</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduPartitioner.html">kudu::client::KuduPartitioner</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduPartitioner.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduPartitioner.html
new file mode 100644
index 0000000..6b847bf
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduPartitioner.html
@@ -0,0 +1,182 @@
+<!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.11"/>
+<title>Kudu C++ client API: kudu::client::KuduPartitioner Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduPartitioner.html">KuduPartitioner</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#friends">Friends</a> &#124;
+<a href="classkudu_1_1client_1_1KuduPartitioner-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">kudu::client::KuduPartitioner Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="client_8h_source.html">client.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:af692612faaccb259bf3d15f2bf5b246d"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduPartitioner.html#af692612faaccb259bf3d15f2bf5b246d">NumPartitions</a> () const </td></tr>
+<tr class="separator:af692612faaccb259bf3d15f2bf5b246d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a05d816ba08d85d5c0c95025e12d2e369"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduPartitioner.html#a05d816ba08d85d5c0c95025e12d2e369">PartitionRow</a> (const <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a> &amp;row, int *partition)</td></tr>
+<tr class="separator:a05d816ba08d85d5c0c95025e12d2e369"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
+Friends</h2></td></tr>
+<tr class="memitem:a4a88b01a7cf6a8b126e310af8a973077"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4a88b01a7cf6a8b126e310af8a973077"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>KuduPartitionerBuilder</b></td></tr>
+<tr class="separator:a4a88b01a7cf6a8b126e310af8a973077"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>A <a class="el" href="classkudu_1_1client_1_1KuduPartitioner.html">KuduPartitioner</a> allows clients to determine the target partition of a row without actually performing a write. The set of partitions is eagerly fetched when the <a class="el" href="classkudu_1_1client_1_1KuduPartitioner.html">KuduPartitioner</a> is constructed so that the actual partitioning step can be performed synchronously without any network trips.</p>
+<dl class="section note"><dt>Note</dt><dd>Because this operates on a metadata snapshot retrieved at construction time, it will not reflect any metadata changes to the table that have occurred since its creation.</dd></dl>
+<dl class="section warning"><dt>Warning</dt><dd>This class is not thread-safe. </dd></dl>
+</div><h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="af692612faaccb259bf3d15f2bf5b246d"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">int kudu::client::KuduPartitioner::NumPartitions </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Return the number of partitions known by this partitioner. The partition indices returned by <code>PartitionRow</code> are guaranteed to be less than this value. </p>
+
+</div>
+</div>
+<a class="anchor" id="a05d816ba08d85d5c0c95025e12d2e369"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduPartitioner::PartitionRow </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a> &amp;&#160;</td>
+          <td class="paramname"><em>row</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">int *&#160;</td>
+          <td class="paramname"><em>partition</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Determine the partition index that the given row falls into.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">row</td><td>The row to be partitioned. </td></tr>
+    <tr><td class="paramdir">[out]</td><td class="paramname">partition</td><td>The resulting partition index, or -1 if the row falls into a non-covered range. The result will be less than <code>NumPartitioons()</code>.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd><a class="el" href="classkudu_1_1Status.html" title="A representation of an operation&#39;s outcome. ">Status</a> OK if successful. May return a bad <a class="el" href="classkudu_1_1Status.html" title="A representation of an operation&#39;s outcome. ">Status</a> if the provided row does not have all columns of the partition key set. </dd></dl>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/kudu/client/<a class="el" href="client_8h_source.html">client.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduPartitionerBuilder-members.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduPartitionerBuilder-members.html
new file mode 100644
index 0000000..634aa7b
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduPartitionerBuilder-members.html
@@ -0,0 +1,110 @@
+<!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.11"/>
+<title>Kudu C++ client API: Member 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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduPartitionerBuilder.html">KuduPartitionerBuilder</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">kudu::client::KuduPartitionerBuilder Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classkudu_1_1client_1_1KuduPartitionerBuilder.html">kudu::client::KuduPartitionerBuilder</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduPartitionerBuilder.html#aa8859050484de2d367781ce6ec41d0ba">Build</a>(KuduPartitioner **partitioner)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduPartitionerBuilder.html">kudu::client::KuduPartitionerBuilder</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduPartitionerBuilder.html#a27d130235be1c2691779e1d97732a4ba">KuduPartitionerBuilder</a>(sp::shared_ptr&lt; KuduTable &gt; table)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduPartitionerBuilder.html">kudu::client::KuduPartitionerBuilder</a></td><td class="entry"><span class="mlabel">explicit</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduPartitionerBuilder.html#a11e28b7ad87a53a92d2ad5494f2c5f14">SetBuildTimeout</a>(MonoDelta timeout)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduPartitionerBuilder.html">kudu::client::KuduPartitionerBuilder</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>~KuduPartitionerBuilder</b>() (defined in <a class="el" href="classkudu_1_1client_1_1KuduPartitionerBuilder.html">kudu::client::KuduPartitionerBuilder</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduPartitionerBuilder.html">kudu::client::KuduPartitionerBuilder</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduPartitionerBuilder.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduPartitionerBuilder.html
new file mode 100644
index 0000000..e306167
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduPartitionerBuilder.html
@@ -0,0 +1,186 @@
+<!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.11"/>
+<title>Kudu C++ client API: kudu::client::KuduPartitionerBuilder Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduPartitionerBuilder.html">KuduPartitionerBuilder</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="classkudu_1_1client_1_1KuduPartitionerBuilder-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">kudu::client::KuduPartitionerBuilder Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>Builder for Partitioner instances.  
+ <a href="classkudu_1_1client_1_1KuduPartitionerBuilder.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="client_8h_source.html">client.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a27d130235be1c2691779e1d97732a4ba"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduPartitionerBuilder.html#a27d130235be1c2691779e1d97732a4ba">KuduPartitionerBuilder</a> (sp::shared_ptr&lt; <a class="el" href="classkudu_1_1client_1_1KuduTable.html">KuduTable</a> &gt; table)</td></tr>
+<tr class="separator:a27d130235be1c2691779e1d97732a4ba"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a11e28b7ad87a53a92d2ad5494f2c5f14"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a11e28b7ad87a53a92d2ad5494f2c5f14"></a>
+<a class="el" href="classkudu_1_1client_1_1KuduPartitionerBuilder.html">KuduPartitionerBuilder</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduPartitionerBuilder.html#a11e28b7ad87a53a92d2ad5494f2c5f14">SetBuildTimeout</a> (<a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a> timeout)</td></tr>
+<tr class="memdesc:a11e28b7ad87a53a92d2ad5494f2c5f14"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the timeout used for building the Partitioner object. <br /></td></tr>
+<tr class="separator:a11e28b7ad87a53a92d2ad5494f2c5f14"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa8859050484de2d367781ce6ec41d0ba"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduPartitionerBuilder.html#aa8859050484de2d367781ce6ec41d0ba">Build</a> (<a class="el" href="classkudu_1_1client_1_1KuduPartitioner.html">KuduPartitioner</a> **partitioner)</td></tr>
+<tr class="separator:aa8859050484de2d367781ce6ec41d0ba"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>Builder for Partitioner instances. </p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a27d130235be1c2691779e1d97732a4ba"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">kudu::client::KuduPartitionerBuilder::KuduPartitionerBuilder </td>
+          <td>(</td>
+          <td class="paramtype">sp::shared_ptr&lt; <a class="el" href="classkudu_1_1client_1_1KuduTable.html">KuduTable</a> &gt;&#160;</td>
+          <td class="paramname"><em>table</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">explicit</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Construct an instance of the class.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">table</td><td>The table whose rows should be partitioned. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="aa8859050484de2d367781ce6ec41d0ba"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduPartitionerBuilder::Build </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classkudu_1_1client_1_1KuduPartitioner.html">KuduPartitioner</a> **&#160;</td>
+          <td class="paramname"><em>partitioner</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Create a <a class="el" href="classkudu_1_1client_1_1KuduPartitioner.html">KuduPartitioner</a> object for the specified table.</p>
+<p>This fetches all of the partitioning information up front if it is not already cached by the associated <a class="el" href="classkudu_1_1client_1_1KuduClient.html" title="A handle for a connection to a cluster. ">KuduClient</a> object. Thus, it may time out or have an error if the Kudu master is not accessible.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[out]</td><td class="paramname">partitioner</td><td>The resulting <a class="el" href="classkudu_1_1client_1_1KuduPartitioner.html">KuduPartitioner</a> instance; caller gets ownership.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section note"><dt>Note</dt><dd>If the <a class="el" href="classkudu_1_1client_1_1KuduClient.html" title="A handle for a connection to a cluster. ">KuduClient</a> object associated with the table already has some partition information cached (e.g. due to the construction of other Partitioners, or due to normal read/write activity), the resulting Partitioner will make use of that cached information. This means that the resulting partitioner is not guaranteed to have up-to-date partition information in the case that there has been a recent change to the partitioning of the target table. </dd></dl>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/kudu/client/<a class="el" href="client_8h_source.html">client.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduPredicate-members.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduPredicate-members.html
new file mode 100644
index 0000000..3c95cf8
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduPredicate-members.html
@@ -0,0 +1,122 @@
+<!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.11"/>
+<title>Kudu C++ client API: Member 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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">KuduPredicate</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">kudu::client::KuduPredicate Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">kudu::client::KuduPredicate</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html#a48eae317f4365f10cdf32bcde560da7c">Clone</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">kudu::client::KuduPredicate</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html#ad58e80ced596d7738f99b5b83ba24eb4">ComparisonOp</a> enum name</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">kudu::client::KuduPredicate</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>ComparisonPredicateData</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">kudu::client::KuduPredicate</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">kudu::client::KuduPredicate</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html#ae8643ced562f7c8a4625a58a4e39abb0">Data</a></td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">kudu::client::KuduPredicate</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>EQUAL</b> enum value (defined in <a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">kudu::client::KuduPredicate</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">kudu::client::KuduPredicate</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>ErrorPredicateData</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">kudu::client::KuduPredicate</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">kudu::client::KuduPredicate</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GREATER</b> enum value (defined in <a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">kudu::client::KuduPredicate</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">kudu::client::KuduPredicate</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>GREATER_EQUAL</b> enum value (defined in <a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">kudu::client::KuduPredicate</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">kudu::client::KuduPredicate</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>InListPredicateData</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">kudu::client::KuduPredicate</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">kudu::client::KuduPredicate</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>IsNotNullPredicateData</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">kudu::client::KuduPredicate</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">kudu::client::KuduPredicate</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>IsNullPredicateData</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">kudu::client::KuduPredicate</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">kudu::client::KuduPredicate</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>KuduTable</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">kudu::client::KuduPredicate</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">kudu::client::KuduPredicate</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>LESS</b> enum value (defined in <a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">kudu::client::KuduPredicate</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">kudu::client::KuduPredicate</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>LESS_EQUAL</b> enum value (defined in <a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">kudu::client::KuduPredicate</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">kudu::client::KuduPredicate</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>ScanConfiguration</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">kudu::client::KuduPredicate</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">kudu::client::KuduPredicate</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>~KuduPredicate</b>() (defined in <a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">kudu::client::KuduPredicate</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">kudu::client::KuduPredicate</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduPredicate.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduPredicate.html
new file mode 100644
index 0000000..a0df2e4
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduPredicate.html
@@ -0,0 +1,203 @@
+<!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.11"/>
+<title>Kudu C++ client API: kudu::client::KuduPredicate Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">KuduPredicate</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-types">Public Types</a> &#124;
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pub-attribs">Public Attributes</a> &#124;
+<a href="#friends">Friends</a> &#124;
+<a href="classkudu_1_1client_1_1KuduPredicate-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">kudu::client::KuduPredicate Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>A representation of comparison predicate for Kudu queries.  
+ <a href="classkudu_1_1client_1_1KuduPredicate.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="scan__predicate_8h_source.html">scan_predicate.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
+Public Types</h2></td></tr>
+<tr class="memitem:ad58e80ced596d7738f99b5b83ba24eb4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad58e80ced596d7738f99b5b83ba24eb4"></a>enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html#ad58e80ced596d7738f99b5b83ba24eb4">ComparisonOp</a> { <br />
+&#160;&#160;<b>LESS_EQUAL</b>, 
+<b>GREATER_EQUAL</b>, 
+<b>EQUAL</b>, 
+<b>LESS</b>, 
+<br />
+&#160;&#160;<b>GREATER</b>
+<br />
+ }<tr class="memdesc:ad58e80ced596d7738f99b5b83ba24eb4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Supported comparison operators. <br /></td></tr>
+</td></tr>
+<tr class="separator:ad58e80ced596d7738f99b5b83ba24eb4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a48eae317f4365f10cdf32bcde560da7c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">KuduPredicate</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html#a48eae317f4365f10cdf32bcde560da7c">Clone</a> () const </td></tr>
+<tr class="separator:a48eae317f4365f10cdf32bcde560da7c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Public Attributes</h2></td></tr>
+<tr class="memitem:ae8643ced562f7c8a4625a58a4e39abb0"><td class="memItemLeft" align="right" valign="top">class KUDU_NO_EXPORT&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html#ae8643ced562f7c8a4625a58a4e39abb0">Data</a></td></tr>
+<tr class="memdesc:ae8643ced562f7c8a4625a58a4e39abb0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Forward declaration for the embedded PIMPL class.  <a href="#ae8643ced562f7c8a4625a58a4e39abb0">More...</a><br /></td></tr>
+<tr class="separator:ae8643ced562f7c8a4625a58a4e39abb0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
+Friends</h2></td></tr>
+<tr class="memitem:a35d8875275f641cca07004f04ccf34f3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a35d8875275f641cca07004f04ccf34f3"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>ComparisonPredicateData</b></td></tr>
+<tr class="separator:a35d8875275f641cca07004f04ccf34f3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4b1b4b0a54ce14a49fdc0e1854d2a806"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4b1b4b0a54ce14a49fdc0e1854d2a806"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>ErrorPredicateData</b></td></tr>
+<tr class="separator:a4b1b4b0a54ce14a49fdc0e1854d2a806"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a49c2d34d11653cac56bc8c33d15b09e4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a49c2d34d11653cac56bc8c33d15b09e4"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>InListPredicateData</b></td></tr>
+<tr class="separator:a49c2d34d11653cac56bc8c33d15b09e4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa9131f12894fccd5bd52e4349936756e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa9131f12894fccd5bd52e4349936756e"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>IsNotNullPredicateData</b></td></tr>
+<tr class="separator:aa9131f12894fccd5bd52e4349936756e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af1d5ff1bb2d8d5dd1e5ccd9b2c04474f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af1d5ff1bb2d8d5dd1e5ccd9b2c04474f"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>IsNullPredicateData</b></td></tr>
+<tr class="separator:af1d5ff1bb2d8d5dd1e5ccd9b2c04474f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a770744f0111b5919212173a7efaf85cd"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a770744f0111b5919212173a7efaf85cd"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>KuduTable</b></td></tr>
+<tr class="separator:a770744f0111b5919212173a7efaf85cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a72362478ccdaaf6ea61d15d9fc13f7c6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a72362478ccdaaf6ea61d15d9fc13f7c6"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>ScanConfiguration</b></td></tr>
+<tr class="separator:a72362478ccdaaf6ea61d15d9fc13f7c6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>A representation of comparison predicate for Kudu queries. </p>
+<p>Call <a class="el" href="classkudu_1_1client_1_1KuduTable.html#aed6c3571aff35270a3e6cd66770f1cea">KuduTable::NewComparisonPredicate()</a> to create a predicate object. </p>
+</div><h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a48eae317f4365f10cdf32bcde560da7c"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">KuduPredicate</a>* kudu::client::KuduPredicate::Clone </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd>A new, identical, <a class="el" href="classkudu_1_1client_1_1KuduPredicate.html" title="A representation of comparison predicate for Kudu queries. ">KuduPredicate</a> object. </dd></dl>
+
+</div>
+</div>
+<h2 class="groupheader">Member Data Documentation</h2>
+<a class="anchor" id="ae8643ced562f7c8a4625a58a4e39abb0"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">class KUDU_NO_EXPORT kudu::client::KuduPredicate::Data</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Forward declaration for the embedded PIMPL class. </p>
+<p>The PIMPL class has to be public since it's actually just an interface, and gcc gives an error trying to derive from a private nested class. </p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/kudu/client/<a class="el" href="scan__predicate_8h_source.html">scan_predicate.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduReplica-members.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduReplica-members.html
new file mode 100644
index 0000000..ba43977
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduReplica-members.html
@@ -0,0 +1,111 @@
+<!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.11"/>
+<title>Kudu C++ client API: Member 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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduReplica.html">KuduReplica</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">kudu::client::KuduReplica Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classkudu_1_1client_1_1KuduReplica.html">kudu::client::KuduReplica</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduReplica.html#a5e380e1e7f2154b61269737d65dd2649">is_leader</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduReplica.html">kudu::client::KuduReplica</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>KuduClient</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduReplica.html">kudu::client::KuduReplica</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduReplica.html">kudu::client::KuduReplica</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>KuduScanTokenBuilder</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduReplica.html">kudu::client::KuduReplica</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduReplica.html">kudu::client::KuduReplica</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduReplica.html#ad7081012fda917ece3e149a20318288a">ts</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduReplica.html">kudu::client::KuduReplica</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~KuduReplica</b>() (defined in <a class="el" href="classkudu_1_1client_1_1KuduReplica.html">kudu::client::KuduReplica</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduReplica.html">kudu::client::KuduReplica</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduReplica.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduReplica.html
new file mode 100644
index 0000000..58ce041
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduReplica.html
@@ -0,0 +1,168 @@
+<!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.11"/>
+<title>Kudu C++ client API: kudu::client::KuduReplica Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduReplica.html">KuduReplica</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#friends">Friends</a> &#124;
+<a href="classkudu_1_1client_1_1KuduReplica-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">kudu::client::KuduReplica Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>In-memory representation of a remote tablet's replica.  
+ <a href="classkudu_1_1client_1_1KuduReplica.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="client_8h_source.html">client.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a5e380e1e7f2154b61269737d65dd2649"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduReplica.html#a5e380e1e7f2154b61269737d65dd2649">is_leader</a> () const </td></tr>
+<tr class="separator:a5e380e1e7f2154b61269737d65dd2649"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad7081012fda917ece3e149a20318288a"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classkudu_1_1client_1_1KuduTabletServer.html">KuduTabletServer</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduReplica.html#ad7081012fda917ece3e149a20318288a">ts</a> () const </td></tr>
+<tr class="separator:ad7081012fda917ece3e149a20318288a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
+Friends</h2></td></tr>
+<tr class="memitem:a5b5a804db2a148e792148f521f04b486"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5b5a804db2a148e792148f521f04b486"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>KuduClient</b></td></tr>
+<tr class="separator:a5b5a804db2a148e792148f521f04b486"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a644ef5d9d668e5772acd6dc03c4f14ee"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a644ef5d9d668e5772acd6dc03c4f14ee"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>KuduScanTokenBuilder</b></td></tr>
+<tr class="separator:a644ef5d9d668e5772acd6dc03c4f14ee"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>In-memory representation of a remote tablet's replica. </p>
+</div><h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a5e380e1e7f2154b61269737d65dd2649"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool kudu::client::KuduReplica::is_leader </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd>Whether or not this replica is a Raft leader.</dd></dl>
+<dl class="section note"><dt>Note</dt><dd>This information may be stale; the role of a replica may change at any time. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ad7081012fda917ece3e149a20318288a"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">const <a class="el" href="classkudu_1_1client_1_1KuduTabletServer.html">KuduTabletServer</a>&amp; kudu::client::KuduReplica::ts </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd>The tablet server hosting this remote replica. </dd></dl>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/kudu/client/<a class="el" href="client_8h_source.html">client.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduScanBatch-members.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduScanBatch-members.html
new file mode 100644
index 0000000..5eb0dad
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduScanBatch-members.html
@@ -0,0 +1,152 @@
+<!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.11"/>
+<title>Kudu C++ client API: Member 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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">KuduScanBatch</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">kudu::client::KuduScanBatch Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#a30f55cf8f3c9d6fcb47537e586d82e9f">begin</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#ae07d3fd8616c5c69cc0a4ef3d247bf2c">cell</a>(int col_idx) const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#a1073a0c6517b126690d99527556dba51">direct_data</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#ad30dcfafb276b5347842882cf68cb522">end</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetBinary</b>(const Slice &amp;col_name, Slice *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>GetBinary</b>(int col_idx, Slice *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetBool</b>(const Slice &amp;col_name, bool *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>GetBool</b>(int col_idx, bool *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetDouble</b>(const Slice &amp;col_name, double *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>GetDouble</b>(int col_idx, double *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetFloat</b>(const Slice &amp;col_name, float *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>GetFloat</b>(int col_idx, float *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetInt16</b>(const Slice &amp;col_name, int16_t *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>GetInt16</b>(int col_idx, int16_t *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetInt32</b>(const Slice &amp;col_name, int32_t *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>GetInt32</b>(int col_idx, int32_t *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetInt64</b>(const Slice &amp;col_name, int64_t *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>GetInt64</b>(int col_idx, int64_t *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetInt8</b>(const Slice &amp;col_name, int8_t *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>GetInt8</b>(int col_idx, int8_t *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetString</b>(const Slice &amp;col_name, Slice *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>GetString</b>(int col_idx, Slice *val) const WARN_UNUSED_RESULT (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetUnixTimeMicros</b>(const Slice &amp;col_name, int64_t *micros_since_utc_epoch) const WARN_UNUSED_RESULT (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>GetUnixTimeMicros</b>(int col_idx, int64_t *micros_since_utc_epoch) const WARN_UNUSED_RESULT (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#af41b26a5f137122454d6341a5b5c1a43">indirect_data</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>IntKeysTestSetup</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#af37f56c4ef55f2e140fcea2a07340054">IsNull</a>(const Slice &amp;col_name) const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#a1b0b04656fec608919b7b6ac7c99451e">IsNull</a>(int col_idx) const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>KuduScanBatch</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>KuduScanBatch</b>() (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>KuduScanner</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#a16e45694c5932eb3decc2184c3834157">NumRows</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#afd2b2c4cb038cbd366c2af8cf09a3a68">operator!=</a>(const const_iterator &amp;other) const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#ab057b7b1bfb713a7e8f216e3b288cb10">operator*</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#ad5df483ed3172caab5a8d6a72abfad0c">operator++</a>()</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#a4b1ad47fd7d429859b6181825a063c48">operator++</a>(int)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#a378a5844a4b4774056b26f0003c15048">operator==</a>(const const_iterator &amp;other) const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#a3b58e77f53beea357fbb8bcddaab3137">projection_schema</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#a93c2f0914140dd405a51d57e2f75014a">Row</a>(int idx) const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#a92bbfa48e9b503181c2dfb5f11f14e4e">RowPtr</a>()</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>SliceKeysTestSetup</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>tools::ReplicaDumper</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#a57ebd850adefa8af87f815540d890a34">ToString</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#ae1a827120c84eeedb703451bd5782467">value_type</a> typedef</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~const_iterator</b>() (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>~KuduScanBatch</b>() (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduScanBatch.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduScanBatch.html
new file mode 100644
index 0000000..6cfa6cd
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduScanBatch.html
@@ -0,0 +1,716 @@
+<!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.11"/>
+<title>Kudu C++ client API: kudu::client::KuduScanBatch Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">KuduScanBatch</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-types">Public Types</a> &#124;
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#friends">Friends</a> &#124;
+<a href="classkudu_1_1client_1_1KuduScanBatch-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">kudu::client::KuduScanBatch Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>A batch of zero or more rows returned by a scan operation.  
+ <a href="classkudu_1_1client_1_1KuduScanBatch.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="scan__batch_8h_source.html">scan_batch.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for kudu::client::KuduScanBatch:</div>
+<div class="dyncontent">
+<div class="center"><img src="classkudu_1_1client_1_1KuduScanBatch__inherit__graph.png" border="0" usemap="#kudu_1_1client_1_1KuduScanBatch_inherit__map" alt="Inheritance graph"/></div>
+<map name="kudu_1_1client_1_1KuduScanBatch_inherit__map" id="kudu_1_1client_1_1KuduScanBatch_inherit__map">
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<div class="dynheader">
+Collaboration diagram for kudu::client::KuduScanBatch:</div>
+<div class="dyncontent">
+<div class="center"><img src="classkudu_1_1client_1_1KuduScanBatch__coll__graph.png" border="0" usemap="#kudu_1_1client_1_1KuduScanBatch_coll__map" alt="Collaboration graph"/></div>
+<map name="kudu_1_1client_1_1KuduScanBatch_coll__map" id="kudu_1_1client_1_1KuduScanBatch_coll__map">
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
+Public Types</h2></td></tr>
+<tr class="memitem:ae1a827120c84eeedb703451bd5782467"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae1a827120c84eeedb703451bd5782467"></a>
+typedef <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#a92bbfa48e9b503181c2dfb5f11f14e4e">RowPtr</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#ae1a827120c84eeedb703451bd5782467">value_type</a></td></tr>
+<tr class="memdesc:ae1a827120c84eeedb703451bd5782467"><td class="mdescLeft">&#160;</td><td class="mdescRight">A handy typedef for the RowPtr. <br /></td></tr>
+<tr class="separator:ae1a827120c84eeedb703451bd5782467"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a16e45694c5932eb3decc2184c3834157"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#a16e45694c5932eb3decc2184c3834157">NumRows</a> () const </td></tr>
+<tr class="separator:a16e45694c5932eb3decc2184c3834157"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a93c2f0914140dd405a51d57e2f75014a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#a92bbfa48e9b503181c2dfb5f11f14e4e">KuduScanBatch::RowPtr</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#a93c2f0914140dd405a51d57e2f75014a">Row</a> (int idx) const </td></tr>
+<tr class="separator:a93c2f0914140dd405a51d57e2f75014a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a30f55cf8f3c9d6fcb47537e586d82e9f"><td class="memItemLeft" align="right" valign="top">const_iterator&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#a30f55cf8f3c9d6fcb47537e586d82e9f">begin</a> () const </td></tr>
+<tr class="separator:a30f55cf8f3c9d6fcb47537e586d82e9f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad30dcfafb276b5347842882cf68cb522"><td class="memItemLeft" align="right" valign="top">const_iterator&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#ad30dcfafb276b5347842882cf68cb522">end</a> () const </td></tr>
+<tr class="separator:ad30dcfafb276b5347842882cf68cb522"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3b58e77f53beea357fbb8bcddaab3137"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#a3b58e77f53beea357fbb8bcddaab3137">projection_schema</a> () const </td></tr>
+<tr class="separator:a3b58e77f53beea357fbb8bcddaab3137"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a92bbfa48e9b503181c2dfb5f11f14e4e"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#a92bbfa48e9b503181c2dfb5f11f14e4e">RowPtr</a> ()</td></tr>
+<tr class="separator:a92bbfa48e9b503181c2dfb5f11f14e4e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af37f56c4ef55f2e140fcea2a07340054"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#af37f56c4ef55f2e140fcea2a07340054">IsNull</a> (const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;col_name) const </td></tr>
+<tr class="separator:af37f56c4ef55f2e140fcea2a07340054"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1b0b04656fec608919b7b6ac7c99451e"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#a1b0b04656fec608919b7b6ac7c99451e">IsNull</a> (int col_idx) const </td></tr>
+<tr class="separator:a1b0b04656fec608919b7b6ac7c99451e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae07d3fd8616c5c69cc0a4ef3d247bf2c"><td class="memItemLeft" align="right" valign="top">const void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#ae07d3fd8616c5c69cc0a4ef3d247bf2c">cell</a> (int col_idx) const </td></tr>
+<tr class="separator:ae07d3fd8616c5c69cc0a4ef3d247bf2c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a57ebd850adefa8af87f815540d890a34"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#a57ebd850adefa8af87f815540d890a34">ToString</a> () const </td></tr>
+<tr class="separator:a57ebd850adefa8af87f815540d890a34"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab057b7b1bfb713a7e8f216e3b288cb10"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#a92bbfa48e9b503181c2dfb5f11f14e4e">KuduScanBatch::RowPtr</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#ab057b7b1bfb713a7e8f216e3b288cb10">operator*</a> () const </td></tr>
+<tr class="separator:ab057b7b1bfb713a7e8f216e3b288cb10"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad5df483ed3172caab5a8d6a72abfad0c"><td class="memItemLeft" align="right" valign="top">const_iterator &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#ad5df483ed3172caab5a8d6a72abfad0c">operator++</a> ()</td></tr>
+<tr class="separator:ad5df483ed3172caab5a8d6a72abfad0c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4b1ad47fd7d429859b6181825a063c48"><td class="memItemLeft" align="right" valign="top">const_iterator&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#a4b1ad47fd7d429859b6181825a063c48">operator++</a> (int)</td></tr>
+<tr class="separator:a4b1ad47fd7d429859b6181825a063c48"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a378a5844a4b4774056b26f0003c15048"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#a378a5844a4b4774056b26f0003c15048">operator==</a> (const const_iterator &amp;other) const </td></tr>
+<tr class="separator:a378a5844a4b4774056b26f0003c15048"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afd2b2c4cb038cbd366c2af8cf09a3a68"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#afd2b2c4cb038cbd366c2af8cf09a3a68">operator!=</a> (const const_iterator &amp;other) const </td></tr>
+<tr class="separator:afd2b2c4cb038cbd366c2af8cf09a3a68"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr><td colspan="2"><div class="groupHeader">Advanced/Unstable API</div></td></tr>
+<tr><td colspan="2"><div class="groupText"><p>There are no guarantees on the stability of the format returned by these methods, which might change at any given time.</p>
+<dl class="section note"><dt>Note</dt><dd>The Slices returned by both <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#a1073a0c6517b126690d99527556dba51">direct_data()</a> and <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#af41b26a5f137122454d6341a5b5c1a43">indirect_data()</a> are only valid for the lifetime of the <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html" title="A batch of zero or more rows returned by a scan operation. ">KuduScanBatch</a>. </dd></dl>
+</div></td></tr>
+<tr class="memitem:a1073a0c6517b126690d99527556dba51"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Slice.html">Slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#a1073a0c6517b126690d99527556dba51">direct_data</a> () const </td></tr>
+<tr class="separator:a1073a0c6517b126690d99527556dba51"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af41b26a5f137122454d6341a5b5c1a43"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Slice.html">Slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#af41b26a5f137122454d6341a5b5c1a43">indirect_data</a> () const </td></tr>
+<tr class="separator:af41b26a5f137122454d6341a5b5c1a43"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr><td colspan="2"><div class="groupHeader">Getters for integral type columns by column name.</div></td></tr>
+<tr><td colspan="2"><div class="groupText"><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">col_name</td><td>The name of the target column. </td></tr>
+    <tr><td class="paramdir">[out]</td><td class="paramname">val</td><td>Placeholder for the result value. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. Return a bad <a class="el" href="classkudu_1_1Status.html" title="A representation of an operation&#39;s outcome. ">Status</a> if at least one of the following is <code>true:</code> <ul>
+<li>The type does not match. </li>
+<li>The value is unset. </li>
+<li>The value is <code>NULL</code>. </li>
+</ul>
+</dd></dl>
+</div></td></tr>
+<tr class="memitem:a3b1a867cf2fd47b697fe3a68e28fadd8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3b1a867cf2fd47b697fe3a68e28fadd8"></a>
+<a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><b>GetBool</b> (const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;col_name, bool *val) const WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:a3b1a867cf2fd47b697fe3a68e28fadd8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7bfea7b94e64073562892445a2a2ac7b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7bfea7b94e64073562892445a2a2ac7b"></a>
+<a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><b>GetInt8</b> (const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;col_name, int8_t *val) const WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:a7bfea7b94e64073562892445a2a2ac7b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afbaff6bf597df2fa0696bdc5cbdfb037"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afbaff6bf597df2fa0696bdc5cbdfb037"></a>
+<a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><b>GetInt16</b> (const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;col_name, int16_t *val) const WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:afbaff6bf597df2fa0696bdc5cbdfb037"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abc5120c7aadb029e442235a7131f6fd2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abc5120c7aadb029e442235a7131f6fd2"></a>
+<a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><b>GetInt32</b> (const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;col_name, int32_t *val) const WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:abc5120c7aadb029e442235a7131f6fd2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a51d43f077b4510b58a2fd471ae81f7b0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a51d43f077b4510b58a2fd471ae81f7b0"></a>
+<a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><b>GetInt64</b> (const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;col_name, int64_t *val) const WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:a51d43f077b4510b58a2fd471ae81f7b0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae1261a486faa04d0c984b50132e0a4a3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae1261a486faa04d0c984b50132e0a4a3"></a>
+<a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><b>GetUnixTimeMicros</b> (const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;col_name, int64_t *micros_since_utc_epoch) const WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:ae1261a486faa04d0c984b50132e0a4a3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a70ea98bc135e0b86285530c58e33bff3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a70ea98bc135e0b86285530c58e33bff3"></a>
+<a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><b>GetFloat</b> (const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;col_name, float *val) const WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:a70ea98bc135e0b86285530c58e33bff3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7d09dafc214133f2306eebc9aefddff0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7d09dafc214133f2306eebc9aefddff0"></a>
+<a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><b>GetDouble</b> (const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;col_name, double *val) const WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:a7d09dafc214133f2306eebc9aefddff0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr><td colspan="2"><div class="groupHeader">Getters for integral type columns by column index.</div></td></tr>
+<tr><td colspan="2"><div class="groupText"><p>These methods are faster than their name-based counterparts since using indices avoids a hashmap lookup, so index-based getters should be preferred in performance-sensitive code.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">col_index</td><td>The index of the column. </td></tr>
+    <tr><td class="paramdir">[out]</td><td class="paramname">val</td><td>Pointer to the placeholder to put the resulting value.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. Return a bad <a class="el" href="classkudu_1_1Status.html" title="A representation of an operation&#39;s outcome. ">Status</a> if at least one of the following is <code>true:</code> <ul>
+<li>The type does not match. </li>
+<li>The value is unset. </li>
+<li>The value is <code>NULL</code>. </li>
+</ul>
+</dd></dl>
+</div></td></tr>
+<tr class="memitem:a4b1044c3b78e5a6407c2a797005b0e21"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4b1044c3b78e5a6407c2a797005b0e21"></a>
+<a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><b>GetBool</b> (int col_idx, bool *val) const WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:a4b1044c3b78e5a6407c2a797005b0e21"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a81a30b5b89f6fa106b5d8575c3fb62b9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a81a30b5b89f6fa106b5d8575c3fb62b9"></a>
+<a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><b>GetInt8</b> (int col_idx, int8_t *val) const WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:a81a30b5b89f6fa106b5d8575c3fb62b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab5f35c107dc26165546065189dd53dfa"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab5f35c107dc26165546065189dd53dfa"></a>
+<a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><b>GetInt16</b> (int col_idx, int16_t *val) const WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:ab5f35c107dc26165546065189dd53dfa"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab321b8c245cc1748c3b3ecdf507b08fb"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab321b8c245cc1748c3b3ecdf507b08fb"></a>
+<a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><b>GetInt32</b> (int col_idx, int32_t *val) const WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:ab321b8c245cc1748c3b3ecdf507b08fb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab59039c6f073df0b57ddc16fb8d8c432"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab59039c6f073df0b57ddc16fb8d8c432"></a>
+<a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><b>GetInt64</b> (int col_idx, int64_t *val) const WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:ab59039c6f073df0b57ddc16fb8d8c432"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acc4dfced2215c5115fecb647fa73e4e7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acc4dfced2215c5115fecb647fa73e4e7"></a>
+<a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><b>GetUnixTimeMicros</b> (int col_idx, int64_t *micros_since_utc_epoch) const WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:acc4dfced2215c5115fecb647fa73e4e7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae41dd0f1e2b4bf074ded210382b825bd"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae41dd0f1e2b4bf074ded210382b825bd"></a>
+<a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><b>GetFloat</b> (int col_idx, float *val) const WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:ae41dd0f1e2b4bf074ded210382b825bd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab2b7fb17cac4571139b2eaca761a99c0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab2b7fb17cac4571139b2eaca761a99c0"></a>
+<a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><b>GetDouble</b> (int col_idx, double *val) const WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:ab2b7fb17cac4571139b2eaca761a99c0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr><td colspan="2"><div class="groupHeader">Getters for string/binary column by column name.</div></td></tr>
+<tr><td colspan="2"><div class="groupText"><p>Get the string/binary value for a column by its name.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">col_name</td><td>Name of the column. </td></tr>
+    <tr><td class="paramdir">[out]</td><td class="paramname">val</td><td>Pointer to the placeholder to put the resulting value. Note that the method does not copy the value. Callers should copy the resulting <a class="el" href="classkudu_1_1Slice.html" title="A wrapper around externally allocated data. ">Slice</a> if necessary. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. Return a bad <a class="el" href="classkudu_1_1Status.html" title="A representation of an operation&#39;s outcome. ">Status</a> if at least one of the following is <code>true:</code> <ul>
+<li>The type does not match. </li>
+<li>The value is unset. </li>
+<li>The value is <code>NULL</code>. </li>
+</ul>
+</dd></dl>
+</div></td></tr>
+<tr class="memitem:ad8f9ba0ff9a1fcd8326b012e689ad4a7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad8f9ba0ff9a1fcd8326b012e689ad4a7"></a>
+<a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><b>GetString</b> (const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;col_name, <a class="el" href="classkudu_1_1Slice.html">Slice</a> *val) const WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:ad8f9ba0ff9a1fcd8326b012e689ad4a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2fc063d4fb631b14f5651a84861ffa4b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2fc063d4fb631b14f5651a84861ffa4b"></a>
+<a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><b>GetBinary</b> (const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;col_name, <a class="el" href="classkudu_1_1Slice.html">Slice</a> *val) const WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:a2fc063d4fb631b14f5651a84861ffa4b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr><td colspan="2"><div class="groupHeader">Getters for string/binary column by column index.</div></td></tr>
+<tr><td colspan="2"><div class="groupText"><p>Get the string/binary value for a column by its index.</p>
+<p>These methods are faster than their name-based counterparts since using indices avoids a hashmap lookup, so index-based getters should be preferred in performance-sensitive code.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">col_index</td><td>The index of the column. </td></tr>
+    <tr><td class="paramdir">[out]</td><td class="paramname">val</td><td>Pointer to the placeholder to put the resulting value. Note that the method does not copy the value. Callers should copy the resulting <a class="el" href="classkudu_1_1Slice.html" title="A wrapper around externally allocated data. ">Slice</a> if necessary. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. Return a bad <a class="el" href="classkudu_1_1Status.html" title="A representation of an operation&#39;s outcome. ">Status</a> if at least one of the following is <code>true:</code> <ul>
+<li>The type does not match. </li>
+<li>The value is unset. </li>
+<li>The value is <code>NULL</code>. </li>
+</ul>
+</dd></dl>
+</div></td></tr>
+<tr class="memitem:a887dd6b7e20ada26ee705c315fd86b56"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a887dd6b7e20ada26ee705c315fd86b56"></a>
+<a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><b>GetString</b> (int col_idx, <a class="el" href="classkudu_1_1Slice.html">Slice</a> *val) const WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:a887dd6b7e20ada26ee705c315fd86b56"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a921dfdeba21588f7a3c2d5e360d3268e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a921dfdeba21588f7a3c2d5e360d3268e"></a>
+<a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><b>GetBinary</b> (int col_idx, <a class="el" href="classkudu_1_1Slice.html">Slice</a> *val) const WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:a921dfdeba21588f7a3c2d5e360d3268e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
+Friends</h2></td></tr>
+<tr class="memitem:a79d30f3059c783e077627a6f6d153c1b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a79d30f3059c783e077627a6f6d153c1b"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>KuduScanner</b></td></tr>
+<tr class="separator:a79d30f3059c783e077627a6f6d153c1b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aafe7501e17c36d1c5dc2971f69a776de"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aafe7501e17c36d1c5dc2971f69a776de"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>tools::ReplicaDumper</b></td></tr>
+<tr class="separator:aafe7501e17c36d1c5dc2971f69a776de"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0f719ac1eb44a4d656839448282399a3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0f719ac1eb44a4d656839448282399a3"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>KuduScanBatch</b></td></tr>
+<tr class="separator:a0f719ac1eb44a4d656839448282399a3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aba9d17eb5c32bd866a8572a1d51fd64f"><td class="memTemplParams" colspan="2"><a class="anchor" id="aba9d17eb5c32bd866a8572a1d51fd64f"></a>
+template&lt;typename KeyTypeWrapper &gt; </td></tr>
+<tr class="memitem:aba9d17eb5c32bd866a8572a1d51fd64f"><td class="memTemplItemLeft" align="right" valign="top">struct&#160;</td><td class="memTemplItemRight" valign="bottom"><b>SliceKeysTestSetup</b></td></tr>
+<tr class="separator:aba9d17eb5c32bd866a8572a1d51fd64f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a313ca772464ff159550ef09b986867fd"><td class="memTemplParams" colspan="2"><a class="anchor" id="a313ca772464ff159550ef09b986867fd"></a>
+template&lt;typename KeyTypeWrapper &gt; </td></tr>
+<tr class="memitem:a313ca772464ff159550ef09b986867fd"><td class="memTemplItemLeft" align="right" valign="top">struct&#160;</td><td class="memTemplItemRight" valign="bottom"><b>IntKeysTestSetup</b></td></tr>
+<tr class="separator:a313ca772464ff159550ef09b986867fd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>A batch of zero or more rows returned by a scan operation. </p>
+<p>Every call to <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#af365f1d3b3b34aeb7d016727a9019067">KuduScanner::NextBatch()</a> returns a batch of zero or more rows. You can iterate over the rows in the batch using:</p>
+<p>range-foreach loop (C++11): </p><div class="fragment"><div class="line"><span class="keywordflow">for</span> (<a class="code" href="classkudu_1_1client_1_1KuduScanBatch.html#a92bbfa48e9b503181c2dfb5f11f14e4e">KuduScanBatch::RowPtr</a> row : batch) {</div><div class="line">  ... row.GetInt(1, ...)</div><div class="line">  ...</div><div class="line">}</div></div><!-- fragment --><p>regular for loop (C++03): </p><div class="fragment"><div class="line"><span class="keywordflow">for</span> (KuduScanBatch::const_iterator it = batch.begin(), it != batch.end();</div><div class="line">     ++i) {</div><div class="line">  <a class="code" href="classkudu_1_1client_1_1KuduScanBatch.html#a92bbfa48e9b503181c2dfb5f11f14e4e">KuduScanBatch::RowPtr</a> row(*it);</div><div class="line">  ...</div><div class="line">}</div></div><!-- fragment --><p> or </p><div class="fragment"><div class="line"><span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0, num_rows = batch.NumRows();</div><div class="line">     i &lt; num_rows;</div><div class="line">     i++) {</div><div class="line">  <a class="code" href="classkudu_1_1client_1_1KuduScanBatch.html#a92bbfa48e9b503181c2dfb5f11f14e4e">KuduScanBatch::RowPtr</a> row = batch.Row(i);</div><div class="line">  ...</div><div class="line">}</div></div><!-- fragment --><dl class="section note"><dt>Note</dt><dd>In the above example, <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#a16e45694c5932eb3decc2184c3834157">NumRows()</a> is only called once at the beginning of the loop to avoid extra calls to the non-inlined method. </dd></dl>
+</div><h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a30f55cf8f3c9d6fcb47537e586d82e9f"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">KuduScanBatch::const_iterator kudu::client::KuduScanBatch::begin </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd>Forward iterator to the start of the rows in the batch. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ae07d3fd8616c5c69cc0a4ef3d247bf2c"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">const void* kudu::client::KuduScanBatch::cell </td>
+          <td>(</td>
+          <td class="paramtype">int&#160;</td>
+          <td class="paramname"><em>col_idx</em></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Get the column's row data.</p>
+<dl class="section note"><dt>Note</dt><dd>Should be avoided unless absolutely necessary. </dd></dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">col_idx</td><td>The index of the column. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Raw cell data for the specified index. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a1073a0c6517b126690d99527556dba51"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Slice.html">Slice</a> kudu::client::KuduScanBatch::direct_data </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Return a slice that points to the direct row data received from the server. Users of this API must have knowledge of the data format in order to decode the data.</p>
+<dl class="section return"><dt>Returns</dt><dd>a <a class="el" href="classkudu_1_1Slice.html" title="A wrapper around externally allocated data. ">Slice</a> that points to the raw direct row data. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ad30dcfafb276b5347842882cf68cb522"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">KuduScanBatch::const_iterator kudu::client::KuduScanBatch::end </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd>Forward iterator to the end of the rows in the batch. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="af41b26a5f137122454d6341a5b5c1a43"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Slice.html">Slice</a> kudu::client::KuduScanBatch::indirect_data </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Like the method above, but for indirect data.</p>
+<dl class="section return"><dt>Returns</dt><dd>a <a class="el" href="classkudu_1_1Slice.html" title="A wrapper around externally allocated data. ">Slice</a> that points to the raw indirect row data. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="af37f56c4ef55f2e140fcea2a07340054"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool kudu::client::KuduScanBatch::IsNull </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;&#160;</td>
+          <td class="paramname"><em>col_name</em></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">col_name</td><td>Name of the column. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd><code>true</code> iff the specified column of the row has <code>NULL</code> value. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a1b0b04656fec608919b7b6ac7c99451e"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool kudu::client::KuduScanBatch::IsNull </td>
+          <td>(</td>
+          <td class="paramtype">int&#160;</td>
+          <td class="paramname"><em>col_idx</em></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">col_idx</td><td>Index of the column. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd><code>true</code> iff the specified column of the row has <code>NULL</code> value. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a16e45694c5932eb3decc2184c3834157"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">int kudu::client::KuduScanBatch::NumRows </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd>The number of rows in this batch. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="afd2b2c4cb038cbd366c2af8cf09a3a68"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool kudu::client::KuduScanBatch::operator!= </td>
+          <td>(</td>
+          <td class="paramtype">const const_iterator &amp;&#160;</td>
+          <td class="paramname"><em>other</em></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>An operator to check whether two iterators are 'not equal'.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">other</td><td>The iterator to compare with. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd><code>true</code> iff the other iterator points to a different row in the same batch, or to a row belonging to a different batch altogether. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ab057b7b1bfb713a7e8f216e3b288cb10"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#a92bbfa48e9b503181c2dfb5f11f14e4e">KuduScanBatch::RowPtr</a> kudu::client::KuduScanBatch::operator* </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd>The row in the batch the iterator is pointing at. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ad5df483ed3172caab5a8d6a72abfad0c"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">const_iterator&amp; kudu::client::KuduScanBatch::operator++ </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Prefix increment operator: advances the iterator to the next position.</p>
+<dl class="section return"><dt>Returns</dt><dd>The reference to the iterator, pointing to the next position. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a4b1ad47fd7d429859b6181825a063c48"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">const_iterator kudu::client::KuduScanBatch::operator++ </td>
+          <td>(</td>
+          <td class="paramtype">int&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Postfix increment operator: advances the iterator to the next position.</p>
+<dl class="section return"><dt>Returns</dt><dd>A copy of the iterator pointing to the pre-increment position. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a378a5844a4b4774056b26f0003c15048"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool kudu::client::KuduScanBatch::operator== </td>
+          <td>(</td>
+          <td class="paramtype">const const_iterator &amp;&#160;</td>
+          <td class="paramname"><em>other</em></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>An operator to check whether two iterators are 'equal'.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">other</td><td>The iterator to compare with. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd><code>true</code> iff the other iterator points to the same row of the same batch. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a3b58e77f53beea357fbb8bcddaab3137"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">const <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a>* kudu::client::KuduScanBatch::projection_schema </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd>The projection schema for this batch. All <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#a92bbfa48e9b503181c2dfb5f11f14e4e">KuduScanBatch::RowPtr</a> returned by this batch are guaranteed to have this schema. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a93c2f0914140dd405a51d57e2f75014a"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#a92bbfa48e9b503181c2dfb5f11f14e4e">KuduScanBatch::RowPtr</a> kudu::client::KuduScanBatch::Row </td>
+          <td>(</td>
+          <td class="paramtype">int&#160;</td>
+          <td class="paramname"><em>idx</em></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Get a row at the specified index.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">idx</td><td>The index of the row to return. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>A reference to one of the rows in this batch. The returned object is only valid for as long as this <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html" title="A batch of zero or more rows returned by a scan operation. ">KuduScanBatch</a> object is valid. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a92bbfa48e9b503181c2dfb5f11f14e4e"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">kudu::client::KuduScanBatch::RowPtr </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Construct an invalid RowPtr. Before use, you must assign a properly-initialized value. </p>
+
+</div>
+</div>
+<a class="anchor" id="a57ebd850adefa8af87f815540d890a34"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::string kudu::client::KuduScanBatch::ToString </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd>String representation for this row. </dd></dl>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/kudu/client/<a class="el" href="scan__batch_8h_source.html">scan_batch.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduScanBatch__coll__graph.map b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduScanBatch__coll__graph.map
new file mode 100644
index 0000000..732745f
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduScanBatch__coll__graph.map
@@ -0,0 +1,2 @@
+<map id="kudu::client::KuduScanBatch" name="kudu::client::KuduScanBatch">
+</map>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduScanBatch__coll__graph.md5 b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduScanBatch__coll__graph.md5
new file mode 100644
index 0000000..70fc119
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduScanBatch__coll__graph.md5
@@ -0,0 +1 @@
+21810149d4f30c597092c6686efcfef2
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduScanBatch__coll__graph.png b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduScanBatch__coll__graph.png
new file mode 100644
index 0000000..92e3635
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduScanBatch__coll__graph.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduScanBatch__inherit__graph.map b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduScanBatch__inherit__graph.map
new file mode 100644
index 0000000..732745f
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduScanBatch__inherit__graph.map
@@ -0,0 +1,2 @@
+<map id="kudu::client::KuduScanBatch" name="kudu::client::KuduScanBatch">
+</map>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduScanBatch__inherit__graph.md5 b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduScanBatch__inherit__graph.md5
new file mode 100644
index 0000000..70fc119
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduScanBatch__inherit__graph.md5
@@ -0,0 +1 @@
+21810149d4f30c597092c6686efcfef2
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduScanBatch__inherit__graph.png b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduScanBatch__inherit__graph.png
new file mode 100644
index 0000000..92e3635
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduScanBatch__inherit__graph.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduScanToken-members.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduScanToken-members.html
new file mode 100644
index 0000000..3dd2dec
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduScanToken-members.html
@@ -0,0 +1,112 @@
+<!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.11"/>
+<title>Kudu C++ client API: Member 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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduScanToken.html">KuduScanToken</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">kudu::client::KuduScanToken Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classkudu_1_1client_1_1KuduScanToken.html">kudu::client::KuduScanToken</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanToken.html#ae90d9422476cf6eee5c33afb41d1f867">DeserializeIntoScanner</a>(KuduClient *client, const std::string &amp;serialized_token, KuduScanner **scanner) WARN_UNUSED_RESULT</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanToken.html">kudu::client::KuduScanToken</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanToken.html#adb95c9538bb1fc4c83963557ce487292">IntoKuduScanner</a>(KuduScanner **scanner) const WARN_UNUSED_RESULT</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanToken.html">kudu::client::KuduScanToken</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>KuduScanTokenBuilder</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanToken.html">kudu::client::KuduScanToken</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanToken.html">kudu::client::KuduScanToken</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanToken.html#a6eb749ddf0a1434596d86df88341a008">Serialize</a>(std::string *buf) const WARN_UNUSED_RESULT</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanToken.html">kudu::client::KuduScanToken</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanToken.html#a6513d5a02c745177d63d807de54aa301">tablet</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanToken.html">kudu::client::KuduScanToken</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>~KuduScanToken</b>() (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanToken.html">kudu::client::KuduScanToken</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanToken.html">kudu::client::KuduScanToken</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduScanToken.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduScanToken.html
new file mode 100644
index 0000000..379c87a
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduScanToken.html
@@ -0,0 +1,260 @@
+<!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.11"/>
+<title>Kudu C++ client API: kudu::client::KuduScanToken Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduScanToken.html">KuduScanToken</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
+<a href="#friends">Friends</a> &#124;
+<a href="classkudu_1_1client_1_1KuduScanToken-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">kudu::client::KuduScanToken Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>A scan descriptor limited to a single physical contiguous location.  
+ <a href="classkudu_1_1client_1_1KuduScanToken.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="client_8h_source.html">client.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:adb95c9538bb1fc4c83963557ce487292"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanToken.html#adb95c9538bb1fc4c83963557ce487292">IntoKuduScanner</a> (<a class="el" href="classkudu_1_1client_1_1KuduScanner.html">KuduScanner</a> **scanner) const WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:adb95c9538bb1fc4c83963557ce487292"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6513d5a02c745177d63d807de54aa301"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classkudu_1_1client_1_1KuduTablet.html">KuduTablet</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanToken.html#a6513d5a02c745177d63d807de54aa301">tablet</a> () const </td></tr>
+<tr class="separator:a6513d5a02c745177d63d807de54aa301"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6eb749ddf0a1434596d86df88341a008"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanToken.html#a6eb749ddf0a1434596d86df88341a008">Serialize</a> (std::string *buf) const WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:a6eb749ddf0a1434596d86df88341a008"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
+Static Public Member Functions</h2></td></tr>
+<tr class="memitem:ae90d9422476cf6eee5c33afb41d1f867"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanToken.html#ae90d9422476cf6eee5c33afb41d1f867">DeserializeIntoScanner</a> (<a class="el" href="classkudu_1_1client_1_1KuduClient.html">KuduClient</a> *client, const std::string &amp;serialized_token, <a class="el" href="classkudu_1_1client_1_1KuduScanner.html">KuduScanner</a> **scanner) WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:ae90d9422476cf6eee5c33afb41d1f867"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
+Friends</h2></td></tr>
+<tr class="memitem:a644ef5d9d668e5772acd6dc03c4f14ee"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a644ef5d9d668e5772acd6dc03c4f14ee"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>KuduScanTokenBuilder</b></td></tr>
+<tr class="separator:a644ef5d9d668e5772acd6dc03c4f14ee"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>A scan descriptor limited to a single physical contiguous location. </p>
+<p>A <a class="el" href="classkudu_1_1client_1_1KuduScanToken.html" title="A scan descriptor limited to a single physical contiguous location. ">KuduScanToken</a> describes a partial scan of a Kudu table limited to a single contiguous physical location. Using the <a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html" title="Builds scan tokens for a table. ">KuduScanTokenBuilder</a>, clients can describe the desired scan, including predicates, bounds, timestamps, and caching, and receive back a collection of scan tokens.</p>
+<p>Each scan token may be separately turned into a scanner using <a class="el" href="classkudu_1_1client_1_1KuduScanToken.html#adb95c9538bb1fc4c83963557ce487292">KuduScanToken::IntoKuduScanner</a>, with each scanner responsible for a disjoint section of the table.</p>
+<p>Scan tokens may be serialized using the <a class="el" href="classkudu_1_1client_1_1KuduScanToken.html#a6eb749ddf0a1434596d86df88341a008">KuduScanToken::Serialize</a> method and deserialized back into a scanner using the <a class="el" href="classkudu_1_1client_1_1KuduScanToken.html#ae90d9422476cf6eee5c33afb41d1f867">KuduScanToken::DeserializeIntoScanner</a> method. This allows use cases such as generating scan tokens in the planner component of a query engine, then sending the tokens to execution nodes based on locality, and then instantiating the scanners on those nodes.</p>
+<p>Scan token locality information can be inspected using the <a class="el" href="classkudu_1_1client_1_1KuduScanToken.html#a6513d5a02c745177d63d807de54aa301">KuduScanToken::tablet()</a> function. </p>
+</div><h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="ae90d9422476cf6eee5c33afb41d1f867"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">static <a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduScanToken::DeserializeIntoScanner </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">KuduClient</a> *&#160;</td>
+          <td class="paramname"><em>client</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const std::string &amp;&#160;</td>
+          <td class="paramname"><em>serialized_token</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">KuduScanner</a> **&#160;</td>
+          <td class="paramname"><em>scanner</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Create a new scanner and set the scanner options.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">client</td><td>Client to bound to the scanner. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">serialized_token</td><td>Token containing serialized scanner parameters. </td></tr>
+    <tr><td class="paramdir">[out]</td><td class="paramname">scanner</td><td>The result scanner. The caller owns the new scanner. The scanner must be opened before use. The scanner will not be set if the returned status is an error. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="adb95c9538bb1fc4c83963557ce487292"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduScanToken::IntoKuduScanner </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">KuduScanner</a> **&#160;</td>
+          <td class="paramname"><em>scanner</em></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Create a new scanner.</p>
+<p>This method creates a new scanner, setting the result scanner's options according to the scan token.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[out]</td><td class="paramname">scanner</td><td>The result scanner. The caller owns the new scanner. The scanner must be opened before use. The output parameter will not be set if the returned status is an error. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a6eb749ddf0a1434596d86df88341a008"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduScanToken::Serialize </td>
+          <td>(</td>
+          <td class="paramtype">std::string *&#160;</td>
+          <td class="paramname"><em>buf</em></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Serialize the token into a string.</p>
+<p>Deserialize with <a class="el" href="classkudu_1_1client_1_1KuduScanToken.html#ae90d9422476cf6eee5c33afb41d1f867">KuduScanToken::DeserializeIntoScanner()</a>.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[out]</td><td class="paramname">buf</td><td>Result string to output the serialized token. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a6513d5a02c745177d63d807de54aa301"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">const <a class="el" href="classkudu_1_1client_1_1KuduTablet.html">KuduTablet</a>&amp; kudu::client::KuduScanToken::tablet </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd>Tablet that this scan will retrieve rows from. </dd></dl>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/kudu/client/<a class="el" href="client_8h_source.html">client.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduScanTokenBuilder-members.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduScanTokenBuilder-members.html
new file mode 100644
index 0000000..d5eb2f7
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduScanTokenBuilder-members.html
@@ -0,0 +1,122 @@
+<!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.11"/>
+<title>Kudu C++ client API: Member 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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html">KuduScanTokenBuilder</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">kudu::client::KuduScanTokenBuilder Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html">kudu::client::KuduScanTokenBuilder</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#ac40487d17b8e4dcca7ca08efeb5f195e">AddConjunctPredicate</a>(KuduPredicate *pred) WARN_UNUSED_RESULT</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html">kudu::client::KuduScanTokenBuilder</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#ae11ca3d00d15138e957a2c2e89b05fcf">AddLowerBound</a>(const KuduPartialRow &amp;key) WARN_UNUSED_RESULT</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html">kudu::client::KuduScanTokenBuilder</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#ac4d0fa934e4c705ac76c424a5431566a">AddUpperBound</a>(const KuduPartialRow &amp;key) WARN_UNUSED_RESULT</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html">kudu::client::KuduScanTokenBuilder</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#acbc00b42db998f3342fa0ca7ab55dfdb">Build</a>(std::vector&lt; KuduScanToken * &gt; *tokens) WARN_UNUSED_RESULT</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html">kudu::client::KuduScanTokenBuilder</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#aa8d300b560d419030abd503b66812484">KuduScanTokenBuilder</a>(KuduTable *table)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html">kudu::client::KuduScanTokenBuilder</a></td><td class="entry"><span class="mlabel">explicit</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#a36523ca7f2f9a2b4e3c096cf6167643c">SetBatchSizeBytes</a>(uint32_t batch_size) WARN_UNUSED_RESULT</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html">kudu::client::KuduScanTokenBuilder</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#a7ab7c9c1c4f4d3bbbc18b2b35d7d5475">SetCacheBlocks</a>(bool cache_blocks) WARN_UNUSED_RESULT</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html">kudu::client::KuduScanTokenBuilder</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#a4a17f27950ccd59bcb3430fb28b61dbe">SetFaultTolerant</a>() WARN_UNUSED_RESULT</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html">kudu::client::KuduScanTokenBuilder</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#a01d990e024632c7749cca96b4f857be8">SetProjectedColumnIndexes</a>(const std::vector&lt; int &gt; &amp;col_indexes) WARN_UNUSED_RESULT</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html">kudu::client::KuduScanTokenBuilder</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#a0dbb58301fc0e48ce44f41215d32f0ad">SetProjectedColumnNames</a>(const std::vector&lt; std::string &gt; &amp;col_names) WARN_UNUSED_RESULT</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html">kudu::client::KuduScanTokenBuilder</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#adb34f01a9bc52a9e23ce49124bab3892">SetReadMode</a>(KuduScanner::ReadMode read_mode) WARN_UNUSED_RESULT</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html">kudu::client::KuduScanTokenBuilder</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#a168bfed43dcd754a17d4c82293dade88">SetSelection</a>(KuduClient::ReplicaSelection selection) WARN_UNUSED_RESULT</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html">kudu::client::KuduScanTokenBuilder</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#aa4c1cfa570edfaab818831a2330eece5">SetSnapshotMicros</a>(uint64_t snapshot_timestamp_micros) WARN_UNUSED_RESULT</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html">kudu::client::KuduScanTokenBuilder</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#a313e345dc6c1f9ccdad65df5af2cf4b7">SetSnapshotRaw</a>(uint64_t snapshot_timestamp) WARN_UNUSED_RESULT</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html">kudu::client::KuduScanTokenBuilder</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#a0f0e58d5d6fb3867ff0a03f7fc633445">SetTimeoutMillis</a>(int millis) WARN_UNUSED_RESULT</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html">kudu::client::KuduScanTokenBuilder</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>~KuduScanTokenBuilder</b>() (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html">kudu::client::KuduScanTokenBuilder</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html">kudu::client::KuduScanTokenBuilder</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduScanTokenBuilder.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduScanTokenBuilder.html
new file mode 100644
index 0000000..fcbc55b
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduScanTokenBuilder.html
@@ -0,0 +1,541 @@
+<!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.11"/>
+<title>Kudu C++ client API: kudu::client::KuduScanTokenBuilder Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html">KuduScanTokenBuilder</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="classkudu_1_1client_1_1KuduScanTokenBuilder-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">kudu::client::KuduScanTokenBuilder Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>Builds scan tokens for a table.  
+ <a href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="client_8h_source.html">client.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:aa8d300b560d419030abd503b66812484"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#aa8d300b560d419030abd503b66812484">KuduScanTokenBuilder</a> (<a class="el" href="classkudu_1_1client_1_1KuduTable.html">KuduTable</a> *table)</td></tr>
+<tr class="separator:aa8d300b560d419030abd503b66812484"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0dbb58301fc0e48ce44f41215d32f0ad"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#a0dbb58301fc0e48ce44f41215d32f0ad">SetProjectedColumnNames</a> (const std::vector&lt; std::string &gt; &amp;col_names) WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:a0dbb58301fc0e48ce44f41215d32f0ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a01d990e024632c7749cca96b4f857be8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#a01d990e024632c7749cca96b4f857be8">SetProjectedColumnIndexes</a> (const std::vector&lt; int &gt; &amp;col_indexes) WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:a01d990e024632c7749cca96b4f857be8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac40487d17b8e4dcca7ca08efeb5f195e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#ac40487d17b8e4dcca7ca08efeb5f195e">AddConjunctPredicate</a> (<a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">KuduPredicate</a> *pred) WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:ac40487d17b8e4dcca7ca08efeb5f195e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae11ca3d00d15138e957a2c2e89b05fcf"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#ae11ca3d00d15138e957a2c2e89b05fcf">AddLowerBound</a> (const <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a> &amp;key) WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:ae11ca3d00d15138e957a2c2e89b05fcf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac4d0fa934e4c705ac76c424a5431566a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#ac4d0fa934e4c705ac76c424a5431566a">AddUpperBound</a> (const <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a> &amp;key) WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:ac4d0fa934e4c705ac76c424a5431566a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7ab7c9c1c4f4d3bbbc18b2b35d7d5475"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#a7ab7c9c1c4f4d3bbbc18b2b35d7d5475">SetCacheBlocks</a> (bool cache_blocks) WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:a7ab7c9c1c4f4d3bbbc18b2b35d7d5475"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a36523ca7f2f9a2b4e3c096cf6167643c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#a36523ca7f2f9a2b4e3c096cf6167643c">SetBatchSizeBytes</a> (uint32_t batch_size) WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:a36523ca7f2f9a2b4e3c096cf6167643c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a168bfed43dcd754a17d4c82293dade88"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#a168bfed43dcd754a17d4c82293dade88">SetSelection</a> (<a class="el" href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11a">KuduClient::ReplicaSelection</a> selection) WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:a168bfed43dcd754a17d4c82293dade88"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adb34f01a9bc52a9e23ce49124bab3892"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#adb34f01a9bc52a9e23ce49124bab3892">SetReadMode</a> (<a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a36fdb59d6488618363331269d3f58348">KuduScanner::ReadMode</a> read_mode) WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:adb34f01a9bc52a9e23ce49124bab3892"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4a17f27950ccd59bcb3430fb28b61dbe"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#a4a17f27950ccd59bcb3430fb28b61dbe">SetFaultTolerant</a> () WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:a4a17f27950ccd59bcb3430fb28b61dbe"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa4c1cfa570edfaab818831a2330eece5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#aa4c1cfa570edfaab818831a2330eece5">SetSnapshotMicros</a> (uint64_t snapshot_timestamp_micros) WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:aa4c1cfa570edfaab818831a2330eece5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a313e345dc6c1f9ccdad65df5af2cf4b7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#a313e345dc6c1f9ccdad65df5af2cf4b7">SetSnapshotRaw</a> (uint64_t snapshot_timestamp) WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:a313e345dc6c1f9ccdad65df5af2cf4b7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0f0e58d5d6fb3867ff0a03f7fc633445"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#a0f0e58d5d6fb3867ff0a03f7fc633445">SetTimeoutMillis</a> (int millis) WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:a0f0e58d5d6fb3867ff0a03f7fc633445"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acbc00b42db998f3342fa0ca7ab55dfdb"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#acbc00b42db998f3342fa0ca7ab55dfdb">Build</a> (std::vector&lt; <a class="el" href="classkudu_1_1client_1_1KuduScanToken.html">KuduScanToken</a> * &gt; *tokens) WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:acbc00b42db998f3342fa0ca7ab55dfdb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>Builds scan tokens for a table. </p>
+<dl class="section note"><dt>Note</dt><dd>This class is not thread-safe. </dd></dl>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="aa8d300b560d419030abd503b66812484"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">kudu::client::KuduScanTokenBuilder::KuduScanTokenBuilder </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classkudu_1_1client_1_1KuduTable.html">KuduTable</a> *&#160;</td>
+          <td class="paramname"><em>table</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">explicit</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Construct an instance of the class.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">table</td><td>The table the tokens should scan. The given object must remain valid for the lifetime of the builder, and the tokens which it builds. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="ac40487d17b8e4dcca7ca08efeb5f195e"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduScanTokenBuilder::AddConjunctPredicate </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">KuduPredicate</a> *&#160;</td>
+          <td class="paramname"><em>pred</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p></p>
+<p>Add a predicate for the scan.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">pred</td><td>Predicate to set. The <a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html" title="Builds scan tokens for a table. ">KuduScanTokenBuilder</a> instance takes ownership of the parameter even if a bad <a class="el" href="classkudu_1_1Status.html" title="A representation of an operation&#39;s outcome. ">Status</a> is returned. Multiple calls of this method make the specified set of predicates work in conjunction, i.e. all predicates must be true for a row to be returned. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ae11ca3d00d15138e957a2c2e89b05fcf"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduScanTokenBuilder::AddLowerBound </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a> &amp;&#160;</td>
+          <td class="paramname"><em>key</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p></p>
+<p>Add a lower bound (inclusive) primary key for the scan.</p>
+<p>If any bound is already added, this bound is intersected with that one.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">key</td><td>Lower bound primary key to add. The <a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html" title="Builds scan tokens for a table. ">KuduScanTokenBuilder</a> instance does not take ownership of the parameter. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ac4d0fa934e4c705ac76c424a5431566a"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduScanTokenBuilder::AddUpperBound </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a> &amp;&#160;</td>
+          <td class="paramname"><em>key</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Add an upper bound (exclusive) primary key.</p>
+<p>If any bound is already added, this bound is intersected with that one.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">key</td><td>Upper bound primary key to add. The <a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html" title="Builds scan tokens for a table. ">KuduScanTokenBuilder</a> instance does not take ownership of the parameter. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="acbc00b42db998f3342fa0ca7ab55dfdb"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduScanTokenBuilder::Build </td>
+          <td>(</td>
+          <td class="paramtype">std::vector&lt; <a class="el" href="classkudu_1_1client_1_1KuduScanToken.html">KuduScanToken</a> * &gt; *&#160;</td>
+          <td class="paramname"><em>tokens</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Build the set of scan tokens.</p>
+<p>The builder may be reused after this call.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[out]</td><td class="paramname">tokens</td><td>Result set of tokens. The caller takes ownership of the container elements. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a36523ca7f2f9a2b4e3c096cf6167643c"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduScanTokenBuilder::SetBatchSizeBytes </td>
+          <td>(</td>
+          <td class="paramtype">uint32_t&#160;</td>
+          <td class="paramname"><em>batch_size</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Set the hint for the size of the next batch in bytes.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">batch_size</td><td>Batch size to set (in bytes). If set to 0, the first call to the tablet server won't return data. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a7ab7c9c1c4f4d3bbbc18b2b35d7d5475"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduScanTokenBuilder::SetCacheBlocks </td>
+          <td>(</td>
+          <td class="paramtype">bool&#160;</td>
+          <td class="paramname"><em>cache_blocks</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p></p>
+<p>Set the block caching policy.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">cache_blocks</td><td>If <code>true</code>, scanned data blocks will be cached in memory and made available for future scans. Default is <code>true</code>. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a4a17f27950ccd59bcb3430fb28b61dbe"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduScanTokenBuilder::SetFaultTolerant </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p></p>
+<p>Make scans resumable at another tablet server if current server fails.</p>
+<p>Scans are by default non fault-tolerant, and scans will fail if scanning an individual tablet fails (for example, if a tablet server crashes in the middle of a tablet scan). If this method is called, scans will be resumed at another tablet server in the case of failure.</p>
+<p>Fault-tolerant scans typically have lower throughput than non fault-tolerant scans. Fault tolerant scans use <code>READ_AT_SNAPSHOT</code> mode: if no snapshot timestamp is provided, the server will pick one.</p>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a01d990e024632c7749cca96b4f857be8"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduScanTokenBuilder::SetProjectedColumnIndexes </td>
+          <td>(</td>
+          <td class="paramtype">const std::vector&lt; int &gt; &amp;&#160;</td>
+          <td class="paramname"><em>col_indexes</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p></p>
+<p>Set the column projection by passing the column indexes to read.</p>
+<p>Set the column projection used for this scanner by passing the column indices to read. A call to this method overrides any previous call to <a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#a0dbb58301fc0e48ce44f41215d32f0ad">SetProjectedColumnNames()</a> or <a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#a01d990e024632c7749cca96b4f857be8">SetProjectedColumnIndexes()</a>.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">col_indexes</td><td>Column indices for the projection. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a0dbb58301fc0e48ce44f41215d32f0ad"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduScanTokenBuilder::SetProjectedColumnNames </td>
+          <td>(</td>
+          <td class="paramtype">const std::vector&lt; std::string &gt; &amp;&#160;</td>
+          <td class="paramname"><em>col_names</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Set the column projection by passing the column names to read.</p>
+<p>Set the column projection used for this scanner by passing the column names to read. A call of this method overrides any previous call to <a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#a0dbb58301fc0e48ce44f41215d32f0ad">SetProjectedColumnNames()</a> or <a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#a01d990e024632c7749cca96b4f857be8">SetProjectedColumnIndexes()</a>.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">col_names</td><td>Column names for the projection. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="adb34f01a9bc52a9e23ce49124bab3892"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduScanTokenBuilder::SetReadMode </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a36fdb59d6488618363331269d3f58348">KuduScanner::ReadMode</a>&#160;</td>
+          <td class="paramname"><em>read_mode</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p></p>
+<p>Set the ReadMode. Default is <code>READ_LATEST</code>.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">read_mode</td><td>Read mode to set. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a168bfed43dcd754a17d4c82293dade88"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduScanTokenBuilder::SetSelection </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11a">KuduClient::ReplicaSelection</a>&#160;</td>
+          <td class="paramname"><em>selection</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Set the replica selection policy while scanning.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">selection</td><td>Selection policy to set. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status.</dd></dl>
+<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000008">Todo:</a></b></dt><dd>Kill this in favor of a consistency-level-based API. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="aa4c1cfa570edfaab818831a2330eece5"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduScanTokenBuilder::SetSnapshotMicros </td>
+          <td>(</td>
+          <td class="paramtype">uint64_t&#160;</td>
+          <td class="paramname"><em>snapshot_timestamp_micros</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p></p>
+<p>Set snapshot timestamp for scans in <code>READ_AT_SNAPSHOT</code> mode.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">snapshot_timestamp_micros</td><td>Timestamp to set in in microseconds since the Epoch. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a313e345dc6c1f9ccdad65df5af2cf4b7"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduScanTokenBuilder::SetSnapshotRaw </td>
+          <td>(</td>
+          <td class="paramtype">uint64_t&#160;</td>
+          <td class="paramname"><em>snapshot_timestamp</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p></p>
+<p>Set snapshot timestamp for scans in <code>READ_AT_SNAPSHOT</code> mode (raw).</p>
+<p>See <a class="el" href="classkudu_1_1client_1_1KuduClient.html#a3a671b3540c74ef7c358bb98e95031e0">KuduClient::GetLatestObservedTimestamp()</a> for details on how to use this method to achieve Read-Your-Writes behavior.</p>
+<dl class="section note"><dt>Note</dt><dd>This method is experimental and will either disappear or change in a future release.</dd></dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">snapshot_timestamp</td><td>Timestamp to set in raw encoded form (i.e. as returned by a previous call to a server). </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a0f0e58d5d6fb3867ff0a03f7fc633445"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduScanTokenBuilder::SetTimeoutMillis </td>
+          <td>(</td>
+          <td class="paramtype">int&#160;</td>
+          <td class="paramname"><em>millis</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p></p>
+<p>Set the maximum time that Open() and NextBatch() are allowed to take.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">millis</td><td>Timeout to set (in milliseconds). Must be greater than 0. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/kudu/client/<a class="el" href="client_8h_source.html">client.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduScanner-members.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduScanner-members.html
new file mode 100644
index 0000000..49fb4de
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduScanner-members.html
@@ -0,0 +1,148 @@
+<!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.11"/>
+<title>Kudu C++ client API: Member 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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">KuduScanner</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">kudu::client::KuduScanner Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a47b0fcd30f8002cb4fdcf69351896b74">AddConjunctPredicate</a>(KuduPredicate *pred) WARN_UNUSED_RESULT</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a551fd38d48a686f2662727a82e79bd3d">AddExclusiveUpperBound</a>(const KuduPartialRow &amp;key)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#aa951a6ec3aeb82c82afe35d8e3ba18a9">AddExclusiveUpperBoundPartitionKeyRaw</a>(const Slice &amp;partition_key)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#aefb6badecb950d5089b2f9d29d1f2ffe">AddExclusiveUpperBoundRaw</a>(const Slice &amp;key) ATTRIBUTE_DEPRECATED(&quot;use AddExclusiveUpperBound() instead&quot;)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a67691944fc112f43c565ab4486514b86">AddLowerBound</a>(const KuduPartialRow &amp;key)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#ab53b88307028a50f66bcffe5e78c6d6e">AddLowerBoundPartitionKeyRaw</a>(const Slice &amp;partition_key)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a3e51a978f3e54237fa60f7447ef3436e">AddLowerBoundRaw</a>(const Slice &amp;key) ATTRIBUTE_DEPRECATED(&quot;use AddLowerBound() instead&quot;)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#ac673dd15cb038e75787af7e74087e874">Close</a>()</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#ac2bce7bd17627a3aa46f7d7fdb4c0c10">GetCurrentServer</a>(KuduTabletServer **server)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a7fad1430b8e1d4caf0614f690fa2666f">GetProjectionSchema</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a640d0d9de62587b29afbec22b7c6b628">GetResourceMetrics</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#ab04c2012970498590d2d2034d6a44d34">HasMoreRows</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#aa4a0caf7142880255d7aac1d75f33d21">KeepAlive</a>()</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>kScanTimeoutMillis</b> enum value (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a2c621f778072a02f4092e96a0baf8180">KuduScanner</a>(KuduTable *table)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"><span class="mlabel">explicit</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>KuduScanToken</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#af365f1d3b3b34aeb7d016727a9019067">NextBatch</a>(std::vector&lt; KuduRowResult &gt; *rows) ATTRIBUTE_DEPRECATED(&quot;use NextBatch(KuduScanBatch*) instead&quot;)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#af1475d9a0667839c1ed9c3714b47d487">NextBatch</a>(KuduScanBatch *batch)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a68345956f3f4c7fd5e1665fd292f6a85">NO_FLAGS</a></td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#aa1ff3c11d9ac9f8183189ea5ac1ed9f1">Open</a>()</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a3d6c79325c9da9741d0accf1b43bf7f9a4395ad2ec57ce53e30d8b5748fa2c63a">ORDERED</a> enum value</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a3d6c79325c9da9741d0accf1b43bf7f9">OrderMode</a> enum name</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a63cd270f3bc72f4197d2581ec8f8fc44">PAD_UNIXTIME_MICROS_TO_16_BYTES</a></td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a36fdb59d6488618363331269d3f58348a380798cc81589d865b7b2549e186b2e2">READ_AT_SNAPSHOT</a> enum value</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a36fdb59d6488618363331269d3f58348a8694cef688d819806fa9a85b002231a8">READ_LATEST</a> enum value</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a36fdb59d6488618363331269d3f58348">ReadMode</a> enum name</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#af82c4ccb442c222033841dd65cf5a67c">SetBatchSizeBytes</a>(uint32_t batch_size)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a4a4a2e354b3113561758b9bf4095d310">SetCacheBlocks</a>(bool cache_blocks)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a107a8a682c0977272e0ae47746d39e6f">SetFaultTolerant</a>() WARN_UNUSED_RESULT</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a93a87740ea75c9b6524dc229576b69fc">SetOrderMode</a>(OrderMode order_mode) WARN_UNUSED_RESULT ATTRIBUTE_DEPRECATED(&quot;use SetFaultTolerant() instead&quot;)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a8d938c6efc1b36d456c91b5af0b1578d">SetProjectedColumnIndexes</a>(const std::vector&lt; int &gt; &amp;col_indexes) WARN_UNUSED_RESULT</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#abb10b26056757bf81c410d3d5e6bcc01">SetProjectedColumnNames</a>(const std::vector&lt; std::string &gt; &amp;col_names) WARN_UNUSED_RESULT</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a68e2115cde71e113674e7a8b4df399ad">SetProjectedColumns</a>(const std::vector&lt; std::string &gt; &amp;col_names) WARN_UNUSED_RESULT ATTRIBUTE_DEPRECATED(&quot;use SetProjectedColumnNames() instead&quot;)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a248e0a05e7bfdc31b5b8d363a937e81e">SetReadMode</a>(ReadMode read_mode) WARN_UNUSED_RESULT</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a3dbaf4c2db6a37517a242dcb8ee64c11">SetRowFormatFlags</a>(uint64_t flags)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#af1db3f372fe3d0f30cd0b6a36b783cc8">SetSelection</a>(KuduClient::ReplicaSelection selection) WARN_UNUSED_RESULT</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a5b36a405daf09399438d5501b25b9f9f">SetSnapshotMicros</a>(uint64_t snapshot_timestamp_micros) WARN_UNUSED_RESULT</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#ab13dbb301197b411dec4cd6870801bae">SetSnapshotRaw</a>(uint64_t snapshot_timestamp) WARN_UNUSED_RESULT</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a97c9f5e6a1056484c88ced411e19bee6">SetTimeoutMillis</a>(int millis)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#aea36ffb783be3ffdf370cd7399f232d3">ToString</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a3d6c79325c9da9741d0accf1b43bf7f9adfeea547de613f36a0aff9f585671ec3">UNORDERED</a> enum value</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>~KuduScanner</b>() (defined in <a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduScanner.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduScanner.html
new file mode 100644
index 0000000..667d3a2
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduScanner.html
@@ -0,0 +1,1027 @@
+<!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.11"/>
+<title>Kudu C++ client API: kudu::client::KuduScanner Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html">KuduScanner</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-types">Public Types</a> &#124;
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#friends">Friends</a> &#124;
+<a href="classkudu_1_1client_1_1KuduScanner-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">kudu::client::KuduScanner Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This class is a representation of a single scan.  
+ <a href="classkudu_1_1client_1_1KuduScanner.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="client_8h_source.html">client.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
+Public Types</h2></td></tr>
+<tr class="memitem:a36fdb59d6488618363331269d3f58348"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a36fdb59d6488618363331269d3f58348">ReadMode</a> { <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a36fdb59d6488618363331269d3f58348a8694cef688d819806fa9a85b002231a8">READ_LATEST</a>, 
+<a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a36fdb59d6488618363331269d3f58348a380798cc81589d865b7b2549e186b2e2">READ_AT_SNAPSHOT</a>
+ }<tr class="memdesc:a36fdb59d6488618363331269d3f58348"><td class="mdescLeft">&#160;</td><td class="mdescRight">The read modes for scanners.  <a href="classkudu_1_1client_1_1KuduScanner.html#a36fdb59d6488618363331269d3f58348">More...</a><br /></td></tr>
+</td></tr>
+<tr class="separator:a36fdb59d6488618363331269d3f58348"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3d6c79325c9da9741d0accf1b43bf7f9"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a3d6c79325c9da9741d0accf1b43bf7f9">OrderMode</a> { <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a3d6c79325c9da9741d0accf1b43bf7f9adfeea547de613f36a0aff9f585671ec3">UNORDERED</a>, 
+<a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a3d6c79325c9da9741d0accf1b43bf7f9a4395ad2ec57ce53e30d8b5748fa2c63a">ORDERED</a>
+ }</td></tr>
+<tr class="separator:a3d6c79325c9da9741d0accf1b43bf7f9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a60615ffe5fe82c5dcd12fec47502bec1"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom">{ <b>kScanTimeoutMillis</b> = 30000
+ }</td></tr>
+<tr class="separator:a60615ffe5fe82c5dcd12fec47502bec1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a2c621f778072a02f4092e96a0baf8180"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a2c621f778072a02f4092e96a0baf8180">KuduScanner</a> (<a class="el" href="classkudu_1_1client_1_1KuduTable.html">KuduTable</a> *table)</td></tr>
+<tr class="separator:a2c621f778072a02f4092e96a0baf8180"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abb10b26056757bf81c410d3d5e6bcc01"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#abb10b26056757bf81c410d3d5e6bcc01">SetProjectedColumnNames</a> (const std::vector&lt; std::string &gt; &amp;col_names) WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:abb10b26056757bf81c410d3d5e6bcc01"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8d938c6efc1b36d456c91b5af0b1578d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a8d938c6efc1b36d456c91b5af0b1578d">SetProjectedColumnIndexes</a> (const std::vector&lt; int &gt; &amp;col_indexes) WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:a8d938c6efc1b36d456c91b5af0b1578d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a68e2115cde71e113674e7a8b4df399ad"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a68e2115cde71e113674e7a8b4df399ad">SetProjectedColumns</a> (const std::vector&lt; std::string &gt; &amp;col_names) WARN_UNUSED_RESULT ATTRIBUTE_DEPRECATED(&quot;use <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#abb10b26056757bf81c410d3d5e6bcc01">SetProjectedColumnNames</a>() instead&quot;)</td></tr>
+<tr class="separator:a68e2115cde71e113674e7a8b4df399ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a47b0fcd30f8002cb4fdcf69351896b74"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a47b0fcd30f8002cb4fdcf69351896b74">AddConjunctPredicate</a> (<a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">KuduPredicate</a> *pred) WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:a47b0fcd30f8002cb4fdcf69351896b74"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a67691944fc112f43c565ab4486514b86"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a67691944fc112f43c565ab4486514b86">AddLowerBound</a> (const <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a> &amp;key)</td></tr>
+<tr class="separator:a67691944fc112f43c565ab4486514b86"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3e51a978f3e54237fa60f7447ef3436e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a3e51a978f3e54237fa60f7447ef3436e">AddLowerBoundRaw</a> (const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;key) ATTRIBUTE_DEPRECATED(&quot;use <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a67691944fc112f43c565ab4486514b86">AddLowerBound</a>() instead&quot;)</td></tr>
+<tr class="separator:a3e51a978f3e54237fa60f7447ef3436e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a551fd38d48a686f2662727a82e79bd3d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a551fd38d48a686f2662727a82e79bd3d">AddExclusiveUpperBound</a> (const <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a> &amp;key)</td></tr>
+<tr class="separator:a551fd38d48a686f2662727a82e79bd3d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aefb6badecb950d5089b2f9d29d1f2ffe"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#aefb6badecb950d5089b2f9d29d1f2ffe">AddExclusiveUpperBoundRaw</a> (const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;key) ATTRIBUTE_DEPRECATED(&quot;use <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a551fd38d48a686f2662727a82e79bd3d">AddExclusiveUpperBound</a>() instead&quot;)</td></tr>
+<tr class="separator:aefb6badecb950d5089b2f9d29d1f2ffe"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab53b88307028a50f66bcffe5e78c6d6e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#ab53b88307028a50f66bcffe5e78c6d6e">AddLowerBoundPartitionKeyRaw</a> (const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;partition_key)</td></tr>
+<tr class="separator:ab53b88307028a50f66bcffe5e78c6d6e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa951a6ec3aeb82c82afe35d8e3ba18a9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#aa951a6ec3aeb82c82afe35d8e3ba18a9">AddExclusiveUpperBoundPartitionKeyRaw</a> (const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;partition_key)</td></tr>
+<tr class="separator:aa951a6ec3aeb82c82afe35d8e3ba18a9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4a4a2e354b3113561758b9bf4095d310"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a4a4a2e354b3113561758b9bf4095d310">SetCacheBlocks</a> (bool cache_blocks)</td></tr>
+<tr class="separator:a4a4a2e354b3113561758b9bf4095d310"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa1ff3c11d9ac9f8183189ea5ac1ed9f1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#aa1ff3c11d9ac9f8183189ea5ac1ed9f1">Open</a> ()</td></tr>
+<tr class="separator:aa1ff3c11d9ac9f8183189ea5ac1ed9f1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa4a0caf7142880255d7aac1d75f33d21"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#aa4a0caf7142880255d7aac1d75f33d21">KeepAlive</a> ()</td></tr>
+<tr class="separator:aa4a0caf7142880255d7aac1d75f33d21"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac673dd15cb038e75787af7e74087e874"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#ac673dd15cb038e75787af7e74087e874">Close</a> ()</td></tr>
+<tr class="separator:ac673dd15cb038e75787af7e74087e874"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab04c2012970498590d2d2034d6a44d34"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#ab04c2012970498590d2d2034d6a44d34">HasMoreRows</a> () const </td></tr>
+<tr class="separator:ab04c2012970498590d2d2034d6a44d34"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af365f1d3b3b34aeb7d016727a9019067"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#af365f1d3b3b34aeb7d016727a9019067">NextBatch</a> (std::vector&lt; KuduRowResult &gt; *rows) ATTRIBUTE_DEPRECATED(&quot;use NextBatch(<a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">KuduScanBatch</a>*) instead&quot;)</td></tr>
+<tr class="separator:af365f1d3b3b34aeb7d016727a9019067"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af1475d9a0667839c1ed9c3714b47d487"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#af1475d9a0667839c1ed9c3714b47d487">NextBatch</a> (<a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">KuduScanBatch</a> *batch)</td></tr>
+<tr class="separator:af1475d9a0667839c1ed9c3714b47d487"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac2bce7bd17627a3aa46f7d7fdb4c0c10"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#ac2bce7bd17627a3aa46f7d7fdb4c0c10">GetCurrentServer</a> (<a class="el" href="classkudu_1_1client_1_1KuduTabletServer.html">KuduTabletServer</a> **server)</td></tr>
+<tr class="separator:ac2bce7bd17627a3aa46f7d7fdb4c0c10"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a640d0d9de62587b29afbec22b7c6b628"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classkudu_1_1client_1_1ResourceMetrics.html">ResourceMetrics</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a640d0d9de62587b29afbec22b7c6b628">GetResourceMetrics</a> () const </td></tr>
+<tr class="separator:a640d0d9de62587b29afbec22b7c6b628"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af82c4ccb442c222033841dd65cf5a67c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#af82c4ccb442c222033841dd65cf5a67c">SetBatchSizeBytes</a> (uint32_t batch_size)</td></tr>
+<tr class="separator:af82c4ccb442c222033841dd65cf5a67c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af1db3f372fe3d0f30cd0b6a36b783cc8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#af1db3f372fe3d0f30cd0b6a36b783cc8">SetSelection</a> (<a class="el" href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11a">KuduClient::ReplicaSelection</a> selection) WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:af1db3f372fe3d0f30cd0b6a36b783cc8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a248e0a05e7bfdc31b5b8d363a937e81e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a248e0a05e7bfdc31b5b8d363a937e81e">SetReadMode</a> (<a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a36fdb59d6488618363331269d3f58348">ReadMode</a> read_mode) WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:a248e0a05e7bfdc31b5b8d363a937e81e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a93a87740ea75c9b6524dc229576b69fc"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a93a87740ea75c9b6524dc229576b69fc">SetOrderMode</a> (<a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a3d6c79325c9da9741d0accf1b43bf7f9">OrderMode</a> order_mode) WARN_UNUSED_RESULT ATTRIBUTE_DEPRECATED(&quot;use <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a107a8a682c0977272e0ae47746d39e6f">SetFaultTolerant</a>() instead&quot;)</td></tr>
+<tr class="separator:a93a87740ea75c9b6524dc229576b69fc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a107a8a682c0977272e0ae47746d39e6f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a107a8a682c0977272e0ae47746d39e6f">SetFaultTolerant</a> () WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:a107a8a682c0977272e0ae47746d39e6f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5b36a405daf09399438d5501b25b9f9f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a5b36a405daf09399438d5501b25b9f9f">SetSnapshotMicros</a> (uint64_t snapshot_timestamp_micros) WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:a5b36a405daf09399438d5501b25b9f9f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab13dbb301197b411dec4cd6870801bae"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#ab13dbb301197b411dec4cd6870801bae">SetSnapshotRaw</a> (uint64_t snapshot_timestamp) WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:ab13dbb301197b411dec4cd6870801bae"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a97c9f5e6a1056484c88ced411e19bee6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a97c9f5e6a1056484c88ced411e19bee6">SetTimeoutMillis</a> (int millis)</td></tr>
+<tr class="separator:a97c9f5e6a1056484c88ced411e19bee6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7fad1430b8e1d4caf0614f690fa2666f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a7fad1430b8e1d4caf0614f690fa2666f">GetProjectionSchema</a> () const </td></tr>
+<tr class="separator:a7fad1430b8e1d4caf0614f690fa2666f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aea36ffb783be3ffdf370cd7399f232d3"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#aea36ffb783be3ffdf370cd7399f232d3">ToString</a> () const </td></tr>
+<tr class="separator:aea36ffb783be3ffdf370cd7399f232d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
+Friends</h2></td></tr>
+<tr class="memitem:a08335df27491aef74f8ed104799ab541"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a08335df27491aef74f8ed104799ab541"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>KuduScanToken</b></td></tr>
+<tr class="separator:a08335df27491aef74f8ed104799ab541"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
+Advanced/Unstable API</h2></td></tr>
+<tr class="memitem:a68345956f3f4c7fd5e1665fd292f6a85"><td class="memItemLeft" align="right" valign="top">static const uint64_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a68345956f3f4c7fd5e1665fd292f6a85">NO_FLAGS</a> = 0</td></tr>
+<tr class="separator:a68345956f3f4c7fd5e1665fd292f6a85"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a63cd270f3bc72f4197d2581ec8f8fc44"><td class="memItemLeft" align="right" valign="top">static const uint64_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a63cd270f3bc72f4197d2581ec8f8fc44">PAD_UNIXTIME_MICROS_TO_16_BYTES</a> = 1 &lt;&lt; 0</td></tr>
+<tr class="separator:a63cd270f3bc72f4197d2581ec8f8fc44"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3dbaf4c2db6a37517a242dcb8ee64c11"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a3dbaf4c2db6a37517a242dcb8ee64c11">SetRowFormatFlags</a> (uint64_t flags)</td></tr>
+<tr class="separator:a3dbaf4c2db6a37517a242dcb8ee64c11"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>This class is a representation of a single scan. </p>
+<dl class="section note"><dt>Note</dt><dd>This class is not thread-safe, though different scanners on different threads may share a single <a class="el" href="classkudu_1_1client_1_1KuduTable.html" title="A representation of a table on a particular cluster. ">KuduTable</a> object. </dd></dl>
+</div><h2 class="groupheader">Member Enumeration Documentation</h2>
+<a class="anchor" id="a60615ffe5fe82c5dcd12fec47502bec1"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">anonymous enum</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Default scanner timeout. This is set to 3x the default RPC timeout returned by <a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html#a1813e8c8d24e92a0a710724000e2b3df">KuduClientBuilder::default_rpc_timeout()</a>. </p>
+
+</div>
+</div>
+<a class="anchor" id="a3d6c79325c9da9741d0accf1b43bf7f9"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">enum <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a3d6c79325c9da9741d0accf1b43bf7f9">kudu::client::KuduScanner::OrderMode</a></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Whether the rows should be returned in order.</p>
+<p>This affects the fault-tolerance properties of a scanner. </p>
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="a3d6c79325c9da9741d0accf1b43bf7f9adfeea547de613f36a0aff9f585671ec3"></a>UNORDERED&#160;</td><td class="fielddoc">
+<p>Rows will be returned in an arbitrary order determined by the tablet server. This is efficient, but unordered scans are not fault-tolerant and cannot be resumed in the case of tablet server failure.</p>
+<p>This is the default mode. </p>
+</td></tr>
+<tr><td class="fieldname"><a class="anchor" id="a3d6c79325c9da9741d0accf1b43bf7f9a4395ad2ec57ce53e30d8b5748fa2c63a"></a>ORDERED&#160;</td><td class="fielddoc">
+<p>Rows will be returned ordered by primary key. Sorting the rows imposes additional overhead on the tablet server, but means that scans are fault-tolerant and will be resumed at another tablet server in the case of a failure. </p>
+</td></tr>
+</table>
+
+</div>
+</div>
+<a class="anchor" id="a36fdb59d6488618363331269d3f58348"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">enum <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a36fdb59d6488618363331269d3f58348">kudu::client::KuduScanner::ReadMode</a></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>The read modes for scanners. </p>
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="a36fdb59d6488618363331269d3f58348a8694cef688d819806fa9a85b002231a8"></a>READ_LATEST&#160;</td><td class="fielddoc">
+<p>When <code>READ_LATEST</code> is specified the server will always return committed writes at the time the request was received. This type of read does not return a snapshot timestamp and is not repeatable.</p>
+<p>In ACID terms this corresponds to Isolation mode: "Read Committed"</p>
+<p>This is the default mode. </p>
+</td></tr>
+<tr><td class="fieldname"><a class="anchor" id="a36fdb59d6488618363331269d3f58348a380798cc81589d865b7b2549e186b2e2"></a>READ_AT_SNAPSHOT&#160;</td><td class="fielddoc">
+<p>When <code>READ_AT_SNAPSHOT</code> is specified the server will attempt to perform a read at the provided timestamp. If no timestamp is provided the server will take the current time as the snapshot timestamp. In this mode reads are repeatable, i.e. all future reads at the same timestamp will yield the same data. This is performed at the expense of waiting for in-flight transactions whose timestamp is lower than the snapshot's timestamp to complete, so it might incur a latency penalty. See <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a5b36a405daf09399438d5501b25b9f9f">KuduScanner::SetSnapshotMicros()</a> and <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#ab13dbb301197b411dec4cd6870801bae">KuduScanner::SetSnapshotRaw()</a> for details.</p>
+<p>In ACID terms this, by itself, corresponds to Isolation mode "Repeatable
+    Read". If all writes to the scanned tablet are made externally consistent, then this corresponds to Isolation mode "Strict-Serializable".</p>
+<dl class="section note"><dt>Note</dt><dd>There are currently "holes", which happen in rare edge conditions, by which writes are sometimes not externally consistent even when action was taken to make them so. In these cases Isolation may degenerate to mode "Read Committed". See KUDU-430. </dd></dl>
+</td></tr>
+</table>
+
+</div>
+</div>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a2c621f778072a02f4092e96a0baf8180"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">kudu::client::KuduScanner::KuduScanner </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classkudu_1_1client_1_1KuduTable.html">KuduTable</a> *&#160;</td>
+          <td class="paramname"><em>table</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">explicit</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Constructor for <a class="el" href="classkudu_1_1client_1_1KuduScanner.html" title="This class is a representation of a single scan. ">KuduScanner</a>.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">table</td><td>The table to perfrom scan. The given object must remain valid for the lifetime of this scanner object. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a47b0fcd30f8002cb4fdcf69351896b74"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduScanner::AddConjunctPredicate </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">KuduPredicate</a> *&#160;</td>
+          <td class="paramname"><em>pred</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Add a predicate for the scan.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">pred</td><td>Predicate to set. The <a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html" title="Builds scan tokens for a table. ">KuduScanTokenBuilder</a> instance takes ownership of the parameter even if a bad <a class="el" href="classkudu_1_1Status.html" title="A representation of an operation&#39;s outcome. ">Status</a> is returned. Multiple calls of this method make the specified set of predicates work in conjunction, i.e. all predicates must be true for a row to be returned. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a551fd38d48a686f2662727a82e79bd3d"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduScanner::AddExclusiveUpperBound </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a> &amp;&#160;</td>
+          <td class="paramname"><em>key</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Add an upper bound (exclusive) primary key for the scan.</p>
+<p>If any bound is already added, this bound is intersected with that one.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">key</td><td>The key to setup the upper bound. The scanner makes a copy of the parameter, the caller may free it afterward. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="aa951a6ec3aeb82c82afe35d8e3ba18a9"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduScanner::AddExclusiveUpperBoundPartitionKeyRaw </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;&#160;</td>
+          <td class="paramname"><em>partition_key</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Add an upper bound (exclusive) partition key for the scan.</p>
+<dl class="section note"><dt>Note</dt><dd>This method is unstable, and for internal use only.</dd></dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">partition_key</td><td>The scanner makes a copy of the parameter, the caller may invalidate it afterward. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="aefb6badecb950d5089b2f9d29d1f2ffe"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduScanner::AddExclusiveUpperBoundRaw </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;&#160;</td>
+          <td class="paramname"><em>key</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Add an upper bound (exclusive) primary key for the scan.</p>
+<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000005">Deprecated:</a></b></dt><dd>Use <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a551fd38d48a686f2662727a82e79bd3d">AddExclusiveUpperBound()</a> instead.</dd></dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">key</td><td>The encoded primary key is an opaque slice of data. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a67691944fc112f43c565ab4486514b86"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduScanner::AddLowerBound </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a> &amp;&#160;</td>
+          <td class="paramname"><em>key</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Add a lower bound (inclusive) primary key for the scan.</p>
+<p>If any bound is already added, this bound is intersected with that one.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">key</td><td>Lower bound primary key to add. The <a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html" title="Builds scan tokens for a table. ">KuduScanTokenBuilder</a> instance does not take ownership of the parameter. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ab53b88307028a50f66bcffe5e78c6d6e"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduScanner::AddLowerBoundPartitionKeyRaw </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;&#160;</td>
+          <td class="paramname"><em>partition_key</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Add a lower bound (inclusive) partition key for the scan.</p>
+<dl class="section note"><dt>Note</dt><dd>This method is unstable, and for internal use only.</dd></dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">partition_key</td><td>The scanner makes a copy of the parameter: the caller may invalidate it afterward. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a3e51a978f3e54237fa60f7447ef3436e"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduScanner::AddLowerBoundRaw </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;&#160;</td>
+          <td class="paramname"><em>key</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Add lower bound for the scan.</p>
+<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000004">Deprecated:</a></b></dt><dd>Use <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a67691944fc112f43c565ab4486514b86">AddLowerBound()</a> instead.</dd></dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">key</td><td>The primary key to use as an opaque slice of data. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ac673dd15cb038e75787af7e74087e874"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void kudu::client::KuduScanner::Close </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Close the scanner.</p>
+<p>Closing the scanner releases resources on the server. This call does not block, and will not ever fail, even if the server cannot be contacted.</p>
+<dl class="section note"><dt>Note</dt><dd>The scanner is reset to its initial state by this function. You'll have to re-add any projection, predicates, etc if you want to reuse this object. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ac2bce7bd17627a3aa46f7d7fdb4c0c10"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduScanner::GetCurrentServer </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classkudu_1_1client_1_1KuduTabletServer.html">KuduTabletServer</a> **&#160;</td>
+          <td class="paramname"><em>server</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Get the <a class="el" href="classkudu_1_1client_1_1KuduTabletServer.html" title="In-memory representation of a remote tablet server. ">KuduTabletServer</a> that is currently handling the scan.</p>
+<p>More concretely, this is the server that handled the most recent <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#aa1ff3c11d9ac9f8183189ea5ac1ed9f1">Open()</a> or <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#af365f1d3b3b34aeb7d016727a9019067">NextBatch()</a> RPC made by the server.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[out]</td><td class="paramname">server</td><td>Placeholder for the result. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a7fad1430b8e1d4caf0614f690fa2666f"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a> kudu::client::KuduScanner::GetProjectionSchema </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd>Schema of the projection being scanned. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a640d0d9de62587b29afbec22b7c6b628"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">const <a class="el" href="classkudu_1_1client_1_1ResourceMetrics.html">ResourceMetrics</a>&amp; kudu::client::KuduScanner::GetResourceMetrics </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd>Cumulative resource metrics since the scan was started. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ab04c2012970498590d2d2034d6a44d34"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool kudu::client::KuduScanner::HasMoreRows </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Check if there may be rows to be fetched from this scanner.</p>
+<dl class="section return"><dt>Returns</dt><dd><code>true</code> if there may be rows to be fetched from this scanner. The method returns <code>true</code> provided there's at least one more tablet left to scan, even if that tablet has no data (we'll only know once we scan it). It will also be <code>true</code> after the initially opening the scanner before NextBatch is called for the first time. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="aa4a0caf7142880255d7aac1d75f33d21"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduScanner::KeepAlive </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Keep the current remote scanner alive.</p>
+<p>Keep the current remote scanner alive on the Tablet server for an additional time-to-live (set by a configuration flag on the tablet server). This is useful if the interval in between <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#af365f1d3b3b34aeb7d016727a9019067">NextBatch()</a> calls is big enough that the remote scanner might be garbage collected (default TTL is set to 60 secs.). This does not invalidate any previously fetched results.</p>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. In particular, this method returns a non-OK status if the scanner was already garbage collected or if the TabletServer was unreachable, for any reason. Note that a non-OK status returned by this method should not be taken as indication that the scan has failed. Subsequent calls to <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#af365f1d3b3b34aeb7d016727a9019067">NextBatch()</a> might still be successful, particularly if <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a107a8a682c0977272e0ae47746d39e6f">SetFaultTolerant()</a> has been called. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="af365f1d3b3b34aeb7d016727a9019067"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduScanner::NextBatch </td>
+          <td>(</td>
+          <td class="paramtype">std::vector&lt; KuduRowResult &gt; *&#160;</td>
+          <td class="paramname"><em>rows</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Get next batch of rows.</p>
+<p>Clears 'rows' and populates it with the next batch of rows from the tablet server. A call to <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#af365f1d3b3b34aeb7d016727a9019067">NextBatch()</a> invalidates all previously fetched results which might now be pointing to garbage memory.</p>
+<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000006">Deprecated:</a></b></dt><dd>Use <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#af1475d9a0667839c1ed9c3714b47d487">NextBatch(KuduScanBatch*)</a> instead.</dd></dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[out]</td><td class="paramname">rows</td><td>Placeholder for the result. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="af1475d9a0667839c1ed9c3714b47d487"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduScanner::NextBatch </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html">KuduScanBatch</a> *&#160;</td>
+          <td class="paramname"><em>batch</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Fetch the next batch of results for this scanner.</p>
+<p>A single <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html" title="A batch of zero or more rows returned by a scan operation. ">KuduScanBatch</a> object may be reused. Each subsequent call replaces the data from the previous call, and invalidates any <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#a92bbfa48e9b503181c2dfb5f11f14e4e">KuduScanBatch::RowPtr</a> objects previously obtained from the batch. </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[out]</td><td class="paramname">batch</td><td>Placeholder for the result. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="aa1ff3c11d9ac9f8183189ea5ac1ed9f1"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduScanner::Open </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd>Result status of the operation (begin scanning). </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="af82c4ccb442c222033841dd65cf5a67c"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduScanner::SetBatchSizeBytes </td>
+          <td>(</td>
+          <td class="paramtype">uint32_t&#160;</td>
+          <td class="paramname"><em>batch_size</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Set the hint for the size of the next batch in bytes.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">batch_size</td><td>The hint of batch size to set. If setting to 0 before calling <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#aa1ff3c11d9ac9f8183189ea5ac1ed9f1">Open()</a>, it means that the first call to the tablet server won't return data. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a4a4a2e354b3113561758b9bf4095d310"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduScanner::SetCacheBlocks </td>
+          <td>(</td>
+          <td class="paramtype">bool&#160;</td>
+          <td class="paramname"><em>cache_blocks</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Set the block caching policy.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">cache_blocks</td><td>If <code>true</code>, scanned data blocks will be cached in memory and made available for future scans. Default is <code>true</code>. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a107a8a682c0977272e0ae47746d39e6f"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduScanner::SetFaultTolerant </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Make scans resumable at another tablet server if current server fails.</p>
+<p>Scans are by default non fault-tolerant, and scans will fail if scanning an individual tablet fails (for example, if a tablet server crashes in the middle of a tablet scan). If this method is called, scans will be resumed at another tablet server in the case of failure.</p>
+<p>Fault-tolerant scans typically have lower throughput than non fault-tolerant scans. Fault tolerant scans use <code>READ_AT_SNAPSHOT</code> mode: if no snapshot timestamp is provided, the server will pick one.</p>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a93a87740ea75c9b6524dc229576b69fc"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduScanner::SetOrderMode </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a3d6c79325c9da9741d0accf1b43bf7f9">OrderMode</a>&#160;</td>
+          <td class="paramname"><em>order_mode</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000007">Deprecated:</a></b></dt><dd>Use <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a107a8a682c0977272e0ae47746d39e6f">SetFaultTolerant()</a> instead.</dd></dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">order_mode</td><td>Result record ordering mode to set. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a8d938c6efc1b36d456c91b5af0b1578d"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduScanner::SetProjectedColumnIndexes </td>
+          <td>(</td>
+          <td class="paramtype">const std::vector&lt; int &gt; &amp;&#160;</td>
+          <td class="paramname"><em>col_indexes</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Set the column projection by passing the column indexes to read.</p>
+<p>Set the column projection used for this scanner by passing the column indices to read. A call to this method overrides any previous call to <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#abb10b26056757bf81c410d3d5e6bcc01">SetProjectedColumnNames()</a> or <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a8d938c6efc1b36d456c91b5af0b1578d">SetProjectedColumnIndexes()</a>.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">col_indexes</td><td>Column indices for the projection. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="abb10b26056757bf81c410d3d5e6bcc01"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduScanner::SetProjectedColumnNames </td>
+          <td>(</td>
+          <td class="paramtype">const std::vector&lt; std::string &gt; &amp;&#160;</td>
+          <td class="paramname"><em>col_names</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Set the projection for the scanner using column names.</p>
+<p>Set the projection used for the scanner by passing column names to read. This overrides any previous call to <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#abb10b26056757bf81c410d3d5e6bcc01">SetProjectedColumnNames()</a> or <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a8d938c6efc1b36d456c91b5af0b1578d">SetProjectedColumnIndexes()</a>.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">col_names</td><td>Column names to use for the projection. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a68e2115cde71e113674e7a8b4df399ad"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduScanner::SetProjectedColumns </td>
+          <td>(</td>
+          <td class="paramtype">const std::vector&lt; std::string &gt; &amp;&#160;</td>
+          <td class="paramname"><em>col_names</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000003">Deprecated:</a></b></dt><dd>Use <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#abb10b26056757bf81c410d3d5e6bcc01">SetProjectedColumnNames()</a> instead.</dd></dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">col_names</td><td>Column names to use for the projection. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a248e0a05e7bfdc31b5b8d363a937e81e"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduScanner::SetReadMode </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a36fdb59d6488618363331269d3f58348">ReadMode</a>&#160;</td>
+          <td class="paramname"><em>read_mode</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Set the ReadMode. Default is <code>READ_LATEST</code>.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">read_mode</td><td>Read mode to set. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a3dbaf4c2db6a37517a242dcb8ee64c11"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduScanner::SetRowFormatFlags </td>
+          <td>(</td>
+          <td class="paramtype">uint64_t&#160;</td>
+          <td class="paramname"><em>flags</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Optionally set row format modifier flags.</p>
+<p>If flags is RowFormatFlags::NO_FLAGS, then no modifications will be made to the row format and the default will be used.</p>
+<p>Some flags require server-side server-side support, thus the caller should be prepared to handle a NotSupported status in <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#aa1ff3c11d9ac9f8183189ea5ac1ed9f1">Open()</a> and <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#af365f1d3b3b34aeb7d016727a9019067">NextBatch()</a>.</p>
+<p>Example usage (without error handling, for brevity): </p><div class="fragment"><div class="line"><a class="code" href="classkudu_1_1client_1_1KuduScanner.html#a2c621f778072a02f4092e96a0baf8180">KuduScanner</a> scanner(...);</div><div class="line">uint64_t row_format_flags = <a class="code" href="classkudu_1_1client_1_1KuduScanner.html#a68345956f3f4c7fd5e1665fd292f6a85">KuduScanner::NO_FLAGS</a>;</div><div class="line">row_format_flags |= <a class="code" href="classkudu_1_1client_1_1KuduScanner.html#a63cd270f3bc72f4197d2581ec8f8fc44">KuduScanner::PAD_UNIXTIME_MICROS_TO_16_BYTES</a>;</div><div class="line">scanner.SetRowFormatFlags(row_format_flags);</div><div class="line">scanner.Open();</div><div class="line"><span class="keywordflow">while</span> (scanner.HasMoreRows()) {</div><div class="line">  KuduScanBatch batch;</div><div class="line">  scanner.NextBatch(&amp;batch);</div><div class="line">  Slice direct_data = batch.direct_data();</div><div class="line">  Slice indirect_data = batch.indirect_data();</div><div class="line">  ... <span class="comment">// Row data decoding and handling.</span></div><div class="line">}</div></div><!-- fragment --> 
+</div>
+</div>
+<a class="anchor" id="af1db3f372fe3d0f30cd0b6a36b783cc8"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduScanner::SetSelection </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11a">KuduClient::ReplicaSelection</a>&#160;</td>
+          <td class="paramname"><em>selection</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Set the replica selection policy while scanning.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">selection</td><td>The policy to set. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status.</dd></dl>
+<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000007">Todo:</a></b></dt><dd>Kill this method in favor of a consistency-level-based API. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a5b36a405daf09399438d5501b25b9f9f"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduScanner::SetSnapshotMicros </td>
+          <td>(</td>
+          <td class="paramtype">uint64_t&#160;</td>
+          <td class="paramname"><em>snapshot_timestamp_micros</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Set snapshot timestamp for scans in <code>READ_AT_SNAPSHOT</code> mode.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">snapshot_timestamp_micros</td><td>Timestamp to set in in microseconds since the Epoch. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ab13dbb301197b411dec4cd6870801bae"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduScanner::SetSnapshotRaw </td>
+          <td>(</td>
+          <td class="paramtype">uint64_t&#160;</td>
+          <td class="paramname"><em>snapshot_timestamp</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Set snapshot timestamp for scans in <code>READ_AT_SNAPSHOT</code> mode (raw).</p>
+<p>See <a class="el" href="classkudu_1_1client_1_1KuduClient.html#a3a671b3540c74ef7c358bb98e95031e0">KuduClient::GetLatestObservedTimestamp()</a> for details on how to use this method to achieve Read-Your-Writes behavior.</p>
+<dl class="section note"><dt>Note</dt><dd>This method is experimental and will either disappear or change in a future release.</dd></dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">snapshot_timestamp</td><td>Timestamp to set in raw encoded form (i.e. as returned by a previous call to a server). </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a97c9f5e6a1056484c88ced411e19bee6"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduScanner::SetTimeoutMillis </td>
+          <td>(</td>
+          <td class="paramtype">int&#160;</td>
+          <td class="paramname"><em>millis</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Set the maximum time that <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#aa1ff3c11d9ac9f8183189ea5ac1ed9f1">Open()</a> and <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#af365f1d3b3b34aeb7d016727a9019067">NextBatch()</a> are allowed to take.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">millis</td><td>Timeout to set (in milliseconds). Must be greater than 0. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="aea36ffb783be3ffdf370cd7399f232d3"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::string kudu::client::KuduScanner::ToString </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd>String representation of this scan. </dd></dl>
+
+</div>
+</div>
+<h2 class="groupheader">Member Data Documentation</h2>
+<a class="anchor" id="a68345956f3f4c7fd5e1665fd292f6a85"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">const uint64_t kudu::client::KuduScanner::NO_FLAGS = 0</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Modifier flags for the row format returned from the server.</p>
+<dl class="section note"><dt>Note</dt><dd>Each flag corresponds to a bit that gets set on a bitset that is sent to the server. See <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a3dbaf4c2db6a37517a242dcb8ee64c11">SetRowFormatFlags()</a> for example usage. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a63cd270f3bc72f4197d2581ec8f8fc44"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">const uint64_t kudu::client::KuduScanner::PAD_UNIXTIME_MICROS_TO_16_BYTES = 1 &lt;&lt; 0</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Makes the server pad UNIXTIME_MICROS slots to 16 bytes. </p><dl class="section note"><dt>Note</dt><dd>This flag actually wastes throughput by making messages larger than they need to be. It exists merely for compatibility reasons and requires the user to know the row format in order to decode the data. That is, if this flag is enabled, the user <em>must</em> use <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#a1073a0c6517b126690d99527556dba51">KuduScanBatch::direct_data()</a> and <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#af41b26a5f137122454d6341a5b5c1a43">KuduScanBatch::indirect_data()</a> to obtain the row data for further decoding. Using <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#a93c2f0914140dd405a51d57e2f75014a">KuduScanBatch::Row()</a> might yield incorrect/corrupt results and might even cause the client to crash. </dd></dl>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/kudu/client/<a class="el" href="client_8h_source.html">client.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduSchema-members.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduSchema-members.html
new file mode 100644
index 0000000..48b64fb
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduSchema-members.html
@@ -0,0 +1,134 @@
+<!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.11"/>
+<title>Kudu C++ client API: Member 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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">kudu::client::KuduSchema Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a>, including all inherited members.</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>ClientTest</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html#afe784e7c95d85391246a9b4745fed00b">Column</a>(size_t idx) const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>CopyFrom</b>(const KuduSchema &amp;other) (defined in <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html#a3d9bc062492e472a2055841461b2a87f">Equals</a>(const KuduSchema &amp;other) const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html#a192b707f348178b698070d3a88a4d156">GetPrimaryKeyColumnIndexes</a>(std::vector&lt; int &gt; *indexes) const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>internal::GetTableSchemaRpc</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>internal::LookupRpc</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>internal::MetaCacheEntry</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>internal::WriteRpc</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>KuduClient</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>KuduScanner</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>KuduScanToken</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>KuduScanTokenBuilder</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>KuduSchema</b>() (defined in <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html#a41a683f3d93357fe68531bf71df39d02">KuduSchema</a>(const KuduSchema &amp;other)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>KuduSchemaBuilder</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>KuduSchemaFromSchema</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>KuduTable</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>KuduTableCreator</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>KuduWriteOperation</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html#aafaa50819a283b014ae03373e53489a1">NewRow</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html#ac9e9f590006bd7ccfa44b87dec1b3c7a">num_columns</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>operator=</b>(const KuduSchema &amp;other) (defined in <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html#a3f51ccf1a7e6f4a4fe4958073305dbab">Reset</a>(const std::vector&lt; KuduColumnSchema &gt; &amp;columns, int key_columns) WARN_UNUSED_RESULT</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>ScanConfiguration</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>tools::RemoteKsckMaster</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>tools::ReplicaDumper</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>~KuduSchema</b>() (defined in <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduSchema.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduSchema.html
new file mode 100644
index 0000000..1007669
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduSchema.html
@@ -0,0 +1,369 @@
+<!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.11"/>
+<title>Kudu C++ client API: kudu::client::KuduSchema Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#friends">Friends</a> &#124;
+<a href="classkudu_1_1client_1_1KuduSchema-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">kudu::client::KuduSchema Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>A representation of a table's schema.  
+ <a href="classkudu_1_1client_1_1KuduSchema.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="schema_8h_source.html">schema.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a41a683f3d93357fe68531bf71df39d02"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html#a41a683f3d93357fe68531bf71df39d02">KuduSchema</a> (const <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a> &amp;other)</td></tr>
+<tr class="separator:a41a683f3d93357fe68531bf71df39d02"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3f51ccf1a7e6f4a4fe4958073305dbab"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html#a3f51ccf1a7e6f4a4fe4958073305dbab">Reset</a> (const std::vector&lt; <a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html">KuduColumnSchema</a> &gt; &amp;columns, int key_columns) WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:a3f51ccf1a7e6f4a4fe4958073305dbab"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3d9bc062492e472a2055841461b2a87f"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html#a3d9bc062492e472a2055841461b2a87f">Equals</a> (const <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a> &amp;other) const </td></tr>
+<tr class="separator:a3d9bc062492e472a2055841461b2a87f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afe784e7c95d85391246a9b4745fed00b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html">KuduColumnSchema</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html#afe784e7c95d85391246a9b4745fed00b">Column</a> (size_t idx) const </td></tr>
+<tr class="separator:afe784e7c95d85391246a9b4745fed00b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac9e9f590006bd7ccfa44b87dec1b3c7a"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html#ac9e9f590006bd7ccfa44b87dec1b3c7a">num_columns</a> () const </td></tr>
+<tr class="separator:ac9e9f590006bd7ccfa44b87dec1b3c7a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a192b707f348178b698070d3a88a4d156"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html#a192b707f348178b698070d3a88a4d156">GetPrimaryKeyColumnIndexes</a> (std::vector&lt; int &gt; *indexes) const </td></tr>
+<tr class="separator:a192b707f348178b698070d3a88a4d156"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aafaa50819a283b014ae03373e53489a1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html#aafaa50819a283b014ae03373e53489a1">NewRow</a> () const </td></tr>
+<tr class="separator:aafaa50819a283b014ae03373e53489a1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr><td colspan="2"><div class="groupHeader">Assign/copy the schema</div></td></tr>
+<tr><td colspan="2"><div class="groupText"><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">other</td><td>The source <a class="el" href="classkudu_1_1client_1_1KuduSchema.html" title="A representation of a table&#39;s schema. ">KuduSchema</a> object to use as a reference. </td></tr>
+  </table>
+  </dd>
+</dl>
+</div></td></tr>
+<tr class="memitem:a7d8f49f184a94cee7993158baf6ae758"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7d8f49f184a94cee7993158baf6ae758"></a>
+<a class="el" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>operator=</b> (const <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a> &amp;other)</td></tr>
+<tr class="separator:a7d8f49f184a94cee7993158baf6ae758"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab146eab7c7fb9a5ea80a4466b5f68555"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab146eab7c7fb9a5ea80a4466b5f68555"></a>
+void&#160;</td><td class="memItemRight" valign="bottom"><b>CopyFrom</b> (const <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a> &amp;other)</td></tr>
+<tr class="separator:ab146eab7c7fb9a5ea80a4466b5f68555"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
+Friends</h2></td></tr>
+<tr class="memitem:aba2affbf999dd265d3a7f8c30598fec7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aba2affbf999dd265d3a7f8c30598fec7"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>ClientTest</b></td></tr>
+<tr class="separator:aba2affbf999dd265d3a7f8c30598fec7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5b5a804db2a148e792148f521f04b486"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5b5a804db2a148e792148f521f04b486"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>KuduClient</b></td></tr>
+<tr class="separator:a5b5a804db2a148e792148f521f04b486"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a79d30f3059c783e077627a6f6d153c1b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a79d30f3059c783e077627a6f6d153c1b"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>KuduScanner</b></td></tr>
+<tr class="separator:a79d30f3059c783e077627a6f6d153c1b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a08335df27491aef74f8ed104799ab541"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a08335df27491aef74f8ed104799ab541"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>KuduScanToken</b></td></tr>
+<tr class="separator:a08335df27491aef74f8ed104799ab541"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a644ef5d9d668e5772acd6dc03c4f14ee"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a644ef5d9d668e5772acd6dc03c4f14ee"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>KuduScanTokenBuilder</b></td></tr>
+<tr class="separator:a644ef5d9d668e5772acd6dc03c4f14ee"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab04cec7242eaf6df17c2923f939df780"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab04cec7242eaf6df17c2923f939df780"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>KuduSchemaBuilder</b></td></tr>
+<tr class="separator:ab04cec7242eaf6df17c2923f939df780"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a770744f0111b5919212173a7efaf85cd"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a770744f0111b5919212173a7efaf85cd"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>KuduTable</b></td></tr>
+<tr class="separator:a770744f0111b5919212173a7efaf85cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af500eb2379d14e4e6603db2c69faa783"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af500eb2379d14e4e6603db2c69faa783"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>KuduTableCreator</b></td></tr>
+<tr class="separator:af500eb2379d14e4e6603db2c69faa783"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1716edcec80b7e03b719234ba9143a89"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1716edcec80b7e03b719234ba9143a89"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>KuduWriteOperation</b></td></tr>
+<tr class="separator:a1716edcec80b7e03b719234ba9143a89"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a72362478ccdaaf6ea61d15d9fc13f7c6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a72362478ccdaaf6ea61d15d9fc13f7c6"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>ScanConfiguration</b></td></tr>
+<tr class="separator:a72362478ccdaaf6ea61d15d9fc13f7c6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1d6afdd81ae5d2f0207f7224a058132c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1d6afdd81ae5d2f0207f7224a058132c"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>internal::GetTableSchemaRpc</b></td></tr>
+<tr class="separator:a1d6afdd81ae5d2f0207f7224a058132c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a78c0756675d700d01d123aea8ca18751"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a78c0756675d700d01d123aea8ca18751"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>internal::LookupRpc</b></td></tr>
+<tr class="separator:a78c0756675d700d01d123aea8ca18751"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a001ace42e649417f24259cdd26f2e144"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a001ace42e649417f24259cdd26f2e144"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>internal::MetaCacheEntry</b></td></tr>
+<tr class="separator:a001ace42e649417f24259cdd26f2e144"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8241e8597925b7121abc27b5024c9773"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8241e8597925b7121abc27b5024c9773"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>internal::WriteRpc</b></td></tr>
+<tr class="separator:a8241e8597925b7121abc27b5024c9773"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a539a7fc0876317b802ed1108e1a47a66"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a539a7fc0876317b802ed1108e1a47a66"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>tools::RemoteKsckMaster</b></td></tr>
+<tr class="separator:a539a7fc0876317b802ed1108e1a47a66"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aafe7501e17c36d1c5dc2971f69a776de"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aafe7501e17c36d1c5dc2971f69a776de"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>tools::ReplicaDumper</b></td></tr>
+<tr class="separator:aafe7501e17c36d1c5dc2971f69a776de"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7c667823b7595d6535a5c2fa0e4c0560"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7c667823b7595d6535a5c2fa0e4c0560"></a>
+<a class="el" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a>&#160;</td><td class="memItemRight" valign="bottom"><b>KuduSchemaFromSchema</b> (const Schema &amp;schema)</td></tr>
+<tr class="separator:a7c667823b7595d6535a5c2fa0e4c0560"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>A representation of a table's schema. </p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a41a683f3d93357fe68531bf71df39d02"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">kudu::client::KuduSchema::KuduSchema </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a> &amp;&#160;</td>
+          <td class="paramname"><em>other</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Create a <a class="el" href="classkudu_1_1client_1_1KuduSchema.html" title="A representation of a table&#39;s schema. ">KuduSchema</a> object as a copy of the other one.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">other</td><td>The other <a class="el" href="classkudu_1_1client_1_1KuduSchema.html" title="A representation of a table&#39;s schema. ">KuduSchema</a> object to use as a reference. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="afe784e7c95d85391246a9b4745fed00b"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html">KuduColumnSchema</a> kudu::client::KuduSchema::Column </td>
+          <td>(</td>
+          <td class="paramtype">size_t&#160;</td>
+          <td class="paramname"><em>idx</em></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">idx</td><td>Column index. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Schema for the specified column. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a3d9bc062492e472a2055841461b2a87f"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool kudu::client::KuduSchema::Equals </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a> &amp;&#160;</td>
+          <td class="paramname"><em>other</em></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Check whether the schema is identical to the other one.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">other</td><td>The other <a class="el" href="classkudu_1_1client_1_1KuduSchema.html" title="A representation of a table&#39;s schema. ">KuduSchema</a> object to compare with. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd><code>true</code> iff this <a class="el" href="classkudu_1_1client_1_1KuduSchema.html" title="A representation of a table&#39;s schema. ">KuduSchema</a> object is identical to the specified one. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a192b707f348178b698070d3a88a4d156"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void kudu::client::KuduSchema::GetPrimaryKeyColumnIndexes </td>
+          <td>(</td>
+          <td class="paramtype">std::vector&lt; int &gt; *&#160;</td>
+          <td class="paramname"><em>indexes</em></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Get the indexes of the primary key columns within this Schema.</p>
+<dl class="section attention"><dt>Attention</dt><dd>In current versions of Kudu, these will always be contiguous column indexes starting with 0. However, in future versions this assumption may not hold, so callers should not assume it is the case.</dd></dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[out]</td><td class="paramname">indexes</td><td>The placeholder for the result. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="aafaa50819a283b014ae03373e53489a1"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>* kudu::client::KuduSchema::NewRow </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Create a new row corresponding to this schema.</p>
+<dl class="section note"><dt>Note</dt><dd>The new row refers to this <a class="el" href="classkudu_1_1client_1_1KuduSchema.html" title="A representation of a table&#39;s schema. ">KuduSchema</a> object, so it must be destroyed before the <a class="el" href="classkudu_1_1client_1_1KuduSchema.html" title="A representation of a table&#39;s schema. ">KuduSchema</a> object to avoid dangling pointers.</dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>A pointer to the newly created row. The caller takes ownership of the created row. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ac9e9f590006bd7ccfa44b87dec1b3c7a"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">size_t kudu::client::KuduSchema::num_columns </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd>The number of columns in the schema. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a3f51ccf1a7e6f4a4fe4958073305dbab"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduSchema::Reset </td>
+          <td>(</td>
+          <td class="paramtype">const std::vector&lt; <a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html">KuduColumnSchema</a> &gt; &amp;&#160;</td>
+          <td class="paramname"><em>columns</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">int&#160;</td>
+          <td class="paramname"><em>key_columns</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000012">Deprecated:</a></b></dt><dd>This method will be removed soon.</dd></dl>
+<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000014">Todo:</a></b></dt><dd>Remove <a class="el" href="classkudu_1_1client_1_1KuduSchema.html#a3f51ccf1a7e6f4a4fe4958073305dbab">KuduSchema::Reset()</a>.</dd></dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">columns</td><td>Per-column schema information. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">key_columns</td><td>Number of key columns in the schema. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/kudu/client/<a class="el" href="schema_8h_source.html">schema.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduSchemaBuilder-members.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduSchemaBuilder-members.html
new file mode 100644
index 0000000..5ca1406
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduSchemaBuilder-members.html
@@ -0,0 +1,111 @@
+<!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.11"/>
+<title>Kudu C++ client API: Member 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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduSchemaBuilder.html">KuduSchemaBuilder</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">kudu::client::KuduSchemaBuilder Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classkudu_1_1client_1_1KuduSchemaBuilder.html">kudu::client::KuduSchemaBuilder</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchemaBuilder.html#a0fdf28d49cc05ba4f3182f7398ddf600">AddColumn</a>(const std::string &amp;name)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchemaBuilder.html">kudu::client::KuduSchemaBuilder</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchemaBuilder.html#af117e347a7d0910dda2695997859db15">Build</a>(KuduSchema *schema)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchemaBuilder.html">kudu::client::KuduSchemaBuilder</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>KuduSchemaBuilder</b>() (defined in <a class="el" href="classkudu_1_1client_1_1KuduSchemaBuilder.html">kudu::client::KuduSchemaBuilder</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchemaBuilder.html">kudu::client::KuduSchemaBuilder</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchemaBuilder.html#ad4c1619445fea575a775f23752b6bfb9">SetPrimaryKey</a>(const std::vector&lt; std::string &gt; &amp;key_col_names)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchemaBuilder.html">kudu::client::KuduSchemaBuilder</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~KuduSchemaBuilder</b>() (defined in <a class="el" href="classkudu_1_1client_1_1KuduSchemaBuilder.html">kudu::client::KuduSchemaBuilder</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSchemaBuilder.html">kudu::client::KuduSchemaBuilder</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduSchemaBuilder.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduSchemaBuilder.html
new file mode 100644
index 0000000..5529445
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduSchemaBuilder.html
@@ -0,0 +1,201 @@
+<!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.11"/>
+<title>Kudu C++ client API: kudu::client::KuduSchemaBuilder Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduSchemaBuilder.html">KuduSchemaBuilder</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="classkudu_1_1client_1_1KuduSchemaBuilder-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">kudu::client::KuduSchemaBuilder Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>Builder API for constructing a <a class="el" href="classkudu_1_1client_1_1KuduSchema.html" title="A representation of a table&#39;s schema. ">KuduSchema</a> object.  
+ <a href="classkudu_1_1client_1_1KuduSchemaBuilder.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="schema_8h_source.html">schema.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a0fdf28d49cc05ba4f3182f7398ddf600"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html">KuduColumnSpec</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduSchemaBuilder.html#a0fdf28d49cc05ba4f3182f7398ddf600">AddColumn</a> (const std::string &amp;name)</td></tr>
+<tr class="separator:a0fdf28d49cc05ba4f3182f7398ddf600"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad4c1619445fea575a775f23752b6bfb9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduSchemaBuilder.html">KuduSchemaBuilder</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduSchemaBuilder.html#ad4c1619445fea575a775f23752b6bfb9">SetPrimaryKey</a> (const std::vector&lt; std::string &gt; &amp;key_col_names)</td></tr>
+<tr class="separator:ad4c1619445fea575a775f23752b6bfb9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af117e347a7d0910dda2695997859db15"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduSchemaBuilder.html#af117e347a7d0910dda2695997859db15">Build</a> (<a class="el" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a> *schema)</td></tr>
+<tr class="separator:af117e347a7d0910dda2695997859db15"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>Builder API for constructing a <a class="el" href="classkudu_1_1client_1_1KuduSchema.html" title="A representation of a table&#39;s schema. ">KuduSchema</a> object. </p>
+<p>The API here is a "fluent" style of programming, such that the resulting code looks somewhat like a SQL "CREATE TABLE" statement. For example:</p>
+<p>SQL: </p><div class="fragment"><div class="line">CREATE TABLE t (</div><div class="line">  my_key <span class="keywordtype">int</span> not null primary key,</div><div class="line">  a <span class="keywordtype">float</span> <span class="keywordflow">default</span> 1.5</div><div class="line">);</div></div><!-- fragment --><p>is represented as: </p><div class="fragment"><div class="line">KuduSchemaBuilder t;</div><div class="line">t.AddColumn(<span class="stringliteral">&quot;my_key&quot;</span>)-&gt;Type(KuduColumnSchema::INT32)-&gt;NotNull()-&gt;PrimaryKey();</div><div class="line">t.AddColumn(<span class="stringliteral">&quot;a&quot;</span>)-&gt;Type(KuduColumnSchema::FLOAT)-&gt;Default(KuduValue::FromFloat(1.5));</div><div class="line">KuduSchema schema;</div><div class="line">t.Build(&amp;schema);</div></div><!-- fragment --> </div><h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a0fdf28d49cc05ba4f3182f7398ddf600"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html">KuduColumnSpec</a>* kudu::client::KuduSchemaBuilder::AddColumn </td>
+          <td>(</td>
+          <td class="paramtype">const std::string &amp;&#160;</td>
+          <td class="paramname"><em>name</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Add a column with the specified name to the schema.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">name</td><td>Name of the column to add. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>A <a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html" title="Builder API for specifying or altering a column within a table schema. ">KuduColumnSpec</a> object for a new column within the Schema. The returned object is owned by the <a class="el" href="classkudu_1_1client_1_1KuduSchemaBuilder.html" title="Builder API for constructing a KuduSchema object. ">KuduSchemaBuilder</a>. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="af117e347a7d0910dda2695997859db15"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduSchemaBuilder::Build </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a> *&#160;</td>
+          <td class="paramname"><em>schema</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Build the schema based on current configuration of the builder object.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[out]</td><td class="paramname">schema</td><td>The placeholder for the result schema. Upon successful completion, the parameter is reset to the result of this builder: literally, calling <a class="el" href="classkudu_1_1client_1_1KuduSchema.html#a3f51ccf1a7e6f4a4fe4958073305dbab">KuduSchema::Reset()</a> on the parameter. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. If the resulting would-be-schema is invalid for any reason (e.g. missing types, duplicate column names, etc.) a bad <a class="el" href="classkudu_1_1Status.html" title="A representation of an operation&#39;s outcome. ">Status</a> is returned. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ad4c1619445fea575a775f23752b6bfb9"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduSchemaBuilder.html">KuduSchemaBuilder</a>* kudu::client::KuduSchemaBuilder::SetPrimaryKey </td>
+          <td>(</td>
+          <td class="paramtype">const std::vector&lt; std::string &gt; &amp;&#160;</td>
+          <td class="paramname"><em>key_col_names</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Set the primary key of the new Schema based on the given column names.</p>
+<p>This may be used to specify a compound primary key.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">key_col_names</td><td>Names of the columns to include into the compound primary key. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Pointer to the modified object. </dd></dl>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/kudu/client/<a class="el" href="schema_8h_source.html">schema.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduSession-members.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduSession-members.html
new file mode 100644
index 0000000..0bfe225
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduSession-members.html
@@ -0,0 +1,134 @@
+<!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.11"/>
+<title>Kudu C++ client API: Member 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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduSession.html">KuduSession</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">kudu::client::KuduSession Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classkudu_1_1client_1_1KuduSession.html">kudu::client::KuduSession</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSession.html#ad3f7324b27fca298c5ca3d07b4741943">Apply</a>(KuduWriteOperation *write_op) WARN_UNUSED_RESULT</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSession.html">kudu::client::KuduSession</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19a520b8eef7ef0fd149b2757faf43972b1">AUTO_FLUSH_BACKGROUND</a> enum value</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSession.html">kudu::client::KuduSession</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19ad74b76e407e62ca951d369521636df2b">AUTO_FLUSH_SYNC</a> enum value</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSession.html">kudu::client::KuduSession</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSession.html#a4ed0bac1edcbba612d7de41e8c8adfd5">client</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSession.html">kudu::client::KuduSession</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSession.html#aabd55109ba3b086bbe33b277cdd40d22ae978fab7451faebf4399830b603c855c">CLIENT_PROPAGATED</a> enum value</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSession.html">kudu::client::KuduSession</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>ClientTest</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduSession.html">kudu::client::KuduSession</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSession.html">kudu::client::KuduSession</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSession.html#aa5204844e361ecc3068fbc4e02fd4436">Close</a>() WARN_UNUSED_RESULT</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSession.html">kudu::client::KuduSession</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSession.html#aabd55109ba3b086bbe33b277cdd40d22a70010f3ef1f70b99b02328c024c436c9">COMMIT_WAIT</a> enum value</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSession.html">kudu::client::KuduSession</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSession.html#af6249cf3bbad8e2e11e54edf40a7bc1d">CountBufferedOperations</a>() const ATTRIBUTE_DEPRECATED(&quot;this method is experimental and will disappear &quot;&quot;in a future release&quot;)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSession.html">kudu::client::KuduSession</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSession.html#a277c213a68679c6b0d5c432919eb9198">CountPendingErrors</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSession.html">kudu::client::KuduSession</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSession.html#aabd55109ba3b086bbe33b277cdd40d22">ExternalConsistencyMode</a> enum name</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSession.html">kudu::client::KuduSession</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSession.html#a64955abb5f5cc821b6e56354f733ce84">Flush</a>() WARN_UNUSED_RESULT</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSession.html">kudu::client::KuduSession</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSession.html#ad8c68570479e95b325d8a5437eef8731">FlushAsync</a>(KuduStatusCallback *cb)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSession.html">kudu::client::KuduSession</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19">FlushMode</a> enum name</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSession.html">kudu::client::KuduSession</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSession.html#ad5e3521623338de49cfd62914bdcb2f7">GetPendingErrors</a>(std::vector&lt; KuduError * &gt; *errors, bool *overflowed)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSession.html">kudu::client::KuduSession</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSession.html#a3f224e9b95f86da7e1f2ea6fcf327756">HasPendingOperations</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSession.html">kudu::client::KuduSession</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>internal::Batcher</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduSession.html">kudu::client::KuduSession</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSession.html">kudu::client::KuduSession</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>KuduClient</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduSession.html">kudu::client::KuduSession</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSession.html">kudu::client::KuduSession</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19a1db3efc2094da09aae45bb68475cdb4a">MANUAL_FLUSH</a> enum value</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSession.html">kudu::client::KuduSession</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSession.html#af1c5e5e8faba286cddc266057e9a82d5">SetErrorBufferSpace</a>(size_t size_bytes)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSession.html">kudu::client::KuduSession</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSession.html#a56d1c7f47dfcaf5121b15a4435a8eeca">SetExternalConsistencyMode</a>(ExternalConsistencyMode m) WARN_UNUSED_RESULT</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSession.html">kudu::client::KuduSession</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSession.html#a83555781b5a037f87c215e565ecf1a8f">SetFlushMode</a>(FlushMode m) WARN_UNUSED_RESULT</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSession.html">kudu::client::KuduSession</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSession.html#aabe75f0688f992dbdb2694a50d07f941">SetMutationBufferFlushInterval</a>(unsigned int millis) WARN_UNUSED_RESULT</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSession.html">kudu::client::KuduSession</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSession.html#a7311344cec37b3847217197c35467cdf">SetMutationBufferFlushWatermark</a>(double watermark_pct) WARN_UNUSED_RESULT</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSession.html">kudu::client::KuduSession</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSession.html#ac9a96017f86bfb6348fca9bfa0b8b5a4">SetMutationBufferMaxNum</a>(unsigned int max_num) WARN_UNUSED_RESULT</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSession.html">kudu::client::KuduSession</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSession.html#aefa9bbc51c27104ce103b9ecda3b8abf">SetMutationBufferSpace</a>(size_t size_bytes) WARN_UNUSED_RESULT</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSession.html">kudu::client::KuduSession</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSession.html#a25b22362650d7120f59cc1025e40bd79">SetTimeoutMillis</a>(int millis)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSession.html">kudu::client::KuduSession</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>~KuduSession</b>() (defined in <a class="el" href="classkudu_1_1client_1_1KuduSession.html">kudu::client::KuduSession</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduSession.html">kudu::client::KuduSession</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduSession.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduSession.html
new file mode 100644
index 0000000..5480636
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduSession.html
@@ -0,0 +1,678 @@
+<!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.11"/>
+<title>Kudu C++ client API: kudu::client::KuduSession Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduSession.html">KuduSession</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-types">Public Types</a> &#124;
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#friends">Friends</a> &#124;
+<a href="classkudu_1_1client_1_1KuduSession-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">kudu::client::KuduSession Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>Representation of a Kudu client session.  
+ <a href="classkudu_1_1client_1_1KuduSession.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="client_8h_source.html">client.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for kudu::client::KuduSession:</div>
+<div class="dyncontent">
+<div class="center"><img src="classkudu_1_1client_1_1KuduSession__inherit__graph.png" border="0" usemap="#kudu_1_1client_1_1KuduSession_inherit__map" alt="Inheritance graph"/></div>
+<map name="kudu_1_1client_1_1KuduSession_inherit__map" id="kudu_1_1client_1_1KuduSession_inherit__map">
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<div class="dynheader">
+Collaboration diagram for kudu::client::KuduSession:</div>
+<div class="dyncontent">
+<div class="center"><img src="classkudu_1_1client_1_1KuduSession__coll__graph.png" border="0" usemap="#kudu_1_1client_1_1KuduSession_coll__map" alt="Collaboration graph"/></div>
+<map name="kudu_1_1client_1_1KuduSession_coll__map" id="kudu_1_1client_1_1KuduSession_coll__map">
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
+Public Types</h2></td></tr>
+<tr class="memitem:aaec3956e642610d703f3b83b78e24e19"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19">FlushMode</a> { <a class="el" href="classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19ad74b76e407e62ca951d369521636df2b">AUTO_FLUSH_SYNC</a>, 
+<a class="el" href="classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19a520b8eef7ef0fd149b2757faf43972b1">AUTO_FLUSH_BACKGROUND</a>, 
+<a class="el" href="classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19a1db3efc2094da09aae45bb68475cdb4a">MANUAL_FLUSH</a>
+ }<tr class="memdesc:aaec3956e642610d703f3b83b78e24e19"><td class="mdescLeft">&#160;</td><td class="mdescRight">Modes of flush operations.  <a href="classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19">More...</a><br /></td></tr>
+</td></tr>
+<tr class="separator:aaec3956e642610d703f3b83b78e24e19"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aabd55109ba3b086bbe33b277cdd40d22"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduSession.html#aabd55109ba3b086bbe33b277cdd40d22">ExternalConsistencyMode</a> { <a class="el" href="classkudu_1_1client_1_1KuduSession.html#aabd55109ba3b086bbe33b277cdd40d22ae978fab7451faebf4399830b603c855c">CLIENT_PROPAGATED</a>, 
+<a class="el" href="classkudu_1_1client_1_1KuduSession.html#aabd55109ba3b086bbe33b277cdd40d22a70010f3ef1f70b99b02328c024c436c9">COMMIT_WAIT</a>
+ }<tr class="memdesc:aabd55109ba3b086bbe33b277cdd40d22"><td class="mdescLeft">&#160;</td><td class="mdescRight">The possible external consistency modes on which Kudu operates.  <a href="classkudu_1_1client_1_1KuduSession.html#aabd55109ba3b086bbe33b277cdd40d22">More...</a><br /></td></tr>
+</td></tr>
+<tr class="separator:aabd55109ba3b086bbe33b277cdd40d22"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a83555781b5a037f87c215e565ecf1a8f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduSession.html#a83555781b5a037f87c215e565ecf1a8f">SetFlushMode</a> (<a class="el" href="classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19">FlushMode</a> m) WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:a83555781b5a037f87c215e565ecf1a8f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a56d1c7f47dfcaf5121b15a4435a8eeca"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduSession.html#a56d1c7f47dfcaf5121b15a4435a8eeca">SetExternalConsistencyMode</a> (<a class="el" href="classkudu_1_1client_1_1KuduSession.html#aabd55109ba3b086bbe33b277cdd40d22">ExternalConsistencyMode</a> m) WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:a56d1c7f47dfcaf5121b15a4435a8eeca"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aefa9bbc51c27104ce103b9ecda3b8abf"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduSession.html#aefa9bbc51c27104ce103b9ecda3b8abf">SetMutationBufferSpace</a> (size_t size_bytes) WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:aefa9bbc51c27104ce103b9ecda3b8abf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7311344cec37b3847217197c35467cdf"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduSession.html#a7311344cec37b3847217197c35467cdf">SetMutationBufferFlushWatermark</a> (double watermark_pct) WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:a7311344cec37b3847217197c35467cdf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aabe75f0688f992dbdb2694a50d07f941"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduSession.html#aabe75f0688f992dbdb2694a50d07f941">SetMutationBufferFlushInterval</a> (unsigned int millis) WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:aabe75f0688f992dbdb2694a50d07f941"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac9a96017f86bfb6348fca9bfa0b8b5a4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduSession.html#ac9a96017f86bfb6348fca9bfa0b8b5a4">SetMutationBufferMaxNum</a> (unsigned int max_num) WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:ac9a96017f86bfb6348fca9bfa0b8b5a4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a25b22362650d7120f59cc1025e40bd79"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduSession.html#a25b22362650d7120f59cc1025e40bd79">SetTimeoutMillis</a> (int millis)</td></tr>
+<tr class="separator:a25b22362650d7120f59cc1025e40bd79"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad3f7324b27fca298c5ca3d07b4741943"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduSession.html#ad3f7324b27fca298c5ca3d07b4741943">Apply</a> (<a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">KuduWriteOperation</a> *write_op) WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:ad3f7324b27fca298c5ca3d07b4741943"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a64955abb5f5cc821b6e56354f733ce84"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduSession.html#a64955abb5f5cc821b6e56354f733ce84">Flush</a> () WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:a64955abb5f5cc821b6e56354f733ce84"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad8c68570479e95b325d8a5437eef8731"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduSession.html#ad8c68570479e95b325d8a5437eef8731">FlushAsync</a> (<a class="el" href="classkudu_1_1client_1_1KuduStatusCallback.html">KuduStatusCallback</a> *cb)</td></tr>
+<tr class="separator:ad8c68570479e95b325d8a5437eef8731"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa5204844e361ecc3068fbc4e02fd4436"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduSession.html#aa5204844e361ecc3068fbc4e02fd4436">Close</a> () WARN_UNUSED_RESULT</td></tr>
+<tr class="separator:aa5204844e361ecc3068fbc4e02fd4436"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3f224e9b95f86da7e1f2ea6fcf327756"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduSession.html#a3f224e9b95f86da7e1f2ea6fcf327756">HasPendingOperations</a> () const </td></tr>
+<tr class="separator:a3f224e9b95f86da7e1f2ea6fcf327756"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af6249cf3bbad8e2e11e54edf40a7bc1d"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduSession.html#af6249cf3bbad8e2e11e54edf40a7bc1d">CountBufferedOperations</a> () const ATTRIBUTE_DEPRECATED(&quot;this method is experimental and will disappear &quot;&quot;in a future release&quot;)</td></tr>
+<tr class="separator:af6249cf3bbad8e2e11e54edf40a7bc1d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af1c5e5e8faba286cddc266057e9a82d5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduSession.html#af1c5e5e8faba286cddc266057e9a82d5">SetErrorBufferSpace</a> (size_t size_bytes)</td></tr>
+<tr class="separator:af1c5e5e8faba286cddc266057e9a82d5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a277c213a68679c6b0d5c432919eb9198"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduSession.html#a277c213a68679c6b0d5c432919eb9198">CountPendingErrors</a> () const </td></tr>
+<tr class="separator:a277c213a68679c6b0d5c432919eb9198"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad5e3521623338de49cfd62914bdcb2f7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduSession.html#ad5e3521623338de49cfd62914bdcb2f7">GetPendingErrors</a> (std::vector&lt; <a class="el" href="classkudu_1_1client_1_1KuduError.html">KuduError</a> * &gt; *errors, bool *overflowed)</td></tr>
+<tr class="separator:ad5e3521623338de49cfd62914bdcb2f7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4ed0bac1edcbba612d7de41e8c8adfd5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">KuduClient</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduSession.html#a4ed0bac1edcbba612d7de41e8c8adfd5">client</a> () const </td></tr>
+<tr class="separator:a4ed0bac1edcbba612d7de41e8c8adfd5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
+Friends</h2></td></tr>
+<tr class="memitem:a5b5a804db2a148e792148f521f04b486"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5b5a804db2a148e792148f521f04b486"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>KuduClient</b></td></tr>
+<tr class="separator:a5b5a804db2a148e792148f521f04b486"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ada57057f15990c8cc54770c782fa9ad4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ada57057f15990c8cc54770c782fa9ad4"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>internal::Batcher</b></td></tr>
+<tr class="separator:ada57057f15990c8cc54770c782fa9ad4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aba2affbf999dd265d3a7f8c30598fec7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aba2affbf999dd265d3a7f8c30598fec7"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>ClientTest</b></td></tr>
+<tr class="separator:aba2affbf999dd265d3a7f8c30598fec7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>Representation of a Kudu client session. </p>
+<p>A <a class="el" href="classkudu_1_1client_1_1KuduSession.html" title="Representation of a Kudu client session. ">KuduSession</a> belongs to a specific <a class="el" href="classkudu_1_1client_1_1KuduClient.html" title="A handle for a connection to a cluster. ">KuduClient</a>, and represents a context in which all read/write data access should take place. Within a session, multiple operations may be accumulated and batched together for better efficiency. Settings like timeouts, priorities, and trace IDs are also set per session.</p>
+<p>A <a class="el" href="classkudu_1_1client_1_1KuduSession.html" title="Representation of a Kudu client session. ">KuduSession</a>'s main purpose is for grouping together multiple data-access operations together into batches or transactions. It is important to note the distinction between these two:</p>
+<ul>
+<li>A batch is a set of operations which are grouped together in order to amortize fixed costs such as RPC call overhead and round trip times. A batch DOES NOT imply any ACID-like guarantees. Within a batch, some operations may succeed while others fail, and concurrent readers may see partial results. If the client crashes mid-batch, it is possible that some of the operations will be made durable while others were lost. </li>
+<li>In contrast, a transaction is a set of operations which are treated as an indivisible semantic unit, per the usual definitions of database transactions and isolation levels.</li>
+</ul>
+<dl class="section note"><dt>Note</dt><dd>Kudu does not currently support transactions! They are only mentioned in the above documentation to clarify that batches are not transactional and should only be used for efficiency.</dd></dl>
+<p><a class="el" href="classkudu_1_1client_1_1KuduSession.html" title="Representation of a Kudu client session. ">KuduSession</a> is separate from <a class="el" href="classkudu_1_1client_1_1KuduTable.html" title="A representation of a table on a particular cluster. ">KuduTable</a> because a given batch or transaction may span multiple tables. This is particularly important in the future when we add ACID support, but even in the context of batching, we may be able to coalesce writes to different tables hosted on the same server into the same RPC.</p>
+<p><a class="el" href="classkudu_1_1client_1_1KuduSession.html" title="Representation of a Kudu client session. ">KuduSession</a> is separate from <a class="el" href="classkudu_1_1client_1_1KuduClient.html" title="A handle for a connection to a cluster. ">KuduClient</a> because, in a multi-threaded application, different threads may need to concurrently execute transactions. Similar to a JDBC "session", transaction boundaries will be delineated on a per-session basis &ndash; in between a "BeginTransaction" and "Commit" call on a given session, all operations will be part of the same transaction. Meanwhile another concurrent Session object can safely run non-transactional work or other transactions without interfering.</p>
+<p>Additionally, there is a guarantee that writes from different sessions do not get batched together into the same RPCs &ndash; this means that latency-sensitive clients can run through the same <a class="el" href="classkudu_1_1client_1_1KuduClient.html" title="A handle for a connection to a cluster. ">KuduClient</a> object as throughput-oriented clients, perhaps by setting the latency-sensitive session's timeouts low and priorities high. Without the separation of batches, a latency-sensitive single-row insert might get batched along with 10MB worth of inserts from the batch writer, thus delaying the response significantly.</p>
+<p>Though we currently do not have transactional support, users will be forced to use a <a class="el" href="classkudu_1_1client_1_1KuduSession.html" title="Representation of a Kudu client session. ">KuduSession</a> to instantiate reads as well as writes. This will make it more straight-forward to add RW transactions in the future without significant modifications to the API.</p>
+<p>Users who are familiar with the Hibernate ORM framework should find this concept of a Session familiar.</p>
+<dl class="section note"><dt>Note</dt><dd>This class is not thread-safe. </dd></dl>
+</div><h2 class="groupheader">Member Enumeration Documentation</h2>
+<a class="anchor" id="aabd55109ba3b086bbe33b277cdd40d22"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">enum <a class="el" href="classkudu_1_1client_1_1KuduSession.html#aabd55109ba3b086bbe33b277cdd40d22">kudu::client::KuduSession::ExternalConsistencyMode</a></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>The possible external consistency modes on which Kudu operates. </p>
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="aabd55109ba3b086bbe33b277cdd40d22ae978fab7451faebf4399830b603c855c"></a>CLIENT_PROPAGATED&#160;</td><td class="fielddoc">
+<p>The response to any write will contain a timestamp. Any further calls from the same client to other servers will update those servers with that timestamp. Following write operations from the same client will be assigned timestamps that are strictly higher, enforcing external consistency without having to wait or incur any latency penalties.</p>
+<p>In order to maintain external consistency for writes between two different clients in this mode, the user must forward the timestamp from the first client to the second by using <a class="el" href="classkudu_1_1client_1_1KuduClient.html#a3a671b3540c74ef7c358bb98e95031e0">KuduClient::GetLatestObservedTimestamp()</a> and <a class="el" href="classkudu_1_1client_1_1KuduClient.html#a0809b055eda76fd68988462f2a9791dd">KuduClient::SetLatestObservedTimestamp()</a>.</p>
+<p>This is the default external consistency mode.</p>
+<dl class="section warning"><dt>Warning</dt><dd>Failure to propagate timestamp information through back-channels between two different clients will negate any external consistency guarantee under this mode. </dd></dl>
+</td></tr>
+<tr><td class="fieldname"><a class="anchor" id="aabd55109ba3b086bbe33b277cdd40d22a70010f3ef1f70b99b02328c024c436c9"></a>COMMIT_WAIT&#160;</td><td class="fielddoc">
+<p>The server will guarantee that write operations from the same or from other client are externally consistent, without the need to propagate timestamps across clients. This is done by making write operations wait until there is certainty that all follow up write operations (operations that start after the previous one finishes) will be assigned a timestamp that is strictly higher, enforcing external consistency.</p>
+<dl class="section warning"><dt>Warning</dt><dd>Depending on the clock synchronization state of TabletServers this may imply considerable latency. Moreover operations in <code>COMMIT_WAIT</code> external consistency mode will outright fail if TabletServer clocks are either unsynchronized or synchronized but with a maximum error which surpasses a pre-configured threshold. </dd></dl>
+</td></tr>
+</table>
+
+</div>
+</div>
+<a class="anchor" id="aaec3956e642610d703f3b83b78e24e19"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">enum <a class="el" href="classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19">kudu::client::KuduSession::FlushMode</a></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Modes of flush operations. </p>
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="aaec3956e642610d703f3b83b78e24e19ad74b76e407e62ca951d369521636df2b"></a>AUTO_FLUSH_SYNC&#160;</td><td class="fielddoc">
+<p>Every write will be sent to the server in-band with the <a class="el" href="classkudu_1_1client_1_1KuduSession.html#ad3f7324b27fca298c5ca3d07b4741943">Apply()</a> call. No batching will occur. In this mode, the <a class="el" href="classkudu_1_1client_1_1KuduSession.html#a64955abb5f5cc821b6e56354f733ce84">Flush()</a> call never has any effect, since each <a class="el" href="classkudu_1_1client_1_1KuduSession.html#ad3f7324b27fca298c5ca3d07b4741943">Apply()</a> call has already flushed the buffer. This is the default flush mode. </p>
+</td></tr>
+<tr><td class="fieldname"><a class="anchor" id="aaec3956e642610d703f3b83b78e24e19a520b8eef7ef0fd149b2757faf43972b1"></a>AUTO_FLUSH_BACKGROUND&#160;</td><td class="fielddoc">
+<p><a class="el" href="classkudu_1_1client_1_1KuduSession.html#ad3f7324b27fca298c5ca3d07b4741943">Apply()</a> calls will return immediately (unless there is not enough buffer space to accommodate the newly added operations), but the writes will be sent in the background, potentially batched together with other writes from the same session. If there is not sufficient buffer space, <a class="el" href="classkudu_1_1client_1_1KuduSession.html#ad3f7324b27fca298c5ca3d07b4741943">Apply()</a> blocks for buffer space to become available.</p>
+<p>Because writes are applied in the background, any errors will be stored in a session-local buffer. Call <a class="el" href="classkudu_1_1client_1_1KuduSession.html#a277c213a68679c6b0d5c432919eb9198">CountPendingErrors()</a> or <a class="el" href="classkudu_1_1client_1_1KuduSession.html#ad5e3521623338de49cfd62914bdcb2f7">GetPendingErrors()</a> to retrieve them.</p>
+<p>In this mode, calling the <a class="el" href="classkudu_1_1client_1_1KuduSession.html#ad8c68570479e95b325d8a5437eef8731">FlushAsync()</a> or <a class="el" href="classkudu_1_1client_1_1KuduSession.html#a64955abb5f5cc821b6e56354f733ce84">Flush()</a> methods causes a flush that normally would have happened at some point in the near future to happen right now. The <a class="el" href="classkudu_1_1client_1_1KuduSession.html#a64955abb5f5cc821b6e56354f733ce84">Flush()</a> call can be used to block until the current batch is sent and the reclaimed space is available for new operations.</p>
+<dl class="section attention"><dt>Attention</dt><dd>The <code>AUTO_FLUSH_BACKGROUND</code> mode, when used in conjunction with a <a class="el" href="classkudu_1_1client_1_1KuduSession.html#ac9a96017f86bfb6348fca9bfa0b8b5a4">KuduSession::SetMutationBufferMaxNum()</a> of greater than 1 (the default is 2), may result in out-of-order writes. This is because the buffers may flush concurrently, so multiple write operations may be sent to the server in parallel. See <a href="https://issues.apache.org/jira/browse/KUDU-1767">KUDU-1767</a> for more information.</dd></dl>
+<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000006">Todo:</a></b></dt><dd>Provide an API for the user to specify a callback to do their own error reporting. </dd></dl>
+</td></tr>
+<tr><td class="fieldname"><a class="anchor" id="aaec3956e642610d703f3b83b78e24e19a1db3efc2094da09aae45bb68475cdb4a"></a>MANUAL_FLUSH&#160;</td><td class="fielddoc">
+<p><a class="el" href="classkudu_1_1client_1_1KuduSession.html#ad3f7324b27fca298c5ca3d07b4741943">Apply()</a> calls will return immediately, and the writes will not be sent until the user calls <a class="el" href="classkudu_1_1client_1_1KuduSession.html#a64955abb5f5cc821b6e56354f733ce84">Flush()</a>. If the buffer runs past the configured space limit, then <a class="el" href="classkudu_1_1client_1_1KuduSession.html#ad3f7324b27fca298c5ca3d07b4741943">Apply()</a> will return an error.</p>
+<dl class="section attention"><dt>Attention</dt><dd>The <code>MANUAL_FLUSH</code> mode, when used in conjunction with a <a class="el" href="classkudu_1_1client_1_1KuduSession.html#ac9a96017f86bfb6348fca9bfa0b8b5a4">KuduSession::SetMutationBufferMaxNum()</a> of greater than 1 (the default is 2), may result in out-of-order writes if <a class="el" href="classkudu_1_1client_1_1KuduSession.html#ad8c68570479e95b325d8a5437eef8731">KuduSession::FlushAsync()</a> is used. This is because the buffers may flush concurrently, so multiple write operations may be sent to the server in parallel. See <a href="https://issues.apache.org/jira/browse/KUDU-1767">KUDU-1767</a> for more information. </dd></dl>
+</td></tr>
+</table>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="ad3f7324b27fca298c5ca3d07b4741943"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduSession::Apply </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">KuduWriteOperation</a> *&#160;</td>
+          <td class="paramname"><em>write_op</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000004">Todo:</a></b></dt><dd>Add "doAs" ability here for proxy servers to be able to act on behalf of other users, assuming access rights. </dd></dl>
+<p>Apply the write operation.</p>
+<p>The behavior of this function depends on the current flush mode. Regardless of flush mode, however, <a class="el" href="classkudu_1_1client_1_1KuduSession.html#ad3f7324b27fca298c5ca3d07b4741943">Apply()</a> may begin to perform processing in the background for the call (e.g. looking up the tablet, etc). Given that, an error may be queued into the PendingErrors structure prior to flushing, even in <code>MANUAL_FLUSH</code> mode.</p>
+<p>In case of any error, which may occur during flushing or because the write_op is malformed, the write_op is stored in the session's error collector which may be retrieved at any time.</p>
+<p>A <a class="el" href="classkudu_1_1client_1_1KuduSession.html" title="Representation of a Kudu client session. ">KuduSession</a> accumulates write operations submitted via the <a class="el" href="classkudu_1_1client_1_1KuduSession.html#ad3f7324b27fca298c5ca3d07b4741943">Apply()</a> method in mutation buffers. A <a class="el" href="classkudu_1_1client_1_1KuduSession.html" title="Representation of a Kudu client session. ">KuduSession</a> always has at least one mutation buffer. In any flush mode, this call may block if the maximum number of mutation buffers per session is reached (use <a class="el" href="classkudu_1_1client_1_1KuduSession.html#ac9a96017f86bfb6348fca9bfa0b8b5a4">KuduSession::SetMutationBufferMaxNum()</a> to set the limit on maximum number of batchers).</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">write_op</td><td>Operation to apply. This method transfers the write_op's ownership to the <a class="el" href="classkudu_1_1client_1_1KuduSession.html" title="Representation of a Kudu client session. ">KuduSession</a>. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a4ed0bac1edcbba612d7de41e8c8adfd5"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">KuduClient</a>* kudu::client::KuduSession::client </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd>Client for the session: pointer to the associated client object. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="aa5204844e361ecc3068fbc4e02fd4436"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduSession::Close </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd><a class="el" href="classkudu_1_1Status.html" title="A representation of an operation&#39;s outcome. ">Status</a> of the session closure. In particular, an error is returned if there are non-flushed or in-flight operations. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="af6249cf3bbad8e2e11e54edf40a7bc1d"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">int kudu::client::KuduSession::CountBufferedOperations </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Get number of buffered operations (not the same as 'pending').</p>
+<p>Note that this is different than <a class="el" href="classkudu_1_1client_1_1KuduSession.html#a3f224e9b95f86da7e1f2ea6fcf327756">HasPendingOperations()</a> above, which includes operations which have been sent and not yet responded to.</p>
+<p>This method is most relevant in <code>MANUAL_FLUSH</code> mode, where the result count stays valid until next explicit flush or <a class="el" href="classkudu_1_1client_1_1KuduSession.html#ad3f7324b27fca298c5ca3d07b4741943">Apply()</a> call. There is not much sense using this method in other flush modes: </p><ul>
+<li>in <code>AUTO_FLUSH_SYNC</code> mode, the data is immediately put en-route to the destination by <a class="el" href="classkudu_1_1client_1_1KuduSession.html#ad3f7324b27fca298c5ca3d07b4741943">Apply()</a> method itself, so this method always returns zero. </li>
+<li>in <code>AUTO_FLUSH_BACKGROUND</code> mode, the result count returned by this method expires unpredictably and there isn't any guaranteed validity interval for the result: the background flush task can run any moment, invalidating the result.</li>
+</ul>
+<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000002">Deprecated:</a></b></dt><dd>This method is experimental and will disappear in a future release.</dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>The number of buffered operations. These are operations that have not yet been flushed &ndash; i.e. they are not en-route yet. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a277c213a68679c6b0d5c432919eb9198"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">int kudu::client::KuduSession::CountPendingErrors </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Get error count for pending operations.</p>
+<p>Errors may accumulate in session's lifetime; use this method to see how many errors happened since last call of <a class="el" href="classkudu_1_1client_1_1KuduSession.html#ad5e3521623338de49cfd62914bdcb2f7">GetPendingErrors()</a> method. The error count includes both the accumulated and dropped errors. An error might be dropped due to the limit on the error buffer size; see the <a class="el" href="classkudu_1_1client_1_1KuduSession.html#af1c5e5e8faba286cddc266057e9a82d5">SetErrorBufferSpace()</a> method for details.</p>
+<dl class="section return"><dt>Returns</dt><dd>Total count of errors accumulated during the session. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a64955abb5f5cc821b6e56354f733ce84"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduSession::Flush </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Flush any pending writes.</p>
+<p>This method initiates flushing of the current batch of buffered write operations, if any, and then awaits for completion of all pending operations of the session. I.e., after successful return from this method no pending operations should be left in the session.</p>
+<p>In <code>AUTO_FLUSH_SYNC</code> mode, calling this method has no effect, since every <a class="el" href="classkudu_1_1client_1_1KuduSession.html#ad3f7324b27fca298c5ca3d07b4741943">Apply()</a> call flushes itself inline.</p>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. In particular, returns a non-OK status if there are any pending errors after the rows have been flushed. Callers should then use GetPendingErrors to determine which specific operations failed. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ad8c68570479e95b325d8a5437eef8731"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void kudu::client::KuduSession::FlushAsync </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classkudu_1_1client_1_1KuduStatusCallback.html">KuduStatusCallback</a> *&#160;</td>
+          <td class="paramname"><em>cb</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Flush any pending writes asynchronously.</p>
+<p>This method schedules a background flush of the latest batch of buffered write operations. Provided callback is invoked upon the flush completion of the latest batch of buffered write operations. If there were errors while flushing the operations, corresponding 'not OK' status is passed as a parameter for the callback invocation. Callers should then use <a class="el" href="classkudu_1_1client_1_1KuduSession.html#ad5e3521623338de49cfd62914bdcb2f7">GetPendingErrors()</a> to determine which specific operations failed.</p>
+<p>In the case that the async version of this method is used, then the callback will be called upon completion of the operations which were buffered since the last flush. In other words, in the following sequence: </p><div class="fragment"><div class="line">session-&gt;Insert(a);</div><div class="line">session-&gt;FlushAsync(callback_1);</div><div class="line">session-&gt;Insert(b);</div><div class="line">session-&gt;FlushAsync(callback_2);</div></div><!-- fragment --><p> ... <code>callback_2</code> will be triggered once <code>b</code> has been inserted, regardless of whether <code>a</code> has completed or not. That means there might be pending operations left in prior batches even after the callback has been invoked to report on the flush status of the latest batch.</p>
+<dl class="section note"><dt>Note</dt><dd>This also means that, if FlushAsync is called twice in succession, with no intervening operations, the second flush will return immediately. For example: <div class="fragment"><div class="line">session-&gt;Insert(a);</div><div class="line">session-&gt;FlushAsync(callback_1); <span class="comment">// called when &#39;a&#39; is inserted</span></div><div class="line">session-&gt;FlushAsync(callback_2); <span class="comment">// called immediately!</span></div></div><!-- fragment --> Note that, as in all other async functions in Kudu, the callback may be called either from an IO thread or the same thread which calls FlushAsync. The callback should not block.</dd></dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">cb</td><td>Callback to call upon flush completion. The <code>cb</code> must remain valid until it is invoked. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="ad5e3521623338de49cfd62914bdcb2f7"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void kudu::client::KuduSession::GetPendingErrors </td>
+          <td>(</td>
+          <td class="paramtype">std::vector&lt; <a class="el" href="classkudu_1_1client_1_1KuduError.html">KuduError</a> * &gt; *&#160;</td>
+          <td class="paramname"><em>errors</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">bool *&#160;</td>
+          <td class="paramname"><em>overflowed</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Get information on errors from previous session activity.</p>
+<p>The information on errors are reset upon calling this method.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[out]</td><td class="paramname">errors</td><td>Pointer to the container to fill with error info objects. Caller takes ownership of the returned errors in the container. </td></tr>
+    <tr><td class="paramdir">[out]</td><td class="paramname">overflowed</td><td>If there were more errors than could be held in the session's error buffer, then <code>overflowed</code> is set to <code>true</code>. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="a3f224e9b95f86da7e1f2ea6fcf327756"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool kudu::client::KuduSession::HasPendingOperations </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Check if there are any pending operations in this session.</p>
+<dl class="section return"><dt>Returns</dt><dd><code>true</code> if there are operations which have not yet been delivered to the cluster. This may include buffered operations (i.e. those that have not yet been flushed) as well as in-flight operations (i.e. those that are in the process of being sent to the servers).</dd></dl>
+<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000005">Todo:</a></b></dt><dd>Maybe "incomplete" or "undelivered" is clearer? </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="af1c5e5e8faba286cddc266057e9a82d5"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduSession::SetErrorBufferSpace </td>
+          <td>(</td>
+          <td class="paramtype">size_t&#160;</td>
+          <td class="paramname"><em>size_bytes</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Set limit on maximum buffer (memory) size used by this session's errors. By default, when a session is created, there is no limit on maximum size.</p>
+<p>The session's error buffer contains information on failed write operations. In most cases, the error contains the row which would be applied as is. If the error buffer space limit is set, the number of errors which fit into the buffer varies depending on error conditions, write operation types (insert/update/delete), and write operation row sizes.</p>
+<p>When the limit is set, the session will drop the first error that would overflow the buffer as well as all subsequent errors. To resume the accumulation of session errors, it's necessary to flush the current contents of the error buffer using the <a class="el" href="classkudu_1_1client_1_1KuduSession.html#ad5e3521623338de49cfd62914bdcb2f7">GetPendingErrors()</a> method.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">size_bytes</td><td>Limit on the maximum memory size consumed by collected session errors, where <code>0</code> means 'unlimited'. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. An error is returned on an attempt to set the limit on the buffer space if: <ul>
+<li>the session has already dropped at least one error since the last call to the <a class="el" href="classkudu_1_1client_1_1KuduSession.html#ad5e3521623338de49cfd62914bdcb2f7">GetPendingErrors()</a> method </li>
+<li>the new limit is less than the amount of space occupied by already accumulated errors. </li>
+</ul>
+</dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a56d1c7f47dfcaf5121b15a4435a8eeca"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduSession::SetExternalConsistencyMode </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classkudu_1_1client_1_1KuduSession.html#aabd55109ba3b086bbe33b277cdd40d22">ExternalConsistencyMode</a>&#160;</td>
+          <td class="paramname"><em>m</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Set external consistency mode for the session.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">m</td><td>External consistency mode to set. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a83555781b5a037f87c215e565ecf1a8f"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduSession::SetFlushMode </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19">FlushMode</a>&#160;</td>
+          <td class="paramname"><em>m</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Set the flush mode.</p>
+<dl class="section pre"><dt>Precondition</dt><dd>There should be no pending writes &ndash; call <a class="el" href="classkudu_1_1client_1_1KuduSession.html#a64955abb5f5cc821b6e56354f733ce84">Flush()</a> first to ensure nothing is pending.</dd></dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">m</td><td>Flush mode to set. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation status. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="aabe75f0688f992dbdb2694a50d07f941"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduSession::SetMutationBufferFlushInterval </td>
+          <td>(</td>
+          <td class="paramtype">unsigned int&#160;</td>
+          <td class="paramname"><em>millis</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Set the interval for time-based flushing of the mutation buffer.</p>
+<p>In some cases, while running in AUTO_FLUSH_BACKGROUND mode, the size of the mutation buffer for pending operations and the flush watermark for fresh operations may be too high for the rate of incoming data: it would take too long to accumulate enough data in the buffer to trigger flushing. I.e., it makes sense to flush the accumulated operations if the prior flush happened long time ago. This method sets the wait interval for the time-based flushing which takes place along with the flushing triggered by the over-the-watermark criterion. By default, the interval is set to 1000 ms (i.e. 1 second).</p>
+<dl class="section note"><dt>Note</dt><dd>This setting is applicable only for AUTO_FLUSH_BACKGROUND sessions. I.e., calling this method in other flush modes is safe, but the parameter has no effect until the session is switched into AUTO_FLUSH_BACKGROUND mode.</dd></dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">millis</td><td>The duration of the interval for the time-based flushing, in milliseconds. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a7311344cec37b3847217197c35467cdf"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduSession::SetMutationBufferFlushWatermark </td>
+          <td>(</td>
+          <td class="paramtype">double&#160;</td>
+          <td class="paramname"><em>watermark_pct</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Set the buffer watermark to trigger flush in AUTO_FLUSH_BACKGROUND mode.</p>
+<p>This method sets the watermark for fresh operations in the buffer when running in AUTO_FLUSH_BACKGROUND mode: once the specified threshold is reached, the session starts sending the accumulated write operations to the appropriate tablet servers. By default, the buffer flush watermark is to to 50%.</p>
+<dl class="section note"><dt>Note</dt><dd>This setting is applicable only for AUTO_FLUSH_BACKGROUND sessions. I.e., calling this method in other flush modes is safe, but the parameter has no effect until the session is switched into AUTO_FLUSH_BACKGROUND mode.</dd>
+<dd>
+The buffer contains data for fresh (i.e. newly submitted) operations and also operations which are scheduled for flush or being flushed. The flush watermark determines how much of the buffer space is taken by newly submitted operations. Setting this level to 1.0 (i.e. 100%) results in flushing the buffer only when the newly applied operation would overflow the buffer.</dd></dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">watermark_pct</td><td>Watermark level as percentage of the mutation buffer size. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ac9a96017f86bfb6348fca9bfa0b8b5a4"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduSession::SetMutationBufferMaxNum </td>
+          <td>(</td>
+          <td class="paramtype">unsigned int&#160;</td>
+          <td class="paramname"><em>max_num</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Set the maximum number of mutation buffers per <a class="el" href="classkudu_1_1client_1_1KuduSession.html" title="Representation of a Kudu client session. ">KuduSession</a> object.</p>
+<p>A <a class="el" href="classkudu_1_1client_1_1KuduSession.html" title="Representation of a Kudu client session. ">KuduSession</a> accumulates write operations submitted via the <a class="el" href="classkudu_1_1client_1_1KuduSession.html#ad3f7324b27fca298c5ca3d07b4741943">Apply()</a> method in mutation buffers. A <a class="el" href="classkudu_1_1client_1_1KuduSession.html" title="Representation of a Kudu client session. ">KuduSession</a> always has at least one mutation buffer. The mutation buffer which accumulates new incoming operations is called the <em>current mutation buffer</em>. The current mutation buffer is flushed either explicitly using the <a class="el" href="classkudu_1_1client_1_1KuduSession.html#a64955abb5f5cc821b6e56354f733ce84">KuduSession::Flush()</a> and/or <a class="el" href="classkudu_1_1client_1_1KuduSession.html#ad8c68570479e95b325d8a5437eef8731">KuduSession::FlushAsync()</a> methods or it's done by the <a class="el" href="classkudu_1_1client_1_1KuduSession.html" title="Representation of a Kudu client session. ">KuduSession</a> automatically if running in AUTO_FLUSH_BACKGROUND mode. After flushing the current mutation buffer, a new buffer is created upon calling <a class="el" href="classkudu_1_1client_1_1KuduSession.html#ad3f7324b27fca298c5ca3d07b4741943">KuduSession::Apply()</a>, provided the limit is not exceeded. A call to <a class="el" href="classkudu_1_1client_1_1KuduSession.html#ad3f7324b27fca298c5ca3d07b4741943">KuduSession::Apply()</a> blocks if it's at the maximum number of buffers allowed; the call unblocks as soon as one of the pending batchers finished flushing and a new batcher can be created.</p>
+<p>The minimum setting for this parameter is 1 (one). The default setting for this parameter is 2 (two).</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">max_num</td><td>The maximum number of mutation buffers per <a class="el" href="classkudu_1_1client_1_1KuduSession.html" title="Representation of a Kudu client session. ">KuduSession</a> object to hold the applied operations. Use <code>0</code> to set the maximum number of concurrent mutation buffers to unlimited. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="aefa9bbc51c27104ce103b9ecda3b8abf"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduSession::SetMutationBufferSpace </td>
+          <td>(</td>
+          <td class="paramtype">size_t&#160;</td>
+          <td class="paramname"><em>size_bytes</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Set the amount of buffer space used by this session for outbound writes.</p>
+<p>The effect of the buffer size varies based on the flush mode of the session: </p><ul>
+<li>AUTO_FLUSH_SYNC since no buffering is done, this has no effect. </li>
+<li>AUTO_FLUSH_BACKGROUND if the buffer space is exhausted, then write calls will block until there is space available in the buffer. </li>
+<li>MANUAL_FLUSH if the buffer space is exhausted, then write calls will return an error</li>
+</ul>
+<p>By default, the buffer space is set to 7 MiB (i.e. 7 * 1024 * 1024 bytes).</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">size_bytes</td><td>Size of the buffer space to set (number of bytes). </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Operation result status. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a25b22362650d7120f59cc1025e40bd79"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void kudu::client::KuduSession::SetTimeoutMillis </td>
+          <td>(</td>
+          <td class="paramtype">int&#160;</td>
+          <td class="paramname"><em>millis</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Set the timeout for writes made in this session.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">millis</td><td>Timeout to set in milliseconds; should be greater or equal to 0. If the parameter value is less than 0, it's implicitly set to 0. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/kudu/client/<a class="el" href="client_8h_source.html">client.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduSession__coll__graph.map b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduSession__coll__graph.map
new file mode 100644
index 0000000..c58eb0e
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduSession__coll__graph.map
@@ -0,0 +1,2 @@
+<map id="kudu::client::KuduSession" name="kudu::client::KuduSession">
+</map>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduSession__coll__graph.md5 b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduSession__coll__graph.md5
new file mode 100644
index 0000000..fe11af2
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduSession__coll__graph.md5
@@ -0,0 +1 @@
+0567192f351eea359bc91238b2ba2394
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduSession__coll__graph.png b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduSession__coll__graph.png
new file mode 100644
index 0000000..53fcd70
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduSession__coll__graph.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduSession__inherit__graph.map b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduSession__inherit__graph.map
new file mode 100644
index 0000000..c58eb0e
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduSession__inherit__graph.map
@@ -0,0 +1,2 @@
+<map id="kudu::client::KuduSession" name="kudu::client::KuduSession">
+</map>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduSession__inherit__graph.md5 b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduSession__inherit__graph.md5
new file mode 100644
index 0000000..fe11af2
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduSession__inherit__graph.md5
@@ -0,0 +1 @@
+0567192f351eea359bc91238b2ba2394
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduSession__inherit__graph.png b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduSession__inherit__graph.png
new file mode 100644
index 0000000..53fcd70
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduSession__inherit__graph.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduStatusCallback-members.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduStatusCallback-members.html
new file mode 100644
index 0000000..927c63d
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduStatusCallback-members.html
@@ -0,0 +1,109 @@
+<!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.11"/>
+<title>Kudu C++ client API: Member 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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduStatusCallback.html">KuduStatusCallback</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">kudu::client::KuduStatusCallback Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classkudu_1_1client_1_1KuduStatusCallback.html">kudu::client::KuduStatusCallback</a>, including all inherited members.</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>KuduStatusCallback</b>() (defined in <a class="el" href="classkudu_1_1client_1_1KuduStatusCallback.html">kudu::client::KuduStatusCallback</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduStatusCallback.html">kudu::client::KuduStatusCallback</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduStatusCallback.html#a2333beedb1d0c08a8c127b4552fbeb07">Run</a>(const Status &amp;s)=0</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduStatusCallback.html">kudu::client::KuduStatusCallback</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~KuduStatusCallback</b>() (defined in <a class="el" href="classkudu_1_1client_1_1KuduStatusCallback.html">kudu::client::KuduStatusCallback</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduStatusCallback.html">kudu::client::KuduStatusCallback</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+</table></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduStatusCallback.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduStatusCallback.html
new file mode 100644
index 0000000..f34ddce
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduStatusCallback.html
@@ -0,0 +1,165 @@
+<!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.11"/>
+<title>Kudu C++ client API: kudu::client::KuduStatusCallback Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduStatusCallback.html">KuduStatusCallback</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="classkudu_1_1client_1_1KuduStatusCallback-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">kudu::client::KuduStatusCallback Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>The interface for all status callbacks.  
+ <a href="classkudu_1_1client_1_1KuduStatusCallback.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="callbacks_8h_source.html">callbacks.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for kudu::client::KuduStatusCallback:</div>
+<div class="dyncontent">
+<div class="center"><img src="classkudu_1_1client_1_1KuduStatusCallback__inherit__graph.png" border="0" usemap="#kudu_1_1client_1_1KuduStatusCallback_inherit__map" alt="Inheritance graph"/></div>
+<map name="kudu_1_1client_1_1KuduStatusCallback_inherit__map" id="kudu_1_1client_1_1KuduStatusCallback_inherit__map">
+<area shape="rect" id="node2" href="classkudu_1_1client_1_1KuduStatusFunctionCallback.html" title="The status callback that invokes a function by pointer with a single argument. " alt="" coords="219,5,384,47"/>
+<area shape="rect" id="node3" href="classkudu_1_1client_1_1KuduStatusMemberCallback.html" title="The status callback that invokes a member function of an object. " alt="" coords="219,71,384,112"/>
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a2333beedb1d0c08a8c127b4552fbeb07"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduStatusCallback.html#a2333beedb1d0c08a8c127b4552fbeb07">Run</a> (const <a class="el" href="classkudu_1_1Status.html">Status</a> &amp;s)=0</td></tr>
+<tr class="separator:a2333beedb1d0c08a8c127b4552fbeb07"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>The interface for all status callbacks. </p>
+</div><h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a2333beedb1d0c08a8c127b4552fbeb07"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual void kudu::client::KuduStatusCallback::Run </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="classkudu_1_1Status.html">Status</a> &amp;&#160;</td>
+          <td class="paramname"><em>s</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Notify/report on the status.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">s</td><td>The status to report. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p>Implemented in <a class="el" href="classkudu_1_1client_1_1KuduStatusFunctionCallback.html#af4c3e7fbd4fed52bcba220f95a27f70a">kudu::client::KuduStatusFunctionCallback&lt; T &gt;</a>, and <a class="el" href="classkudu_1_1client_1_1KuduStatusMemberCallback.html#a94bde1bdcb3cde6f78b11d822be19232">kudu::client::KuduStatusMemberCallback&lt; T &gt;</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/kudu/client/<a class="el" href="callbacks_8h_source.html">callbacks.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduStatusCallback__inherit__graph.map b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduStatusCallback__inherit__graph.map
new file mode 100644
index 0000000..0376c70
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduStatusCallback__inherit__graph.map
@@ -0,0 +1,4 @@
+<map id="kudu::client::KuduStatusCallback" name="kudu::client::KuduStatusCallback">
+<area shape="rect" id="node2" href="$classkudu_1_1client_1_1KuduStatusFunctionCallback.html" title="The status callback that invokes a function by pointer with a single argument. " alt="" coords="219,5,384,47"/>
+<area shape="rect" id="node3" href="$classkudu_1_1client_1_1KuduStatusMemberCallback.html" title="The status callback that invokes a member function of an object. " alt="" coords="219,71,384,112"/>
+</map>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduStatusCallback__inherit__graph.md5 b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduStatusCallback__inherit__graph.md5
new file mode 100644
index 0000000..6950d13
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduStatusCallback__inherit__graph.md5
@@ -0,0 +1 @@
+0da7394fc88754152bc09347d8ac6414
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduStatusCallback__inherit__graph.png b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduStatusCallback__inherit__graph.png
new file mode 100644
index 0000000..f3b3a50
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduStatusCallback__inherit__graph.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduStatusFunctionCallback-members.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduStatusFunctionCallback-members.html
new file mode 100644
index 0000000..8fbf769
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduStatusFunctionCallback-members.html
@@ -0,0 +1,111 @@
+<!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.11"/>
+<title>Kudu C++ client API: Member 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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduStatusFunctionCallback.html">KuduStatusFunctionCallback</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">kudu::client::KuduStatusFunctionCallback&lt; T &gt; Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classkudu_1_1client_1_1KuduStatusFunctionCallback.html">kudu::client::KuduStatusFunctionCallback&lt; T &gt;</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduStatusFunctionCallback.html#a20c231ae32873ea7f462b8f3ea05d910">FunctionType</a> typedef</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduStatusFunctionCallback.html">kudu::client::KuduStatusFunctionCallback&lt; T &gt;</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>KuduStatusCallback</b>() (defined in <a class="el" href="classkudu_1_1client_1_1KuduStatusCallback.html">kudu::client::KuduStatusCallback</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduStatusCallback.html">kudu::client::KuduStatusCallback</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduStatusFunctionCallback.html#aca289bbf6ad9720bd74a90550f6c9b3b">KuduStatusFunctionCallback</a>(FunctionType function, T arg)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduStatusFunctionCallback.html">kudu::client::KuduStatusFunctionCallback&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduStatusFunctionCallback.html#af4c3e7fbd4fed52bcba220f95a27f70a">Run</a>(const Status &amp;s) OVERRIDE</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduStatusFunctionCallback.html">kudu::client::KuduStatusFunctionCallback&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~KuduStatusCallback</b>() (defined in <a class="el" href="classkudu_1_1client_1_1KuduStatusCallback.html">kudu::client::KuduStatusCallback</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduStatusCallback.html">kudu::client::KuduStatusCallback</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+</table></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduStatusFunctionCallback.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduStatusFunctionCallback.html
new file mode 100644
index 0000000..2147f48
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduStatusFunctionCallback.html
@@ -0,0 +1,234 @@
+<!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.11"/>
+<title>Kudu C++ client API: kudu::client::KuduStatusFunctionCallback&lt; T &gt; Class Template Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduStatusFunctionCallback.html">KuduStatusFunctionCallback</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-types">Public Types</a> &#124;
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="classkudu_1_1client_1_1KuduStatusFunctionCallback-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">kudu::client::KuduStatusFunctionCallback&lt; T &gt; Class Template Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>The status callback that invokes a function by pointer with a single argument.  
+ <a href="classkudu_1_1client_1_1KuduStatusFunctionCallback.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="callbacks_8h_source.html">callbacks.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for kudu::client::KuduStatusFunctionCallback&lt; T &gt;:</div>
+<div class="dyncontent">
+<div class="center"><img src="classkudu_1_1client_1_1KuduStatusFunctionCallback__inherit__graph.png" border="0" usemap="#kudu_1_1client_1_1KuduStatusFunctionCallback_3_01T_01_4_inherit__map" alt="Inheritance graph"/></div>
+<map name="kudu_1_1client_1_1KuduStatusFunctionCallback_3_01T_01_4_inherit__map" id="kudu_1_1client_1_1KuduStatusFunctionCallback_3_01T_01_4_inherit__map">
+<area shape="rect" id="node2" href="classkudu_1_1client_1_1KuduStatusCallback.html" title="The interface for all status callbacks. " alt="" coords="5,5,171,47"/>
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<div class="dynheader">
+Collaboration diagram for kudu::client::KuduStatusFunctionCallback&lt; T &gt;:</div>
+<div class="dyncontent">
+<div class="center"><img src="classkudu_1_1client_1_1KuduStatusFunctionCallback__coll__graph.png" border="0" usemap="#kudu_1_1client_1_1KuduStatusFunctionCallback_3_01T_01_4_coll__map" alt="Collaboration graph"/></div>
+<map name="kudu_1_1client_1_1KuduStatusFunctionCallback_3_01T_01_4_coll__map" id="kudu_1_1client_1_1KuduStatusFunctionCallback_3_01T_01_4_coll__map">
+<area shape="rect" id="node2" href="classkudu_1_1client_1_1KuduStatusCallback.html" title="The interface for all status callbacks. " alt="" coords="5,5,171,47"/>
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
+Public Types</h2></td></tr>
+<tr class="memitem:a20c231ae32873ea7f462b8f3ea05d910"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a20c231ae32873ea7f462b8f3ea05d910"></a>
+typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduStatusFunctionCallback.html#a20c231ae32873ea7f462b8f3ea05d910">FunctionType</a>) (T arg, const <a class="el" href="classkudu_1_1Status.html">Status</a> &amp;s)</td></tr>
+<tr class="memdesc:a20c231ae32873ea7f462b8f3ea05d910"><td class="mdescLeft">&#160;</td><td class="mdescRight">A handy typedef for the function with appropriate signature. <br /></td></tr>
+<tr class="separator:a20c231ae32873ea7f462b8f3ea05d910"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:aca289bbf6ad9720bd74a90550f6c9b3b"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduStatusFunctionCallback.html#aca289bbf6ad9720bd74a90550f6c9b3b">KuduStatusFunctionCallback</a> (<a class="el" href="classkudu_1_1client_1_1KuduStatusFunctionCallback.html#a20c231ae32873ea7f462b8f3ea05d910">FunctionType</a> function, T arg)</td></tr>
+<tr class="separator:aca289bbf6ad9720bd74a90550f6c9b3b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af4c3e7fbd4fed52bcba220f95a27f70a"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduStatusFunctionCallback.html#af4c3e7fbd4fed52bcba220f95a27f70a">Run</a> (const <a class="el" href="classkudu_1_1Status.html">Status</a> &amp;s) OVERRIDE</td></tr>
+<tr class="separator:af4c3e7fbd4fed52bcba220f95a27f70a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><h3>template&lt;typename T&gt;<br />
+class kudu::client::KuduStatusFunctionCallback&lt; T &gt;</h3>
+
+<p>The status callback that invokes a function by pointer with a single argument. </p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="aca289bbf6ad9720bd74a90550f6c9b3b"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T &gt; </div>
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduStatusFunctionCallback.html">kudu::client::KuduStatusFunctionCallback</a>&lt; T &gt;::<a class="el" href="classkudu_1_1client_1_1KuduStatusFunctionCallback.html">KuduStatusFunctionCallback</a> </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classkudu_1_1client_1_1KuduStatusFunctionCallback.html#a20c231ae32873ea7f462b8f3ea05d910">FunctionType</a>&#160;</td>
+          <td class="paramname"><em>function</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">T&#160;</td>
+          <td class="paramname"><em>arg</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Build an instance of <a class="el" href="classkudu_1_1client_1_1KuduStatusFunctionCallback.html" title="The status callback that invokes a function by pointer with a single argument. ">KuduStatusFunctionCallback</a>.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">function</td><td>A pointer to the status report function to invoke with the <code>arg</code> argument. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">arg</td><td>An argument for the function invocation. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="af4c3e7fbd4fed52bcba220f95a27f70a"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T &gt; </div>
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual void <a class="el" href="classkudu_1_1client_1_1KuduStatusFunctionCallback.html">kudu::client::KuduStatusFunctionCallback</a>&lt; T &gt;::Run </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="classkudu_1_1Status.html">Status</a> &amp;&#160;</td>
+          <td class="paramname"><em>s</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p></p>
+<p>Notify/report on the status.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">s</td><td>The status to report. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p>Implements <a class="el" href="classkudu_1_1client_1_1KuduStatusCallback.html#a2333beedb1d0c08a8c127b4552fbeb07">kudu::client::KuduStatusCallback</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/kudu/client/<a class="el" href="callbacks_8h_source.html">callbacks.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduStatusFunctionCallback__coll__graph.map b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduStatusFunctionCallback__coll__graph.map
new file mode 100644
index 0000000..b89f077
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduStatusFunctionCallback__coll__graph.map
@@ -0,0 +1,3 @@
+<map id="kudu::client::KuduStatusFunctionCallback&lt; T &gt;" name="kudu::client::KuduStatusFunctionCallback&lt; T &gt;">
+<area shape="rect" id="node2" href="$classkudu_1_1client_1_1KuduStatusCallback.html" title="The interface for all status callbacks. " alt="" coords="5,5,171,47"/>
+</map>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduStatusFunctionCallback__coll__graph.md5 b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduStatusFunctionCallback__coll__graph.md5
new file mode 100644
index 0000000..7fd8d38
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduStatusFunctionCallback__coll__graph.md5
@@ -0,0 +1 @@
+175c8de27a51332feb6c54f8bbb68b56
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduStatusFunctionCallback__coll__graph.png b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduStatusFunctionCallback__coll__graph.png
new file mode 100644
index 0000000..dcb453f
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduStatusFunctionCallback__coll__graph.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduStatusFunctionCallback__inherit__graph.map b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduStatusFunctionCallback__inherit__graph.map
new file mode 100644
index 0000000..b89f077
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduStatusFunctionCallback__inherit__graph.map
@@ -0,0 +1,3 @@
+<map id="kudu::client::KuduStatusFunctionCallback&lt; T &gt;" name="kudu::client::KuduStatusFunctionCallback&lt; T &gt;">
+<area shape="rect" id="node2" href="$classkudu_1_1client_1_1KuduStatusCallback.html" title="The interface for all status callbacks. " alt="" coords="5,5,171,47"/>
+</map>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduStatusFunctionCallback__inherit__graph.md5 b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduStatusFunctionCallback__inherit__graph.md5
new file mode 100644
index 0000000..7fd8d38
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduStatusFunctionCallback__inherit__graph.md5
@@ -0,0 +1 @@
+175c8de27a51332feb6c54f8bbb68b56
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduStatusFunctionCallback__inherit__graph.png b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduStatusFunctionCallback__inherit__graph.png
new file mode 100644
index 0000000..dcb453f
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduStatusFunctionCallback__inherit__graph.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduStatusMemberCallback-members.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduStatusMemberCallback-members.html
new file mode 100644
index 0000000..1ed5b11
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduStatusMemberCallback-members.html
@@ -0,0 +1,111 @@
+<!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.11"/>
+<title>Kudu C++ client API: Member 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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduStatusMemberCallback.html">KuduStatusMemberCallback</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">kudu::client::KuduStatusMemberCallback&lt; T &gt; Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classkudu_1_1client_1_1KuduStatusMemberCallback.html">kudu::client::KuduStatusMemberCallback&lt; T &gt;</a>, including all inherited members.</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>KuduStatusCallback</b>() (defined in <a class="el" href="classkudu_1_1client_1_1KuduStatusCallback.html">kudu::client::KuduStatusCallback</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduStatusCallback.html">kudu::client::KuduStatusCallback</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduStatusMemberCallback.html#acdb02b9798adf2c80b39cfb024f199aa">KuduStatusMemberCallback</a>(T *object, MemberType member)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduStatusMemberCallback.html">kudu::client::KuduStatusMemberCallback&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduStatusMemberCallback.html#a1ad9e466506c3453cdd8429d5744f17a">MemberType</a> typedef</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduStatusMemberCallback.html">kudu::client::KuduStatusMemberCallback&lt; T &gt;</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduStatusMemberCallback.html#a94bde1bdcb3cde6f78b11d822be19232">Run</a>(const Status &amp;s) OVERRIDE</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduStatusMemberCallback.html">kudu::client::KuduStatusMemberCallback&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~KuduStatusCallback</b>() (defined in <a class="el" href="classkudu_1_1client_1_1KuduStatusCallback.html">kudu::client::KuduStatusCallback</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduStatusCallback.html">kudu::client::KuduStatusCallback</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+</table></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduStatusMemberCallback.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduStatusMemberCallback.html
new file mode 100644
index 0000000..5a3572c
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduStatusMemberCallback.html
@@ -0,0 +1,234 @@
+<!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.11"/>
+<title>Kudu C++ client API: kudu::client::KuduStatusMemberCallback&lt; T &gt; Class Template Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduStatusMemberCallback.html">KuduStatusMemberCallback</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-types">Public Types</a> &#124;
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="classkudu_1_1client_1_1KuduStatusMemberCallback-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">kudu::client::KuduStatusMemberCallback&lt; T &gt; Class Template Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>The status callback that invokes a member function of an object.  
+ <a href="classkudu_1_1client_1_1KuduStatusMemberCallback.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="callbacks_8h_source.html">callbacks.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for kudu::client::KuduStatusMemberCallback&lt; T &gt;:</div>
+<div class="dyncontent">
+<div class="center"><img src="classkudu_1_1client_1_1KuduStatusMemberCallback__inherit__graph.png" border="0" usemap="#kudu_1_1client_1_1KuduStatusMemberCallback_3_01T_01_4_inherit__map" alt="Inheritance graph"/></div>
+<map name="kudu_1_1client_1_1KuduStatusMemberCallback_3_01T_01_4_inherit__map" id="kudu_1_1client_1_1KuduStatusMemberCallback_3_01T_01_4_inherit__map">
+<area shape="rect" id="node2" href="classkudu_1_1client_1_1KuduStatusCallback.html" title="The interface for all status callbacks. " alt="" coords="5,5,171,47"/>
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<div class="dynheader">
+Collaboration diagram for kudu::client::KuduStatusMemberCallback&lt; T &gt;:</div>
+<div class="dyncontent">
+<div class="center"><img src="classkudu_1_1client_1_1KuduStatusMemberCallback__coll__graph.png" border="0" usemap="#kudu_1_1client_1_1KuduStatusMemberCallback_3_01T_01_4_coll__map" alt="Collaboration graph"/></div>
+<map name="kudu_1_1client_1_1KuduStatusMemberCallback_3_01T_01_4_coll__map" id="kudu_1_1client_1_1KuduStatusMemberCallback_3_01T_01_4_coll__map">
+<area shape="rect" id="node2" href="classkudu_1_1client_1_1KuduStatusCallback.html" title="The interface for all status callbacks. " alt="" coords="5,5,171,47"/>
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
+Public Types</h2></td></tr>
+<tr class="memitem:a1ad9e466506c3453cdd8429d5744f17a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1ad9e466506c3453cdd8429d5744f17a"></a>
+typedef void(T::*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduStatusMemberCallback.html#a1ad9e466506c3453cdd8429d5744f17a">MemberType</a>) (const <a class="el" href="classkudu_1_1Status.html">Status</a> &amp;s)</td></tr>
+<tr class="memdesc:a1ad9e466506c3453cdd8429d5744f17a"><td class="mdescLeft">&#160;</td><td class="mdescRight">A handy typedef for the member with appropriate signature. <br /></td></tr>
+<tr class="separator:a1ad9e466506c3453cdd8429d5744f17a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:acdb02b9798adf2c80b39cfb024f199aa"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduStatusMemberCallback.html#acdb02b9798adf2c80b39cfb024f199aa">KuduStatusMemberCallback</a> (T *object, <a class="el" href="classkudu_1_1client_1_1KuduStatusMemberCallback.html#a1ad9e466506c3453cdd8429d5744f17a">MemberType</a> member)</td></tr>
+<tr class="separator:acdb02b9798adf2c80b39cfb024f199aa"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a94bde1bdcb3cde6f78b11d822be19232"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduStatusMemberCallback.html#a94bde1bdcb3cde6f78b11d822be19232">Run</a> (const <a class="el" href="classkudu_1_1Status.html">Status</a> &amp;s) OVERRIDE</td></tr>
+<tr class="separator:a94bde1bdcb3cde6f78b11d822be19232"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><h3>template&lt;typename T&gt;<br />
+class kudu::client::KuduStatusMemberCallback&lt; T &gt;</h3>
+
+<p>The status callback that invokes a member function of an object. </p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="acdb02b9798adf2c80b39cfb024f199aa"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T &gt; </div>
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduStatusMemberCallback.html">kudu::client::KuduStatusMemberCallback</a>&lt; T &gt;::<a class="el" href="classkudu_1_1client_1_1KuduStatusMemberCallback.html">KuduStatusMemberCallback</a> </td>
+          <td>(</td>
+          <td class="paramtype">T *&#160;</td>
+          <td class="paramname"><em>object</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="classkudu_1_1client_1_1KuduStatusMemberCallback.html#a1ad9e466506c3453cdd8429d5744f17a">MemberType</a>&#160;</td>
+          <td class="paramname"><em>member</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Build an instance of the <a class="el" href="classkudu_1_1client_1_1KuduStatusMemberCallback.html" title="The status callback that invokes a member function of an object. ">KuduStatusMemberCallback</a> class.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">object</td><td>A pointer to the object. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">member</td><td>A pointer to the member function of the <code>object</code> to invoke. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a94bde1bdcb3cde6f78b11d822be19232"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T &gt; </div>
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual void <a class="el" href="classkudu_1_1client_1_1KuduStatusMemberCallback.html">kudu::client::KuduStatusMemberCallback</a>&lt; T &gt;::Run </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="classkudu_1_1Status.html">Status</a> &amp;&#160;</td>
+          <td class="paramname"><em>s</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p></p>
+<p>Notify/report on the status.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">s</td><td>The status to report. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p>Implements <a class="el" href="classkudu_1_1client_1_1KuduStatusCallback.html#a2333beedb1d0c08a8c127b4552fbeb07">kudu::client::KuduStatusCallback</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/kudu/client/<a class="el" href="callbacks_8h_source.html">callbacks.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduStatusMemberCallback__coll__graph.map b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduStatusMemberCallback__coll__graph.map
new file mode 100644
index 0000000..fcf7c17
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduStatusMemberCallback__coll__graph.map
@@ -0,0 +1,3 @@
+<map id="kudu::client::KuduStatusMemberCallback&lt; T &gt;" name="kudu::client::KuduStatusMemberCallback&lt; T &gt;">
+<area shape="rect" id="node2" href="$classkudu_1_1client_1_1KuduStatusCallback.html" title="The interface for all status callbacks. " alt="" coords="5,5,171,47"/>
+</map>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduStatusMemberCallback__coll__graph.md5 b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduStatusMemberCallback__coll__graph.md5
new file mode 100644
index 0000000..e086b05
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduStatusMemberCallback__coll__graph.md5
@@ -0,0 +1 @@
+833135cff0eb28dc4905a90bdbad97e1
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduStatusMemberCallback__coll__graph.png b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduStatusMemberCallback__coll__graph.png
new file mode 100644
index 0000000..ced34b8
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduStatusMemberCallback__coll__graph.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduStatusMemberCallback__inherit__graph.map b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduStatusMemberCallback__inherit__graph.map
new file mode 100644
index 0000000..fcf7c17
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduStatusMemberCallback__inherit__graph.map
@@ -0,0 +1,3 @@
+<map id="kudu::client::KuduStatusMemberCallback&lt; T &gt;" name="kudu::client::KuduStatusMemberCallback&lt; T &gt;">
+<area shape="rect" id="node2" href="$classkudu_1_1client_1_1KuduStatusCallback.html" title="The interface for all status callbacks. " alt="" coords="5,5,171,47"/>
+</map>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduStatusMemberCallback__inherit__graph.md5 b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduStatusMemberCallback__inherit__graph.md5
new file mode 100644
index 0000000..e086b05
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduStatusMemberCallback__inherit__graph.md5
@@ -0,0 +1 @@
+833135cff0eb28dc4905a90bdbad97e1
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduStatusMemberCallback__inherit__graph.png b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduStatusMemberCallback__inherit__graph.png
new file mode 100644
index 0000000..ced34b8
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduStatusMemberCallback__inherit__graph.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduTable-members.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduTable-members.html
new file mode 100644
index 0000000..310ff61
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduTable-members.html
@@ -0,0 +1,123 @@
+<!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.11"/>
+<title>Kudu C++ client API: Member 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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduTable.html">KuduTable</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">kudu::client::KuduTable Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#a08836bfb79f6f91e7f235712ea271d35">client</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#a185ff8f18b9bea6b41d6f4cf8dfa1377">id</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>KuduClient</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>KuduPartitioner</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#aa0f8b6d63c800727c3a827945512555e">name</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#aed6c3571aff35270a3e6cd66770f1cea">NewComparisonPredicate</a>(const Slice &amp;col_name, KuduPredicate::ComparisonOp op, KuduValue *value)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#ad873078bdbcafe015d359a65c370a89a">NewDelete</a>()</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#a453ffb83cf7c12541caba5ea182fadd9">NewInListPredicate</a>(const Slice &amp;col_name, std::vector&lt; KuduValue * &gt; *values)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#a0c78f86c5d0fbf53437c2c9db26f92b6">NewInsert</a>()</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#af6e70f115cf3c0359b1c170533a2d523">NewIsNotNullPredicate</a>(const Slice &amp;col_name)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#a5f453909cdeda167ad15506358470466">NewIsNullPredicate</a>(const Slice &amp;col_name)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#a7e95271452d608fc2b563f7b46ddcda8">NewUpdate</a>()</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#a19e92dbaeeff86c5d707b15b2a7051fc">NewUpsert</a>()</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#a147bdffbd798161916471b721d63128f">num_replicas</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#af1125879ce34fa6c994a70fe1803a808">partition_schema</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#a4482e54a05c5b61b2bddc8c5297973fd">schema</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~KuduTable</b>() (defined in <a class="el" href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduTable.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduTable.html
new file mode 100644
index 0000000..effc7a6
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduTable.html
@@ -0,0 +1,472 @@
+<!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.11"/>
+<title>Kudu C++ client API: kudu::client::KuduTable Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduTable.html">KuduTable</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#friends">Friends</a> &#124;
+<a href="classkudu_1_1client_1_1KuduTable-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">kudu::client::KuduTable Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>A representation of a table on a particular cluster.  
+ <a href="classkudu_1_1client_1_1KuduTable.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="client_8h_source.html">client.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for kudu::client::KuduTable:</div>
+<div class="dyncontent">
+<div class="center"><img src="classkudu_1_1client_1_1KuduTable__inherit__graph.png" border="0" usemap="#kudu_1_1client_1_1KuduTable_inherit__map" alt="Inheritance graph"/></div>
+<map name="kudu_1_1client_1_1KuduTable_inherit__map" id="kudu_1_1client_1_1KuduTable_inherit__map">
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<div class="dynheader">
+Collaboration diagram for kudu::client::KuduTable:</div>
+<div class="dyncontent">
+<div class="center"><img src="classkudu_1_1client_1_1KuduTable__coll__graph.png" border="0" usemap="#kudu_1_1client_1_1KuduTable_coll__map" alt="Collaboration graph"/></div>
+<map name="kudu_1_1client_1_1KuduTable_coll__map" id="kudu_1_1client_1_1KuduTable_coll__map">
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:aa0f8b6d63c800727c3a827945512555e"><td class="memItemLeft" align="right" valign="top">const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#aa0f8b6d63c800727c3a827945512555e">name</a> () const </td></tr>
+<tr class="separator:aa0f8b6d63c800727c3a827945512555e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a185ff8f18b9bea6b41d6f4cf8dfa1377"><td class="memItemLeft" align="right" valign="top">const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#a185ff8f18b9bea6b41d6f4cf8dfa1377">id</a> () const </td></tr>
+<tr class="separator:a185ff8f18b9bea6b41d6f4cf8dfa1377"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4482e54a05c5b61b2bddc8c5297973fd"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#a4482e54a05c5b61b2bddc8c5297973fd">schema</a> () const </td></tr>
+<tr class="separator:a4482e54a05c5b61b2bddc8c5297973fd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a147bdffbd798161916471b721d63128f"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#a147bdffbd798161916471b721d63128f">num_replicas</a> () const </td></tr>
+<tr class="separator:a147bdffbd798161916471b721d63128f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0c78f86c5d0fbf53437c2c9db26f92b6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduInsert.html">KuduInsert</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#a0c78f86c5d0fbf53437c2c9db26f92b6">NewInsert</a> ()</td></tr>
+<tr class="separator:a0c78f86c5d0fbf53437c2c9db26f92b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a19e92dbaeeff86c5d707b15b2a7051fc"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduUpsert.html">KuduUpsert</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#a19e92dbaeeff86c5d707b15b2a7051fc">NewUpsert</a> ()</td></tr>
+<tr class="separator:a19e92dbaeeff86c5d707b15b2a7051fc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7e95271452d608fc2b563f7b46ddcda8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduUpdate.html">KuduUpdate</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#a7e95271452d608fc2b563f7b46ddcda8">NewUpdate</a> ()</td></tr>
+<tr class="separator:a7e95271452d608fc2b563f7b46ddcda8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad873078bdbcafe015d359a65c370a89a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduDelete.html">KuduDelete</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#ad873078bdbcafe015d359a65c370a89a">NewDelete</a> ()</td></tr>
+<tr class="separator:ad873078bdbcafe015d359a65c370a89a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aed6c3571aff35270a3e6cd66770f1cea"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">KuduPredicate</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#aed6c3571aff35270a3e6cd66770f1cea">NewComparisonPredicate</a> (const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;col_name, <a class="el" href="classkudu_1_1client_1_1KuduPredicate.html#ad58e80ced596d7738f99b5b83ba24eb4">KuduPredicate::ComparisonOp</a> op, <a class="el" href="classkudu_1_1client_1_1KuduValue.html">KuduValue</a> *value)</td></tr>
+<tr class="separator:aed6c3571aff35270a3e6cd66770f1cea"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a453ffb83cf7c12541caba5ea182fadd9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">KuduPredicate</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#a453ffb83cf7c12541caba5ea182fadd9">NewInListPredicate</a> (const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;col_name, std::vector&lt; <a class="el" href="classkudu_1_1client_1_1KuduValue.html">KuduValue</a> * &gt; *values)</td></tr>
+<tr class="separator:a453ffb83cf7c12541caba5ea182fadd9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af6e70f115cf3c0359b1c170533a2d523"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">KuduPredicate</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#af6e70f115cf3c0359b1c170533a2d523">NewIsNotNullPredicate</a> (const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;col_name)</td></tr>
+<tr class="separator:af6e70f115cf3c0359b1c170533a2d523"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5f453909cdeda167ad15506358470466"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">KuduPredicate</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#a5f453909cdeda167ad15506358470466">NewIsNullPredicate</a> (const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;col_name)</td></tr>
+<tr class="separator:a5f453909cdeda167ad15506358470466"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a08836bfb79f6f91e7f235712ea271d35"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">KuduClient</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#a08836bfb79f6f91e7f235712ea271d35">client</a> () const </td></tr>
+<tr class="separator:a08836bfb79f6f91e7f235712ea271d35"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af1125879ce34fa6c994a70fe1803a808"><td class="memItemLeft" align="right" valign="top">const PartitionSchema &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#af1125879ce34fa6c994a70fe1803a808">partition_schema</a> () const </td></tr>
+<tr class="separator:af1125879ce34fa6c994a70fe1803a808"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
+Friends</h2></td></tr>
+<tr class="memitem:a5b5a804db2a148e792148f521f04b486"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5b5a804db2a148e792148f521f04b486"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>KuduClient</b></td></tr>
+<tr class="separator:a5b5a804db2a148e792148f521f04b486"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af582b10fe356bdad95ed5f4cbf2ef2ef"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af582b10fe356bdad95ed5f4cbf2ef2ef"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>KuduPartitioner</b></td></tr>
+<tr class="separator:af582b10fe356bdad95ed5f4cbf2ef2ef"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>A representation of a table on a particular cluster. </p>
+<p>A <a class="el" href="classkudu_1_1client_1_1KuduTable.html" title="A representation of a table on a particular cluster. ">KuduTable</a> holds the current schema of the table. Any given <a class="el" href="classkudu_1_1client_1_1KuduTable.html" title="A representation of a table on a particular cluster. ">KuduTable</a> object belongs to a specific <a class="el" href="classkudu_1_1client_1_1KuduClient.html" title="A handle for a connection to a cluster. ">KuduClient</a> object.</p>
+<p>Upon construction, the table is looked up in the catalog (or catalog cache), and the schema fetched for introspection.</p>
+<p>This class is also a factory for write operation on the table. The provided operations are: </p><ul>
+<li>INSERT Adds a new row. Fails if the row already exists. </li>
+<li>UPSERT Adds a new row. If there's an existing row, updates it. </li>
+<li>UPDATE Updates an existing row. Fails if the row does not exist. </li>
+<li>DELETE Deletes an existing row. Fails if the row does not exist.</li>
+</ul>
+<dl class="section note"><dt>Note</dt><dd>This class is thread-safe. </dd></dl>
+</div><h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a08836bfb79f6f91e7f235712ea271d35"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">KuduClient</a>* kudu::client::KuduTable::client </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd>The <a class="el" href="classkudu_1_1client_1_1KuduClient.html" title="A handle for a connection to a cluster. ">KuduClient</a> object associated with the table. The caller should not free the returned pointer. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a185ff8f18b9bea6b41d6f4cf8dfa1377"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">const std::string&amp; kudu::client::KuduTable::id </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Get the table's ID.</p>
+<p>This is an internal identifier which uniquely identifies a table. If the table is deleted and recreated with the same name, the ID will distinguish the old table from the new.</p>
+<dl class="section return"><dt>Returns</dt><dd>Identifier string for the table. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="aa0f8b6d63c800727c3a827945512555e"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">const std::string&amp; kudu::client::KuduTable::name </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd>Name of the table. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="aed6c3571aff35270a3e6cd66770f1cea"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">KuduPredicate</a>* kudu::client::KuduTable::NewComparisonPredicate </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;&#160;</td>
+          <td class="paramname"><em>col_name</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html#ad58e80ced596d7738f99b5b83ba24eb4">KuduPredicate::ComparisonOp</a>&#160;</td>
+          <td class="paramname"><em>op</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="classkudu_1_1client_1_1KuduValue.html">KuduValue</a> *&#160;</td>
+          <td class="paramname"><em>value</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Create a new comparison predicate.</p>
+<p>This method creates new instance of a comparison predicate which can be used for scanners on this table object.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">col_name</td><td>Name of column to use for comparison. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">op</td><td>Comparison operator to use. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>The type of the value must correspond to the type of the column to which the predicate is to be applied. For example, if the given column is any type of integer, the <a class="el" href="classkudu_1_1client_1_1KuduValue.html" title="A constant cell value with a specific type. ">KuduValue</a> should also be an integer, with its value in the valid range for the column type. No attempt is made to cast between floating point and integer values, or numeric and string values. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Raw pointer to instance of comparison predicate. The caller owns the result until it is passed into <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a47b0fcd30f8002cb4fdcf69351896b74">KuduScanner::AddConjunctPredicate()</a>. The returned predicate object takes ownership over the <code>value</code> Non-NULL is returned both in success and error cases. In the case of an error (e.g. invalid column name), a non-NULL value is still returned. The error will be returned when attempting to add this predicate to a <a class="el" href="classkudu_1_1client_1_1KuduScanner.html" title="This class is a representation of a single scan. ">KuduScanner</a>. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ad873078bdbcafe015d359a65c370a89a"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduDelete.html">KuduDelete</a>* kudu::client::KuduTable::NewDelete </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd>New <code>DELETE</code> operation for this table. It is the caller's responsibility to free the result, unless it is passed to <a class="el" href="classkudu_1_1client_1_1KuduSession.html#ad3f7324b27fca298c5ca3d07b4741943">KuduSession::Apply()</a>. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a453ffb83cf7c12541caba5ea182fadd9"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">KuduPredicate</a>* kudu::client::KuduTable::NewInListPredicate </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;&#160;</td>
+          <td class="paramname"><em>col_name</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::vector&lt; <a class="el" href="classkudu_1_1client_1_1KuduValue.html">KuduValue</a> * &gt; *&#160;</td>
+          <td class="paramname"><em>values</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Create a new IN list predicate which can be used for scanners on this table.</p>
+<p>The IN list predicate is used to specify a list of values that a column must match. A row is filtered from the scan if the value of the column does not equal any value from the list.</p>
+<p>The type of entries in the list must correspond to the type of the column to which the predicate is to be applied. For example, if the given column is any type of integer, the KuduValues should also be integers, with the values in the valid range for the column type. No attempt is made to cast between floating point and integer values, or numeric and string values.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">col_name</td><td>Name of the column to which the predicate applies. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">values</td><td>Vector of values which the column will be matched against. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Raw pointer to an IN list predicate. The caller owns the predicate until it is passed into <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a47b0fcd30f8002cb4fdcf69351896b74">KuduScanner::AddConjunctPredicate()</a>. The returned predicate takes ownership of the values vector and its elements. In the case of an error (e.g. an invalid column name), a non-NULL value is still returned. The error will be returned when attempting to add this predicate to a <a class="el" href="classkudu_1_1client_1_1KuduScanner.html" title="This class is a representation of a single scan. ">KuduScanner</a>. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a0c78f86c5d0fbf53437c2c9db26f92b6"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduInsert.html">KuduInsert</a>* kudu::client::KuduTable::NewInsert </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd>New <code>INSERT</code> operation for this table. It is the caller's responsibility to free the result, unless it is passed to <a class="el" href="classkudu_1_1client_1_1KuduSession.html#ad3f7324b27fca298c5ca3d07b4741943">KuduSession::Apply()</a>. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="af6e70f115cf3c0359b1c170533a2d523"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">KuduPredicate</a>* kudu::client::KuduTable::NewIsNotNullPredicate </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;&#160;</td>
+          <td class="paramname"><em>col_name</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Create a new IS NOT NULL predicate which can be used for scanners on this table.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">col_name</td><td>Name of the column to which the predicate applies </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Raw pointer to an IS NOT NULL predicate. The caller owns the predicate until it is passed into <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a47b0fcd30f8002cb4fdcf69351896b74">KuduScanner::AddConjunctPredicate()</a>. In the case of an error (e.g. an invalid column name), a non-NULL value is still returned. The error will be returned when attempting to add this predicate to a <a class="el" href="classkudu_1_1client_1_1KuduScanner.html" title="This class is a representation of a single scan. ">KuduScanner</a>. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a5f453909cdeda167ad15506358470466"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">KuduPredicate</a>* kudu::client::KuduTable::NewIsNullPredicate </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;&#160;</td>
+          <td class="paramname"><em>col_name</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Create a new IS NULL predicate which can be used for scanners on this table.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">col_name</td><td>Name of the column to which the predicate applies </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Raw pointer to an IS NULL predicate. The caller owns the predicate until it is passed into <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a47b0fcd30f8002cb4fdcf69351896b74">KuduScanner::AddConjunctPredicate()</a>. In the case of an error (e.g. an invalid column name), a non-NULL value is still returned. The error will be returned when attempting to add this predicate to a <a class="el" href="classkudu_1_1client_1_1KuduScanner.html" title="This class is a representation of a single scan. ">KuduScanner</a>. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a7e95271452d608fc2b563f7b46ddcda8"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduUpdate.html">KuduUpdate</a>* kudu::client::KuduTable::NewUpdate </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd>New <code>UPDATE</code> operation for this table. It is the caller's responsibility to free the result, unless it is passed to <a class="el" href="classkudu_1_1client_1_1KuduSession.html#ad3f7324b27fca298c5ca3d07b4741943">KuduSession::Apply()</a>. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a19e92dbaeeff86c5d707b15b2a7051fc"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduUpsert.html">KuduUpsert</a>* kudu::client::KuduTable::NewUpsert </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd>New <code>UPSERT</code> operation for this table. It is the caller's responsibility to free the result, unless it is passed to <a class="el" href="classkudu_1_1client_1_1KuduSession.html#ad3f7324b27fca298c5ca3d07b4741943">KuduSession::Apply()</a>. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a147bdffbd798161916471b721d63128f"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">int kudu::client::KuduTable::num_replicas </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd>Replication factor of the table. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="af1125879ce34fa6c994a70fe1803a808"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">const PartitionSchema&amp; kudu::client::KuduTable::partition_schema </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd>The partition schema for the table. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a4482e54a05c5b61b2bddc8c5297973fd"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">const <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a>&amp; kudu::client::KuduTable::schema </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd>Reference to the table's schema object. </dd></dl>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/kudu/client/<a class="el" href="client_8h_source.html">client.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduTableAlterer-members.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduTableAlterer-members.html
new file mode 100644
index 0000000..051977d
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduTableAlterer-members.html
@@ -0,0 +1,117 @@
+<!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.11"/>
+<title>Kudu C++ client API: Member 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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html">KuduTableAlterer</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">kudu::client::KuduTableAlterer Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html">kudu::client::KuduTableAlterer</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html#acb9406a6a254997dd584ce6c2cf51cd0">AddColumn</a>(const std::string &amp;name)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html">kudu::client::KuduTableAlterer</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html#a521a968f4db133a10629f76c75dde793">AddRangePartition</a>(KuduPartialRow *lower_bound, KuduPartialRow *upper_bound, KuduTableCreator::RangePartitionBound lower_bound_type=KuduTableCreator::INCLUSIVE_BOUND, KuduTableCreator::RangePartitionBound upper_bound_type=KuduTableCreator::EXCLUSIVE_BOUND)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html">kudu::client::KuduTableAlterer</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html#a14768f28048355d997e0ed4fa82e218c">Alter</a>()</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html">kudu::client::KuduTableAlterer</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html#a6d62bfbcfab6b99dcb057e7f7a4cf742">AlterColumn</a>(const std::string &amp;name)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html">kudu::client::KuduTableAlterer</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html#ac5a4ec376ec53ba912b85ea0057d10a7">DropColumn</a>(const std::string &amp;name)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html">kudu::client::KuduTableAlterer</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html#ab0f8abf78d35725198876aaa04b737a7">DropRangePartition</a>(KuduPartialRow *lower_bound, KuduPartialRow *upper_bound, KuduTableCreator::RangePartitionBound lower_bound_type=KuduTableCreator::INCLUSIVE_BOUND, KuduTableCreator::RangePartitionBound upper_bound_type=KuduTableCreator::EXCLUSIVE_BOUND)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html">kudu::client::KuduTableAlterer</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>KuduClient</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html">kudu::client::KuduTableAlterer</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html">kudu::client::KuduTableAlterer</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html#aca8ea8d7b65e6952c76fd97f12d5b324">RenameTo</a>(const std::string &amp;new_name)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html">kudu::client::KuduTableAlterer</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html#add2961a41c37a6b0fd869e0f553a04a1">timeout</a>(const MonoDelta &amp;timeout)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html">kudu::client::KuduTableAlterer</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html#a86e6d55d0888d4bc99789b1dcd0e5646">wait</a>(bool wait)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html">kudu::client::KuduTableAlterer</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~KuduTableAlterer</b>() (defined in <a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html">kudu::client::KuduTableAlterer</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html">kudu::client::KuduTableAlterer</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduTableAlterer.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduTableAlterer.html
new file mode 100644
index 0000000..dd64f89
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduTableAlterer.html
@@ -0,0 +1,417 @@
+<!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.11"/>
+<title>Kudu C++ client API: kudu::client::KuduTableAlterer Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html">KuduTableAlterer</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#friends">Friends</a> &#124;
+<a href="classkudu_1_1client_1_1KuduTableAlterer-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">kudu::client::KuduTableAlterer Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>Alters an existing table based on the provided steps.  
+ <a href="classkudu_1_1client_1_1KuduTableAlterer.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="client_8h_source.html">client.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:aca8ea8d7b65e6952c76fd97f12d5b324"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html">KuduTableAlterer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html#aca8ea8d7b65e6952c76fd97f12d5b324">RenameTo</a> (const std::string &amp;new_name)</td></tr>
+<tr class="separator:aca8ea8d7b65e6952c76fd97f12d5b324"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acb9406a6a254997dd584ce6c2cf51cd0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html">KuduColumnSpec</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html#acb9406a6a254997dd584ce6c2cf51cd0">AddColumn</a> (const std::string &amp;name)</td></tr>
+<tr class="separator:acb9406a6a254997dd584ce6c2cf51cd0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6d62bfbcfab6b99dcb057e7f7a4cf742"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html">KuduColumnSpec</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html#a6d62bfbcfab6b99dcb057e7f7a4cf742">AlterColumn</a> (const std::string &amp;name)</td></tr>
+<tr class="separator:a6d62bfbcfab6b99dcb057e7f7a4cf742"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac5a4ec376ec53ba912b85ea0057d10a7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html">KuduTableAlterer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html#ac5a4ec376ec53ba912b85ea0057d10a7">DropColumn</a> (const std::string &amp;name)</td></tr>
+<tr class="separator:ac5a4ec376ec53ba912b85ea0057d10a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a521a968f4db133a10629f76c75dde793"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html">KuduTableAlterer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html#a521a968f4db133a10629f76c75dde793">AddRangePartition</a> (<a class="el" href="classKuduPartialRow.html">KuduPartialRow</a> *lower_bound, <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a> *upper_bound, <a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343b">KuduTableCreator::RangePartitionBound</a> lower_bound_type=<a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343ba0f4899cc63fba167455e05b525f0b950">KuduTableCreator::INCLUSIVE_BOUND</a>, <a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343b">KuduTableCreator::RangePartitionBound</a> upper_bound_type=<a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343baa117961e0003fd28663861833d23e601">KuduTableCreator::EXCLUSIVE_BOUND</a>)</td></tr>
+<tr class="separator:a521a968f4db133a10629f76c75dde793"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab0f8abf78d35725198876aaa04b737a7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html">KuduTableAlterer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html#ab0f8abf78d35725198876aaa04b737a7">DropRangePartition</a> (<a class="el" href="classKuduPartialRow.html">KuduPartialRow</a> *lower_bound, <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a> *upper_bound, <a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343b">KuduTableCreator::RangePartitionBound</a> lower_bound_type=<a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343ba0f4899cc63fba167455e05b525f0b950">KuduTableCreator::INCLUSIVE_BOUND</a>, <a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343b">KuduTableCreator::RangePartitionBound</a> upper_bound_type=<a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343baa117961e0003fd28663861833d23e601">KuduTableCreator::EXCLUSIVE_BOUND</a>)</td></tr>
+<tr class="separator:ab0f8abf78d35725198876aaa04b737a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:add2961a41c37a6b0fd869e0f553a04a1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html">KuduTableAlterer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html#add2961a41c37a6b0fd869e0f553a04a1">timeout</a> (const <a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a> &amp;timeout)</td></tr>
+<tr class="separator:add2961a41c37a6b0fd869e0f553a04a1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a86e6d55d0888d4bc99789b1dcd0e5646"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html">KuduTableAlterer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html#a86e6d55d0888d4bc99789b1dcd0e5646">wait</a> (bool wait)</td></tr>
+<tr class="separator:a86e6d55d0888d4bc99789b1dcd0e5646"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a14768f28048355d997e0ed4fa82e218c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html#a14768f28048355d997e0ed4fa82e218c">Alter</a> ()</td></tr>
+<tr class="separator:a14768f28048355d997e0ed4fa82e218c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
+Friends</h2></td></tr>
+<tr class="memitem:a5b5a804db2a148e792148f521f04b486"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5b5a804db2a148e792148f521f04b486"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>KuduClient</b></td></tr>
+<tr class="separator:a5b5a804db2a148e792148f521f04b486"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>Alters an existing table based on the provided steps. </p>
+<p>Create a new instance of a table alterer using <a class="el" href="classkudu_1_1client_1_1KuduClient.html#a116bbcf13dc0991ad2a3129630075aea">KuduClient::NewTableAlterer()</a>. An example of usage: </p><div class="fragment"><div class="line">std::unique_ptr&lt;KuduTableAlterer&gt; alterer(</div><div class="line">  client-&gt;NewTableAlterer(<span class="stringliteral">&quot;table-name&quot;</span>));</div><div class="line">alterer-&gt;AddColumn(<span class="stringliteral">&quot;foo&quot;</span>)-&gt;Type(KuduColumnSchema::INT32)-&gt;NotNull();</div><div class="line">alterer-&gt;AlterColumn(<span class="stringliteral">&quot;bar&quot;</span>)-&gt;Compression(KuduColumnStorageAttributes::LZ4);</div><div class="line">Status s = alterer-&gt;Alter();</div></div><!-- fragment --> </div><h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="acb9406a6a254997dd584ce6c2cf51cd0"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html">KuduColumnSpec</a>* kudu::client::KuduTableAlterer::AddColumn </td>
+          <td>(</td>
+          <td class="paramtype">const std::string &amp;&#160;</td>
+          <td class="paramname"><em>name</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Add a new column to the table.</p>
+<p>When adding a column, you must specify the default value of the new column using KuduColumnSpec::DefaultValue(...).</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">name</td><td>Name of the column do add. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Pointer to the result ColumnSpec object. The alterer keeps ownership of the newly created object. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a521a968f4db133a10629f76c75dde793"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html">KuduTableAlterer</a>* kudu::client::KuduTableAlterer::AddRangePartition </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a> *&#160;</td>
+          <td class="paramname"><em>lower_bound</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a> *&#160;</td>
+          <td class="paramname"><em>upper_bound</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343b">KuduTableCreator::RangePartitionBound</a>&#160;</td>
+          <td class="paramname"><em>lower_bound_type</em> = <code><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343ba0f4899cc63fba167455e05b525f0b950">KuduTableCreator::INCLUSIVE_BOUND</a></code>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343b">KuduTableCreator::RangePartitionBound</a>&#160;</td>
+          <td class="paramname"><em>upper_bound_type</em> = <code><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343baa117961e0003fd28663861833d23e601">KuduTableCreator::EXCLUSIVE_BOUND</a></code>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Add a range partition to the table with the specified lower bound and upper bound.</p>
+<dl class="section note"><dt>Note</dt><dd>The table alterer takes ownership of the rows.</dd>
+<dd>
+Multiple range partitions may be added as part of a single alter table transaction by calling this method multiple times on the table alterer.</dd>
+<dd>
+This client may immediately write and scan the new tablets when <a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html#a14768f28048355d997e0ed4fa82e218c">Alter()</a> returns success, however other existing clients may have to wait for a timeout period to elapse before the tablets become visible. This period is configured by the master's 'table_locations_ttl_ms' flag, and defaults to 5 minutes.</dd></dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">lower_bound</td><td>The lower bound of the range partition to add. If the row is empty, then the lower bound is unbounded. If any of the columns are unset, the logical minimum value for the column's type will be used by default. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">upper_bound</td><td>The upper bound of the range partition to add. If the row is empty, then the upper bound is unbounded. If any of the individual columns are unset, the logical minimum value for the column' type will be used by default. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">lower_bound_type</td><td>The type of the lower bound, either inclusive or exclusive. Defaults to inclusive. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">upper_bound_type</td><td>The type of the lower bound, either inclusive or exclusive. Defaults to exclusive. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Raw pointer to this alterer object. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a14768f28048355d997e0ed4fa82e218c"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduTableAlterer::Alter </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd><a class="el" href="classkudu_1_1Status.html" title="A representation of an operation&#39;s outcome. ">Status</a> of the ALTER TABLE operation. The return value may indicate an error in the alter operation, or a misuse of the builder (e.g. add_column() with default_value=NULL). In the latter case, only the last error is returned. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a6d62bfbcfab6b99dcb057e7f7a4cf742"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html">KuduColumnSpec</a>* kudu::client::KuduTableAlterer::AlterColumn </td>
+          <td>(</td>
+          <td class="paramtype">const std::string &amp;&#160;</td>
+          <td class="paramname"><em>name</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Alter an existing column.</p>
+<dl class="section note"><dt>Note</dt><dd>The column may not be in the primary key.</dd></dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">name</td><td>Name of the column to alter. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Pointer to the result ColumnSpec object. The alterer keeps ownership of the newly created object. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ac5a4ec376ec53ba912b85ea0057d10a7"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html">KuduTableAlterer</a>* kudu::client::KuduTableAlterer::DropColumn </td>
+          <td>(</td>
+          <td class="paramtype">const std::string &amp;&#160;</td>
+          <td class="paramname"><em>name</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Drops an existing column from the table.</p>
+<dl class="section note"><dt>Note</dt><dd>The column may not be in the primary key.</dd></dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">name</td><td>Name of the column to alter. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Raw pointer to this alterer object. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ab0f8abf78d35725198876aaa04b737a7"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html">KuduTableAlterer</a>* kudu::client::KuduTableAlterer::DropRangePartition </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a> *&#160;</td>
+          <td class="paramname"><em>lower_bound</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a> *&#160;</td>
+          <td class="paramname"><em>upper_bound</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343b">KuduTableCreator::RangePartitionBound</a>&#160;</td>
+          <td class="paramname"><em>lower_bound_type</em> = <code><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343ba0f4899cc63fba167455e05b525f0b950">KuduTableCreator::INCLUSIVE_BOUND</a></code>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343b">KuduTableCreator::RangePartitionBound</a>&#160;</td>
+          <td class="paramname"><em>upper_bound_type</em> = <code><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343baa117961e0003fd28663861833d23e601">KuduTableCreator::EXCLUSIVE_BOUND</a></code>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Drop the range partition from the table with the specified lower bound and upper bound. The bounds must match an existing range partition exactly, and may not span multiple range partitions.</p>
+<dl class="section note"><dt>Note</dt><dd>The table alterer takes ownership of the rows.</dd>
+<dd>
+Multiple range partitions may be dropped as part of a single alter table transaction by calling this method multiple times on the table alterer.</dd></dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">lower_bound</td><td>The inclusive lower bound of the range partition to drop. If the row is empty, then the lower bound is unbounded. If any of the columns are unset, the logical minimum value for the column's type will be used by default. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">upper_bound</td><td>The exclusive upper bound of the range partition to add. If the row is empty, then the upper bound is unbounded. If any of the individual columns are unset, the logical minimum value for the column' type will be used by default. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">lower_bound_type</td><td>The type of the lower bound, either inclusive or exclusive. Defaults to inclusive. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">upper_bound_type</td><td>The type of the lower bound, either inclusive or exclusive. Defaults to exclusive. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Raw pointer to this alterer object. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="aca8ea8d7b65e6952c76fd97f12d5b324"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html">KuduTableAlterer</a>* kudu::client::KuduTableAlterer::RenameTo </td>
+          <td>(</td>
+          <td class="paramtype">const std::string &amp;&#160;</td>
+          <td class="paramname"><em>new_name</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Rename the table.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">new_name</td><td>The new name for the table. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Raw pointer to this alterer object. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="add2961a41c37a6b0fd869e0f553a04a1"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html">KuduTableAlterer</a>* kudu::client::KuduTableAlterer::timeout </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a> &amp;&#160;</td>
+          <td class="paramname"><em>timeout</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Set a timeout for the alteration operation.</p>
+<p>This includes any waiting after the alter has been submitted (i.e. if the alter is slow to be performed on a large table, it may time out and then later be successful).</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">timeout</td><td>Timeout to set. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Raw pointer to this alterer object. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a86e6d55d0888d4bc99789b1dcd0e5646"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html">KuduTableAlterer</a>* kudu::client::KuduTableAlterer::wait </td>
+          <td>(</td>
+          <td class="paramtype">bool&#160;</td>
+          <td class="paramname"><em>wait</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Whether to wait for completion of alteration operations.</p>
+<p>If set to <code>true</code>, an alteration operation returns control only after the operation is complete. Otherwise, every operation returns immediately. By default (i.e. when an alteration object is created) it is set to <code>true</code>.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">wait</td><td>Whether to wait for alteration operation to complete before returning control. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Raw pointer to this alterer object. </dd></dl>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/kudu/client/<a class="el" href="client_8h_source.html">client.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduTableCreator-members.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduTableCreator-members.html
new file mode 100644
index 0000000..6896487
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduTableCreator-members.html
@@ -0,0 +1,123 @@
+<!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.11"/>
+<title>Kudu C++ client API: Member 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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html">KuduTableCreator</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">kudu::client::KuduTableCreator Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html">kudu::client::KuduTableCreator</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a989ccdb9b6f4186d3227d3811048538e">add_hash_partitions</a>(const std::vector&lt; std::string &gt; &amp;columns, int32_t num_buckets)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html">kudu::client::KuduTableCreator</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a9cdcee398f94af53d721e3d085929d24">add_hash_partitions</a>(const std::vector&lt; std::string &gt; &amp;columns, int32_t num_buckets, int32_t seed)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html">kudu::client::KuduTableCreator</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#aac3d941bf3b381c08f64ed919680984a">add_range_partition</a>(KuduPartialRow *lower_bound, KuduPartialRow *upper_bound, RangePartitionBound lower_bound_type=INCLUSIVE_BOUND, RangePartitionBound upper_bound_type=EXCLUSIVE_BOUND)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html">kudu::client::KuduTableCreator</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#adbdd2208d9ede696704fbecea15bea1f">add_range_partition_split</a>(KuduPartialRow *split_row)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html">kudu::client::KuduTableCreator</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a30efad5c256dae0af7bb43599403b1cc">Create</a>()</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html">kudu::client::KuduTableCreator</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343baa117961e0003fd28663861833d23e601">EXCLUSIVE_BOUND</a> enum value</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html">kudu::client::KuduTableCreator</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343ba0f4899cc63fba167455e05b525f0b950">INCLUSIVE_BOUND</a> enum value</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html">kudu::client::KuduTableCreator</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>KuduClient</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html">kudu::client::KuduTableCreator</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html">kudu::client::KuduTableCreator</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a9dd4673755ba242eab3f06b19182d139">num_replicas</a>(int n_replicas)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html">kudu::client::KuduTableCreator</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343b">RangePartitionBound</a> enum name</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html">kudu::client::KuduTableCreator</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a38a83cf0e856ebaf4a5afe8c4a1d06f7">schema</a>(const KuduSchema *schema)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html">kudu::client::KuduTableCreator</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a482701285b7a071dd56f04df480bc7c3">set_range_partition_columns</a>(const std::vector&lt; std::string &gt; &amp;columns)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html">kudu::client::KuduTableCreator</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#ae12cc7c72da40f25b079273a6169faf9">split_rows</a>(const std::vector&lt; const KuduPartialRow * &gt; &amp;split_rows) ATTRIBUTE_DEPRECATED(&quot;use add_range_partition_split() instead&quot;)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html">kudu::client::KuduTableCreator</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a15126b62437fc1741b41249080376f93">table_name</a>(const std::string &amp;name)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html">kudu::client::KuduTableCreator</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a52855857927fe1a08fbd4c81e746c235">timeout</a>(const MonoDelta &amp;timeout)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html">kudu::client::KuduTableCreator</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a48f9e977356c37666106f303100198d9">wait</a>(bool wait)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html">kudu::client::KuduTableCreator</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~KuduTableCreator</b>() (defined in <a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html">kudu::client::KuduTableCreator</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html">kudu::client::KuduTableCreator</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduTableCreator.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduTableCreator.html
new file mode 100644
index 0000000..1e47183
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduTableCreator.html
@@ -0,0 +1,536 @@
+<!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.11"/>
+<title>Kudu C++ client API: kudu::client::KuduTableCreator Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html">KuduTableCreator</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-types">Public Types</a> &#124;
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#friends">Friends</a> &#124;
+<a href="classkudu_1_1client_1_1KuduTableCreator-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">kudu::client::KuduTableCreator Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>A helper class to create a new table with the desired options.  
+ <a href="classkudu_1_1client_1_1KuduTableCreator.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="client_8h_source.html">client.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
+Public Types</h2></td></tr>
+<tr class="memitem:a0a63fdc58e8062e505f4fa71d6f2343b"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343b">RangePartitionBound</a> { <a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343baa117961e0003fd28663861833d23e601">EXCLUSIVE_BOUND</a>, 
+<a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343ba0f4899cc63fba167455e05b525f0b950">INCLUSIVE_BOUND</a>
+ }<tr class="memdesc:a0a63fdc58e8062e505f4fa71d6f2343b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Range partition bound type.  <a href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343b">More...</a><br /></td></tr>
+</td></tr>
+<tr class="separator:a0a63fdc58e8062e505f4fa71d6f2343b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a15126b62437fc1741b41249080376f93"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html">KuduTableCreator</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a15126b62437fc1741b41249080376f93">table_name</a> (const std::string &amp;name)</td></tr>
+<tr class="separator:a15126b62437fc1741b41249080376f93"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a38a83cf0e856ebaf4a5afe8c4a1d06f7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html">KuduTableCreator</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a38a83cf0e856ebaf4a5afe8c4a1d06f7">schema</a> (const <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a> *schema)</td></tr>
+<tr class="separator:a38a83cf0e856ebaf4a5afe8c4a1d06f7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a989ccdb9b6f4186d3227d3811048538e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html">KuduTableCreator</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a989ccdb9b6f4186d3227d3811048538e">add_hash_partitions</a> (const std::vector&lt; std::string &gt; &amp;columns, int32_t num_buckets)</td></tr>
+<tr class="separator:a989ccdb9b6f4186d3227d3811048538e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9cdcee398f94af53d721e3d085929d24"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html">KuduTableCreator</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a9cdcee398f94af53d721e3d085929d24">add_hash_partitions</a> (const std::vector&lt; std::string &gt; &amp;columns, int32_t num_buckets, int32_t seed)</td></tr>
+<tr class="separator:a9cdcee398f94af53d721e3d085929d24"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a482701285b7a071dd56f04df480bc7c3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html">KuduTableCreator</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a482701285b7a071dd56f04df480bc7c3">set_range_partition_columns</a> (const std::vector&lt; std::string &gt; &amp;columns)</td></tr>
+<tr class="separator:a482701285b7a071dd56f04df480bc7c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aac3d941bf3b381c08f64ed919680984a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html">KuduTableCreator</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#aac3d941bf3b381c08f64ed919680984a">add_range_partition</a> (<a class="el" href="classKuduPartialRow.html">KuduPartialRow</a> *lower_bound, <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a> *upper_bound, <a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343b">RangePartitionBound</a> lower_bound_type=<a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343ba0f4899cc63fba167455e05b525f0b950">INCLUSIVE_BOUND</a>, <a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343b">RangePartitionBound</a> upper_bound_type=<a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343baa117961e0003fd28663861833d23e601">EXCLUSIVE_BOUND</a>)</td></tr>
+<tr class="separator:aac3d941bf3b381c08f64ed919680984a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adbdd2208d9ede696704fbecea15bea1f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html">KuduTableCreator</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#adbdd2208d9ede696704fbecea15bea1f">add_range_partition_split</a> (<a class="el" href="classKuduPartialRow.html">KuduPartialRow</a> *split_row)</td></tr>
+<tr class="separator:adbdd2208d9ede696704fbecea15bea1f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae12cc7c72da40f25b079273a6169faf9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html">KuduTableCreator</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#ae12cc7c72da40f25b079273a6169faf9">split_rows</a> (const std::vector&lt; const <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a> * &gt; &amp;split_rows) ATTRIBUTE_DEPRECATED(&quot;use <a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#adbdd2208d9ede696704fbecea15bea1f">add_range_partition_split</a>() instead&quot;)</td></tr>
+<tr class="separator:ae12cc7c72da40f25b079273a6169faf9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9dd4673755ba242eab3f06b19182d139"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html">KuduTableCreator</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a9dd4673755ba242eab3f06b19182d139">num_replicas</a> (int n_replicas)</td></tr>
+<tr class="separator:a9dd4673755ba242eab3f06b19182d139"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a52855857927fe1a08fbd4c81e746c235"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html">KuduTableCreator</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a52855857927fe1a08fbd4c81e746c235">timeout</a> (const <a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a> &amp;timeout)</td></tr>
+<tr class="separator:a52855857927fe1a08fbd4c81e746c235"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a48f9e977356c37666106f303100198d9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html">KuduTableCreator</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a48f9e977356c37666106f303100198d9">wait</a> (bool wait)</td></tr>
+<tr class="separator:a48f9e977356c37666106f303100198d9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a30efad5c256dae0af7bb43599403b1cc"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a30efad5c256dae0af7bb43599403b1cc">Create</a> ()</td></tr>
+<tr class="separator:a30efad5c256dae0af7bb43599403b1cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
+Friends</h2></td></tr>
+<tr class="memitem:a5b5a804db2a148e792148f521f04b486"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5b5a804db2a148e792148f521f04b486"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>KuduClient</b></td></tr>
+<tr class="separator:a5b5a804db2a148e792148f521f04b486"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>A helper class to create a new table with the desired options. </p>
+</div><h2 class="groupheader">Member Enumeration Documentation</h2>
+<a class="anchor" id="a0a63fdc58e8062e505f4fa71d6f2343b"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">enum <a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343b">kudu::client::KuduTableCreator::RangePartitionBound</a></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Range partition bound type. </p>
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="a0a63fdc58e8062e505f4fa71d6f2343baa117961e0003fd28663861833d23e601"></a>EXCLUSIVE_BOUND&#160;</td><td class="fielddoc">
+<p>An exclusive bound. </p>
+</td></tr>
+<tr><td class="fieldname"><a class="anchor" id="a0a63fdc58e8062e505f4fa71d6f2343ba0f4899cc63fba167455e05b525f0b950"></a>INCLUSIVE_BOUND&#160;</td><td class="fielddoc">
+<p>An inclusive bound. </p>
+</td></tr>
+</table>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a989ccdb9b6f4186d3227d3811048538e"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html">KuduTableCreator</a>&amp; kudu::client::KuduTableCreator::add_hash_partitions </td>
+          <td>(</td>
+          <td class="paramtype">const std::vector&lt; std::string &gt; &amp;&#160;</td>
+          <td class="paramname"><em>columns</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">int32_t&#160;</td>
+          <td class="paramname"><em>num_buckets</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Add a set of hash partitions to the table.</p>
+<p>Tables must be created with either range, hash, or range and hash partitioning.</p>
+<p>For each set of hash partitions added to the table, the total number of tablets is multiplied by the number of buckets. For example, if a table is created with 3 split rows, and 2 hash partitions with 4 and 5 buckets respectively, the total number of tablets will be 80 (4 range partitions * 4 hash buckets * 5 hash buckets).</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">columns</td><td>Names of columns to use for partitioning. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">num_buckets</td><td>Number of buckets for the hashing. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Reference to the modified table creator. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a9cdcee398f94af53d721e3d085929d24"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html">KuduTableCreator</a>&amp; kudu::client::KuduTableCreator::add_hash_partitions </td>
+          <td>(</td>
+          <td class="paramtype">const std::vector&lt; std::string &gt; &amp;&#160;</td>
+          <td class="paramname"><em>columns</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">int32_t&#160;</td>
+          <td class="paramname"><em>num_buckets</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">int32_t&#160;</td>
+          <td class="paramname"><em>seed</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Add a set of hash partitions to the table (with seed).</p>
+<p>This method is exactly the same as <a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a989ccdb9b6f4186d3227d3811048538e">add_hash_partitions()</a> above, with the exception of additional seed value, which can be used to randomize the mapping of rows to hash buckets. Setting the seed may provide some amount of protection against denial of service attacks when the hashed columns contain user provided values.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">columns</td><td>Names of columns to use for partitioning. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">num_buckets</td><td>Number of buckets for the hashing. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">seed</td><td>Hash: seed for mapping rows to hash buckets. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Reference to the modified table creator. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="aac3d941bf3b381c08f64ed919680984a"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html">KuduTableCreator</a>&amp; kudu::client::KuduTableCreator::add_range_partition </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a> *&#160;</td>
+          <td class="paramname"><em>lower_bound</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a> *&#160;</td>
+          <td class="paramname"><em>upper_bound</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343b">RangePartitionBound</a>&#160;</td>
+          <td class="paramname"><em>lower_bound_type</em> = <code><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343ba0f4899cc63fba167455e05b525f0b950">INCLUSIVE_BOUND</a></code>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343b">RangePartitionBound</a>&#160;</td>
+          <td class="paramname"><em>upper_bound_type</em> = <code><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343baa117961e0003fd28663861833d23e601">EXCLUSIVE_BOUND</a></code>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Add a range partition to the table.</p>
+<p>Multiple range partitions may be added, but they must not overlap. All range splits specified by <code>add_range_partition_split</code> must fall in a range partition. The lower bound must be less than or equal to the upper bound.</p>
+<p>If this method is not called, the table's range will be unbounded.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">lower_bound</td><td>Row to use as a lower bound. The <a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html" title="A helper class to create a new table with the desired options. ">KuduTableCreator</a> instance takes ownership of this parameter. If row is empty, no lower bound is imposed on the table range. If a column of the <code>lower_bound</code> row is missing a value, the logical minimum value for that column type is used as the default. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">upper_bound</td><td>Row to use as an upper bound. The <a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html" title="A helper class to create a new table with the desired options. ">KuduTableCreator</a> instance takes ownership of this parameter. If row is empty, no upper bound is imposed on the table range. If a column of the <code>upper_bound</code> row is missing a value, the logical maximum value for that column type is used as the default. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">lower_bound_type</td><td>The type of the lower bound, either inclusive or exclusive. Defaults to inclusive. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">upper_bound_type</td><td>The type of the lower bound, either inclusive or exclusive. Defaults to exclusive. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Reference to the modified table creator. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="adbdd2208d9ede696704fbecea15bea1f"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html">KuduTableCreator</a>&amp; kudu::client::KuduTableCreator::add_range_partition_split </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a> *&#160;</td>
+          <td class="paramname"><em>split_row</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Add a range partition split at the provided row.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">split_row</td><td>The row to use for partitioning. If the row is missing a value for any of the range partition columns, the logical minimum value for that column type will be used by default. The <a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html" title="A helper class to create a new table with the desired options. ">KuduTableCreator</a> object takes ownership of the parameter. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Reference to the modified table creator. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a30efad5c256dae0af7bb43599403b1cc"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduTableCreator::Create </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Create a table in accordance with parameters currently set for the <a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html" title="A helper class to create a new table with the desired options. ">KuduTableCreator</a> instance. Once created, the table handle can be obtained using <a class="el" href="classkudu_1_1client_1_1KuduClient.html#aa82a09718ffe68d3255195e736aec8d7">KuduClient::OpenTable()</a> method.</p>
+<dl class="section pre"><dt>Precondition</dt><dd>The following methods of the <a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html" title="A helper class to create a new table with the desired options. ">KuduTableCreator</a> must be called prior to invoking this method: <ul>
+<li><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a15126b62437fc1741b41249080376f93">table_name()</a> </li>
+<li><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a38a83cf0e856ebaf4a5afe8c4a1d06f7">schema()</a></li>
+</ul>
+</dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>Result status of the <code>CREATE TABLE</code> operation. The return value may indicate an error in the create table operation, or a misuse of the builder. In the latter case, only the last error is returned. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a9dd4673755ba242eab3f06b19182d139"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html">KuduTableCreator</a>&amp; kudu::client::KuduTableCreator::num_replicas </td>
+          <td>(</td>
+          <td class="paramtype">int&#160;</td>
+          <td class="paramname"><em>n_replicas</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Set the table replication factor.</p>
+<p>Replicated tables can continue to read and write data while a majority of replicas are not failed.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">n_replicas</td><td>Number of replicas to set. This should be an odd number. If not provided (or if &lt;= 0), falls back to the server-side default. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Reference to the modified table creator. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a38a83cf0e856ebaf4a5afe8c4a1d06f7"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html">KuduTableCreator</a>&amp; kudu::client::KuduTableCreator::schema </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a> *&#160;</td>
+          <td class="paramname"><em>schema</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Set the schema with which to create the table.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">schema</td><td>Schema to use. Must remain valid for the lifetime of the builder. Must be non-NULL. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Reference to the modified table creator.</dd></dl>
+<dl class="section remark"><dt>Remarks</dt><dd>Calling this method and setting schema for the table-to-be is one of the pre-conditions for calling <a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a30efad5c256dae0af7bb43599403b1cc">KuduTableCreator::Create()</a> method. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a482701285b7a071dd56f04df480bc7c3"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html">KuduTableCreator</a>&amp; kudu::client::KuduTableCreator::set_range_partition_columns </td>
+          <td>(</td>
+          <td class="paramtype">const std::vector&lt; std::string &gt; &amp;&#160;</td>
+          <td class="paramname"><em>columns</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Set the columns on which the table will be range-partitioned.</p>
+<p>Tables must be created with either range, hash, or range and hash partitioning. To force the use of a single tablet (not recommended), call this method with an empty vector and set no split rows and no hash partitions.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">columns</td><td>Names of columns to use for partitioning. Every column must be a part of the table's primary key. If not set, or if called with an empty vector, the table will be created without range partitioning. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Reference to the modified table creator. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ae12cc7c72da40f25b079273a6169faf9"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html">KuduTableCreator</a>&amp; kudu::client::KuduTableCreator::split_rows </td>
+          <td>(</td>
+          <td class="paramtype">const std::vector&lt; const <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a> * &gt; &amp;&#160;</td>
+          <td class="paramname"><em>split_rows</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000001">Deprecated:</a></b></dt><dd>Use <code><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#adbdd2208d9ede696704fbecea15bea1f">add_range_partition_split()</a></code> instead.</dd></dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">split_rows</td><td>The row to use for partitioning. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Reference to the modified table creator. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a15126b62437fc1741b41249080376f93"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html">KuduTableCreator</a>&amp; kudu::client::KuduTableCreator::table_name </td>
+          <td>(</td>
+          <td class="paramtype">const std::string &amp;&#160;</td>
+          <td class="paramname"><em>name</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Set name for the table.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">name</td><td>Name of the target table. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Reference to the modified table creator.</dd></dl>
+<dl class="section remark"><dt>Remarks</dt><dd>Calling this method and setting the name for the table-to-be is one of the pre-conditions for calling <a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a30efad5c256dae0af7bb43599403b1cc">KuduTableCreator::Create()</a> method.</dd></dl>
+<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000003">Todo:</a></b></dt><dd>Should name of the table be a constructor's parameter instead? </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a52855857927fe1a08fbd4c81e746c235"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html">KuduTableCreator</a>&amp; kudu::client::KuduTableCreator::timeout </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a> &amp;&#160;</td>
+          <td class="paramname"><em>timeout</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Set the timeout for the table creation operation.</p>
+<p>This includes any waiting after the create has been submitted (i.e. if the create is slow to be performed for a large table, it may time out and then later be successful).</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">timeout</td><td>Timeout to set. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Reference to the modified table creator. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a48f9e977356c37666106f303100198d9"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html">KuduTableCreator</a>&amp; kudu::client::KuduTableCreator::wait </td>
+          <td>(</td>
+          <td class="paramtype">bool&#160;</td>
+          <td class="paramname"><em>wait</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Wait for the table to be fully created before returning.</p>
+<p>If not called, defaults to <code>true</code>.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">wait</td><td>Whether to wait for completion of operations. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Reference to the modified table creator. </dd></dl>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/kudu/client/<a class="el" href="client_8h_source.html">client.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduTable__coll__graph.map b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduTable__coll__graph.map
new file mode 100644
index 0000000..b3a3b7c
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduTable__coll__graph.map
@@ -0,0 +1,2 @@
+<map id="kudu::client::KuduTable" name="kudu::client::KuduTable">
+</map>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduTable__coll__graph.md5 b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduTable__coll__graph.md5
new file mode 100644
index 0000000..94606fd
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduTable__coll__graph.md5
@@ -0,0 +1 @@
+41d3ed754ad366f988b79f0f2be16671
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduTable__coll__graph.png b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduTable__coll__graph.png
new file mode 100644
index 0000000..bc6d103
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduTable__coll__graph.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduTable__inherit__graph.map b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduTable__inherit__graph.map
new file mode 100644
index 0000000..b3a3b7c
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduTable__inherit__graph.map
@@ -0,0 +1,2 @@
+<map id="kudu::client::KuduTable" name="kudu::client::KuduTable">
+</map>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduTable__inherit__graph.md5 b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduTable__inherit__graph.md5
new file mode 100644
index 0000000..94606fd
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduTable__inherit__graph.md5
@@ -0,0 +1 @@
+41d3ed754ad366f988b79f0f2be16671
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduTable__inherit__graph.png b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduTable__inherit__graph.png
new file mode 100644
index 0000000..bc6d103
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduTable__inherit__graph.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduTablet-members.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduTablet-members.html
new file mode 100644
index 0000000..0001626
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduTablet-members.html
@@ -0,0 +1,111 @@
+<!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.11"/>
+<title>Kudu C++ client API: Member 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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduTablet.html">KuduTablet</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">kudu::client::KuduTablet Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classkudu_1_1client_1_1KuduTablet.html">kudu::client::KuduTablet</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTablet.html#ae1fc886aa1c72ba64e6ecd05e04a0e31">id</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTablet.html">kudu::client::KuduTablet</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>KuduClient</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduTablet.html">kudu::client::KuduTablet</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTablet.html">kudu::client::KuduTablet</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>KuduScanTokenBuilder</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduTablet.html">kudu::client::KuduTablet</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTablet.html">kudu::client::KuduTablet</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTablet.html#a7816ea063549347b676fc18dfa297619">replicas</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTablet.html">kudu::client::KuduTablet</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~KuduTablet</b>() (defined in <a class="el" href="classkudu_1_1client_1_1KuduTablet.html">kudu::client::KuduTablet</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTablet.html">kudu::client::KuduTablet</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduTablet.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduTablet.html
new file mode 100644
index 0000000..47a1095
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduTablet.html
@@ -0,0 +1,168 @@
+<!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.11"/>
+<title>Kudu C++ client API: kudu::client::KuduTablet Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduTablet.html">KuduTablet</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#friends">Friends</a> &#124;
+<a href="classkudu_1_1client_1_1KuduTablet-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">kudu::client::KuduTablet Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>In-memory representation of a remote tablet.  
+ <a href="classkudu_1_1client_1_1KuduTablet.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="client_8h_source.html">client.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:ae1fc886aa1c72ba64e6ecd05e04a0e31"><td class="memItemLeft" align="right" valign="top">const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTablet.html#ae1fc886aa1c72ba64e6ecd05e04a0e31">id</a> () const </td></tr>
+<tr class="separator:ae1fc886aa1c72ba64e6ecd05e04a0e31"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7816ea063549347b676fc18dfa297619"><td class="memItemLeft" align="right" valign="top">const std::vector&lt; const <a class="el" href="classkudu_1_1client_1_1KuduReplica.html">KuduReplica</a> * &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTablet.html#a7816ea063549347b676fc18dfa297619">replicas</a> () const </td></tr>
+<tr class="separator:a7816ea063549347b676fc18dfa297619"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
+Friends</h2></td></tr>
+<tr class="memitem:a5b5a804db2a148e792148f521f04b486"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5b5a804db2a148e792148f521f04b486"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>KuduClient</b></td></tr>
+<tr class="separator:a5b5a804db2a148e792148f521f04b486"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a644ef5d9d668e5772acd6dc03c4f14ee"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a644ef5d9d668e5772acd6dc03c4f14ee"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>KuduScanTokenBuilder</b></td></tr>
+<tr class="separator:a644ef5d9d668e5772acd6dc03c4f14ee"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>In-memory representation of a remote tablet. </p>
+</div><h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="ae1fc886aa1c72ba64e6ecd05e04a0e31"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">const std::string&amp; kudu::client::KuduTablet::id </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd>The ID which is globally unique and guaranteed not to change for the lifetime of the tablet. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a7816ea063549347b676fc18dfa297619"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">const std::vector&lt;const <a class="el" href="classkudu_1_1client_1_1KuduReplica.html">KuduReplica</a>*&gt;&amp; kudu::client::KuduTablet::replicas </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd>The replicas of this tablet. The <a class="el" href="classkudu_1_1client_1_1KuduTablet.html" title="In-memory representation of a remote tablet. ">KuduTablet</a> retains ownership over the replicas.</dd></dl>
+<dl class="section note"><dt>Note</dt><dd>This information may be stale; replicas may be added or removed from Raft configurations at any time. </dd></dl>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/kudu/client/<a class="el" href="client_8h_source.html">client.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduTabletServer-members.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduTabletServer-members.html
new file mode 100644
index 0000000..2ab7744
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduTabletServer-members.html
@@ -0,0 +1,113 @@
+<!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.11"/>
+<title>Kudu C++ client API: Member 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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduTabletServer.html">KuduTabletServer</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">kudu::client::KuduTabletServer Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classkudu_1_1client_1_1KuduTabletServer.html">kudu::client::KuduTabletServer</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTabletServer.html#a24267a240220ed35ffe2b830899edb14">hostname</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTabletServer.html">kudu::client::KuduTabletServer</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>KuduClient</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduTabletServer.html">kudu::client::KuduTabletServer</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTabletServer.html">kudu::client::KuduTabletServer</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>KuduScanner</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduTabletServer.html">kudu::client::KuduTabletServer</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTabletServer.html">kudu::client::KuduTabletServer</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>KuduScanTokenBuilder</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduTabletServer.html">kudu::client::KuduTabletServer</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTabletServer.html">kudu::client::KuduTabletServer</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTabletServer.html#ab4715d71c64dad1059698f2bb9ef192d">port</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTabletServer.html">kudu::client::KuduTabletServer</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTabletServer.html#aacee61a6644f332b466718df00903137">uuid</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTabletServer.html">kudu::client::KuduTabletServer</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~KuduTabletServer</b>() (defined in <a class="el" href="classkudu_1_1client_1_1KuduTabletServer.html">kudu::client::KuduTabletServer</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduTabletServer.html">kudu::client::KuduTabletServer</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduTabletServer.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduTabletServer.html
new file mode 100644
index 0000000..566ce3f
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduTabletServer.html
@@ -0,0 +1,188 @@
+<!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.11"/>
+<title>Kudu C++ client API: kudu::client::KuduTabletServer Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduTabletServer.html">KuduTabletServer</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#friends">Friends</a> &#124;
+<a href="classkudu_1_1client_1_1KuduTabletServer-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">kudu::client::KuduTabletServer Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>In-memory representation of a remote tablet server.  
+ <a href="classkudu_1_1client_1_1KuduTabletServer.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="client_8h_source.html">client.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:aacee61a6644f332b466718df00903137"><td class="memItemLeft" align="right" valign="top">const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTabletServer.html#aacee61a6644f332b466718df00903137">uuid</a> () const </td></tr>
+<tr class="separator:aacee61a6644f332b466718df00903137"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a24267a240220ed35ffe2b830899edb14"><td class="memItemLeft" align="right" valign="top">const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTabletServer.html#a24267a240220ed35ffe2b830899edb14">hostname</a> () const </td></tr>
+<tr class="separator:a24267a240220ed35ffe2b830899edb14"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab4715d71c64dad1059698f2bb9ef192d"><td class="memItemLeft" align="right" valign="top">uint16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTabletServer.html#ab4715d71c64dad1059698f2bb9ef192d">port</a> () const </td></tr>
+<tr class="separator:ab4715d71c64dad1059698f2bb9ef192d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
+Friends</h2></td></tr>
+<tr class="memitem:a5b5a804db2a148e792148f521f04b486"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5b5a804db2a148e792148f521f04b486"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>KuduClient</b></td></tr>
+<tr class="separator:a5b5a804db2a148e792148f521f04b486"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a79d30f3059c783e077627a6f6d153c1b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a79d30f3059c783e077627a6f6d153c1b"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>KuduScanner</b></td></tr>
+<tr class="separator:a79d30f3059c783e077627a6f6d153c1b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a644ef5d9d668e5772acd6dc03c4f14ee"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a644ef5d9d668e5772acd6dc03c4f14ee"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>KuduScanTokenBuilder</b></td></tr>
+<tr class="separator:a644ef5d9d668e5772acd6dc03c4f14ee"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>In-memory representation of a remote tablet server. </p>
+</div><h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a24267a240220ed35ffe2b830899edb14"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">const std::string&amp; kudu::client::KuduTabletServer::hostname </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd>Hostname of the first RPC address that this tablet server is listening on. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ab4715d71c64dad1059698f2bb9ef192d"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">uint16_t kudu::client::KuduTabletServer::port </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd>Port number of the first RPC address that this tablet server is listening on. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="aacee61a6644f332b466718df00903137"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">const std::string&amp; kudu::client::KuduTabletServer::uuid </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd>The UUID which is globally unique and guaranteed not to change for the lifetime of the tablet server. </dd></dl>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/kudu/client/<a class="el" href="client_8h_source.html">client.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduUpdate-members.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduUpdate-members.html
new file mode 100644
index 0000000..13134b7
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduUpdate-members.html
@@ -0,0 +1,117 @@
+<!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.11"/>
+<title>Kudu C++ client API: Member 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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduUpdate.html">KuduUpdate</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">kudu::client::KuduUpdate Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classkudu_1_1client_1_1KuduUpdate.html">kudu::client::KuduUpdate</a>, including all inherited members.</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>DELETE</b> enum value (defined in <a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>INSERT</b> enum value (defined in <a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>KuduTable</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduUpdate.html">kudu::client::KuduUpdate</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduUpdate.html">kudu::client::KuduUpdate</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html#a8889770ce62e2ca0ce5d55c9c90af6bc">mutable_row</a>()</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html#a973b342ced786b23754b57fd83b34aa3">row</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduUpdate.html#af05d202ea529554b6d033d51ec942718">ToString</a>() const OVERRIDE</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduUpdate.html">kudu::client::KuduUpdate</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html#a87d94ee5801a6b16fc6d1f44ee2e4357">Type</a> enum name</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>UPDATE</b> enum value (defined in <a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>UPSERT</b> enum value (defined in <a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>~KuduUpdate</b>() (defined in <a class="el" href="classkudu_1_1client_1_1KuduUpdate.html">kudu::client::KuduUpdate</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduUpdate.html">kudu::client::KuduUpdate</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~KuduWriteOperation</b>() (defined in <a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+</table></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduUpdate.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduUpdate.html
new file mode 100644
index 0000000..7b7217b
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduUpdate.html
@@ -0,0 +1,191 @@
+<!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.11"/>
+<title>Kudu C++ client API: kudu::client::KuduUpdate Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduUpdate.html">KuduUpdate</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#friends">Friends</a> &#124;
+<a href="classkudu_1_1client_1_1KuduUpdate-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">kudu::client::KuduUpdate Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>A single row update to be sent to the cluster.  
+ <a href="classkudu_1_1client_1_1KuduUpdate.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="write__op_8h_source.html">write_op.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for kudu::client::KuduUpdate:</div>
+<div class="dyncontent">
+<div class="center"><img src="classkudu_1_1client_1_1KuduUpdate__inherit__graph.png" border="0" usemap="#kudu_1_1client_1_1KuduUpdate_inherit__map" alt="Inheritance graph"/></div>
+<map name="kudu_1_1client_1_1KuduUpdate_inherit__map" id="kudu_1_1client_1_1KuduUpdate_inherit__map">
+<area shape="rect" id="node2" href="classkudu_1_1client_1_1KuduWriteOperation.html" title="A single&#45;row write operation to be sent to a Kudu table. " alt="" coords="5,5,220,32"/>
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<div class="dynheader">
+Collaboration diagram for kudu::client::KuduUpdate:</div>
+<div class="dyncontent">
+<div class="center"><img src="classkudu_1_1client_1_1KuduUpdate__coll__graph.png" border="0" usemap="#kudu_1_1client_1_1KuduUpdate_coll__map" alt="Collaboration graph"/></div>
+<map name="kudu_1_1client_1_1KuduUpdate_coll__map" id="kudu_1_1client_1_1KuduUpdate_coll__map">
+<area shape="rect" id="node2" href="classkudu_1_1client_1_1KuduWriteOperation.html" title="A single&#45;row write operation to be sent to a Kudu table. " alt="" coords="5,5,220,32"/>
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:af05d202ea529554b6d033d51ec942718"><td class="memItemLeft" align="right" valign="top">virtual std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduUpdate.html#af05d202ea529554b6d033d51ec942718">ToString</a> () const OVERRIDE</td></tr>
+<tr class="separator:af05d202ea529554b6d033d51ec942718"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classkudu_1_1client_1_1KuduWriteOperation"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classkudu_1_1client_1_1KuduWriteOperation')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a></td></tr>
+<tr class="memitem:a973b342ced786b23754b57fd83b34aa3 inherit pub_methods_classkudu_1_1client_1_1KuduWriteOperation"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html#a973b342ced786b23754b57fd83b34aa3">row</a> () const </td></tr>
+<tr class="separator:a973b342ced786b23754b57fd83b34aa3 inherit pub_methods_classkudu_1_1client_1_1KuduWriteOperation"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8889770ce62e2ca0ce5d55c9c90af6bc inherit pub_methods_classkudu_1_1client_1_1KuduWriteOperation"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html#a8889770ce62e2ca0ce5d55c9c90af6bc">mutable_row</a> ()</td></tr>
+<tr class="separator:a8889770ce62e2ca0ce5d55c9c90af6bc inherit pub_methods_classkudu_1_1client_1_1KuduWriteOperation"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
+Friends</h2></td></tr>
+<tr class="memitem:a770744f0111b5919212173a7efaf85cd"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a770744f0111b5919212173a7efaf85cd"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>KuduTable</b></td></tr>
+<tr class="separator:a770744f0111b5919212173a7efaf85cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
+Additional Inherited Members</h2></td></tr>
+<tr class="inherit_header pub_types_classkudu_1_1client_1_1KuduWriteOperation"><td colspan="2" onclick="javascript:toggleInherit('pub_types_classkudu_1_1client_1_1KuduWriteOperation')"><img src="closed.png" alt="-"/>&#160;Public Types inherited from <a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a></td></tr>
+<tr class="memitem:a87d94ee5801a6b16fc6d1f44ee2e4357 inherit pub_types_classkudu_1_1client_1_1KuduWriteOperation"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a87d94ee5801a6b16fc6d1f44ee2e4357"></a>enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html#a87d94ee5801a6b16fc6d1f44ee2e4357">Type</a> { <b>INSERT</b> = 1, 
+<b>UPDATE</b> = 2, 
+<b>DELETE</b> = 3, 
+<b>UPSERT</b> = 4
+ }<tr class="memdesc:a87d94ee5801a6b16fc6d1f44ee2e4357"><td class="mdescLeft">&#160;</td><td class="mdescRight">Write operation types. <br /></td></tr>
+</td></tr>
+<tr class="separator:a87d94ee5801a6b16fc6d1f44ee2e4357 inherit pub_types_classkudu_1_1client_1_1KuduWriteOperation"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>A single row update to be sent to the cluster. </p>
+<dl class="section pre"><dt>Precondition</dt><dd>An update requires the key columns and at least one other column in the schema to be set in the embedded <a class="el" href="classKuduPartialRow.html" title="A row which may only contain values for a subset of the columns. ">KuduPartialRow</a> object. </dd></dl>
+</div><h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="af05d202ea529554b6d033d51ec942718"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual std::string kudu::client::KuduUpdate::ToString </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p></p>
+<dl class="section return"><dt>Returns</dt><dd>String representation of the operation. </dd></dl>
+
+<p>Implements <a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html#a50b5405c4dfc7af038daa4780aea6e19">kudu::client::KuduWriteOperation</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/kudu/client/<a class="el" href="write__op_8h_source.html">write_op.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduUpdate__coll__graph.map b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduUpdate__coll__graph.map
new file mode 100644
index 0000000..8975dfa
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduUpdate__coll__graph.map
@@ -0,0 +1,3 @@
+<map id="kudu::client::KuduUpdate" name="kudu::client::KuduUpdate">
+<area shape="rect" id="node2" href="$classkudu_1_1client_1_1KuduWriteOperation.html" title="A single&#45;row write operation to be sent to a Kudu table. " alt="" coords="5,5,220,32"/>
+</map>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduUpdate__coll__graph.md5 b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduUpdate__coll__graph.md5
new file mode 100644
index 0000000..9b867ca
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduUpdate__coll__graph.md5
@@ -0,0 +1 @@
+16e42d43b3319d4db507957170f6f8db
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduUpdate__coll__graph.png b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduUpdate__coll__graph.png
new file mode 100644
index 0000000..5ec1ec7
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduUpdate__coll__graph.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduUpdate__inherit__graph.map b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduUpdate__inherit__graph.map
new file mode 100644
index 0000000..8975dfa
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduUpdate__inherit__graph.map
@@ -0,0 +1,3 @@
+<map id="kudu::client::KuduUpdate" name="kudu::client::KuduUpdate">
+<area shape="rect" id="node2" href="$classkudu_1_1client_1_1KuduWriteOperation.html" title="A single&#45;row write operation to be sent to a Kudu table. " alt="" coords="5,5,220,32"/>
+</map>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduUpdate__inherit__graph.md5 b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduUpdate__inherit__graph.md5
new file mode 100644
index 0000000..9b867ca
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduUpdate__inherit__graph.md5
@@ -0,0 +1 @@
+16e42d43b3319d4db507957170f6f8db
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduUpdate__inherit__graph.png b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduUpdate__inherit__graph.png
new file mode 100644
index 0000000..5ec1ec7
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduUpdate__inherit__graph.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduUpsert-members.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduUpsert-members.html
new file mode 100644
index 0000000..663fc56
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduUpsert-members.html
@@ -0,0 +1,117 @@
+<!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.11"/>
+<title>Kudu C++ client API: Member 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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduUpsert.html">KuduUpsert</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">kudu::client::KuduUpsert Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classkudu_1_1client_1_1KuduUpsert.html">kudu::client::KuduUpsert</a>, including all inherited members.</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>DELETE</b> enum value (defined in <a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>INSERT</b> enum value (defined in <a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>KuduTable</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduUpsert.html">kudu::client::KuduUpsert</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduUpsert.html">kudu::client::KuduUpsert</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html#a8889770ce62e2ca0ce5d55c9c90af6bc">mutable_row</a>()</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html#a973b342ced786b23754b57fd83b34aa3">row</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduUpsert.html#a0608280ef5b4eb2a53c0b303db7401c8">ToString</a>() const OVERRIDE</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduUpsert.html">kudu::client::KuduUpsert</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html#a87d94ee5801a6b16fc6d1f44ee2e4357">Type</a> enum name</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>UPDATE</b> enum value (defined in <a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>UPSERT</b> enum value (defined in <a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>~KuduUpsert</b>() (defined in <a class="el" href="classkudu_1_1client_1_1KuduUpsert.html">kudu::client::KuduUpsert</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduUpsert.html">kudu::client::KuduUpsert</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~KuduWriteOperation</b>() (defined in <a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+</table></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduUpsert.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduUpsert.html
new file mode 100644
index 0000000..a3ce817
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduUpsert.html
@@ -0,0 +1,191 @@
+<!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.11"/>
+<title>Kudu C++ client API: kudu::client::KuduUpsert Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduUpsert.html">KuduUpsert</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#friends">Friends</a> &#124;
+<a href="classkudu_1_1client_1_1KuduUpsert-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">kudu::client::KuduUpsert Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>A single row upsert to be sent to the cluster.  
+ <a href="classkudu_1_1client_1_1KuduUpsert.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="write__op_8h_source.html">write_op.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for kudu::client::KuduUpsert:</div>
+<div class="dyncontent">
+<div class="center"><img src="classkudu_1_1client_1_1KuduUpsert__inherit__graph.png" border="0" usemap="#kudu_1_1client_1_1KuduUpsert_inherit__map" alt="Inheritance graph"/></div>
+<map name="kudu_1_1client_1_1KuduUpsert_inherit__map" id="kudu_1_1client_1_1KuduUpsert_inherit__map">
+<area shape="rect" id="node2" href="classkudu_1_1client_1_1KuduWriteOperation.html" title="A single&#45;row write operation to be sent to a Kudu table. " alt="" coords="5,5,220,32"/>
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<div class="dynheader">
+Collaboration diagram for kudu::client::KuduUpsert:</div>
+<div class="dyncontent">
+<div class="center"><img src="classkudu_1_1client_1_1KuduUpsert__coll__graph.png" border="0" usemap="#kudu_1_1client_1_1KuduUpsert_coll__map" alt="Collaboration graph"/></div>
+<map name="kudu_1_1client_1_1KuduUpsert_coll__map" id="kudu_1_1client_1_1KuduUpsert_coll__map">
+<area shape="rect" id="node2" href="classkudu_1_1client_1_1KuduWriteOperation.html" title="A single&#45;row write operation to be sent to a Kudu table. " alt="" coords="5,5,220,32"/>
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a0608280ef5b4eb2a53c0b303db7401c8"><td class="memItemLeft" align="right" valign="top">virtual std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduUpsert.html#a0608280ef5b4eb2a53c0b303db7401c8">ToString</a> () const OVERRIDE</td></tr>
+<tr class="separator:a0608280ef5b4eb2a53c0b303db7401c8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classkudu_1_1client_1_1KuduWriteOperation"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classkudu_1_1client_1_1KuduWriteOperation')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a></td></tr>
+<tr class="memitem:a973b342ced786b23754b57fd83b34aa3 inherit pub_methods_classkudu_1_1client_1_1KuduWriteOperation"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html#a973b342ced786b23754b57fd83b34aa3">row</a> () const </td></tr>
+<tr class="separator:a973b342ced786b23754b57fd83b34aa3 inherit pub_methods_classkudu_1_1client_1_1KuduWriteOperation"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8889770ce62e2ca0ce5d55c9c90af6bc inherit pub_methods_classkudu_1_1client_1_1KuduWriteOperation"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html#a8889770ce62e2ca0ce5d55c9c90af6bc">mutable_row</a> ()</td></tr>
+<tr class="separator:a8889770ce62e2ca0ce5d55c9c90af6bc inherit pub_methods_classkudu_1_1client_1_1KuduWriteOperation"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
+Friends</h2></td></tr>
+<tr class="memitem:a770744f0111b5919212173a7efaf85cd"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a770744f0111b5919212173a7efaf85cd"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>KuduTable</b></td></tr>
+<tr class="separator:a770744f0111b5919212173a7efaf85cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
+Additional Inherited Members</h2></td></tr>
+<tr class="inherit_header pub_types_classkudu_1_1client_1_1KuduWriteOperation"><td colspan="2" onclick="javascript:toggleInherit('pub_types_classkudu_1_1client_1_1KuduWriteOperation')"><img src="closed.png" alt="-"/>&#160;Public Types inherited from <a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a></td></tr>
+<tr class="memitem:a87d94ee5801a6b16fc6d1f44ee2e4357 inherit pub_types_classkudu_1_1client_1_1KuduWriteOperation"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a87d94ee5801a6b16fc6d1f44ee2e4357"></a>enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html#a87d94ee5801a6b16fc6d1f44ee2e4357">Type</a> { <b>INSERT</b> = 1, 
+<b>UPDATE</b> = 2, 
+<b>DELETE</b> = 3, 
+<b>UPSERT</b> = 4
+ }<tr class="memdesc:a87d94ee5801a6b16fc6d1f44ee2e4357"><td class="mdescLeft">&#160;</td><td class="mdescRight">Write operation types. <br /></td></tr>
+</td></tr>
+<tr class="separator:a87d94ee5801a6b16fc6d1f44ee2e4357 inherit pub_types_classkudu_1_1client_1_1KuduWriteOperation"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>A single row upsert to be sent to the cluster. </p>
+<p>See <a class="el" href="classkudu_1_1client_1_1KuduInsert.html" title="A single row insert to be sent to the cluster. ">KuduInsert</a> for more details. </p>
+</div><h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a0608280ef5b4eb2a53c0b303db7401c8"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual std::string kudu::client::KuduUpsert::ToString </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p></p>
+<dl class="section return"><dt>Returns</dt><dd>String representation of the operation. </dd></dl>
+
+<p>Implements <a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html#a50b5405c4dfc7af038daa4780aea6e19">kudu::client::KuduWriteOperation</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/kudu/client/<a class="el" href="write__op_8h_source.html">write_op.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduUpsert__coll__graph.map b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduUpsert__coll__graph.map
new file mode 100644
index 0000000..7610447
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduUpsert__coll__graph.map
@@ -0,0 +1,3 @@
+<map id="kudu::client::KuduUpsert" name="kudu::client::KuduUpsert">
+<area shape="rect" id="node2" href="$classkudu_1_1client_1_1KuduWriteOperation.html" title="A single&#45;row write operation to be sent to a Kudu table. " alt="" coords="5,5,220,32"/>
+</map>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduUpsert__coll__graph.md5 b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduUpsert__coll__graph.md5
new file mode 100644
index 0000000..afdfea5
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduUpsert__coll__graph.md5
@@ -0,0 +1 @@
+4503fa4b2afcf197e9d183f0fd9f168b
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduUpsert__coll__graph.png b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduUpsert__coll__graph.png
new file mode 100644
index 0000000..d7700b8
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduUpsert__coll__graph.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduUpsert__inherit__graph.map b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduUpsert__inherit__graph.map
new file mode 100644
index 0000000..7610447
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduUpsert__inherit__graph.map
@@ -0,0 +1,3 @@
+<map id="kudu::client::KuduUpsert" name="kudu::client::KuduUpsert">
+<area shape="rect" id="node2" href="$classkudu_1_1client_1_1KuduWriteOperation.html" title="A single&#45;row write operation to be sent to a Kudu table. " alt="" coords="5,5,220,32"/>
+</map>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduUpsert__inherit__graph.md5 b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduUpsert__inherit__graph.md5
new file mode 100644
index 0000000..afdfea5
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduUpsert__inherit__graph.md5
@@ -0,0 +1 @@
+4503fa4b2afcf197e9d183f0fd9f168b
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduUpsert__inherit__graph.png b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduUpsert__inherit__graph.png
new file mode 100644
index 0000000..d7700b8
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduUpsert__inherit__graph.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduValue-members.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduValue-members.html
new file mode 100644
index 0000000..7abd74d
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduValue-members.html
@@ -0,0 +1,116 @@
+<!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.11"/>
+<title>Kudu C++ client API: Member 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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduValue.html">KuduValue</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">kudu::client::KuduValue Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classkudu_1_1client_1_1KuduValue.html">kudu::client::KuduValue</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduValue.html#a9925b62808b608aa367ac44d2552c6a3">Clone</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduValue.html">kudu::client::KuduValue</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>ComparisonPredicateData</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduValue.html">kudu::client::KuduValue</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduValue.html">kudu::client::KuduValue</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduValue.html#a886211bbe237e0009fb9b89c146f4bfe">CopyString</a>(Slice s)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduValue.html">kudu::client::KuduValue</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>FromBool</b>(bool b) (defined in <a class="el" href="classkudu_1_1client_1_1KuduValue.html">kudu::client::KuduValue</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduValue.html">kudu::client::KuduValue</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>FromDouble</b>(double d) (defined in <a class="el" href="classkudu_1_1client_1_1KuduValue.html">kudu::client::KuduValue</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduValue.html">kudu::client::KuduValue</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>FromFloat</b>(float f) (defined in <a class="el" href="classkudu_1_1client_1_1KuduValue.html">kudu::client::KuduValue</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduValue.html">kudu::client::KuduValue</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>FromInt</b>(int64_t val) (defined in <a class="el" href="classkudu_1_1client_1_1KuduValue.html">kudu::client::KuduValue</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduValue.html">kudu::client::KuduValue</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>InListPredicateData</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduValue.html">kudu::client::KuduValue</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduValue.html">kudu::client::KuduValue</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>KuduColumnSpec</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduValue.html">kudu::client::KuduValue</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduValue.html">kudu::client::KuduValue</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>~KuduValue</b>() (defined in <a class="el" href="classkudu_1_1client_1_1KuduValue.html">kudu::client::KuduValue</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduValue.html">kudu::client::KuduValue</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduValue.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduValue.html
new file mode 100644
index 0000000..bdfd50b
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduValue.html
@@ -0,0 +1,212 @@
+<!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.11"/>
+<title>Kudu C++ client API: kudu::client::KuduValue Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduValue.html">KuduValue</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
+<a href="#friends">Friends</a> &#124;
+<a href="classkudu_1_1client_1_1KuduValue-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">kudu::client::KuduValue Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>A constant cell value with a specific type.  
+ <a href="classkudu_1_1client_1_1KuduValue.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="value_8h_source.html">value.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a9925b62808b608aa367ac44d2552c6a3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduValue.html">KuduValue</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduValue.html#a9925b62808b608aa367ac44d2552c6a3">Clone</a> () const </td></tr>
+<tr class="separator:a9925b62808b608aa367ac44d2552c6a3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
+Static Public Member Functions</h2></td></tr>
+<tr class="memitem:a886211bbe237e0009fb9b89c146f4bfe"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classkudu_1_1client_1_1KuduValue.html">KuduValue</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduValue.html#a886211bbe237e0009fb9b89c146f4bfe">CopyString</a> (<a class="el" href="classkudu_1_1Slice.html">Slice</a> s)</td></tr>
+<tr class="separator:a886211bbe237e0009fb9b89c146f4bfe"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr><td colspan="2"><div class="groupHeader">Builders from integral types.</div></td></tr>
+<tr><td colspan="2"><div class="groupText"><p>Construct a <a class="el" href="classkudu_1_1client_1_1KuduValue.html" title="A constant cell value with a specific type. ">KuduValue</a> object from the given value of integral type.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">val</td><td>The value to build the <a class="el" href="classkudu_1_1client_1_1KuduValue.html" title="A constant cell value with a specific type. ">KuduValue</a> from. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>A new <a class="el" href="classkudu_1_1client_1_1KuduValue.html" title="A constant cell value with a specific type. ">KuduValue</a> object. </dd></dl>
+</div></td></tr>
+<tr class="memitem:ada685c0346016968a6677e3694568302"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ada685c0346016968a6677e3694568302"></a>
+static <a class="el" href="classkudu_1_1client_1_1KuduValue.html">KuduValue</a> *&#160;</td><td class="memItemRight" valign="bottom"><b>FromInt</b> (int64_t val)</td></tr>
+<tr class="separator:ada685c0346016968a6677e3694568302"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3469831efbab8638dc472a83ea80a9f0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3469831efbab8638dc472a83ea80a9f0"></a>
+static <a class="el" href="classkudu_1_1client_1_1KuduValue.html">KuduValue</a> *&#160;</td><td class="memItemRight" valign="bottom"><b>FromFloat</b> (float f)</td></tr>
+<tr class="separator:a3469831efbab8638dc472a83ea80a9f0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad03d0e5a03f349f1928f2082850439cb"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad03d0e5a03f349f1928f2082850439cb"></a>
+static <a class="el" href="classkudu_1_1client_1_1KuduValue.html">KuduValue</a> *&#160;</td><td class="memItemRight" valign="bottom"><b>FromDouble</b> (double d)</td></tr>
+<tr class="separator:ad03d0e5a03f349f1928f2082850439cb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9e97771cfd494721715329df4915e943"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9e97771cfd494721715329df4915e943"></a>
+static <a class="el" href="classkudu_1_1client_1_1KuduValue.html">KuduValue</a> *&#160;</td><td class="memItemRight" valign="bottom"><b>FromBool</b> (bool b)</td></tr>
+<tr class="separator:a9e97771cfd494721715329df4915e943"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
+Friends</h2></td></tr>
+<tr class="memitem:a35d8875275f641cca07004f04ccf34f3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a35d8875275f641cca07004f04ccf34f3"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>ComparisonPredicateData</b></td></tr>
+<tr class="separator:a35d8875275f641cca07004f04ccf34f3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a49c2d34d11653cac56bc8c33d15b09e4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a49c2d34d11653cac56bc8c33d15b09e4"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>InListPredicateData</b></td></tr>
+<tr class="separator:a49c2d34d11653cac56bc8c33d15b09e4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2e6c5f4ca00ab2d2d3e227bf22a7f111"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2e6c5f4ca00ab2d2d3e227bf22a7f111"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>KuduColumnSpec</b></td></tr>
+<tr class="separator:a2e6c5f4ca00ab2d2d3e227bf22a7f111"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>A constant cell value with a specific type. </p>
+</div><h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a9925b62808b608aa367ac44d2552c6a3"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduValue.html">KuduValue</a>* kudu::client::KuduValue::Clone </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd>A new identical <a class="el" href="classkudu_1_1client_1_1KuduValue.html" title="A constant cell value with a specific type. ">KuduValue</a> object. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a886211bbe237e0009fb9b89c146f4bfe"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">static <a class="el" href="classkudu_1_1client_1_1KuduValue.html">KuduValue</a>* kudu::client::KuduValue::CopyString </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classkudu_1_1Slice.html">Slice</a>&#160;</td>
+          <td class="paramname"><em>s</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Construct a <a class="el" href="classkudu_1_1client_1_1KuduValue.html" title="A constant cell value with a specific type. ">KuduValue</a> by copying the value of the given <a class="el" href="classkudu_1_1Slice.html" title="A wrapper around externally allocated data. ">Slice</a>.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">s</td><td>The slice to copy value from. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>A new <a class="el" href="classkudu_1_1client_1_1KuduValue.html" title="A constant cell value with a specific type. ">KuduValue</a> object. </dd></dl>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/kudu/client/<a class="el" href="value_8h_source.html">value.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduWriteOperation-members.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduWriteOperation-members.html
new file mode 100644
index 0000000..f1a8af5
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduWriteOperation-members.html
@@ -0,0 +1,118 @@
+<!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.11"/>
+<title>Kudu C++ client API: Member 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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">KuduWriteOperation</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">kudu::client::KuduWriteOperation Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a>, including all inherited members.</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>DELETE</b> enum value (defined in <a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>INSERT</b> enum value (defined in <a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>internal::Batcher</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>internal::ErrorCollector</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>internal::WriteRpc</b> (defined in <a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html#a8889770ce62e2ca0ce5d55c9c90af6bc">mutable_row</a>()</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html#a973b342ced786b23754b57fd83b34aa3">row</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html#a50b5405c4dfc7af038daa4780aea6e19">ToString</a>() const =0</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html#a87d94ee5801a6b16fc6d1f44ee2e4357">Type</a> enum name</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>UPDATE</b> enum value (defined in <a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>UPSERT</b> enum value (defined in <a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>~KuduWriteOperation</b>() (defined in <a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+</table></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduWriteOperation.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduWriteOperation.html
new file mode 100644
index 0000000..7734352
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduWriteOperation.html
@@ -0,0 +1,240 @@
+<!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.11"/>
+<title>Kudu C++ client API: kudu::client::KuduWriteOperation Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html">KuduWriteOperation</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-types">Public Types</a> &#124;
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#friends">Friends</a> &#124;
+<a href="classkudu_1_1client_1_1KuduWriteOperation-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">kudu::client::KuduWriteOperation Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>A single-row write operation to be sent to a Kudu table.  
+ <a href="classkudu_1_1client_1_1KuduWriteOperation.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="write__op_8h_source.html">write_op.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for kudu::client::KuduWriteOperation:</div>
+<div class="dyncontent">
+<div class="center"><img src="classkudu_1_1client_1_1KuduWriteOperation__inherit__graph.png" border="0" usemap="#kudu_1_1client_1_1KuduWriteOperation_inherit__map" alt="Inheritance graph"/></div>
+<map name="kudu_1_1client_1_1KuduWriteOperation_inherit__map" id="kudu_1_1client_1_1KuduWriteOperation_inherit__map">
+<area shape="rect" id="node2" href="classkudu_1_1client_1_1KuduDelete.html" title="A single row delete to be sent to the cluster. " alt="" coords="270,5,435,32"/>
+<area shape="rect" id="node3" href="classkudu_1_1client_1_1KuduInsert.html" title="A single row insert to be sent to the cluster. " alt="" coords="273,56,433,83"/>
+<area shape="rect" id="node4" href="classkudu_1_1client_1_1KuduUpdate.html" title="A single row update to be sent to the cluster. " alt="" coords="268,107,437,133"/>
+<area shape="rect" id="node5" href="classkudu_1_1client_1_1KuduUpsert.html" title="A single row upsert to be sent to the cluster. " alt="" coords="269,157,436,184"/>
+</map>
+<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
+Public Types</h2></td></tr>
+<tr class="memitem:a87d94ee5801a6b16fc6d1f44ee2e4357"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a87d94ee5801a6b16fc6d1f44ee2e4357"></a>enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html#a87d94ee5801a6b16fc6d1f44ee2e4357">Type</a> { <b>INSERT</b> = 1, 
+<b>UPDATE</b> = 2, 
+<b>DELETE</b> = 3, 
+<b>UPSERT</b> = 4
+ }<tr class="memdesc:a87d94ee5801a6b16fc6d1f44ee2e4357"><td class="mdescLeft">&#160;</td><td class="mdescRight">Write operation types. <br /></td></tr>
+</td></tr>
+<tr class="separator:a87d94ee5801a6b16fc6d1f44ee2e4357"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a973b342ced786b23754b57fd83b34aa3"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html#a973b342ced786b23754b57fd83b34aa3">row</a> () const </td></tr>
+<tr class="separator:a973b342ced786b23754b57fd83b34aa3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8889770ce62e2ca0ce5d55c9c90af6bc"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html#a8889770ce62e2ca0ce5d55c9c90af6bc">mutable_row</a> ()</td></tr>
+<tr class="separator:a8889770ce62e2ca0ce5d55c9c90af6bc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a50b5405c4dfc7af038daa4780aea6e19"><td class="memItemLeft" align="right" valign="top">virtual std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html#a50b5405c4dfc7af038daa4780aea6e19">ToString</a> () const =0</td></tr>
+<tr class="separator:a50b5405c4dfc7af038daa4780aea6e19"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
+Friends</h2></td></tr>
+<tr class="memitem:ada57057f15990c8cc54770c782fa9ad4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ada57057f15990c8cc54770c782fa9ad4"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>internal::Batcher</b></td></tr>
+<tr class="separator:ada57057f15990c8cc54770c782fa9ad4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8241e8597925b7121abc27b5024c9773"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8241e8597925b7121abc27b5024c9773"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>internal::WriteRpc</b></td></tr>
+<tr class="separator:a8241e8597925b7121abc27b5024c9773"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a13cd21cbf8fb61eb49faa404b75f6851"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a13cd21cbf8fb61eb49faa404b75f6851"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>internal::ErrorCollector</b></td></tr>
+<tr class="separator:a13cd21cbf8fb61eb49faa404b75f6851"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>A single-row write operation to be sent to a Kudu table. </p>
+<p>This is the abstract base class from which the particular row operations (<a class="el" href="classkudu_1_1client_1_1KuduInsert.html" title="A single row insert to be sent to the cluster. ">KuduInsert</a>, <a class="el" href="classkudu_1_1client_1_1KuduUpdate.html" title="A single row update to be sent to the cluster. ">KuduUpdate</a>, etc) are derived. These subclasses are instantiated by <a class="el" href="classkudu_1_1client_1_1KuduTable.html#a0c78f86c5d0fbf53437c2c9db26f92b6">KuduTable::NewInsert()</a>, etc.</p>
+<p>The row key, as well as the columns to be inserted or updated are set using the embedded <a class="el" href="classKuduPartialRow.html" title="A row which may only contain values for a subset of the columns. ">KuduPartialRow</a> object accessible via <a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html#a8889770ce62e2ca0ce5d55c9c90af6bc">mutable_row()</a>.</p>
+<p>Typical usage example: </p><div class="fragment"><div class="line">KuduInsert* t = table-&gt;NewInsert();</div><div class="line"><a class="code" href="status_8h.html#ac503ba85e942147294cdc82087da60f6">KUDU_CHECK_OK</a>(t-&gt;mutable_row()-&gt;SetInt32(<span class="stringliteral">&quot;key&quot;</span>, 1234));</div><div class="line"><a class="code" href="status_8h.html#ac503ba85e942147294cdc82087da60f6">KUDU_CHECK_OK</a>(t-&gt;mutable_row()-&gt;SetStringCopy(<span class="stringliteral">&quot;foo&quot;</span>, <span class="stringliteral">&quot;bar&quot;</span>));</div><div class="line">session-&gt;Apply(t);</div></div><!-- fragment --> </div><h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a8889770ce62e2ca0ce5d55c9c90af6bc"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>* kudu::client::KuduWriteOperation::mutable_row </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<dl class="section note"><dt>Note</dt><dd>To work with a row, use the <a class="el" href="classKuduPartialRow.html" title="A row which may only contain values for a subset of the columns. ">KuduPartialRow</a> API for field setters, etc. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>Pointer to the corresponding row-like object. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a973b342ced786b23754b57fd83b34aa3"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">const <a class="el" href="classKuduPartialRow.html">KuduPartialRow</a>&amp; kudu::client::KuduWriteOperation::row </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<dl class="section note"><dt>Note</dt><dd>To work with a row, use the <a class="el" href="classKuduPartialRow.html" title="A row which may only contain values for a subset of the columns. ">KuduPartialRow</a> API for field getters, etc. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>Immutable reference to the corresponding row-like object. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a50b5405c4dfc7af038daa4780aea6e19"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual std::string kudu::client::KuduWriteOperation::ToString </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd>String representation of the operation. </dd></dl>
+
+<p>Implemented in <a class="el" href="classkudu_1_1client_1_1KuduDelete.html#a586dc46e1d10118465e3b834ac578de0">kudu::client::KuduDelete</a>, <a class="el" href="classkudu_1_1client_1_1KuduUpdate.html#af05d202ea529554b6d033d51ec942718">kudu::client::KuduUpdate</a>, <a class="el" href="classkudu_1_1client_1_1KuduUpsert.html#a0608280ef5b4eb2a53c0b303db7401c8">kudu::client::KuduUpsert</a>, and <a class="el" href="classkudu_1_1client_1_1KuduInsert.html#a7c0fb45a5bfa96574b6328be392ba240">kudu::client::KuduInsert</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/kudu/client/<a class="el" href="write__op_8h_source.html">write_op.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduWriteOperation__inherit__graph.map b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduWriteOperation__inherit__graph.map
new file mode 100644
index 0000000..f8c7f46
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduWriteOperation__inherit__graph.map
@@ -0,0 +1,6 @@
+<map id="kudu::client::KuduWriteOperation" name="kudu::client::KuduWriteOperation">
+<area shape="rect" id="node2" href="$classkudu_1_1client_1_1KuduDelete.html" title="A single row delete to be sent to the cluster. " alt="" coords="270,5,435,32"/>
+<area shape="rect" id="node3" href="$classkudu_1_1client_1_1KuduInsert.html" title="A single row insert to be sent to the cluster. " alt="" coords="273,56,433,83"/>
+<area shape="rect" id="node4" href="$classkudu_1_1client_1_1KuduUpdate.html" title="A single row update to be sent to the cluster. " alt="" coords="268,107,437,133"/>
+<area shape="rect" id="node5" href="$classkudu_1_1client_1_1KuduUpsert.html" title="A single row upsert to be sent to the cluster. " alt="" coords="269,157,436,184"/>
+</map>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduWriteOperation__inherit__graph.md5 b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduWriteOperation__inherit__graph.md5
new file mode 100644
index 0000000..16ae3f2
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduWriteOperation__inherit__graph.md5
@@ -0,0 +1 @@
+07a7cf9348501c1d3ecabbe71f433ff4
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduWriteOperation__inherit__graph.png b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduWriteOperation__inherit__graph.png
new file mode 100644
index 0000000..4741352
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1KuduWriteOperation__inherit__graph.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1ResourceMetrics-members.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1ResourceMetrics-members.html
new file mode 100644
index 0000000..71a4d8b
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1ResourceMetrics-members.html
@@ -0,0 +1,111 @@
+<!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.11"/>
+<title>Kudu C++ client API: Member 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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1ResourceMetrics.html">ResourceMetrics</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">kudu::client::ResourceMetrics Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classkudu_1_1client_1_1ResourceMetrics.html">kudu::client::ResourceMetrics</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1ResourceMetrics.html#a1161841400ff4fcee5f2a278813e2db2">Get</a>() const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1ResourceMetrics.html">kudu::client::ResourceMetrics</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1ResourceMetrics.html#a21818e1e42dcc0f7abcdc80c5487b1da">GetMetric</a>(const std::string &amp;name) const </td><td class="entry"><a class="el" href="classkudu_1_1client_1_1ResourceMetrics.html">kudu::client::ResourceMetrics</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1ResourceMetrics.html#ae7b5f6021f63c25bbd087ba2cf48dc8a">Increment</a>(const std::string &amp;name, int64_t amount)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1ResourceMetrics.html">kudu::client::ResourceMetrics</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>ResourceMetrics</b>() (defined in <a class="el" href="classkudu_1_1client_1_1ResourceMetrics.html">kudu::client::ResourceMetrics</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1ResourceMetrics.html">kudu::client::ResourceMetrics</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~ResourceMetrics</b>() (defined in <a class="el" href="classkudu_1_1client_1_1ResourceMetrics.html">kudu::client::ResourceMetrics</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1ResourceMetrics.html">kudu::client::ResourceMetrics</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1ResourceMetrics.html b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1ResourceMetrics.html
new file mode 100644
index 0000000..08e9fb4
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1client_1_1ResourceMetrics.html
@@ -0,0 +1,201 @@
+<!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.11"/>
+<title>Kudu C++ client API: kudu::client::ResourceMetrics Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1ResourceMetrics.html">ResourceMetrics</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="classkudu_1_1client_1_1ResourceMetrics-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">kudu::client::ResourceMetrics Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>A generic catalog of simple metrics.  
+ <a href="classkudu_1_1client_1_1ResourceMetrics.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="resource__metrics_8h_source.html">resource_metrics.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a1161841400ff4fcee5f2a278813e2db2"><td class="memItemLeft" align="right" valign="top">std::map&lt; std::string, int64_t &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1ResourceMetrics.html#a1161841400ff4fcee5f2a278813e2db2">Get</a> () const </td></tr>
+<tr class="separator:a1161841400ff4fcee5f2a278813e2db2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae7b5f6021f63c25bbd087ba2cf48dc8a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1ResourceMetrics.html#ae7b5f6021f63c25bbd087ba2cf48dc8a">Increment</a> (const std::string &amp;name, int64_t amount)</td></tr>
+<tr class="separator:ae7b5f6021f63c25bbd087ba2cf48dc8a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a21818e1e42dcc0f7abcdc80c5487b1da"><td class="memItemLeft" align="right" valign="top">int64_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1ResourceMetrics.html#a21818e1e42dcc0f7abcdc80c5487b1da">GetMetric</a> (const std::string &amp;name) const </td></tr>
+<tr class="separator:a21818e1e42dcc0f7abcdc80c5487b1da"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>A generic catalog of simple metrics. </p>
+</div><h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a1161841400ff4fcee5f2a278813e2db2"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::map&lt;std::string, int64_t&gt; kudu::client::ResourceMetrics::Get </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd>A map that contains all metrics, its key is the metric name and its value is corresponding metric count. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a21818e1e42dcc0f7abcdc80c5487b1da"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">int64_t kudu::client::ResourceMetrics::GetMetric </td>
+          <td>(</td>
+          <td class="paramtype">const std::string &amp;&#160;</td>
+          <td class="paramname"><em>name</em></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Get current count for the specified metric.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">name</td><td>Name of the metric in question. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>The metric's current count. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ae7b5f6021f63c25bbd087ba2cf48dc8a"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void kudu::client::ResourceMetrics::Increment </td>
+          <td>(</td>
+          <td class="paramtype">const std::string &amp;&#160;</td>
+          <td class="paramname"><em>name</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">int64_t&#160;</td>
+          <td class="paramname"><em>amount</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Increment/decrement the given metric.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">name</td><td>The name of the metric. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">amount</td><td>The amount to increment the metric (negative <code>amount</code> corresponds to decrementing the metric). </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/kudu/client/<a class="el" href="resource__metrics_8h_source.html">resource_metrics.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1internal__logging_1_1CerrLog-members.html b/releases/1.4.0/cpp-client-api/classkudu_1_1internal__logging_1_1CerrLog-members.html
new file mode 100644
index 0000000..1bd7bba
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1internal__logging_1_1CerrLog-members.html
@@ -0,0 +1,109 @@
+<!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.11"/>
+<title>Kudu C++ client API: Member 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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>internal_logging</b></li><li class="navelem"><a class="el" href="classkudu_1_1internal__logging_1_1CerrLog.html">CerrLog</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">kudu::internal_logging::CerrLog Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classkudu_1_1internal__logging_1_1CerrLog.html">kudu::internal_logging::CerrLog</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1internal__logging_1_1CerrLog.html#ac3773ad2825d82f91ea65109f2def713">CerrLog</a>(int severity)</td><td class="entry"><a class="el" href="classkudu_1_1internal__logging_1_1CerrLog.html">kudu::internal_logging::CerrLog</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1internal__logging_1_1CerrLog.html#a9febb74005a76f9b203e9718275ab724">operator&lt;&lt;</a>(const T &amp;t)</td><td class="entry"><a class="el" href="classkudu_1_1internal__logging_1_1CerrLog.html">kudu::internal_logging::CerrLog</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~CerrLog</b>() (defined in <a class="el" href="classkudu_1_1internal__logging_1_1CerrLog.html">kudu::internal_logging::CerrLog</a>)</td><td class="entry"><a class="el" href="classkudu_1_1internal__logging_1_1CerrLog.html">kudu::internal_logging::CerrLog</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+</table></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1internal__logging_1_1CerrLog.html b/releases/1.4.0/cpp-client-api/classkudu_1_1internal__logging_1_1CerrLog.html
new file mode 100644
index 0000000..ab7c5c3
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1internal__logging_1_1CerrLog.html
@@ -0,0 +1,192 @@
+<!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.11"/>
+<title>Kudu C++ client API: kudu::internal_logging::CerrLog Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>internal_logging</b></li><li class="navelem"><a class="el" href="classkudu_1_1internal__logging_1_1CerrLog.html">CerrLog</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="classkudu_1_1internal__logging_1_1CerrLog-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">kudu::internal_logging::CerrLog Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>A helper for stderr log sink.  
+ <a href="classkudu_1_1internal__logging_1_1CerrLog.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="stubs_8h_source.html">stubs.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:ac3773ad2825d82f91ea65109f2def713"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1internal__logging_1_1CerrLog.html#ac3773ad2825d82f91ea65109f2def713">CerrLog</a> (int severity)</td></tr>
+<tr class="separator:ac3773ad2825d82f91ea65109f2def713"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9febb74005a76f9b203e9718275ab724"><td class="memTemplParams" colspan="2">template&lt;class T &gt; </td></tr>
+<tr class="memitem:a9febb74005a76f9b203e9718275ab724"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1internal__logging_1_1CerrLog.html">CerrLog</a> &amp;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classkudu_1_1internal__logging_1_1CerrLog.html#a9febb74005a76f9b203e9718275ab724">operator&lt;&lt;</a> (const T &amp;t)</td></tr>
+<tr class="separator:a9febb74005a76f9b203e9718275ab724"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>A helper for stderr log sink. </p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="ac3773ad2825d82f91ea65109f2def713"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">kudu::internal_logging::CerrLog::CerrLog </td>
+          <td>(</td>
+          <td class="paramtype">int&#160;</td>
+          <td class="paramname"><em>severity</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Create a <a class="el" href="classkudu_1_1internal__logging_1_1CerrLog.html" title="A helper for stderr log sink. ">CerrLog</a> sink helper object.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">severity</td><td>The severity for log messages output to the sink (stderr). </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a9febb74005a76f9b203e9718275ab724"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class T &gt; </div>
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1internal__logging_1_1CerrLog.html">CerrLog</a>&amp; kudu::internal_logging::CerrLog::operator&lt;&lt; </td>
+          <td>(</td>
+          <td class="paramtype">const T &amp;&#160;</td>
+          <td class="paramname"><em>t</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>The output operator.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">t</td><td>The object to print into stderr. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Reference to the updated object. </dd></dl>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/kudu/client/<a class="el" href="stubs_8h_source.html">stubs.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1internal__logging_1_1NullLog-members.html b/releases/1.4.0/cpp-client-api/classkudu_1_1internal__logging_1_1NullLog-members.html
new file mode 100644
index 0000000..3ecb1a0
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1internal__logging_1_1NullLog-members.html
@@ -0,0 +1,107 @@
+<!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.11"/>
+<title>Kudu C++ client API: Member 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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>internal_logging</b></li><li class="navelem"><a class="el" href="classkudu_1_1internal__logging_1_1NullLog.html">NullLog</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">kudu::internal_logging::NullLog Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classkudu_1_1internal__logging_1_1NullLog.html">kudu::internal_logging::NullLog</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1internal__logging_1_1NullLog.html#abe50abde8e4af12413c99f437094dc8a">operator&lt;&lt;</a>(const T &amp;t)</td><td class="entry"><a class="el" href="classkudu_1_1internal__logging_1_1NullLog.html">kudu::internal_logging::NullLog</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+</table></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/classkudu_1_1internal__logging_1_1NullLog.html b/releases/1.4.0/cpp-client-api/classkudu_1_1internal__logging_1_1NullLog.html
new file mode 100644
index 0000000..268edc0
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/classkudu_1_1internal__logging_1_1NullLog.html
@@ -0,0 +1,159 @@
+<!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.11"/>
+<title>Kudu C++ client API: kudu::internal_logging::NullLog Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><b>internal_logging</b></li><li class="navelem"><a class="el" href="classkudu_1_1internal__logging_1_1NullLog.html">NullLog</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="classkudu_1_1internal__logging_1_1NullLog-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">kudu::internal_logging::NullLog Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>A helper for the nil log sink.  
+ <a href="classkudu_1_1internal__logging_1_1NullLog.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="stubs_8h_source.html">stubs.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:abe50abde8e4af12413c99f437094dc8a"><td class="memTemplParams" colspan="2">template&lt;class T &gt; </td></tr>
+<tr class="memitem:abe50abde8e4af12413c99f437094dc8a"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1internal__logging_1_1NullLog.html">NullLog</a> &amp;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classkudu_1_1internal__logging_1_1NullLog.html#abe50abde8e4af12413c99f437094dc8a">operator&lt;&lt;</a> (const T &amp;t)</td></tr>
+<tr class="separator:abe50abde8e4af12413c99f437094dc8a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>A helper for the nil log sink. </p>
+<p>Using this helper is analogous to sending log messages to /dev/null: nothing gets logged. </p>
+</div><h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="abe50abde8e4af12413c99f437094dc8a"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class T &gt; </div>
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1internal__logging_1_1NullLog.html">NullLog</a>&amp; kudu::internal_logging::NullLog::operator&lt;&lt; </td>
+          <td>(</td>
+          <td class="paramtype">const T &amp;&#160;</td>
+          <td class="paramname"><em>t</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>The no-op output operator.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">t</td><td>The object to send into the nil sink. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Reference to the updated object. </dd></dl>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/kudu/client/<a class="el" href="stubs_8h_source.html">stubs.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/client_8h_source.html b/releases/1.4.0/cpp-client-api/client_8h_source.html
new file mode 100644
index 0000000..542d65b
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/client_8h_source.html
@@ -0,0 +1,151 @@
+<!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.11"/>
+<title>Kudu C++ client API: include/kudu/client/client.h Source File</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="files.html"><span>File&#160;List</span></a></li>
+      <li><a href="globals.html"><span>File&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_58b01e52e53886b8d78ab5060a2cd2bd.html">kudu</a></li><li class="navelem"><a class="el" href="dir_4eb331d85bb84eae27db9d0af49f6f99.html">client</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<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&quot;); 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 class="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 class="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;<span class="keyword">class </span>SecurityUnknownTskTest;</div><div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;</div><div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;<span class="keyword">namespace </span>tools {</div><div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;<span class="keyword">class </span>LeaderMasterProxy;</div><div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;} <span class="comment">// namespace tools</span></div><div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;</div><div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;<span class="keyword">namespace </span>client {</div><div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;</div><div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;<span class="keyword">class </span>KuduLoggingCallback;</div><div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;<span class="keyword">class </span>KuduPartitioner;</div><div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;<span class="keyword">class </span>KuduScanToken;</div><div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;<span class="keyword">class </span>KuduSession;</div><div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;<span class="keyword">class </span>KuduStatusCallback;</div><div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;<span class="keyword">class </span>KuduTable;</div><div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;<span class="keyword">class </span>KuduTableAlterer;</div><div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;<span class="keyword">class </span>KuduTableCreator;</div><div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;<span class="keyword">class </span>KuduTablet;</div><div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;<span class="keyword">class </span>KuduTabletServer;</div><div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;<span class="keyword">class </span>KuduValue;</div><div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;<span class="keyword">class </span>KuduWriteOperation;</div><div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;</div><div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;<span class="keyword">namespace </span>internal {</div><div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;<span class="keyword">class </span>Batcher;</div><div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;<span class="keyword">class </span>ErrorCollector;</div><div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;<span class="keyword">class </span>GetTableSchemaRpc;</div><div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;<span class="keyword">class </span>LookupRpc;</div><div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;<span class="keyword">class </span>MetaCache;</div><div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;<span class="keyword">class </span>RemoteTablet;</div><div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;<span class="keyword">class </span>RemoteTabletServer;</div><div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;<span class="keyword">class </span>WriteRpc;</div><div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;} <span class="comment">// namespace internal</span></div><div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;</div><div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;<span class="keywordtype">void</span> KUDU_EXPORT InstallLoggingCallback(KuduLoggingCallback* cb);</div><div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;</div><div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;<span class="keywordtype">void</span> KUDU_EXPORT UninstallLoggingCallback();</div><div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;</div><div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;<span class="keywordtype">void</span> KUDU_EXPORT SetVerboseLogLevel(<span class="keywordtype">int</span> level);</div><div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;</div><div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;Status KUDU_EXPORT SetInternalSignalNumber(<span class="keywordtype">int</span> signum);</div><div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;</div><div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;Status KUDU_EXPORT DisableSaslInitialization();</div><div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;</div><div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;</div><div class="line"><a name="l00173"></a><span class="lineno">  173</span>&#160;Status KUDU_EXPORT DisableOpenSSLInitialization();</div><div class="line"><a name="l00174"></a><span class="lineno">  174</span>&#160;</div><div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160;std::string KUDU_EXPORT GetShortVersionString();</div><div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;</div><div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;std::string KUDU_EXPORT GetAllVersionInfo();</div><div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;</div><div class="line"><a name="l00187"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduClientBuilder.html">  187</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="l00188"></a><span class="lineno">  188</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a>();</div><div class="line"><a name="l00190"></a><span class="lineno">  190</span>&#160;  ~<a class="code" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a>();</div><div class="line"><a name="l00191"></a><span class="lineno">  191</span>&#160;</div><div class="line"><a name="l00195"></a><span class="lineno">  195</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="l00196"></a><span class="lineno">  196</span>&#160;</div><div class="line"><a name="l00202"></a><span class="lineno">  202</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="l00203"></a><span class="lineno">  203</span>&#160;</div><div class="line"><a name="l00211"></a><span class="lineno">  211</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="l00212"></a><span class="lineno">  212</span>&#160;</div><div class="line"><a name="l00222"></a><span class="lineno">  222</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="l00223"></a><span class="lineno">  223</span>&#160;</div><div class="line"><a name="l00231"></a><span class="lineno">  231</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="l00232"></a><span class="lineno">  232</span>&#160;</div><div class="line"><a name="l00240"></a><span class="lineno">  240</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a>&amp; import_authentication_credentials(std::string authn_creds);</div><div class="line"><a name="l00241"></a><span class="lineno">  241</span>&#160;</div><div class="line"><a name="l00252"></a><span class="lineno">  252</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> Build(sp::shared_ptr&lt;KuduClient&gt;* client);</div><div class="line"><a name="l00253"></a><span class="lineno">  253</span>&#160;</div><div class="line"><a name="l00254"></a><span class="lineno">  254</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00255"></a><span class="lineno">  255</span>&#160;  <span class="keyword">class </span>KUDU_NO_EXPORT Data;</div><div class="line"><a name="l00256"></a><span class="lineno">  256</span>&#160;</div><div class="line"><a name="l00257"></a><span class="lineno">  257</span>&#160;  <span class="comment">// Owned.</span></div><div class="line"><a name="l00258"></a><span class="lineno">  258</span>&#160;  Data* data_;</div><div class="line"><a name="l00259"></a><span class="lineno">  259</span>&#160;</div><div class="line"><a name="l00260"></a><span class="lineno">  260</span>&#160;  DISALLOW_COPY_AND_ASSIGN(<a class="code" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a>);</div><div class="line"><a name="l00261"></a><span class="lineno">  261</span>&#160;};</div><div class="line"><a name="l00262"></a><span class="lineno">  262</span>&#160;</div><div class="line"><a name="l00289"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduClient.html">  289</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="l00290"></a><span class="lineno">  290</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00291"></a><span class="lineno">  291</span>&#160;  ~<a class="code" href="classkudu_1_1client_1_1KuduClient.html">KuduClient</a>();</div><div class="line"><a name="l00292"></a><span class="lineno">  292</span>&#160;</div><div class="line"><a name="l00297"></a><span class="lineno">  297</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduTableCreator.html">KuduTableCreator</a>* NewTableCreator();</div><div class="line"><a name="l00298"></a><span class="lineno">  298</span>&#160;</div><div class="line"><a name="l00307"></a><span class="lineno">  307</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="l00308"></a><span class="lineno">  308</span>&#160;                                 <span class="keywordtype">bool</span> *create_in_progress);</div><div class="line"><a name="l00309"></a><span class="lineno">  309</span>&#160;</div><div class="line"><a name="l00315"></a><span class="lineno">  315</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="l00316"></a><span class="lineno">  316</span>&#160;</div><div class="line"><a name="l00323"></a><span class="lineno">  323</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="l00324"></a><span class="lineno">  324</span>&#160;</div><div class="line"><a name="l00333"></a><span class="lineno">  333</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="l00334"></a><span class="lineno">  334</span>&#160;                                <span class="keywordtype">bool</span> *alter_in_progress);</div><div class="line"><a name="l00342"></a><span class="lineno">  342</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="l00343"></a><span class="lineno">  343</span>&#160;                        <a class="code" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a>* schema);</div><div class="line"><a name="l00344"></a><span class="lineno">  344</span>&#160;</div><div class="line"><a name="l00351"></a><span class="lineno">  351</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="l00352"></a><span class="lineno">  352</span>&#160;</div><div class="line"><a name="l00360"></a><span class="lineno">  360</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="l00361"></a><span class="lineno">  361</span>&#160;                    <span class="keyword">const</span> std::string&amp; filter = <span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l00362"></a><span class="lineno">  362</span>&#160;</div><div class="line"><a name="l00370"></a><span class="lineno">  370</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="l00371"></a><span class="lineno">  371</span>&#160;</div><div class="line"><a name="l00388"></a><span class="lineno">  388</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="l00389"></a><span class="lineno">  389</span>&#160;                   sp::shared_ptr&lt;KuduTable&gt;* table);</div><div class="line"><a name="l00390"></a><span class="lineno">  390</span>&#160;</div><div class="line"><a name="l00396"></a><span class="lineno">  396</span>&#160;  sp::shared_ptr&lt;KuduSession&gt; NewSession();</div><div class="line"><a name="l00397"></a><span class="lineno">  397</span>&#160;</div><div class="line"><a name="l00399"></a><span class="lineno">  399</span>&#160;</div><div class="line"><a name="l00412"></a><span class="lineno">  412</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="l00413"></a><span class="lineno">  413</span>&#160;                                  <a class="code" href="classkudu_1_1client_1_1KuduTablet.html">KuduTablet</a>** tablet);</div><div class="line"><a name="l00414"></a><span class="lineno">  414</span>&#160;</div><div class="line"><a name="l00416"></a><span class="lineno">  416</span>&#160;</div><div class="line"><a name="l00418"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11a">  418</a></span>&#160;  <span class="keyword">enum</span> <a class="code" href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11a">ReplicaSelection</a> {</div><div class="line"><a name="l00419"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11aafb912836db348061379d0e0a9055e239">  419</a></span>&#160;    <a class="code" href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11aafb912836db348061379d0e0a9055e239">LEADER_ONLY</a>,      </div><div class="line"><a name="l00420"></a><span class="lineno">  420</span>&#160;</div><div class="line"><a name="l00421"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11aa801886067da41dacd0c9c2b8091f08d8">  421</a></span>&#160;    CLOSEST_REPLICA,  </div><div class="line"><a name="l00422"></a><span class="lineno">  422</span>&#160;</div><div class="line"><a name="l00424"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11aaa060fb6126a3e3fa80079f885dc7d48f">  424</a></span>&#160;    FIRST_REPLICA     </div><div class="line"><a name="l00425"></a><span class="lineno">  425</span>&#160;  };</div><div class="line"><a name="l00426"></a><span class="lineno">  426</span>&#160;</div><div class="line"><a name="l00429"></a><span class="lineno">  429</span>&#160;  <span class="keywordtype">bool</span> IsMultiMaster() <span class="keyword">const</span>;</div><div class="line"><a name="l00430"></a><span class="lineno">  430</span>&#160;</div><div class="line"><a name="l00432"></a><span class="lineno">  432</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="l00433"></a><span class="lineno">  433</span>&#160;</div><div class="line"><a name="l00435"></a><span class="lineno">  435</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="l00436"></a><span class="lineno">  436</span>&#160;</div><div class="line"><a name="l00439"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduClient.html#a196f1a18c000cdca309d05161caaddaa">  439</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="l00440"></a><span class="lineno">  440</span>&#160;</div><div class="line"><a name="l00480"></a><span class="lineno">  480</span>&#160;  uint64_t GetLatestObservedTimestamp() <span class="keyword">const</span>;</div><div class="line"><a name="l00481"></a><span class="lineno">  481</span>&#160;</div><div class="line"><a name="l00496"></a><span class="lineno">  496</span>&#160;  <span class="keywordtype">void</span> SetLatestObservedTimestamp(uint64_t ht_timestamp);</div><div class="line"><a name="l00497"></a><span class="lineno">  497</span>&#160;</div><div class="line"><a name="l00509"></a><span class="lineno">  509</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> ExportAuthenticationCredentials(std::string* authn_creds) <span class="keyword">const</span>;</div><div class="line"><a name="l00510"></a><span class="lineno">  510</span>&#160;</div><div class="line"><a name="l00511"></a><span class="lineno">  511</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00512"></a><span class="lineno">  512</span>&#160;  <span class="keyword">class </span>KUDU_NO_EXPORT Data;</div><div class="line"><a name="l00513"></a><span class="lineno">  513</span>&#160;</div><div class="line"><a name="l00514"></a><span class="lineno">  514</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>internal::Batcher;</div><div class="line"><a name="l00515"></a><span class="lineno">  515</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>internal::GetTableSchemaRpc;</div><div class="line"><a name="l00516"></a><span class="lineno">  516</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>internal::LookupRpc;</div><div class="line"><a name="l00517"></a><span class="lineno">  517</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>internal::MetaCache;</div><div class="line"><a name="l00518"></a><span class="lineno">  518</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>internal::RemoteTablet;</div><div class="line"><a name="l00519"></a><span class="lineno">  519</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>internal::RemoteTabletServer;</div><div class="line"><a name="l00520"></a><span class="lineno">  520</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>internal::WriteRpc;</div><div class="line"><a name="l00521"></a><span class="lineno">  521</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>ClientTest;</div><div class="line"><a name="l00522"></a><span class="lineno">  522</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="l00523"></a><span class="lineno">  523</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classkudu_1_1client_1_1KuduPartitionerBuilder.html">KuduPartitionerBuilder</a>;</div><div class="line"><a name="l00524"></a><span class="lineno">  524</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="l00525"></a><span class="lineno">  525</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="l00526"></a><span class="lineno">  526</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="l00527"></a><span class="lineno">  527</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="l00528"></a><span class="lineno">  528</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="l00529"></a><span class="lineno">  529</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="l00530"></a><span class="lineno">  530</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="l00531"></a><span class="lineno">  531</span>&#160;  <span class="keyword">friend</span> class ::kudu::SecurityUnknownTskTest;</div><div class="line"><a name="l00532"></a><span class="lineno">  532</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>tools::LeaderMasterProxy;</div><div class="line"><a name="l00533"></a><span class="lineno">  533</span>&#160;</div><div class="line"><a name="l00534"></a><span class="lineno">  534</span>&#160;  FRIEND_TEST(kudu::ClientStressTest, TestUniqueClientIds);</div><div class="line"><a name="l00535"></a><span class="lineno">  535</span>&#160;  FRIEND_TEST(ClientTest, TestGetSecurityInfoFromMaster);</div><div class="line"><a name="l00536"></a><span class="lineno">  536</span>&#160;  FRIEND_TEST(ClientTest, TestGetTabletServerBlacklist);</div><div class="line"><a name="l00537"></a><span class="lineno">  537</span>&#160;  FRIEND_TEST(ClientTest, TestMasterDown);</div><div class="line"><a name="l00538"></a><span class="lineno">  538</span>&#160;  FRIEND_TEST(ClientTest, TestMasterLookupPermits);</div><div class="line"><a name="l00539"></a><span class="lineno">  539</span>&#160;  FRIEND_TEST(ClientTest, TestMetaCacheExpiry);</div><div class="line"><a name="l00540"></a><span class="lineno">  540</span>&#160;  FRIEND_TEST(ClientTest, TestNonCoveringRangePartitions);</div><div class="line"><a name="l00541"></a><span class="lineno">  541</span>&#160;  FRIEND_TEST(ClientTest, TestReplicatedTabletWritesWithLeaderElection);</div><div class="line"><a name="l00542"></a><span class="lineno">  542</span>&#160;  FRIEND_TEST(ClientTest, TestScanFaultTolerance);</div><div class="line"><a name="l00543"></a><span class="lineno">  543</span>&#160;  FRIEND_TEST(ClientTest, TestScanTimeout);</div><div class="line"><a name="l00544"></a><span class="lineno">  544</span>&#160;  FRIEND_TEST(ClientTest, TestWriteWithDeadMaster);</div><div class="line"><a name="l00545"></a><span class="lineno">  545</span>&#160;  FRIEND_TEST(MasterFailoverTest, TestPauseAfterCreateTableIssued);</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_1KuduClient.html">KuduClient</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(<a class="code" href="classkudu_1_1client_1_1KuduClient.html">KuduClient</a>);</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_1KuduTabletServer.html">  556</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="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_1KuduTabletServer.html">KuduTabletServer</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; uuid() <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="l00566"></a><span class="lineno">  566</span>&#160;  <span class="keyword">const</span> std::string&amp; hostname() <span class="keyword">const</span>;</div><div class="line"><a name="l00567"></a><span class="lineno">  567</span>&#160;</div><div class="line"><a name="l00570"></a><span class="lineno">  570</span>&#160;  uint16_t port() <span class="keyword">const</span>;</div><div class="line"><a name="l00571"></a><span class="lineno">  571</span>&#160;</div><div class="line"><a name="l00572"></a><span class="lineno">  572</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00573"></a><span class="lineno">  573</span>&#160;  <span class="keyword">class </span>KUDU_NO_EXPORT Data;</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">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="l00576"></a><span class="lineno">  576</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="l00577"></a><span class="lineno">  577</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="l00578"></a><span class="lineno">  578</span>&#160;</div><div class="line"><a name="l00579"></a><span class="lineno">  579</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduTabletServer.html">KuduTabletServer</a>();</div><div class="line"><a name="l00580"></a><span class="lineno">  580</span>&#160;</div><div class="line"><a name="l00581"></a><span class="lineno">  581</span>&#160;  <span class="comment">// Owned.</span></div><div class="line"><a name="l00582"></a><span class="lineno">  582</span>&#160;  Data* data_;</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;  DISALLOW_COPY_AND_ASSIGN(KuduTabletServer);</div><div class="line"><a name="l00585"></a><span class="lineno">  585</span>&#160;};</div><div class="line"><a name="l00586"></a><span class="lineno">  586</span>&#160;</div><div class="line"><a name="l00588"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduReplica.html">  588</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="l00589"></a><span class="lineno">  589</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00590"></a><span class="lineno">  590</span>&#160;  ~<a class="code" href="classkudu_1_1client_1_1KuduReplica.html">KuduReplica</a>();</div><div class="line"><a name="l00591"></a><span class="lineno">  591</span>&#160;</div><div class="line"><a name="l00596"></a><span class="lineno">  596</span>&#160;  <span class="keywordtype">bool</span> is_leader() <span class="keyword">const</span>;</div><div class="line"><a name="l00597"></a><span class="lineno">  597</span>&#160;</div><div class="line"><a name="l00599"></a><span class="lineno">  599</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="l00600"></a><span class="lineno">  600</span>&#160;</div><div class="line"><a name="l00601"></a><span class="lineno">  601</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00602"></a><span class="lineno">  602</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="l00603"></a><span class="lineno">  603</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="l00604"></a><span class="lineno">  604</span>&#160;</div><div class="line"><a name="l00605"></a><span class="lineno">  605</span>&#160;  <span class="keyword">class </span>KUDU_NO_EXPORT Data;</div><div class="line"><a name="l00606"></a><span class="lineno">  606</span>&#160;</div><div class="line"><a name="l00607"></a><span class="lineno">  607</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduReplica.html">KuduReplica</a>();</div><div class="line"><a name="l00608"></a><span class="lineno">  608</span>&#160;</div><div class="line"><a name="l00609"></a><span class="lineno">  609</span>&#160;  <span class="comment">// Owned.</span></div><div class="line"><a name="l00610"></a><span class="lineno">  610</span>&#160;  Data* data_;</div><div class="line"><a name="l00611"></a><span class="lineno">  611</span>&#160;</div><div class="line"><a name="l00612"></a><span class="lineno">  612</span>&#160;  DISALLOW_COPY_AND_ASSIGN(KuduReplica);</div><div class="line"><a name="l00613"></a><span class="lineno">  613</span>&#160;};</div><div class="line"><a name="l00614"></a><span class="lineno">  614</span>&#160;</div><div class="line"><a name="l00616"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduTablet.html">  616</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="l00617"></a><span class="lineno">  617</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00618"></a><span class="lineno">  618</span>&#160;  ~<a class="code" href="classkudu_1_1client_1_1KuduTablet.html">KuduTablet</a>();</div><div class="line"><a name="l00619"></a><span class="lineno">  619</span>&#160;</div><div class="line"><a name="l00622"></a><span class="lineno">  622</span>&#160;  <span class="keyword">const</span> std::string&amp; id() <span class="keyword">const</span>;</div><div class="line"><a name="l00623"></a><span class="lineno">  623</span>&#160;</div><div class="line"><a name="l00629"></a><span class="lineno">  629</span>&#160;  <span class="keyword">const</span> std::vector&lt;const KuduReplica*&gt;&amp; replicas() <span class="keyword">const</span>;</div><div class="line"><a name="l00630"></a><span class="lineno">  630</span>&#160;</div><div class="line"><a name="l00631"></a><span class="lineno">  631</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00632"></a><span class="lineno">  632</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="l00633"></a><span class="lineno">  633</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="l00634"></a><span class="lineno">  634</span>&#160;</div><div class="line"><a name="l00635"></a><span class="lineno">  635</span>&#160;  <span class="keyword">class </span>KUDU_NO_EXPORT Data;</div><div class="line"><a name="l00636"></a><span class="lineno">  636</span>&#160;</div><div class="line"><a name="l00637"></a><span class="lineno">  637</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduTablet.html">KuduTablet</a>();</div><div class="line"><a name="l00638"></a><span class="lineno">  638</span>&#160;</div><div class="line"><a name="l00639"></a><span class="lineno">  639</span>&#160;  <span class="comment">// Owned.</span></div><div class="line"><a name="l00640"></a><span class="lineno">  640</span>&#160;  Data* data_;</div><div class="line"><a name="l00641"></a><span class="lineno">  641</span>&#160;</div><div class="line"><a name="l00642"></a><span class="lineno">  642</span>&#160;  DISALLOW_COPY_AND_ASSIGN(KuduTablet);</div><div class="line"><a name="l00643"></a><span class="lineno">  643</span>&#160;};</div><div class="line"><a name="l00644"></a><span class="lineno">  644</span>&#160;</div><div class="line"><a name="l00646"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduTableCreator.html">  646</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="l00647"></a><span class="lineno">  647</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00648"></a><span class="lineno">  648</span>&#160;  ~<a class="code" href="classkudu_1_1client_1_1KuduTableCreator.html">KuduTableCreator</a>();</div><div class="line"><a name="l00649"></a><span class="lineno">  649</span>&#160;</div><div class="line"><a name="l00661"></a><span class="lineno">  661</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="l00662"></a><span class="lineno">  662</span>&#160;</div><div class="line"><a name="l00673"></a><span class="lineno">  673</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="l00674"></a><span class="lineno">  674</span>&#160;</div><div class="line"><a name="l00691"></a><span class="lineno">  691</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="l00692"></a><span class="lineno">  692</span>&#160;                                        int32_t num_buckets);</div><div class="line"><a name="l00693"></a><span class="lineno">  693</span>&#160;</div><div class="line"><a name="l00709"></a><span class="lineno">  709</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="l00710"></a><span class="lineno">  710</span>&#160;                                        int32_t num_buckets, int32_t seed);</div><div class="line"><a name="l00711"></a><span class="lineno">  711</span>&#160;</div><div class="line"><a name="l00724"></a><span class="lineno">  724</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="l00725"></a><span class="lineno">  725</span>&#160;</div><div class="line"><a name="l00727"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343b">  727</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="l00728"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343baa117961e0003fd28663861833d23e601">  728</a></span>&#160;    <a class="code" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343baa117961e0003fd28663861833d23e601">EXCLUSIVE_BOUND</a>, </div><div class="line"><a name="l00729"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343ba0f4899cc63fba167455e05b525f0b950">  729</a></span>&#160;    <a class="code" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343ba0f4899cc63fba167455e05b525f0b950">INCLUSIVE_BOUND</a>, </div><div class="line"><a name="l00730"></a><span class="lineno">  730</span>&#160;  };</div><div class="line"><a name="l00731"></a><span class="lineno">  731</span>&#160;</div><div class="line"><a name="l00760"></a><span class="lineno">  760</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="l00761"></a><span class="lineno">  761</span>&#160;                                        <a class="code" href="classKuduPartialRow.html">KuduPartialRow</a>* upper_bound,</div><div class="line"><a name="l00762"></a><span class="lineno">  762</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="l00763"></a><span class="lineno">  763</span>&#160;                                        <a class="code" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343b">RangePartitionBound</a> upper_bound_type = EXCLUSIVE_BOUND);</div><div class="line"><a name="l00764"></a><span class="lineno">  764</span>&#160;</div><div class="line"><a name="l00773"></a><span class="lineno">  773</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="l00774"></a><span class="lineno">  774</span>&#160;</div><div class="line"><a name="l00780"></a><span class="lineno">  780</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="l00781"></a><span class="lineno">  781</span>&#160;      ATTRIBUTE_DEPRECATED(<span class="stringliteral">&quot;use add_range_partition_split() instead&quot;</span>);</div><div class="line"><a name="l00782"></a><span class="lineno">  782</span>&#160;</div><div class="line"><a name="l00792"></a><span class="lineno">  792</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="l00793"></a><span class="lineno">  793</span>&#160;</div><div class="line"><a name="l00803"></a><span class="lineno">  803</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="l00804"></a><span class="lineno">  804</span>&#160;</div><div class="line"><a name="l00812"></a><span class="lineno">  812</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduTableCreator.html">KuduTableCreator</a>&amp; wait(<span class="keywordtype">bool</span> wait);</div><div class="line"><a name="l00813"></a><span class="lineno">  813</span>&#160;</div><div class="line"><a name="l00827"></a><span class="lineno">  827</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> Create();</div><div class="line"><a name="l00828"></a><span class="lineno">  828</span>&#160;</div><div class="line"><a name="l00829"></a><span class="lineno">  829</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00830"></a><span class="lineno">  830</span>&#160;  <span class="keyword">class </span>KUDU_NO_EXPORT Data;</div><div class="line"><a name="l00831"></a><span class="lineno">  831</span>&#160;</div><div class="line"><a name="l00832"></a><span class="lineno">  832</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="l00833"></a><span class="lineno">  833</span>&#160;</div><div class="line"><a name="l00834"></a><span class="lineno">  834</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="l00835"></a><span class="lineno">  835</span>&#160;</div><div class="line"><a name="l00836"></a><span class="lineno">  836</span>&#160;  <span class="comment">// Owned.</span></div><div class="line"><a name="l00837"></a><span class="lineno">  837</span>&#160;  Data* data_;</div><div class="line"><a name="l00838"></a><span class="lineno">  838</span>&#160;</div><div class="line"><a name="l00839"></a><span class="lineno">  839</span>&#160;  DISALLOW_COPY_AND_ASSIGN(<a class="code" href="classkudu_1_1client_1_1KuduTableCreator.html">KuduTableCreator</a>);</div><div class="line"><a name="l00840"></a><span class="lineno">  840</span>&#160;};</div><div class="line"><a name="l00841"></a><span class="lineno">  841</span>&#160;</div><div class="line"><a name="l00862"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduTable.html">  862</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="l00863"></a><span class="lineno">  863</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00864"></a><span class="lineno">  864</span>&#160;  ~<a class="code" href="classkudu_1_1client_1_1KuduTable.html">KuduTable</a>();</div><div class="line"><a name="l00865"></a><span class="lineno">  865</span>&#160;</div><div class="line"><a name="l00867"></a><span class="lineno">  867</span>&#160;  <span class="keyword">const</span> std::string&amp; name() <span class="keyword">const</span>;</div><div class="line"><a name="l00868"></a><span class="lineno">  868</span>&#160;</div><div class="line"><a name="l00876"></a><span class="lineno">  876</span>&#160;  <span class="keyword">const</span> std::string&amp; id() <span class="keyword">const</span>;</div><div class="line"><a name="l00877"></a><span class="lineno">  877</span>&#160;</div><div class="line"><a name="l00879"></a><span class="lineno">  879</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="l00880"></a><span class="lineno">  880</span>&#160;</div><div class="line"><a name="l00882"></a><span class="lineno">  882</span>&#160;  <span class="keywordtype">int</span> num_replicas() <span class="keyword">const</span>;</div><div class="line"><a name="l00883"></a><span class="lineno">  883</span>&#160;</div><div class="line"><a name="l00887"></a><span class="lineno">  887</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduInsert.html">KuduInsert</a>* NewInsert();</div><div class="line"><a name="l00888"></a><span class="lineno">  888</span>&#160;</div><div class="line"><a name="l00892"></a><span class="lineno">  892</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduUpsert.html">KuduUpsert</a>* NewUpsert();</div><div class="line"><a name="l00893"></a><span class="lineno">  893</span>&#160;</div><div class="line"><a name="l00897"></a><span class="lineno">  897</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduUpdate.html">KuduUpdate</a>* NewUpdate();</div><div class="line"><a name="l00898"></a><span class="lineno">  898</span>&#160;</div><div class="line"><a name="l00902"></a><span class="lineno">  902</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduDelete.html">KuduDelete</a>* NewDelete();</div><div class="line"><a name="l00903"></a><span class="lineno">  903</span>&#160;</div><div class="line"><a name="l00927"></a><span class="lineno">  927</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="l00928"></a><span class="lineno">  928</span>&#160;                                        <a class="code" href="classkudu_1_1client_1_1KuduPredicate.html#ad58e80ced596d7738f99b5b83ba24eb4">KuduPredicate::ComparisonOp</a> op,</div><div class="line"><a name="l00929"></a><span class="lineno">  929</span>&#160;                                        <a class="code" href="classkudu_1_1client_1_1KuduValue.html">KuduValue</a>* value);</div><div class="line"><a name="l00930"></a><span class="lineno">  930</span>&#160;</div><div class="line"><a name="l00954"></a><span class="lineno">  954</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="l00955"></a><span class="lineno">  955</span>&#160;                                    std::vector&lt;KuduValue*&gt;* values);</div><div class="line"><a name="l00956"></a><span class="lineno">  956</span>&#160;</div><div class="line"><a name="l00967"></a><span class="lineno">  967</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduPredicate.html">KuduPredicate</a>* NewIsNotNullPredicate(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; col_name);</div><div class="line"><a name="l00968"></a><span class="lineno">  968</span>&#160;</div><div class="line"><a name="l00979"></a><span class="lineno">  979</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduPredicate.html">KuduPredicate</a>* NewIsNullPredicate(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; col_name);</div><div class="line"><a name="l00980"></a><span class="lineno">  980</span>&#160;</div><div class="line"><a name="l00983"></a><span class="lineno">  983</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="l00984"></a><span class="lineno">  984</span>&#160;</div><div class="line"><a name="l00986"></a><span class="lineno">  986</span>&#160;  <span class="keyword">const</span> PartitionSchema&amp; partition_schema() <span class="keyword">const</span>;</div><div class="line"><a name="l00987"></a><span class="lineno">  987</span>&#160;</div><div class="line"><a name="l00988"></a><span class="lineno">  988</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00989"></a><span class="lineno">  989</span>&#160;  <span class="keyword">class </span>KUDU_NO_EXPORT Data;</div><div class="line"><a name="l00990"></a><span class="lineno">  990</span>&#160;</div><div class="line"><a name="l00991"></a><span class="lineno">  991</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="l00992"></a><span class="lineno">  992</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classkudu_1_1client_1_1KuduPartitioner.html">KuduPartitioner</a>;</div><div class="line"><a name="l00993"></a><span class="lineno">  993</span>&#160;</div><div class="line"><a name="l00994"></a><span class="lineno">  994</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="l00995"></a><span class="lineno">  995</span>&#160;            <span class="keyword">const</span> std::string&amp; name,</div><div class="line"><a name="l00996"></a><span class="lineno">  996</span>&#160;            <span class="keyword">const</span> std::string&amp; <span class="keywordtype">id</span>,</div><div class="line"><a name="l00997"></a><span class="lineno">  997</span>&#160;            <span class="keywordtype">int</span> num_replicas,</div><div class="line"><a name="l00998"></a><span class="lineno">  998</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="l00999"></a><span class="lineno">  999</span>&#160;            <span class="keyword">const</span> PartitionSchema&amp; partition_schema);</div><div class="line"><a name="l01000"></a><span class="lineno"> 1000</span>&#160;</div><div class="line"><a name="l01001"></a><span class="lineno"> 1001</span>&#160;  <span class="comment">// Owned.</span></div><div class="line"><a name="l01002"></a><span class="lineno"> 1002</span>&#160;  Data* data_;</div><div class="line"><a name="l01003"></a><span class="lineno"> 1003</span>&#160;</div><div class="line"><a name="l01004"></a><span class="lineno"> 1004</span>&#160;  DISALLOW_COPY_AND_ASSIGN(KuduTable);</div><div class="line"><a name="l01005"></a><span class="lineno"> 1005</span>&#160;};</div><div class="line"><a name="l01006"></a><span class="lineno"> 1006</span>&#160;</div><div class="line"><a name="l01018"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduTableAlterer.html"> 1018</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="l01019"></a><span class="lineno"> 1019</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l01020"></a><span class="lineno"> 1020</span>&#160;  ~<a class="code" href="classkudu_1_1client_1_1KuduTableAlterer.html">KuduTableAlterer</a>();</div><div class="line"><a name="l01021"></a><span class="lineno"> 1021</span>&#160;</div><div class="line"><a name="l01027"></a><span class="lineno"> 1027</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="l01028"></a><span class="lineno"> 1028</span>&#160;</div><div class="line"><a name="l01038"></a><span class="lineno"> 1038</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="l01039"></a><span class="lineno"> 1039</span>&#160;</div><div class="line"><a name="l01048"></a><span class="lineno"> 1048</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduColumnSpec.html">KuduColumnSpec</a>* AlterColumn(<span class="keyword">const</span> std::string&amp; name);</div><div class="line"><a name="l01049"></a><span class="lineno"> 1049</span>&#160;</div><div class="line"><a name="l01057"></a><span class="lineno"> 1057</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="l01058"></a><span class="lineno"> 1058</span>&#160;</div><div class="line"><a name="l01090"></a><span class="lineno"> 1090</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduTableAlterer.html">KuduTableAlterer</a>* AddRangePartition(</div><div class="line"><a name="l01091"></a><span class="lineno"> 1091</span>&#160;      <a class="code" href="classKuduPartialRow.html">KuduPartialRow</a>* lower_bound,</div><div class="line"><a name="l01092"></a><span class="lineno"> 1092</span>&#160;      <a class="code" href="classKuduPartialRow.html">KuduPartialRow</a>* upper_bound,</div><div class="line"><a name="l01093"></a><span class="lineno"> 1093</span>&#160;      <a class="code" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343b">KuduTableCreator::RangePartitionBound</a> lower_bound_type = KuduTableCreator::INCLUSIVE_BOUND,</div><div class="line"><a name="l01094"></a><span class="lineno"> 1094</span>&#160;      <a class="code" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343b">KuduTableCreator::RangePartitionBound</a> upper_bound_type = KuduTableCreator::EXCLUSIVE_BOUND);</div><div class="line"><a name="l01095"></a><span class="lineno"> 1095</span>&#160;</div><div class="line"><a name="l01123"></a><span class="lineno"> 1123</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduTableAlterer.html">KuduTableAlterer</a>* DropRangePartition(</div><div class="line"><a name="l01124"></a><span class="lineno"> 1124</span>&#160;      <a class="code" href="classKuduPartialRow.html">KuduPartialRow</a>* lower_bound,</div><div class="line"><a name="l01125"></a><span class="lineno"> 1125</span>&#160;      <a class="code" href="classKuduPartialRow.html">KuduPartialRow</a>* upper_bound,</div><div class="line"><a name="l01126"></a><span class="lineno"> 1126</span>&#160;      <a class="code" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343b">KuduTableCreator::RangePartitionBound</a> lower_bound_type = KuduTableCreator::INCLUSIVE_BOUND,</div><div class="line"><a name="l01127"></a><span class="lineno"> 1127</span>&#160;      <a class="code" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343b">KuduTableCreator::RangePartitionBound</a> upper_bound_type = KuduTableCreator::EXCLUSIVE_BOUND);</div><div class="line"><a name="l01128"></a><span class="lineno"> 1128</span>&#160;</div><div class="line"><a name="l01138"></a><span class="lineno"> 1138</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="l01139"></a><span class="lineno"> 1139</span>&#160;</div><div class="line"><a name="l01151"></a><span class="lineno"> 1151</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduTableAlterer.html">KuduTableAlterer</a>* wait(<span class="keywordtype">bool</span> wait);</div><div class="line"><a name="l01152"></a><span class="lineno"> 1152</span>&#160;</div><div class="line"><a name="l01157"></a><span class="lineno"> 1157</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> Alter();</div><div class="line"><a name="l01158"></a><span class="lineno"> 1158</span>&#160;</div><div class="line"><a name="l01159"></a><span class="lineno"> 1159</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l01160"></a><span class="lineno"> 1160</span>&#160;  <span class="keyword">class </span>KUDU_NO_EXPORT Data;</div><div class="line"><a name="l01161"></a><span class="lineno"> 1161</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="l01162"></a><span class="lineno"> 1162</span>&#160;</div><div class="line"><a name="l01163"></a><span class="lineno"> 1163</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="l01164"></a><span class="lineno"> 1164</span>&#160;                   <span class="keyword">const</span> std::string&amp; name);</div><div class="line"><a name="l01165"></a><span class="lineno"> 1165</span>&#160;</div><div class="line"><a name="l01166"></a><span class="lineno"> 1166</span>&#160;  <span class="comment">// Owned.</span></div><div class="line"><a name="l01167"></a><span class="lineno"> 1167</span>&#160;  Data* data_;</div><div class="line"><a name="l01168"></a><span class="lineno"> 1168</span>&#160;</div><div class="line"><a name="l01169"></a><span class="lineno"> 1169</span>&#160;  DISALLOW_COPY_AND_ASSIGN(KuduTableAlterer);</div><div class="line"><a name="l01170"></a><span class="lineno"> 1170</span>&#160;};</div><div class="line"><a name="l01171"></a><span class="lineno"> 1171</span>&#160;</div><div class="line"><a name="l01177"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduError.html"> 1177</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="l01178"></a><span class="lineno"> 1178</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l01179"></a><span class="lineno"> 1179</span>&#160;  ~<a class="code" href="classkudu_1_1client_1_1KuduError.html">KuduError</a>();</div><div class="line"><a name="l01180"></a><span class="lineno"> 1180</span>&#160;</div><div class="line"><a name="l01182"></a><span class="lineno"> 1182</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="l01183"></a><span class="lineno"> 1183</span>&#160;</div><div class="line"><a name="l01185"></a><span class="lineno"> 1185</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="l01186"></a><span class="lineno"> 1186</span>&#160;</div><div class="line"><a name="l01194"></a><span class="lineno"> 1194</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduWriteOperation.html">KuduWriteOperation</a>* release_failed_op();</div><div class="line"><a name="l01195"></a><span class="lineno"> 1195</span>&#160;</div><div class="line"><a name="l01206"></a><span class="lineno"> 1206</span>&#160;  <span class="keywordtype">bool</span> was_possibly_successful() <span class="keyword">const</span>;</div><div class="line"><a name="l01207"></a><span class="lineno"> 1207</span>&#160;</div><div class="line"><a name="l01208"></a><span class="lineno"> 1208</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l01209"></a><span class="lineno"> 1209</span>&#160;  <span class="keyword">class </span>KUDU_NO_EXPORT Data;</div><div class="line"><a name="l01210"></a><span class="lineno"> 1210</span>&#160;</div><div class="line"><a name="l01211"></a><span class="lineno"> 1211</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>internal::Batcher;</div><div class="line"><a name="l01212"></a><span class="lineno"> 1212</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>internal::ErrorCollector;</div><div class="line"><a name="l01213"></a><span class="lineno"> 1213</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="l01214"></a><span class="lineno"> 1214</span>&#160;</div><div class="line"><a name="l01215"></a><span class="lineno"> 1215</span>&#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="l01216"></a><span class="lineno"> 1216</span>&#160;</div><div class="line"><a name="l01217"></a><span class="lineno"> 1217</span>&#160;  <span class="comment">// Owned.</span></div><div class="line"><a name="l01218"></a><span class="lineno"> 1218</span>&#160;  Data* data_;</div><div class="line"><a name="l01219"></a><span class="lineno"> 1219</span>&#160;</div><div class="line"><a name="l01220"></a><span class="lineno"> 1220</span>&#160;  DISALLOW_COPY_AND_ASSIGN(KuduError);</div><div class="line"><a name="l01221"></a><span class="lineno"> 1221</span>&#160;};</div><div class="line"><a name="l01222"></a><span class="lineno"> 1222</span>&#160;</div><div class="line"><a name="l01223"></a><span class="lineno"> 1223</span>&#160;</div><div class="line"><a name="l01282"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduSession.html"> 1282</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="l01283"></a><span class="lineno"> 1283</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l01284"></a><span class="lineno"> 1284</span>&#160;  ~<a class="code" href="classkudu_1_1client_1_1KuduSession.html">KuduSession</a>();</div><div class="line"><a name="l01285"></a><span class="lineno"> 1285</span>&#160;</div><div class="line"><a name="l01287"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19"> 1287</a></span>&#160;  <span class="keyword">enum</span> <a class="code" href="classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19">FlushMode</a> {</div><div class="line"><a name="l01292"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19ad74b76e407e62ca951d369521636df2b"> 1292</a></span>&#160;    <a class="code" href="classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19ad74b76e407e62ca951d369521636df2b">AUTO_FLUSH_SYNC</a>,</div><div class="line"><a name="l01293"></a><span class="lineno"> 1293</span>&#160;</div><div class="line"><a name="l01320"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19a520b8eef7ef0fd149b2757faf43972b1"> 1320</a></span>&#160;    <a class="code" href="classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19a520b8eef7ef0fd149b2757faf43972b1">AUTO_FLUSH_BACKGROUND</a>,</div><div class="line"><a name="l01321"></a><span class="lineno"> 1321</span>&#160;</div><div class="line"><a name="l01334"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19a1db3efc2094da09aae45bb68475cdb4a"> 1334</a></span>&#160;    MANUAL_FLUSH</div><div class="line"><a name="l01335"></a><span class="lineno"> 1335</span>&#160;  };</div><div class="line"><a name="l01336"></a><span class="lineno"> 1336</span>&#160;</div><div class="line"><a name="l01345"></a><span class="lineno"> 1345</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="l01346"></a><span class="lineno"> 1346</span>&#160;</div><div class="line"><a name="l01348"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduSession.html#aabd55109ba3b086bbe33b277cdd40d22"> 1348</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="l01367"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduSession.html#aabd55109ba3b086bbe33b277cdd40d22ae978fab7451faebf4399830b603c855c"> 1367</a></span>&#160;    <a class="code" href="classkudu_1_1client_1_1KuduSession.html#aabd55109ba3b086bbe33b277cdd40d22ae978fab7451faebf4399830b603c855c">CLIENT_PROPAGATED</a>,</div><div class="line"><a name="l01368"></a><span class="lineno"> 1368</span>&#160;</div><div class="line"><a name="l01383"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduSession.html#aabd55109ba3b086bbe33b277cdd40d22a70010f3ef1f70b99b02328c024c436c9"> 1383</a></span>&#160;    COMMIT_WAIT</div><div class="line"><a name="l01384"></a><span class="lineno"> 1384</span>&#160;  };</div><div class="line"><a name="l01385"></a><span class="lineno"> 1385</span>&#160;</div><div class="line"><a name="l01391"></a><span class="lineno"> 1391</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="l01392"></a><span class="lineno"> 1392</span>&#160;    WARN_UNUSED_RESULT;</div><div class="line"><a name="l01393"></a><span class="lineno"> 1393</span>&#160;</div><div class="line"><a name="l01411"></a><span class="lineno"> 1411</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="l01412"></a><span class="lineno"> 1412</span>&#160;</div><div class="line"><a name="l01436"></a><span class="lineno"> 1436</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="l01437"></a><span class="lineno"> 1437</span>&#160;      WARN_UNUSED_RESULT;</div><div class="line"><a name="l01438"></a><span class="lineno"> 1438</span>&#160;</div><div class="line"><a name="l01460"></a><span class="lineno"> 1460</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="l01461"></a><span class="lineno"> 1461</span>&#160;</div><div class="line"><a name="l01486"></a><span class="lineno"> 1486</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="l01487"></a><span class="lineno"> 1487</span>&#160;</div><div class="line"><a name="l01493"></a><span class="lineno"> 1493</span>&#160;  <span class="keywordtype">void</span> SetTimeoutMillis(<span class="keywordtype">int</span> millis);</div><div class="line"><a name="l01494"></a><span class="lineno"> 1494</span>&#160;</div><div class="line"><a name="l01498"></a><span class="lineno"> 1498</span>&#160;</div><div class="line"><a name="l01522"></a><span class="lineno"> 1522</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="l01523"></a><span class="lineno"> 1523</span>&#160;</div><div class="line"><a name="l01538"></a><span class="lineno"> 1538</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> Flush() WARN_UNUSED_RESULT;</div><div class="line"><a name="l01539"></a><span class="lineno"> 1539</span>&#160;</div><div class="line"><a name="l01580"></a><span class="lineno"> 1580</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="l01581"></a><span class="lineno"> 1581</span>&#160;</div><div class="line"><a name="l01584"></a><span class="lineno"> 1584</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> Close() WARN_UNUSED_RESULT;</div><div class="line"><a name="l01585"></a><span class="lineno"> 1585</span>&#160;</div><div class="line"><a name="l01594"></a><span class="lineno"> 1594</span>&#160;  <span class="keywordtype">bool</span> HasPendingOperations() const;</div><div class="line"><a name="l01595"></a><span class="lineno"> 1595</span>&#160;</div><div class="line"><a name="l01617"></a><span class="lineno"> 1617</span>&#160;  <span class="keywordtype">int</span> CountBufferedOperations() const</div><div class="line"><a name="l01618"></a><span class="lineno"> 1618</span>&#160;      ATTRIBUTE_DEPRECATED(&quot;this method is experimental and will disappear &quot;</div><div class="line"><a name="l01619"></a><span class="lineno"> 1619</span>&#160;                           &quot;in a future release&quot;);</div><div class="line"><a name="l01620"></a><span class="lineno"> 1620</span>&#160;</div><div class="line"><a name="l01645"></a><span class="lineno"> 1645</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="l01646"></a><span class="lineno"> 1646</span>&#160;</div><div class="line"><a name="l01656"></a><span class="lineno"> 1656</span>&#160;  <span class="keywordtype">int</span> CountPendingErrors() const;</div><div class="line"><a name="l01657"></a><span class="lineno"> 1657</span>&#160;</div><div class="line"><a name="l01668"></a><span class="lineno"> 1668</span>&#160;  <span class="keywordtype">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="l01669"></a><span class="lineno"> 1669</span>&#160;</div><div class="line"><a name="l01671"></a><span class="lineno"> 1671</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduClient.html">KuduClient</a>* client() const;</div><div class="line"><a name="l01672"></a><span class="lineno"> 1672</span>&#160;</div><div class="line"><a name="l01673"></a><span class="lineno"> 1673</span>&#160; private:</div><div class="line"><a name="l01674"></a><span class="lineno"> 1674</span>&#160;  class KUDU_NO_EXPORT Data;</div><div class="line"><a name="l01675"></a><span class="lineno"> 1675</span>&#160;</div><div class="line"><a name="l01676"></a><span class="lineno"> 1676</span>&#160;  friend class <a class="code" href="classkudu_1_1client_1_1KuduClient.html">KuduClient</a>;</div><div class="line"><a name="l01677"></a><span class="lineno"> 1677</span>&#160;  friend class internal::Batcher;</div><div class="line"><a name="l01678"></a><span class="lineno"> 1678</span>&#160;  friend class ClientTest;</div><div class="line"><a name="l01679"></a><span class="lineno"> 1679</span>&#160;  FRIEND_TEST(ClientTest, TestAutoFlushBackgroundApplyBlocks);</div><div class="line"><a name="l01680"></a><span class="lineno"> 1680</span>&#160;  FRIEND_TEST(ClientTest, TestAutoFlushBackgroundAndErrorCollector);</div><div class="line"><a name="l01681"></a><span class="lineno"> 1681</span>&#160;</div><div class="line"><a name="l01682"></a><span class="lineno"> 1682</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="l01683"></a><span class="lineno"> 1683</span>&#160;</div><div class="line"><a name="l01684"></a><span class="lineno"> 1684</span>&#160;  <span class="comment">// Owned.</span></div><div class="line"><a name="l01685"></a><span class="lineno"> 1685</span>&#160;  Data* data_;</div><div class="line"><a name="l01686"></a><span class="lineno"> 1686</span>&#160;</div><div class="line"><a name="l01687"></a><span class="lineno"> 1687</span>&#160;  DISALLOW_COPY_AND_ASSIGN(<a class="code" href="classkudu_1_1client_1_1KuduSession.html">KuduSession</a>);</div><div class="line"><a name="l01688"></a><span class="lineno"> 1688</span>&#160;};</div><div class="line"><a name="l01689"></a><span class="lineno"> 1689</span>&#160;</div><div class="line"><a name="l01690"></a><span class="lineno"> 1690</span>&#160;</div><div class="line"><a name="l01695"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanner.html"> 1695</a></span>&#160;class KUDU_EXPORT <a class="code" href="classkudu_1_1client_1_1KuduScanner.html">KuduScanner</a> {</div><div class="line"><a name="l01696"></a><span class="lineno"> 1696</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l01698"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanner.html#a36fdb59d6488618363331269d3f58348"> 1698</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="l01706"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanner.html#a36fdb59d6488618363331269d3f58348a8694cef688d819806fa9a85b002231a8"> 1706</a></span>&#160;    <a class="code" href="classkudu_1_1client_1_1KuduScanner.html#a36fdb59d6488618363331269d3f58348a8694cef688d819806fa9a85b002231a8">READ_LATEST</a>,</div><div class="line"><a name="l01707"></a><span class="lineno"> 1707</span>&#160;</div><div class="line"><a name="l01727"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanner.html#a36fdb59d6488618363331269d3f58348a380798cc81589d865b7b2549e186b2e2"> 1727</a></span>&#160;    READ_AT_SNAPSHOT</div><div class="line"><a name="l01728"></a><span class="lineno"> 1728</span>&#160;  };</div><div class="line"><a name="l01729"></a><span class="lineno"> 1729</span>&#160;</div><div class="line"><a name="l01733"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanner.html#a3d6c79325c9da9741d0accf1b43bf7f9"> 1733</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="l01739"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanner.html#a3d6c79325c9da9741d0accf1b43bf7f9adfeea547de613f36a0aff9f585671ec3"> 1739</a></span>&#160;    <a class="code" href="classkudu_1_1client_1_1KuduScanner.html#a3d6c79325c9da9741d0accf1b43bf7f9adfeea547de613f36a0aff9f585671ec3">UNORDERED</a>,</div><div class="line"><a name="l01740"></a><span class="lineno"> 1740</span>&#160;</div><div class="line"><a name="l01745"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanner.html#a3d6c79325c9da9741d0accf1b43bf7f9a4395ad2ec57ce53e30d8b5748fa2c63a"> 1745</a></span>&#160;    ORDERED</div><div class="line"><a name="l01746"></a><span class="lineno"> 1746</span>&#160;  };</div><div class="line"><a name="l01747"></a><span class="lineno"> 1747</span>&#160;</div><div class="line"><a name="l01751"></a><span class="lineno"> 1751</span>&#160;  <span class="keyword">enum</span> { kScanTimeoutMillis = 30000 };</div><div class="line"><a name="l01752"></a><span class="lineno"> 1752</span>&#160;</div><div class="line"><a name="l01758"></a><span class="lineno"> 1758</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="l01759"></a><span class="lineno"> 1759</span>&#160;  ~KuduScanner();</div><div class="line"><a name="l01760"></a><span class="lineno"> 1760</span>&#160;</div><div class="line"><a name="l01770"></a><span class="lineno"> 1770</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="l01771"></a><span class="lineno"> 1771</span>&#160;    WARN_UNUSED_RESULT;</div><div class="line"><a name="l01772"></a><span class="lineno"> 1772</span>&#160;</div><div class="line"><a name="l01782"></a><span class="lineno"> 1782</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="l01783"></a><span class="lineno"> 1783</span>&#160;    WARN_UNUSED_RESULT;</div><div class="line"><a name="l01784"></a><span class="lineno"> 1784</span>&#160;</div><div class="line"><a name="l01790"></a><span class="lineno"> 1790</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="l01791"></a><span class="lineno"> 1791</span>&#160;      WARN_UNUSED_RESULT</div><div class="line"><a name="l01792"></a><span class="lineno"> 1792</span>&#160;      ATTRIBUTE_DEPRECATED(<span class="stringliteral">&quot;use SetProjectedColumnNames() instead&quot;</span>);</div><div class="line"><a name="l01793"></a><span class="lineno"> 1793</span>&#160;</div><div class="line"><a name="l01802"></a><span class="lineno"> 1802</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="l01803"></a><span class="lineno"> 1803</span>&#160;</div><div class="line"><a name="l01812"></a><span class="lineno"> 1812</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="l01813"></a><span class="lineno"> 1813</span>&#160;</div><div class="line"><a name="l01821"></a><span class="lineno"> 1821</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="l01822"></a><span class="lineno"> 1822</span>&#160;      ATTRIBUTE_DEPRECATED(<span class="stringliteral">&quot;use AddLowerBound() instead&quot;</span>);</div><div class="line"><a name="l01823"></a><span class="lineno"> 1823</span>&#160;</div><div class="line"><a name="l01832"></a><span class="lineno"> 1832</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> AddExclusiveUpperBound(<span class="keyword">const</span> <a class="code" href="classKuduPartialRow.html">KuduPartialRow</a>&amp; key);</div><div class="line"><a name="l01833"></a><span class="lineno"> 1833</span>&#160;</div><div class="line"><a name="l01841"></a><span class="lineno"> 1841</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="l01842"></a><span class="lineno"> 1842</span>&#160;      ATTRIBUTE_DEPRECATED(<span class="stringliteral">&quot;use AddExclusiveUpperBound() instead&quot;</span>);</div><div class="line"><a name="l01843"></a><span class="lineno"> 1843</span>&#160;</div><div class="line"><a name="l01852"></a><span class="lineno"> 1852</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="l01853"></a><span class="lineno"> 1853</span>&#160;</div><div class="line"><a name="l01862"></a><span class="lineno"> 1862</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="l01863"></a><span class="lineno"> 1863</span>&#160;</div><div class="line"><a name="l01870"></a><span class="lineno"> 1870</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="l01871"></a><span class="lineno"> 1871</span>&#160;</div><div class="line"><a name="l01873"></a><span class="lineno"> 1873</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> Open();</div><div class="line"><a name="l01874"></a><span class="lineno"> 1874</span>&#160;</div><div class="line"><a name="l01890"></a><span class="lineno"> 1890</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> KeepAlive();</div><div class="line"><a name="l01891"></a><span class="lineno"> 1891</span>&#160;</div><div class="line"><a name="l01900"></a><span class="lineno"> 1900</span>&#160;  <span class="keywordtype">void</span> Close();</div><div class="line"><a name="l01901"></a><span class="lineno"> 1901</span>&#160;</div><div class="line"><a name="l01910"></a><span class="lineno"> 1910</span>&#160;  <span class="keywordtype">bool</span> HasMoreRows() <span class="keyword">const</span>;</div><div class="line"><a name="l01911"></a><span class="lineno"> 1911</span>&#160;</div><div class="line"><a name="l01923"></a><span class="lineno"> 1923</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> NextBatch(std::vector&lt;KuduRowResult&gt;* rows)</div><div class="line"><a name="l01924"></a><span class="lineno"> 1924</span>&#160;      ATTRIBUTE_DEPRECATED(<span class="stringliteral">&quot;use NextBatch(KuduScanBatch*) instead&quot;</span>);</div><div class="line"><a name="l01925"></a><span class="lineno"> 1925</span>&#160;</div><div class="line"><a name="l01934"></a><span class="lineno"> 1934</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> NextBatch(<a class="code" href="classkudu_1_1client_1_1KuduScanBatch.html">KuduScanBatch</a>* batch);</div><div class="line"><a name="l01935"></a><span class="lineno"> 1935</span>&#160;</div><div class="line"><a name="l01944"></a><span class="lineno"> 1944</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> GetCurrentServer(<a class="code" href="classkudu_1_1client_1_1KuduTabletServer.html">KuduTabletServer</a>** server);</div><div class="line"><a name="l01945"></a><span class="lineno"> 1945</span>&#160;</div><div class="line"><a name="l01947"></a><span class="lineno"> 1947</span>&#160;  <span class="keyword">const</span> <a class="code" href="classkudu_1_1client_1_1ResourceMetrics.html">ResourceMetrics</a>&amp; GetResourceMetrics() <span class="keyword">const</span>;</div><div class="line"><a name="l01948"></a><span class="lineno"> 1948</span>&#160;</div><div class="line"><a name="l01955"></a><span class="lineno"> 1955</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> SetBatchSizeBytes(uint32_t batch_size);</div><div class="line"><a name="l01956"></a><span class="lineno"> 1956</span>&#160;</div><div class="line"><a name="l01964"></a><span class="lineno"> 1964</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> SetSelection(<a class="code" href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11a">KuduClient::ReplicaSelection</a> selection)</div><div class="line"><a name="l01965"></a><span class="lineno"> 1965</span>&#160;    WARN_UNUSED_RESULT;</div><div class="line"><a name="l01966"></a><span class="lineno"> 1966</span>&#160;</div><div class="line"><a name="l01972"></a><span class="lineno"> 1972</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> SetReadMode(<a class="code" href="classkudu_1_1client_1_1KuduScanner.html#a36fdb59d6488618363331269d3f58348">ReadMode</a> read_mode) WARN_UNUSED_RESULT;</div><div class="line"><a name="l01973"></a><span class="lineno"> 1973</span>&#160;</div><div class="line"><a name="l01979"></a><span class="lineno"> 1979</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> SetOrderMode(<a class="code" href="classkudu_1_1client_1_1KuduScanner.html#a3d6c79325c9da9741d0accf1b43bf7f9">OrderMode</a> order_mode) WARN_UNUSED_RESULT</div><div class="line"><a name="l01980"></a><span class="lineno"> 1980</span>&#160;      ATTRIBUTE_DEPRECATED(<span class="stringliteral">&quot;use SetFaultTolerant() instead&quot;</span>);</div><div class="line"><a name="l01981"></a><span class="lineno"> 1981</span>&#160;</div><div class="line"><a name="l01994"></a><span class="lineno"> 1994</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> SetFaultTolerant() WARN_UNUSED_RESULT;</div><div class="line"><a name="l01995"></a><span class="lineno"> 1995</span>&#160;</div><div class="line"><a name="l02001"></a><span class="lineno"> 2001</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> SetSnapshotMicros(uint64_t snapshot_timestamp_micros) WARN_UNUSED_RESULT;</div><div class="line"><a name="l02002"></a><span class="lineno"> 2002</span>&#160;</div><div class="line"><a name="l02015"></a><span class="lineno"> 2015</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> SetSnapshotRaw(uint64_t snapshot_timestamp) WARN_UNUSED_RESULT;</div><div class="line"><a name="l02016"></a><span class="lineno"> 2016</span>&#160;</div><div class="line"><a name="l02022"></a><span class="lineno"> 2022</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> SetTimeoutMillis(<span class="keywordtype">int</span> millis);</div><div class="line"><a name="l02023"></a><span class="lineno"> 2023</span>&#160;</div><div class="line"><a name="l02025"></a><span class="lineno"> 2025</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a> GetProjectionSchema() <span class="keyword">const</span>;</div><div class="line"><a name="l02026"></a><span class="lineno"> 2026</span>&#160;</div><div class="line"><a name="l02028"></a><span class="lineno"> 2028</span>&#160;  <span class="comment">//</span></div><div class="line"><a name="l02034"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanner.html#a68345956f3f4c7fd5e1665fd292f6a85"> 2034</a></span>&#160;<span class="comment"></span>  <span class="keyword">static</span> <span class="keyword">const</span> uint64_t NO_FLAGS = 0;</div><div class="line"><a name="l02042"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanner.html#a63cd270f3bc72f4197d2581ec8f8fc44"> 2042</a></span>&#160;  <span class="keyword">static</span> <span class="keyword">const</span> uint64_t PAD_UNIXTIME_MICROS_TO_16_BYTES = 1 &lt;&lt; 0;</div><div class="line"><a name="l02066"></a><span class="lineno"> 2066</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> SetRowFormatFlags(uint64_t flags);</div><div class="line"><a name="l02068"></a><span class="lineno"> 2068</span>&#160;</div><div class="line"><a name="l02074"></a><span class="lineno"> 2074</span>&#160;  std::string ToString() <span class="keyword">const</span>;</div><div class="line"><a name="l02075"></a><span class="lineno"> 2075</span>&#160;</div><div class="line"><a name="l02076"></a><span class="lineno"> 2076</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l02077"></a><span class="lineno"> 2077</span>&#160;  <span class="keyword">class </span>KUDU_NO_EXPORT Data;</div><div class="line"><a name="l02078"></a><span class="lineno"> 2078</span>&#160;</div><div class="line"><a name="l02079"></a><span class="lineno"> 2079</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="l02080"></a><span class="lineno"> 2080</span>&#160;  FRIEND_TEST(ClientTest, TestScanCloseProxy);</div><div class="line"><a name="l02081"></a><span class="lineno"> 2081</span>&#160;  FRIEND_TEST(ClientTest, TestScanFaultTolerance);</div><div class="line"><a name="l02082"></a><span class="lineno"> 2082</span>&#160;  FRIEND_TEST(ClientTest, TestScanNoBlockCaching);</div><div class="line"><a name="l02083"></a><span class="lineno"> 2083</span>&#160;  FRIEND_TEST(ClientTest, TestScanTimeout);</div><div class="line"><a name="l02084"></a><span class="lineno"> 2084</span>&#160;  FRIEND_TEST(ClientTest, TestReadAtSnapshotNoTimestampSet);</div><div class="line"><a name="l02085"></a><span class="lineno"> 2085</span>&#160;  FRIEND_TEST(ConsistencyITest, TestSnapshotScanTimestampReuse);</div><div class="line"><a name="l02086"></a><span class="lineno"> 2086</span>&#160;</div><div class="line"><a name="l02087"></a><span class="lineno"> 2087</span>&#160;  <span class="comment">// Owned.</span></div><div class="line"><a name="l02088"></a><span class="lineno"> 2088</span>&#160;  Data* data_;</div><div class="line"><a name="l02089"></a><span class="lineno"> 2089</span>&#160;</div><div class="line"><a name="l02090"></a><span class="lineno"> 2090</span>&#160;  DISALLOW_COPY_AND_ASSIGN(KuduScanner);</div><div class="line"><a name="l02091"></a><span class="lineno"> 2091</span>&#160;};</div><div class="line"><a name="l02092"></a><span class="lineno"> 2092</span>&#160;</div><div class="line"><a name="l02113"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanToken.html"> 2113</a></span>&#160;<span class="keyword">class </span>KUDU_EXPORT <a class="code" href="classkudu_1_1client_1_1KuduScanToken.html">KuduScanToken</a> {</div><div class="line"><a name="l02114"></a><span class="lineno"> 2114</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l02115"></a><span class="lineno"> 2115</span>&#160;</div><div class="line"><a name="l02116"></a><span class="lineno"> 2116</span>&#160;  ~<a class="code" href="classkudu_1_1client_1_1KuduScanToken.html">KuduScanToken</a>();</div><div class="line"><a name="l02117"></a><span class="lineno"> 2117</span>&#160;</div><div class="line"><a name="l02128"></a><span class="lineno"> 2128</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> IntoKuduScanner(<a class="code" href="classkudu_1_1client_1_1KuduScanner.html">KuduScanner</a>** scanner) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l02129"></a><span class="lineno"> 2129</span>&#160;</div><div class="line"><a name="l02131"></a><span class="lineno"> 2131</span>&#160;  <span class="keyword">const</span> <a class="code" href="classkudu_1_1client_1_1KuduTablet.html">KuduTablet</a>&amp; tablet() <span class="keyword">const</span>;</div><div class="line"><a name="l02132"></a><span class="lineno"> 2132</span>&#160;</div><div class="line"><a name="l02140"></a><span class="lineno"> 2140</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> Serialize(std::string* buf) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l02141"></a><span class="lineno"> 2141</span>&#160;</div><div class="line"><a name="l02153"></a><span class="lineno"> 2153</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1Status.html">Status</a> DeserializeIntoScanner(<a class="code" href="classkudu_1_1client_1_1KuduClient.html">KuduClient</a>* client,</div><div class="line"><a name="l02154"></a><span class="lineno"> 2154</span>&#160;                                       <span class="keyword">const</span> std::string&amp; serialized_token,</div><div class="line"><a name="l02155"></a><span class="lineno"> 2155</span>&#160;                                       <a class="code" href="classkudu_1_1client_1_1KuduScanner.html">KuduScanner</a>** scanner) WARN_UNUSED_RESULT;</div><div class="line"><a name="l02156"></a><span class="lineno"> 2156</span>&#160;</div><div class="line"><a name="l02157"></a><span class="lineno"> 2157</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l02158"></a><span class="lineno"> 2158</span>&#160;  <span class="keyword">class </span>KUDU_NO_EXPORT Data;</div><div class="line"><a name="l02159"></a><span class="lineno"> 2159</span>&#160;</div><div class="line"><a name="l02160"></a><span class="lineno"> 2160</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="l02161"></a><span class="lineno"> 2161</span>&#160;</div><div class="line"><a name="l02162"></a><span class="lineno"> 2162</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduScanToken.html">KuduScanToken</a>();</div><div class="line"><a name="l02163"></a><span class="lineno"> 2163</span>&#160;</div><div class="line"><a name="l02164"></a><span class="lineno"> 2164</span>&#160;  <span class="comment">// Owned.</span></div><div class="line"><a name="l02165"></a><span class="lineno"> 2165</span>&#160;  Data* data_;</div><div class="line"><a name="l02166"></a><span class="lineno"> 2166</span>&#160;</div><div class="line"><a name="l02167"></a><span class="lineno"> 2167</span>&#160;  DISALLOW_COPY_AND_ASSIGN(KuduScanToken);</div><div class="line"><a name="l02168"></a><span class="lineno"> 2168</span>&#160;};</div><div class="line"><a name="l02169"></a><span class="lineno"> 2169</span>&#160;</div><div class="line"><a name="l02173"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html"> 2173</a></span>&#160;<span class="keyword">class </span>KUDU_EXPORT <a class="code" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html">KuduScanTokenBuilder</a> {</div><div class="line"><a name="l02174"></a><span class="lineno"> 2174</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l02175"></a><span class="lineno"> 2175</span>&#160;</div><div class="line"><a name="l02181"></a><span class="lineno"> 2181</span>&#160;  <span class="keyword">explicit</span> <a class="code" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html">KuduScanTokenBuilder</a>(<a class="code" href="classkudu_1_1client_1_1KuduTable.html">KuduTable</a>* table);</div><div class="line"><a name="l02182"></a><span class="lineno"> 2182</span>&#160;  ~<a class="code" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html">KuduScanTokenBuilder</a>();</div><div class="line"><a name="l02183"></a><span class="lineno"> 2183</span>&#160;</div><div class="line"><a name="l02193"></a><span class="lineno"> 2193</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="l02194"></a><span class="lineno"> 2194</span>&#160;    WARN_UNUSED_RESULT;</div><div class="line"><a name="l02195"></a><span class="lineno"> 2195</span>&#160;</div><div class="line"><a name="l02197"></a><span class="lineno"> 2197</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="l02198"></a><span class="lineno"> 2198</span>&#160;    WARN_UNUSED_RESULT;</div><div class="line"><a name="l02199"></a><span class="lineno"> 2199</span>&#160;</div><div class="line"><a name="l02201"></a><span class="lineno"> 2201</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="l02202"></a><span class="lineno"> 2202</span>&#160;</div><div class="line"><a name="l02204"></a><span class="lineno"> 2204</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) WARN_UNUSED_RESULT;</div><div class="line"><a name="l02205"></a><span class="lineno"> 2205</span>&#160;</div><div class="line"><a name="l02214"></a><span class="lineno"> 2214</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> AddUpperBound(<span class="keyword">const</span> <a class="code" href="classKuduPartialRow.html">KuduPartialRow</a>&amp; key) WARN_UNUSED_RESULT;</div><div class="line"><a name="l02215"></a><span class="lineno"> 2215</span>&#160;</div><div class="line"><a name="l02217"></a><span class="lineno"> 2217</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> SetCacheBlocks(<span class="keywordtype">bool</span> cache_blocks) WARN_UNUSED_RESULT;</div><div class="line"><a name="l02218"></a><span class="lineno"> 2218</span>&#160;</div><div class="line"><a name="l02225"></a><span class="lineno"> 2225</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> SetBatchSizeBytes(uint32_t batch_size) WARN_UNUSED_RESULT;</div><div class="line"><a name="l02226"></a><span class="lineno"> 2226</span>&#160;</div><div class="line"><a name="l02234"></a><span class="lineno"> 2234</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> SetSelection(<a class="code" href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11a">KuduClient::ReplicaSelection</a> selection)</div><div class="line"><a name="l02235"></a><span class="lineno"> 2235</span>&#160;    WARN_UNUSED_RESULT;</div><div class="line"><a name="l02236"></a><span class="lineno"> 2236</span>&#160;</div><div class="line"><a name="l02238"></a><span class="lineno"> 2238</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> SetReadMode(<a class="code" href="classkudu_1_1client_1_1KuduScanner.html#a36fdb59d6488618363331269d3f58348">KuduScanner::ReadMode</a> read_mode) WARN_UNUSED_RESULT;</div><div class="line"><a name="l02239"></a><span class="lineno"> 2239</span>&#160;</div><div class="line"><a name="l02241"></a><span class="lineno"> 2241</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> SetFaultTolerant() WARN_UNUSED_RESULT;</div><div class="line"><a name="l02242"></a><span class="lineno"> 2242</span>&#160;</div><div class="line"><a name="l02244"></a><span class="lineno"> 2244</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> SetSnapshotMicros(uint64_t snapshot_timestamp_micros)</div><div class="line"><a name="l02245"></a><span class="lineno"> 2245</span>&#160;    WARN_UNUSED_RESULT;</div><div class="line"><a name="l02246"></a><span class="lineno"> 2246</span>&#160;</div><div class="line"><a name="l02248"></a><span class="lineno"> 2248</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> SetSnapshotRaw(uint64_t snapshot_timestamp) WARN_UNUSED_RESULT;</div><div class="line"><a name="l02249"></a><span class="lineno"> 2249</span>&#160;</div><div class="line"><a name="l02251"></a><span class="lineno"> 2251</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> SetTimeoutMillis(<span class="keywordtype">int</span> millis) WARN_UNUSED_RESULT;</div><div class="line"><a name="l02252"></a><span class="lineno"> 2252</span>&#160;</div><div class="line"><a name="l02261"></a><span class="lineno"> 2261</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> Build(std::vector&lt;KuduScanToken*&gt;* tokens) WARN_UNUSED_RESULT;</div><div class="line"><a name="l02262"></a><span class="lineno"> 2262</span>&#160;</div><div class="line"><a name="l02263"></a><span class="lineno"> 2263</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l02264"></a><span class="lineno"> 2264</span>&#160;  <span class="keyword">class </span>KUDU_NO_EXPORT Data;</div><div class="line"><a name="l02265"></a><span class="lineno"> 2265</span>&#160;</div><div class="line"><a name="l02266"></a><span class="lineno"> 2266</span>&#160;  <span class="comment">// Owned.</span></div><div class="line"><a name="l02267"></a><span class="lineno"> 2267</span>&#160;  Data* data_;</div><div class="line"><a name="l02268"></a><span class="lineno"> 2268</span>&#160;</div><div class="line"><a name="l02269"></a><span class="lineno"> 2269</span>&#160;  DISALLOW_COPY_AND_ASSIGN(<a class="code" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html">KuduScanTokenBuilder</a>);</div><div class="line"><a name="l02270"></a><span class="lineno"> 2270</span>&#160;};</div><div class="line"><a name="l02271"></a><span class="lineno"> 2271</span>&#160;</div><div class="line"><a name="l02273"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduPartitionerBuilder.html"> 2273</a></span>&#160;<span class="keyword">class </span>KUDU_EXPORT <a class="code" href="classkudu_1_1client_1_1KuduPartitionerBuilder.html">KuduPartitionerBuilder</a> {</div><div class="line"><a name="l02274"></a><span class="lineno"> 2274</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l02279"></a><span class="lineno"> 2279</span>&#160;  <span class="keyword">explicit</span> <a class="code" href="classkudu_1_1client_1_1KuduPartitionerBuilder.html">KuduPartitionerBuilder</a>(sp::shared_ptr&lt;KuduTable&gt; table);</div><div class="line"><a name="l02280"></a><span class="lineno"> 2280</span>&#160;  ~<a class="code" href="classkudu_1_1client_1_1KuduPartitionerBuilder.html">KuduPartitionerBuilder</a>();</div><div class="line"><a name="l02281"></a><span class="lineno"> 2281</span>&#160;</div><div class="line"><a name="l02283"></a><span class="lineno"> 2283</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduPartitionerBuilder.html">KuduPartitionerBuilder</a>* SetBuildTimeout(<a class="code" href="classkudu_1_1MonoDelta.html">MonoDelta</a> timeout);</div><div class="line"><a name="l02284"></a><span class="lineno"> 2284</span>&#160;</div><div class="line"><a name="l02301"></a><span class="lineno"> 2301</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> Build(<a class="code" href="classkudu_1_1client_1_1KuduPartitioner.html">KuduPartitioner</a>** partitioner);</div><div class="line"><a name="l02302"></a><span class="lineno"> 2302</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l02303"></a><span class="lineno"> 2303</span>&#160;  <span class="keyword">class </span>KUDU_NO_EXPORT Data;</div><div class="line"><a name="l02304"></a><span class="lineno"> 2304</span>&#160;</div><div class="line"><a name="l02305"></a><span class="lineno"> 2305</span>&#160;  <span class="comment">// Owned.</span></div><div class="line"><a name="l02306"></a><span class="lineno"> 2306</span>&#160;  Data* data_;</div><div class="line"><a name="l02307"></a><span class="lineno"> 2307</span>&#160;</div><div class="line"><a name="l02308"></a><span class="lineno"> 2308</span>&#160;  DISALLOW_COPY_AND_ASSIGN(<a class="code" href="classkudu_1_1client_1_1KuduPartitionerBuilder.html">KuduPartitionerBuilder</a>);</div><div class="line"><a name="l02309"></a><span class="lineno"> 2309</span>&#160;};</div><div class="line"><a name="l02310"></a><span class="lineno"> 2310</span>&#160;</div><div class="line"><a name="l02321"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduPartitioner.html"> 2321</a></span>&#160;<span class="keyword">class </span>KUDU_EXPORT <a class="code" href="classkudu_1_1client_1_1KuduPartitioner.html">KuduPartitioner</a> {</div><div class="line"><a name="l02322"></a><span class="lineno"> 2322</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l02323"></a><span class="lineno"> 2323</span>&#160;  ~<a class="code" href="classkudu_1_1client_1_1KuduPartitioner.html">KuduPartitioner</a>();</div><div class="line"><a name="l02324"></a><span class="lineno"> 2324</span>&#160;</div><div class="line"><a name="l02328"></a><span class="lineno"> 2328</span>&#160;  <span class="keywordtype">int</span> NumPartitions() <span class="keyword">const</span>;</div><div class="line"><a name="l02329"></a><span class="lineno"> 2329</span>&#160;</div><div class="line"><a name="l02341"></a><span class="lineno"> 2341</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> PartitionRow(<span class="keyword">const</span> <a class="code" href="classKuduPartialRow.html">KuduPartialRow</a>&amp; row, <span class="keywordtype">int</span>* partition);</div><div class="line"><a name="l02342"></a><span class="lineno"> 2342</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l02343"></a><span class="lineno"> 2343</span>&#160;  <span class="keyword">class </span>KUDU_NO_EXPORT Data;</div><div class="line"><a name="l02344"></a><span class="lineno"> 2344</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classkudu_1_1client_1_1KuduPartitionerBuilder.html">KuduPartitionerBuilder</a>;</div><div class="line"><a name="l02345"></a><span class="lineno"> 2345</span>&#160;</div><div class="line"><a name="l02346"></a><span class="lineno"> 2346</span>&#160;  <span class="keyword">explicit</span> <a class="code" href="classkudu_1_1client_1_1KuduPartitioner.html">KuduPartitioner</a>(Data* data);</div><div class="line"><a name="l02347"></a><span class="lineno"> 2347</span>&#160;  Data* data_; <span class="comment">// Owned.</span></div><div class="line"><a name="l02348"></a><span class="lineno"> 2348</span>&#160;};</div><div class="line"><a name="l02349"></a><span class="lineno"> 2349</span>&#160;</div><div class="line"><a name="l02350"></a><span class="lineno"> 2350</span>&#160;</div><div class="line"><a name="l02351"></a><span class="lineno"> 2351</span>&#160;} <span class="comment">// namespace client</span></div><div class="line"><a name="l02352"></a><span class="lineno"> 2352</span>&#160;} <span class="comment">// namespace kudu</span></div><div class="line"><a name="l02353"></a><span class="lineno"> 2353</span>&#160;<span class="preprocessor">#endif</span></div><div class="ttc" id="classkudu_1_1client_1_1KuduUpdate_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduUpdate.html">kudu::client::KuduUpdate</a></div><div class="ttdoc">A single row update to be sent to the cluster. </div><div class="ttdef"><b>Definition:</b> write_op.h:184</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduSchema_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></div><div class="ttdoc">A representation of a table&amp;#39;s schema. </div><div class="ttdef"><b>Definition:</b> schema.h:423</div></div>
+<div class="ttc" id="classkudu_1_1Status_html"><div class="ttname"><a href="classkudu_1_1Status.html">kudu::Status</a></div><div class="ttdoc">A representation of an operation&amp;#39;s outcome. </div><div class="ttdef"><b>Definition:</b> status.h:130</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduValue_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduValue.html">kudu::client::KuduValue</a></div><div class="ttdoc">A constant cell value with a specific type. </div><div class="ttdef"><b>Definition:</b> value.h:33</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduPartitionerBuilder_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduPartitionerBuilder.html">kudu::client::KuduPartitionerBuilder</a></div><div class="ttdoc">Builder for Partitioner instances. </div><div class="ttdef"><b>Definition:</b> client.h:2273</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduSession_html_aabd55109ba3b086bbe33b277cdd40d22"><div class="ttname"><a href="classkudu_1_1client_1_1KuduSession.html#aabd55109ba3b086bbe33b277cdd40d22">kudu::client::KuduSession::ExternalConsistencyMode</a></div><div class="ttdeci">ExternalConsistencyMode</div><div class="ttdoc">The possible external consistency modes on which Kudu operates. </div><div class="ttdef"><b>Definition:</b> client.h:1348</div></div>
+<div class="ttc" id="namespacekudu_html"><div class="ttname"><a href="namespacekudu.html">kudu</a></div><div class="ttdef"><b>Definition:</b> callbacks.h:28</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduSession_html_aabd55109ba3b086bbe33b277cdd40d22ae978fab7451faebf4399830b603c855c"><div class="ttname"><a href="classkudu_1_1client_1_1KuduSession.html#aabd55109ba3b086bbe33b277cdd40d22ae978fab7451faebf4399830b603c855c">kudu::client::KuduSession::CLIENT_PROPAGATED</a></div><div class="ttdef"><b>Definition:</b> client.h:1367</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduInsert_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduInsert.html">kudu::client::KuduInsert</a></div><div class="ttdoc">A single row insert to be sent to the cluster. </div><div class="ttdef"><b>Definition:</b> write_op.h:132</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduColumnSpec_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduColumnSpec.html">kudu::client::KuduColumnSpec</a></div><div class="ttdoc">Builder API for specifying or altering a column within a table schema. </div><div class="ttdef"><b>Definition:</b> schema.h:232</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduClient_html_a196f1a18c000cdca309d05161caaddaa"><div class="ttname"><a href="classkudu_1_1client_1_1KuduClient.html#a196f1a18c000cdca309d05161caaddaa">kudu::client::KuduClient::kNoTimestamp</a></div><div class="ttdeci">static const uint64_t kNoTimestamp</div><div class="ttdef"><b>Definition:</b> client.h:439</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduClient_html_aef70c7f3a596ecda4040f9d46514b11a"><div class="ttname"><a href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11a">kudu::client::KuduClient::ReplicaSelection</a></div><div class="ttdeci">ReplicaSelection</div><div class="ttdoc">Policy with which to choose amongst multiple replicas. </div><div class="ttdef"><b>Definition:</b> client.h:418</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduUpsert_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduUpsert.html">kudu::client::KuduUpsert</a></div><div class="ttdoc">A single row upsert to be sent to the cluster. </div><div class="ttdef"><b>Definition:</b> write_op.h:157</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduScanTokenBuilder_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduScanTokenBuilder.html">kudu::client::KuduScanTokenBuilder</a></div><div class="ttdoc">Builds scan tokens for a table. </div><div class="ttdef"><b>Definition:</b> client.h:2173</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduPredicate_html_ad58e80ced596d7738f99b5b83ba24eb4"><div class="ttname"><a href="classkudu_1_1client_1_1KuduPredicate.html#ad58e80ced596d7738f99b5b83ba24eb4">kudu::client::KuduPredicate::ComparisonOp</a></div><div class="ttdeci">ComparisonOp</div><div class="ttdoc">Supported comparison operators. </div><div class="ttdef"><b>Definition:</b> scan_predicate.h:39</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduTableAlterer_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduTableAlterer.html">kudu::client::KuduTableAlterer</a></div><div class="ttdoc">Alters an existing table based on the provided steps. </div><div class="ttdef"><b>Definition:</b> client.h:1018</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduScanner_html_a3d6c79325c9da9741d0accf1b43bf7f9"><div class="ttname"><a href="classkudu_1_1client_1_1KuduScanner.html#a3d6c79325c9da9741d0accf1b43bf7f9">kudu::client::KuduScanner::OrderMode</a></div><div class="ttdeci">OrderMode</div><div class="ttdef"><b>Definition:</b> client.h:1733</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduScanner_html_a3d6c79325c9da9741d0accf1b43bf7f9adfeea547de613f36a0aff9f585671ec3"><div class="ttname"><a href="classkudu_1_1client_1_1KuduScanner.html#a3d6c79325c9da9741d0accf1b43bf7f9adfeea547de613f36a0aff9f585671ec3">kudu::client::KuduScanner::UNORDERED</a></div><div class="ttdef"><b>Definition:</b> client.h:1739</div></div>
+<div class="ttc" id="shared__ptr_8h_html"><div class="ttname"><a href="shared__ptr_8h.html">shared_ptr.h</a></div><div class="ttdoc">Smart pointer typedefs for externally-faced code. </div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduPartitioner_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduPartitioner.html">kudu::client::KuduPartitioner</a></div><div class="ttdef"><b>Definition:</b> client.h:2321</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduPredicate_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduPredicate.html">kudu::client::KuduPredicate</a></div><div class="ttdoc">A representation of comparison predicate for Kudu queries. </div><div class="ttdef"><b>Definition:</b> scan_predicate.h:36</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduTableCreator_html_a0a63fdc58e8062e505f4fa71d6f2343baa117961e0003fd28663861833d23e601"><div class="ttname"><a href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343baa117961e0003fd28663861833d23e601">kudu::client::KuduTableCreator::EXCLUSIVE_BOUND</a></div><div class="ttdoc">An exclusive bound. </div><div class="ttdef"><b>Definition:</b> client.h:728</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduError_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduError.html">kudu::client::KuduError</a></div><div class="ttdoc">This class represents an error which occurred in a write operation. </div><div class="ttdef"><b>Definition:</b> client.h:1177</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduClient_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></div><div class="ttdoc">A handle for a connection to a cluster. </div><div class="ttdef"><b>Definition:</b> client.h:289</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduTableCreator_html_a0a63fdc58e8062e505f4fa71d6f2343ba0f4899cc63fba167455e05b525f0b950"><div class="ttname"><a href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343ba0f4899cc63fba167455e05b525f0b950">kudu::client::KuduTableCreator::INCLUSIVE_BOUND</a></div><div class="ttdoc">An inclusive bound. </div><div class="ttdef"><b>Definition:</b> client.h:729</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduTabletServer_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduTabletServer.html">kudu::client::KuduTabletServer</a></div><div class="ttdoc">In-memory representation of a remote tablet server. </div><div class="ttdef"><b>Definition:</b> client.h:556</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduStatusCallback_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduStatusCallback.html">kudu::client::KuduStatusCallback</a></div><div class="ttdoc">The interface for all status callbacks. </div><div class="ttdef"><b>Definition:</b> callbacks.h:161</div></div>
+<div class="ttc" id="classkudu_1_1Slice_html"><div class="ttname"><a href="classkudu_1_1Slice.html">kudu::Slice</a></div><div class="ttdoc">A wrapper around externally allocated data. </div><div class="ttdef"><b>Definition:</b> slice.h:43</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduTable_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a></div><div class="ttdoc">A representation of a table on a particular cluster. </div><div class="ttdef"><b>Definition:</b> client.h:862</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduScanner_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></div><div class="ttdoc">This class is a representation of a single scan. </div><div class="ttdef"><b>Definition:</b> client.h:1695</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduScanner_html_a36fdb59d6488618363331269d3f58348"><div class="ttname"><a href="classkudu_1_1client_1_1KuduScanner.html#a36fdb59d6488618363331269d3f58348">kudu::client::KuduScanner::ReadMode</a></div><div class="ttdeci">ReadMode</div><div class="ttdoc">The read modes for scanners. </div><div class="ttdef"><b>Definition:</b> client.h:1698</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduSession_html_aaec3956e642610d703f3b83b78e24e19a520b8eef7ef0fd149b2757faf43972b1"><div class="ttname"><a href="classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19a520b8eef7ef0fd149b2757faf43972b1">kudu::client::KuduSession::AUTO_FLUSH_BACKGROUND</a></div><div class="ttdef"><b>Definition:</b> client.h:1320</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduScanner_html_a36fdb59d6488618363331269d3f58348a8694cef688d819806fa9a85b002231a8"><div class="ttname"><a href="classkudu_1_1client_1_1KuduScanner.html#a36fdb59d6488618363331269d3f58348a8694cef688d819806fa9a85b002231a8">kudu::client::KuduScanner::READ_LATEST</a></div><div class="ttdef"><b>Definition:</b> client.h:1706</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduClientBuilder_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduClientBuilder.html">kudu::client::KuduClientBuilder</a></div><div class="ttdoc">A &quot;factory&quot; for KuduClient objects. </div><div class="ttdef"><b>Definition:</b> client.h:187</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduWriteOperation_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a></div><div class="ttdoc">A single-row write operation to be sent to a Kudu table. </div><div class="ttdef"><b>Definition:</b> write_op.h:56</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduClient_html_aef70c7f3a596ecda4040f9d46514b11aafb912836db348061379d0e0a9055e239"><div class="ttname"><a href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11aafb912836db348061379d0e0a9055e239">kudu::client::KuduClient::LEADER_ONLY</a></div><div class="ttdoc">Select the LEADER replica. </div><div class="ttdef"><b>Definition:</b> client.h:419</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduTableCreator_html_a0a63fdc58e8062e505f4fa71d6f2343b"><div class="ttname"><a href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343b">kudu::client::KuduTableCreator::RangePartitionBound</a></div><div class="ttdeci">RangePartitionBound</div><div class="ttdoc">Range partition bound type. </div><div class="ttdef"><b>Definition:</b> client.h:727</div></div>
+<div class="ttc" id="status_8h_html"><div class="ttname"><a href="status_8h.html">status.h</a></div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduTablet_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduTablet.html">kudu::client::KuduTablet</a></div><div class="ttdoc">In-memory representation of a remote tablet. </div><div class="ttdef"><b>Definition:</b> client.h:616</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduReplica_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduReplica.html">kudu::client::KuduReplica</a></div><div class="ttdoc">In-memory representation of a remote tablet&amp;#39;s replica. </div><div class="ttdef"><b>Definition:</b> client.h:588</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduSession_html_aaec3956e642610d703f3b83b78e24e19"><div class="ttname"><a href="classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19">kudu::client::KuduSession::FlushMode</a></div><div class="ttdeci">FlushMode</div><div class="ttdoc">Modes of flush operations. </div><div class="ttdef"><b>Definition:</b> client.h:1287</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduScanToken_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduScanToken.html">kudu::client::KuduScanToken</a></div><div class="ttdoc">A scan descriptor limited to a single physical contiguous location. </div><div class="ttdef"><b>Definition:</b> client.h:2113</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduSession_html_aaec3956e642610d703f3b83b78e24e19ad74b76e407e62ca951d369521636df2b"><div class="ttname"><a href="classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19ad74b76e407e62ca951d369521636df2b">kudu::client::KuduSession::AUTO_FLUSH_SYNC</a></div><div class="ttdef"><b>Definition:</b> client.h:1292</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduDelete_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduDelete.html">kudu::client::KuduDelete</a></div><div class="ttdoc">A single row delete to be sent to the cluster. </div><div class="ttdef"><b>Definition:</b> write_op.h:211</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1ResourceMetrics_html"><div class="ttname"><a href="classkudu_1_1client_1_1ResourceMetrics.html">kudu::client::ResourceMetrics</a></div><div class="ttdoc">A generic catalog of simple metrics. </div><div class="ttdef"><b>Definition:</b> resource_metrics.h:30</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduTableCreator_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduTableCreator.html">kudu::client::KuduTableCreator</a></div><div class="ttdoc">A helper class to create a new table with the desired options. </div><div class="ttdef"><b>Definition:</b> client.h:646</div></div>
+<div class="ttc" id="classKuduPartialRow_html"><div class="ttname"><a href="classKuduPartialRow.html">KuduPartialRow</a></div><div class="ttdoc">A row which may only contain values for a subset of the columns. </div><div class="ttdef"><b>Definition:</b> partial_row.h:61</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduSession_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduSession.html">kudu::client::KuduSession</a></div><div class="ttdoc">Representation of a Kudu client session. </div><div class="ttdef"><b>Definition:</b> client.h:1282</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduScanBatch_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></div><div class="ttdoc">A batch of zero or more rows returned by a scan operation. </div><div class="ttdef"><b>Definition:</b> scan_batch.h:75</div></div>
+<div class="ttc" id="classkudu_1_1MonoDelta_html"><div class="ttname"><a href="classkudu_1_1MonoDelta.html">kudu::MonoDelta</a></div><div class="ttdoc">A representation of a time interval. </div><div class="ttdef"><b>Definition:</b> monotime.h:43</div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:02 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/closed.png b/releases/1.4.0/cpp-client-api/closed.png
new file mode 100644
index 0000000..98cc2c9
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/closed.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/deprecated.html b/releases/1.4.0/cpp-client-api/deprecated.html
new file mode 100644
index 0000000..0bdd6cd
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/deprecated.html
@@ -0,0 +1,115 @@
+<!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.11"/>
+<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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li class="current"><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </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="_deprecated000011"></a>Member <a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html#aaa771e9d224978f735b3aabb04bc129a">kudu::client::KuduColumnSchema::KuduColumnSchema</a>  (const std::string &amp;name, DataType type, bool is_nullable=false, const void *default_value=NULL, <a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html" title="Representation of column storage attributes. ">KuduColumnStorageAttributes</a> attributes=KuduColumnStorageAttributes()) ATTRIBUTE_DEPRECATED("use KuduSchemaBuilder instead")</dt>
+<dd>Use <a class="el" href="classkudu_1_1client_1_1KuduSchemaBuilder.html" title="Builder API for constructing a KuduSchema object. ">KuduSchemaBuilder</a> instead. </dd>
+<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="_deprecated000012"></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#af6249cf3bbad8e2e11e54edf40a7bc1d">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#ae12cc7c72da40f25b079273a6169faf9">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.4.0 on Tue Jun 13 2017 10:50:02 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/dir_000002_000004.html b/releases/1.4.0/cpp-client-api/dir_000002_000004.html
new file mode 100644
index 0000000..ce0ed1a
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/dir_000002_000004.html
@@ -0,0 +1,91 @@
+<!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.11"/>
+<title>Kudu C++ client API: include/kudu/client -&gt; util Relation</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_58b01e52e53886b8d78ab5060a2cd2bd.html">kudu</a></li><li class="navelem"><a class="el" href="dir_4eb331d85bb84eae27db9d0af49f6f99.html">client</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="contents">
+<h3>client &rarr; util Relation</h3><table class="dirtab"><tr class="dirtab"><th class="dirtab">File in include/kudu/client</th><th class="dirtab">Includes file in include/kudu/util</th></tr><tr class="dirtab"><td class="dirtab"><b>client.h</b></td><td class="dirtab"><a class="el" href="status_8h.html">status.h</a></td></tr></table></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/dir_4eb331d85bb84eae27db9d0af49f6f99.html b/releases/1.4.0/cpp-client-api/dir_4eb331d85bb84eae27db9d0af49f6f99.html
new file mode 100644
index 0000000..46cbe20
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/dir_4eb331d85bb84eae27db9d0af49f6f99.html
@@ -0,0 +1,119 @@
+<!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.11"/>
+<title>Kudu C++ client API: include/kudu/client Directory Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li class="current"><a href="files.html"><span>File&#160;List</span></a></li>
+      <li><a href="globals.html"><span>File&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_58b01e52e53886b8d78ab5060a2cd2bd.html">kudu</a></li><li class="navelem"><a class="el" href="dir_4eb331d85bb84eae27db9d0af49f6f99.html">client</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">client Directory Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="dynheader">
+Directory dependency graph for client:</div>
+<div class="dyncontent">
+<div class="center"><img src="dir_4eb331d85bb84eae27db9d0af49f6f99_dep.png" border="0" usemap="#dir__4eb331d85bb84eae27db9d0af49f6f99__dep" alt="include/kudu/client"/></div>
+<map name="dir__4eb331d85bb84eae27db9d0af49f6f99__dep" id="dir__4eb331d85bb84eae27db9d0af49f6f99__dep">
+<area shape="rect" id="node1" href="dir_4eb331d85bb84eae27db9d0af49f6f99.html" title="client" alt="" coords="27,52,99,100"/>
+<area shape="rect" id="node2" href="dir_e8a2e446cf73a5a1ae0ad6a5a21b6d03.html" title="util" alt="" coords="27,148,99,196"/>
+<area shape="rect" id="edge1-headlabel" href="dir_000002_000004.html" title="1" alt="" coords="67,122,75,137"/>
+<area shape="rect" id="clust1" href="dir_58b01e52e53886b8d78ab5060a2cd2bd.html" title="kudu" alt="" coords="16,16,109,111"/>
+</map>
+</div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:shared__ptr_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="shared__ptr_8h.html">shared_ptr.h</a> <a href="shared__ptr_8h_source.html">[code]</a></td></tr>
+<tr class="memdesc:shared__ptr_8h"><td class="mdescLeft">&#160;</td><td class="mdescRight">Smart pointer typedefs for externally-faced code. <br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/dir_4eb331d85bb84eae27db9d0af49f6f99_dep.map b/releases/1.4.0/cpp-client-api/dir_4eb331d85bb84eae27db9d0af49f6f99_dep.map
new file mode 100644
index 0000000..22346a4
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/dir_4eb331d85bb84eae27db9d0af49f6f99_dep.map
@@ -0,0 +1,6 @@
+<map id="include/kudu/client" name="include/kudu/client">
+<area shape="rect" id="node1" href="dir_4eb331d85bb84eae27db9d0af49f6f99.html" title="client" alt="" coords="27,52,99,100"/>
+<area shape="rect" id="node2" href="dir_e8a2e446cf73a5a1ae0ad6a5a21b6d03.html" title="util" alt="" coords="27,148,99,196"/>
+<area shape="rect" id="edge1-headlabel" href="dir_000002_000004.html" title="1" alt="" coords="67,122,75,137"/>
+<area shape="rect" id="clust1" href="dir_58b01e52e53886b8d78ab5060a2cd2bd.html" title="kudu" alt="" coords="16,16,109,111"/>
+</map>
diff --git a/releases/1.4.0/cpp-client-api/dir_4eb331d85bb84eae27db9d0af49f6f99_dep.md5 b/releases/1.4.0/cpp-client-api/dir_4eb331d85bb84eae27db9d0af49f6f99_dep.md5
new file mode 100644
index 0000000..487ba34
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/dir_4eb331d85bb84eae27db9d0af49f6f99_dep.md5
@@ -0,0 +1 @@
+410b5126ceaa08af481ed5579b4f4da2
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/dir_4eb331d85bb84eae27db9d0af49f6f99_dep.png b/releases/1.4.0/cpp-client-api/dir_4eb331d85bb84eae27db9d0af49f6f99_dep.png
new file mode 100644
index 0000000..717f431
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/dir_4eb331d85bb84eae27db9d0af49f6f99_dep.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/dir_58b01e52e53886b8d78ab5060a2cd2bd.html b/releases/1.4.0/cpp-client-api/dir_58b01e52e53886b8d78ab5060a2cd2bd.html
new file mode 100644
index 0000000..81bc187
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/dir_58b01e52e53886b8d78ab5060a2cd2bd.html
@@ -0,0 +1,118 @@
+<!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.11"/>
+<title>Kudu C++ client API: include/kudu Directory Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li class="current"><a href="files.html"><span>File&#160;List</span></a></li>
+      <li><a href="globals.html"><span>File&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_58b01e52e53886b8d78ab5060a2cd2bd.html">kudu</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">kudu Directory Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="dynheader">
+Directory dependency graph for kudu:</div>
+<div class="dyncontent">
+<div class="center"><img src="dir_58b01e52e53886b8d78ab5060a2cd2bd_dep.png" border="0" usemap="#dir__58b01e52e53886b8d78ab5060a2cd2bd__dep" alt="include/kudu"/></div>
+<map name="dir__58b01e52e53886b8d78ab5060a2cd2bd__dep" id="dir__58b01e52e53886b8d78ab5060a2cd2bd__dep">
+<area shape="rect" id="node2" href="dir_4eb331d85bb84eae27db9d0af49f6f99.html" title="client" alt="" coords="133,63,205,111"/>
+<area shape="rect" id="node4" href="dir_e8a2e446cf73a5a1ae0ad6a5a21b6d03.html" title="util" alt="" coords="133,159,205,207"/>
+<area shape="rect" id="edge1-headlabel" href="dir_000002_000004.html" title="1" alt="" coords="174,133,182,148"/>
+<area shape="rect" id="node3" href="dir_a7d8e458a72ff63c89f2ceb44d9dd2f6.html" title="common" alt="" coords="37,63,109,111"/>
+<area shape="rect" id="clust2" href="dir_58b01e52e53886b8d78ab5060a2cd2bd.html" alt="" coords="27,52,312,217"/>
+<area shape="rect" id="clust1" href="dir_d44c64559bbebec7f509842c48db8b23.html" title="include" alt="" coords="16,16,323,228"/>
+</map>
+</div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="subdirs"></a>
+Directories</h2></td></tr>
+</table>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/dir_58b01e52e53886b8d78ab5060a2cd2bd_dep.map b/releases/1.4.0/cpp-client-api/dir_58b01e52e53886b8d78ab5060a2cd2bd_dep.map
new file mode 100644
index 0000000..fac8f30
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/dir_58b01e52e53886b8d78ab5060a2cd2bd_dep.map
@@ -0,0 +1,8 @@
+<map id="include/kudu" name="include/kudu">
+<area shape="rect" id="node2" href="dir_4eb331d85bb84eae27db9d0af49f6f99.html" title="client" alt="" coords="133,63,205,111"/>
+<area shape="rect" id="node4" href="dir_e8a2e446cf73a5a1ae0ad6a5a21b6d03.html" title="util" alt="" coords="133,159,205,207"/>
+<area shape="rect" id="edge1-headlabel" href="dir_000002_000004.html" title="1" alt="" coords="174,133,182,148"/>
+<area shape="rect" id="node3" href="dir_a7d8e458a72ff63c89f2ceb44d9dd2f6.html" title="common" alt="" coords="37,63,109,111"/>
+<area shape="rect" id="clust2" href="dir_58b01e52e53886b8d78ab5060a2cd2bd.html" alt="" coords="27,52,312,217"/>
+<area shape="rect" id="clust1" href="dir_d44c64559bbebec7f509842c48db8b23.html" title="include" alt="" coords="16,16,323,228"/>
+</map>
diff --git a/releases/1.4.0/cpp-client-api/dir_58b01e52e53886b8d78ab5060a2cd2bd_dep.md5 b/releases/1.4.0/cpp-client-api/dir_58b01e52e53886b8d78ab5060a2cd2bd_dep.md5
new file mode 100644
index 0000000..b746c15
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/dir_58b01e52e53886b8d78ab5060a2cd2bd_dep.md5
@@ -0,0 +1 @@
+d469b3f0a495909df0c721dac143928c
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/dir_58b01e52e53886b8d78ab5060a2cd2bd_dep.png b/releases/1.4.0/cpp-client-api/dir_58b01e52e53886b8d78ab5060a2cd2bd_dep.png
new file mode 100644
index 0000000..89a6093
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/dir_58b01e52e53886b8d78ab5060a2cd2bd_dep.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/dir_a7d8e458a72ff63c89f2ceb44d9dd2f6.html b/releases/1.4.0/cpp-client-api/dir_a7d8e458a72ff63c89f2ceb44d9dd2f6.html
new file mode 100644
index 0000000..8d0c19f
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/dir_a7d8e458a72ff63c89f2ceb44d9dd2f6.html
@@ -0,0 +1,105 @@
+<!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.11"/>
+<title>Kudu C++ client API: include/kudu/common Directory Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li class="current"><a href="files.html"><span>File&#160;List</span></a></li>
+      <li><a href="globals.html"><span>File&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_58b01e52e53886b8d78ab5060a2cd2bd.html">kudu</a></li><li class="navelem"><a class="el" href="dir_a7d8e458a72ff63c89f2ceb44d9dd2f6.html">common</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">common Directory Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
+Files</h2></td></tr>
+</table>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/dir_d44c64559bbebec7f509842c48db8b23.html b/releases/1.4.0/cpp-client-api/dir_d44c64559bbebec7f509842c48db8b23.html
new file mode 100644
index 0000000..742cea4
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/dir_d44c64559bbebec7f509842c48db8b23.html
@@ -0,0 +1,114 @@
+<!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.11"/>
+<title>Kudu C++ client API: include Directory Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li class="current"><a href="files.html"><span>File&#160;List</span></a></li>
+      <li><a href="globals.html"><span>File&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">include Directory Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="dynheader">
+Directory dependency graph for include:</div>
+<div class="dyncontent">
+<div class="center"><img src="dir_d44c64559bbebec7f509842c48db8b23_dep.png" border="0" usemap="#dir__d44c64559bbebec7f509842c48db8b23__dep" alt="include"/></div>
+<map name="dir__d44c64559bbebec7f509842c48db8b23__dep" id="dir__d44c64559bbebec7f509842c48db8b23__dep">
+<area shape="rect" id="node2" href="dir_58b01e52e53886b8d78ab5060a2cd2bd.html" title="kudu" alt="" coords="27,27,99,75"/>
+<area shape="rect" id="clust1" href="dir_d44c64559bbebec7f509842c48db8b23.html" alt="" coords="16,16,205,85"/>
+</map>
+</div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="subdirs"></a>
+Directories</h2></td></tr>
+</table>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/dir_d44c64559bbebec7f509842c48db8b23_dep.map b/releases/1.4.0/cpp-client-api/dir_d44c64559bbebec7f509842c48db8b23_dep.map
new file mode 100644
index 0000000..6451ad3
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/dir_d44c64559bbebec7f509842c48db8b23_dep.map
@@ -0,0 +1,4 @@
+<map id="include" name="include">
+<area shape="rect" id="node2" href="dir_58b01e52e53886b8d78ab5060a2cd2bd.html" title="kudu" alt="" coords="27,27,99,75"/>
+<area shape="rect" id="clust1" href="dir_d44c64559bbebec7f509842c48db8b23.html" alt="" coords="16,16,205,85"/>
+</map>
diff --git a/releases/1.4.0/cpp-client-api/dir_d44c64559bbebec7f509842c48db8b23_dep.md5 b/releases/1.4.0/cpp-client-api/dir_d44c64559bbebec7f509842c48db8b23_dep.md5
new file mode 100644
index 0000000..8a6d8d2
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/dir_d44c64559bbebec7f509842c48db8b23_dep.md5
@@ -0,0 +1 @@
+578b292c72dde89c530aacbf55da6710
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/dir_d44c64559bbebec7f509842c48db8b23_dep.png b/releases/1.4.0/cpp-client-api/dir_d44c64559bbebec7f509842c48db8b23_dep.png
new file mode 100644
index 0000000..9e93060
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/dir_d44c64559bbebec7f509842c48db8b23_dep.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/dir_e8a2e446cf73a5a1ae0ad6a5a21b6d03.html b/releases/1.4.0/cpp-client-api/dir_e8a2e446cf73a5a1ae0ad6a5a21b6d03.html
new file mode 100644
index 0000000..30c923e
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/dir_e8a2e446cf73a5a1ae0ad6a5a21b6d03.html
@@ -0,0 +1,107 @@
+<!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.11"/>
+<title>Kudu C++ client API: include/kudu/util Directory Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li class="current"><a href="files.html"><span>File&#160;List</span></a></li>
+      <li><a href="globals.html"><span>File&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_58b01e52e53886b8d78ab5060a2cd2bd.html">kudu</a></li><li class="navelem"><a class="el" href="dir_e8a2e446cf73a5a1ae0ad6a5a21b6d03.html">util</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">util Directory Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:status_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="status_8h.html">status.h</a> <a href="status_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/doc.png b/releases/1.4.0/cpp-client-api/doc.png
new file mode 100644
index 0000000..17edabf
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/doc.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/doxygen.css b/releases/1.4.0/cpp-client-api/doxygen.css
new file mode 100644
index 0000000..1425ec5
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/doxygen.css
@@ -0,0 +1,1475 @@
+/* The standard CSS for doxygen 1.8.11 */
+
+body, table, div, p, dl {
+	font: 400 14px/22px Roboto,sans-serif;
+}
+
+/* @group Heading Levels */
+
+h1.groupheader {
+	font-size: 150%;
+}
+
+.title {
+	font: 400 14px/28px Roboto,sans-serif;
+	font-size: 150%;
+	font-weight: bold;
+	margin: 10px 2px;
+}
+
+h2.groupheader {
+	border-bottom: 1px solid #879ECB;
+	color: #354C7B;
+	font-size: 150%;
+	font-weight: normal;
+	margin-top: 1.75em;
+	padding-top: 8px;
+	padding-bottom: 4px;
+	width: 100%;
+}
+
+h3.groupheader {
+	font-size: 100%;
+}
+
+h1, h2, h3, h4, h5, h6 {
+	-webkit-transition: text-shadow 0.5s linear;
+	-moz-transition: text-shadow 0.5s linear;
+	-ms-transition: text-shadow 0.5s linear;
+	-o-transition: text-shadow 0.5s linear;
+	transition: text-shadow 0.5s linear;
+	margin-right: 15px;
+}
+
+h1.glow, h2.glow, h3.glow, h4.glow, h5.glow, h6.glow {
+	text-shadow: 0 0 15px cyan;
+}
+
+dt {
+	font-weight: bold;
+}
+
+div.multicol {
+	-moz-column-gap: 1em;
+	-webkit-column-gap: 1em;
+	-moz-column-count: 3;
+	-webkit-column-count: 3;
+}
+
+p.startli, p.startdd {
+	margin-top: 2px;
+}
+
+p.starttd {
+	margin-top: 0px;
+}
+
+p.endli {
+	margin-bottom: 0px;
+}
+
+p.enddd {
+	margin-bottom: 4px;
+}
+
+p.endtd {
+	margin-bottom: 2px;
+}
+
+/* @end */
+
+caption {
+	font-weight: bold;
+}
+
+span.legend {
+        font-size: 70%;
+        text-align: center;
+}
+
+h3.version {
+        font-size: 90%;
+        text-align: center;
+}
+
+div.qindex, div.navtab{
+	background-color: #EBEFF6;
+	border: 1px solid #A3B4D7;
+	text-align: center;
+}
+
+div.qindex, div.navpath {
+	width: 100%;
+	line-height: 140%;
+}
+
+div.navtab {
+	margin-right: 15px;
+}
+
+/* @group Link Styling */
+
+a {
+	color: #3D578C;
+	font-weight: normal;
+	text-decoration: none;
+}
+
+.contents a:visited {
+	color: #4665A2;
+}
+
+a:hover {
+	text-decoration: underline;
+}
+
+a.qindex {
+	font-weight: bold;
+}
+
+a.qindexHL {
+	font-weight: bold;
+	background-color: #9CAFD4;
+	color: #ffffff;
+	border: 1px double #869DCA;
+}
+
+.contents a.qindexHL:visited {
+        color: #ffffff;
+}
+
+a.el {
+	font-weight: bold;
+}
+
+a.elRef {
+}
+
+a.code, a.code:visited, a.line, a.line:visited {
+	color: #4665A2; 
+}
+
+a.codeRef, a.codeRef:visited, a.lineRef, a.lineRef:visited {
+	color: #4665A2; 
+}
+
+/* @end */
+
+dl.el {
+	margin-left: -1cm;
+}
+
+pre.fragment {
+        border: 1px solid #C4CFE5;
+        background-color: #FBFCFD;
+        padding: 4px 6px;
+        margin: 4px 8px 4px 2px;
+        overflow: auto;
+        word-wrap: break-word;
+        font-size:  9pt;
+        line-height: 125%;
+        font-family: monospace, fixed;
+        font-size: 105%;
+}
+
+div.fragment {
+        padding: 4px 6px;
+        margin: 4px 8px 4px 2px;
+	background-color: #FBFCFD;
+	border: 1px solid #C4CFE5;
+}
+
+div.line {
+	font-family: monospace, fixed;
+        font-size: 13px;
+	min-height: 13px;
+	line-height: 1.0;
+	text-wrap: unrestricted;
+	white-space: -moz-pre-wrap; /* Moz */
+	white-space: -pre-wrap;     /* Opera 4-6 */
+	white-space: -o-pre-wrap;   /* Opera 7 */
+	white-space: pre-wrap;      /* CSS3  */
+	word-wrap: break-word;      /* IE 5.5+ */
+	text-indent: -53px;
+	padding-left: 53px;
+	padding-bottom: 0px;
+	margin: 0px;
+	-webkit-transition-property: background-color, box-shadow;
+	-webkit-transition-duration: 0.5s;
+	-moz-transition-property: background-color, box-shadow;
+	-moz-transition-duration: 0.5s;
+	-ms-transition-property: background-color, box-shadow;
+	-ms-transition-duration: 0.5s;
+	-o-transition-property: background-color, box-shadow;
+	-o-transition-duration: 0.5s;
+	transition-property: background-color, box-shadow;
+	transition-duration: 0.5s;
+}
+
+div.line:after {
+    content:"\000A";
+    white-space: pre;
+}
+
+div.line.glow {
+	background-color: cyan;
+	box-shadow: 0 0 10px cyan;
+}
+
+
+span.lineno {
+	padding-right: 4px;
+	text-align: right;
+	border-right: 2px solid #0F0;
+	background-color: #E8E8E8;
+        white-space: pre;
+}
+span.lineno a {
+	background-color: #D8D8D8;
+}
+
+span.lineno a:hover {
+	background-color: #C8C8C8;
+}
+
+div.ah, span.ah {
+	background-color: black;
+	font-weight: bold;
+	color: #ffffff;
+	margin-bottom: 3px;
+	margin-top: 3px;
+	padding: 0.2em;
+	border: solid thin #333;
+	border-radius: 0.5em;
+	-webkit-border-radius: .5em;
+	-moz-border-radius: .5em;
+	box-shadow: 2px 2px 3px #999;
+	-webkit-box-shadow: 2px 2px 3px #999;
+	-moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px;
+	background-image: -webkit-gradient(linear, left top, left bottom, from(#eee), to(#000),color-stop(0.3, #444));
+	background-image: -moz-linear-gradient(center top, #eee 0%, #444 40%, #000 110%);
+}
+
+div.classindex ul {
+        list-style: none;
+        padding-left: 0;
+}
+
+div.classindex span.ai {
+        display: inline-block;
+}
+
+div.groupHeader {
+	margin-left: 16px;
+	margin-top: 12px;
+	font-weight: bold;
+}
+
+div.groupText {
+	margin-left: 16px;
+	font-style: italic;
+}
+
+body {
+	background-color: white;
+	color: black;
+        margin: 0;
+}
+
+div.contents {
+	margin-top: 10px;
+	margin-left: 12px;
+	margin-right: 8px;
+}
+
+td.indexkey {
+	background-color: #EBEFF6;
+	font-weight: bold;
+	border: 1px solid #C4CFE5;
+	margin: 2px 0px 2px 0;
+	padding: 2px 10px;
+        white-space: nowrap;
+        vertical-align: top;
+}
+
+td.indexvalue {
+	background-color: #EBEFF6;
+	border: 1px solid #C4CFE5;
+	padding: 2px 10px;
+	margin: 2px 0px;
+}
+
+tr.memlist {
+	background-color: #EEF1F7;
+}
+
+p.formulaDsp {
+	text-align: center;
+}
+
+img.formulaDsp {
+	
+}
+
+img.formulaInl {
+	vertical-align: middle;
+}
+
+div.center {
+	text-align: center;
+        margin-top: 0px;
+        margin-bottom: 0px;
+        padding: 0px;
+}
+
+div.center img {
+	border: 0px;
+}
+
+address.footer {
+	text-align: right;
+	padding-right: 12px;
+}
+
+img.footer {
+	border: 0px;
+	vertical-align: middle;
+}
+
+/* @group Code Colorization */
+
+span.keyword {
+	color: #008000
+}
+
+span.keywordtype {
+	color: #604020
+}
+
+span.keywordflow {
+	color: #e08000
+}
+
+span.comment {
+	color: #800000
+}
+
+span.preprocessor {
+	color: #806020
+}
+
+span.stringliteral {
+	color: #002080
+}
+
+span.charliteral {
+	color: #008080
+}
+
+span.vhdldigit { 
+	color: #ff00ff 
+}
+
+span.vhdlchar { 
+	color: #000000 
+}
+
+span.vhdlkeyword { 
+	color: #700070 
+}
+
+span.vhdllogic { 
+	color: #ff0000 
+}
+
+blockquote {
+        background-color: #F7F8FB;
+        border-left: 2px solid #9CAFD4;
+        margin: 0 24px 0 4px;
+        padding: 0 12px 0 16px;
+}
+
+/* @end */
+
+/*
+.search {
+	color: #003399;
+	font-weight: bold;
+}
+
+form.search {
+	margin-bottom: 0px;
+	margin-top: 0px;
+}
+
+input.search {
+	font-size: 75%;
+	color: #000080;
+	font-weight: normal;
+	background-color: #e8eef2;
+}
+*/
+
+td.tiny {
+	font-size: 75%;
+}
+
+.dirtab {
+	padding: 4px;
+	border-collapse: collapse;
+	border: 1px solid #A3B4D7;
+}
+
+th.dirtab {
+	background: #EBEFF6;
+	font-weight: bold;
+}
+
+hr {
+	height: 0px;
+	border: none;
+	border-top: 1px solid #4A6AAA;
+}
+
+hr.footer {
+	height: 1px;
+}
+
+/* @group Member Descriptions */
+
+table.memberdecls {
+	border-spacing: 0px;
+	padding: 0px;
+}
+
+.memberdecls td, .fieldtable tr {
+	-webkit-transition-property: background-color, box-shadow;
+	-webkit-transition-duration: 0.5s;
+	-moz-transition-property: background-color, box-shadow;
+	-moz-transition-duration: 0.5s;
+	-ms-transition-property: background-color, box-shadow;
+	-ms-transition-duration: 0.5s;
+	-o-transition-property: background-color, box-shadow;
+	-o-transition-duration: 0.5s;
+	transition-property: background-color, box-shadow;
+	transition-duration: 0.5s;
+}
+
+.memberdecls td.glow, .fieldtable tr.glow {
+	background-color: cyan;
+	box-shadow: 0 0 15px cyan;
+}
+
+.mdescLeft, .mdescRight,
+.memItemLeft, .memItemRight,
+.memTemplItemLeft, .memTemplItemRight, .memTemplParams {
+	background-color: #F9FAFC;
+	border: none;
+	margin: 4px;
+	padding: 1px 0 0 8px;
+}
+
+.mdescLeft, .mdescRight {
+	padding: 0px 8px 4px 8px;
+	color: #555;
+}
+
+.memSeparator {
+        border-bottom: 1px solid #DEE4F0;
+        line-height: 1px;
+        margin: 0px;
+        padding: 0px;
+}
+
+.memItemLeft, .memTemplItemLeft {
+        white-space: nowrap;
+}
+
+.memItemRight {
+	width: 100%;
+}
+
+.memTemplParams {
+	color: #4665A2;
+        white-space: nowrap;
+	font-size: 80%;
+}
+
+/* @end */
+
+/* @group Member Details */
+
+/* Styles for detailed member documentation */
+
+.memtemplate {
+	font-size: 80%;
+	color: #4665A2;
+	font-weight: normal;
+	margin-left: 9px;
+}
+
+.memnav {
+	background-color: #EBEFF6;
+	border: 1px solid #A3B4D7;
+	text-align: center;
+	margin: 2px;
+	margin-right: 15px;
+	padding: 2px;
+}
+
+.mempage {
+	width: 100%;
+}
+
+.memitem {
+	padding: 0;
+	margin-bottom: 10px;
+	margin-right: 5px;
+        -webkit-transition: box-shadow 0.5s linear;
+        -moz-transition: box-shadow 0.5s linear;
+        -ms-transition: box-shadow 0.5s linear;
+        -o-transition: box-shadow 0.5s linear;
+        transition: box-shadow 0.5s linear;
+        display: table !important;
+        width: 100%;
+}
+
+.memitem.glow {
+         box-shadow: 0 0 15px cyan;
+}
+
+.memname {
+        font-weight: bold;
+        margin-left: 6px;
+}
+
+.memname td {
+	vertical-align: bottom;
+}
+
+.memproto, dl.reflist dt {
+        border-top: 1px solid #A8B8D9;
+        border-left: 1px solid #A8B8D9;
+        border-right: 1px solid #A8B8D9;
+        padding: 6px 0px 6px 0px;
+        color: #253555;
+        font-weight: bold;
+        text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9);
+        background-image:url('nav_f.png');
+        background-repeat:repeat-x;
+        background-color: #E2E8F2;
+        /* opera specific markup */
+        box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
+        border-top-right-radius: 4px;
+        border-top-left-radius: 4px;
+        /* firefox specific markup */
+        -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px;
+        -moz-border-radius-topright: 4px;
+        -moz-border-radius-topleft: 4px;
+        /* webkit specific markup */
+        -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
+        -webkit-border-top-right-radius: 4px;
+        -webkit-border-top-left-radius: 4px;
+
+}
+
+.memdoc, dl.reflist dd {
+        border-bottom: 1px solid #A8B8D9;      
+        border-left: 1px solid #A8B8D9;      
+        border-right: 1px solid #A8B8D9; 
+        padding: 6px 10px 2px 10px;
+        background-color: #FBFCFD;
+        border-top-width: 0;
+        background-image:url('nav_g.png');
+        background-repeat:repeat-x;
+        background-color: #FFFFFF;
+        /* opera specific markup */
+        border-bottom-left-radius: 4px;
+        border-bottom-right-radius: 4px;
+        box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
+        /* firefox specific markup */
+        -moz-border-radius-bottomleft: 4px;
+        -moz-border-radius-bottomright: 4px;
+        -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px;
+        /* webkit specific markup */
+        -webkit-border-bottom-left-radius: 4px;
+        -webkit-border-bottom-right-radius: 4px;
+        -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
+}
+
+dl.reflist dt {
+        padding: 5px;
+}
+
+dl.reflist dd {
+        margin: 0px 0px 10px 0px;
+        padding: 5px;
+}
+
+.paramkey {
+	text-align: right;
+}
+
+.paramtype {
+	white-space: nowrap;
+}
+
+.paramname {
+	color: #602020;
+	white-space: nowrap;
+}
+.paramname em {
+	font-style: normal;
+}
+.paramname code {
+        line-height: 14px;
+}
+
+.params, .retval, .exception, .tparams {
+        margin-left: 0px;
+        padding-left: 0px;
+}       
+
+.params .paramname, .retval .paramname {
+        font-weight: bold;
+        vertical-align: top;
+}
+        
+.params .paramtype {
+        font-style: italic;
+        vertical-align: top;
+}       
+        
+.params .paramdir {
+        font-family: "courier new",courier,monospace;
+        vertical-align: top;
+}
+
+table.mlabels {
+	border-spacing: 0px;
+}
+
+td.mlabels-left {
+	width: 100%;
+	padding: 0px;
+}
+
+td.mlabels-right {
+	vertical-align: bottom;
+	padding: 0px;
+	white-space: nowrap;
+}
+
+span.mlabels {
+        margin-left: 8px;
+}
+
+span.mlabel {
+        background-color: #728DC1;
+        border-top:1px solid #5373B4;
+        border-left:1px solid #5373B4;
+        border-right:1px solid #C4CFE5;
+        border-bottom:1px solid #C4CFE5;
+	text-shadow: none;
+	color: white;
+	margin-right: 4px;
+	padding: 2px 3px;
+	border-radius: 3px;
+	font-size: 7pt;
+	white-space: nowrap;
+	vertical-align: middle;
+}
+
+
+
+/* @end */
+
+/* these are for tree view inside a (index) page */
+
+div.directory {
+        margin: 10px 0px;
+        border-top: 1px solid #9CAFD4;
+        border-bottom: 1px solid #9CAFD4;
+        width: 100%;
+}
+
+.directory table {
+        border-collapse:collapse;
+}
+
+.directory td {
+        margin: 0px;
+        padding: 0px;
+	vertical-align: top;
+}
+
+.directory td.entry {
+        white-space: nowrap;
+        padding-right: 6px;
+	padding-top: 3px;
+}
+
+.directory td.entry a {
+        outline:none;
+}
+
+.directory td.entry a img {
+        border: none;
+}
+
+.directory td.desc {
+        width: 100%;
+        padding-left: 6px;
+	padding-right: 6px;
+	padding-top: 3px;
+	border-left: 1px solid rgba(0,0,0,0.05);
+}
+
+.directory tr.even {
+	padding-left: 6px;
+	background-color: #F7F8FB;
+}
+
+.directory img {
+	vertical-align: -30%;
+}
+
+.directory .levels {
+        white-space: nowrap;
+        width: 100%;
+        text-align: right;
+        font-size: 9pt;
+}
+
+.directory .levels span {
+        cursor: pointer;
+        padding-left: 2px;
+        padding-right: 2px;
+	color: #3D578C;
+}
+
+.arrow {
+    color: #9CAFD4;
+    -webkit-user-select: none;
+    -khtml-user-select: none;
+    -moz-user-select: none;
+    -ms-user-select: none;
+    user-select: none;
+    cursor: pointer;
+    font-size: 80%;
+    display: inline-block;
+    width: 16px;
+    height: 22px;
+}
+
+.icon {
+    font-family: Arial, Helvetica;
+    font-weight: bold;
+    font-size: 12px;
+    height: 14px;
+    width: 16px;
+    display: inline-block;
+    background-color: #728DC1;
+    color: white;
+    text-align: center;
+    border-radius: 4px;
+    margin-left: 2px;
+    margin-right: 2px;
+}
+
+.icona {
+    width: 24px;
+    height: 22px;
+    display: inline-block;
+}
+
+.iconfopen {
+    width: 24px;
+    height: 18px;
+    margin-bottom: 4px;
+    background-image:url('folderopen.png');
+    background-position: 0px -4px;
+    background-repeat: repeat-y;
+    vertical-align:top;
+    display: inline-block;
+}
+
+.iconfclosed {
+    width: 24px;
+    height: 18px;
+    margin-bottom: 4px;
+    background-image:url('folderclosed.png');
+    background-position: 0px -4px;
+    background-repeat: repeat-y;
+    vertical-align:top;
+    display: inline-block;
+}
+
+.icondoc {
+    width: 24px;
+    height: 18px;
+    margin-bottom: 4px;
+    background-image:url('doc.png');
+    background-position: 0px -4px;
+    background-repeat: repeat-y;
+    vertical-align:top;
+    display: inline-block;
+}
+
+table.directory {
+    font: 400 14px Roboto,sans-serif;
+}
+
+/* @end */
+
+div.dynheader {
+        margin-top: 8px;
+	-webkit-touch-callout: none;
+	-webkit-user-select: none;
+	-khtml-user-select: none;
+	-moz-user-select: none;
+	-ms-user-select: none;
+	user-select: none;
+}
+
+address {
+	font-style: normal;
+	color: #2A3D61;
+}
+
+table.doxtable caption {
+	caption-side: top;
+}
+
+table.doxtable {
+	border-collapse:collapse;
+        margin-top: 4px;
+        margin-bottom: 4px;
+}
+
+table.doxtable td, table.doxtable th {
+	border: 1px solid #2D4068;
+	padding: 3px 7px 2px;
+}
+
+table.doxtable th {
+	background-color: #374F7F;
+	color: #FFFFFF;
+	font-size: 110%;
+	padding-bottom: 4px;
+	padding-top: 5px;
+}
+
+table.fieldtable {
+        /*width: 100%;*/
+        margin-bottom: 10px;
+        border: 1px solid #A8B8D9;
+        border-spacing: 0px;
+        -moz-border-radius: 4px;
+        -webkit-border-radius: 4px;
+        border-radius: 4px;
+        -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px;
+        -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15);
+        box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15);
+}
+
+.fieldtable td, .fieldtable th {
+        padding: 3px 7px 2px;
+}
+
+.fieldtable td.fieldtype, .fieldtable td.fieldname {
+        white-space: nowrap;
+        border-right: 1px solid #A8B8D9;
+        border-bottom: 1px solid #A8B8D9;
+        vertical-align: top;
+}
+
+.fieldtable td.fieldname {
+        padding-top: 3px;
+}
+
+.fieldtable td.fielddoc {
+        border-bottom: 1px solid #A8B8D9;
+        /*width: 100%;*/
+}
+
+.fieldtable td.fielddoc p:first-child {
+        margin-top: 0px;
+}       
+        
+.fieldtable td.fielddoc p:last-child {
+        margin-bottom: 2px;
+}
+
+.fieldtable tr:last-child td {
+        border-bottom: none;
+}
+
+.fieldtable th {
+        background-image:url('nav_f.png');
+        background-repeat:repeat-x;
+        background-color: #E2E8F2;
+        font-size: 90%;
+        color: #253555;
+        padding-bottom: 4px;
+        padding-top: 5px;
+        text-align:left;
+        -moz-border-radius-topleft: 4px;
+        -moz-border-radius-topright: 4px;
+        -webkit-border-top-left-radius: 4px;
+        -webkit-border-top-right-radius: 4px;
+        border-top-left-radius: 4px;
+        border-top-right-radius: 4px;
+        border-bottom: 1px solid #A8B8D9;
+}
+
+
+.tabsearch {
+	top: 0px;
+	left: 10px;
+	height: 36px;
+	background-image: url('tab_b.png');
+	z-index: 101;
+	overflow: hidden;
+	font-size: 13px;
+}
+
+.navpath ul
+{
+	font-size: 11px;
+	background-image:url('tab_b.png');
+	background-repeat:repeat-x;
+	background-position: 0 -5px;
+	height:30px;
+	line-height:30px;
+	color:#8AA0CC;
+	border:solid 1px #C2CDE4;
+	overflow:hidden;
+	margin:0px;
+	padding:0px;
+}
+
+.navpath li
+{
+	list-style-type:none;
+	float:left;
+	padding-left:10px;
+	padding-right:15px;
+	background-image:url('bc_s.png');
+	background-repeat:no-repeat;
+	background-position:right;
+	color:#364D7C;
+}
+
+.navpath li.navelem a
+{
+	height:32px;
+	display:block;
+	text-decoration: none;
+	outline: none;
+	color: #283A5D;
+	font-family: 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif;
+	text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9);
+	text-decoration: none;        
+}
+
+.navpath li.navelem a:hover
+{
+	color:#6884BD;
+}
+
+.navpath li.footer
+{
+        list-style-type:none;
+        float:right;
+        padding-left:10px;
+        padding-right:15px;
+        background-image:none;
+        background-repeat:no-repeat;
+        background-position:right;
+        color:#364D7C;
+        font-size: 8pt;
+}
+
+
+div.summary
+{
+	float: right;
+	font-size: 8pt;
+	padding-right: 5px;
+	width: 50%;
+	text-align: right;
+}       
+
+div.summary a
+{
+	white-space: nowrap;
+}
+
+table.classindex
+{
+        margin: 10px;
+        white-space: nowrap;
+        margin-left: 3%;
+        margin-right: 3%;
+        width: 94%;
+        border: 0;
+        border-spacing: 0; 
+        padding: 0;
+}
+
+div.ingroups
+{
+	font-size: 8pt;
+	width: 50%;
+	text-align: left;
+}
+
+div.ingroups a
+{
+	white-space: nowrap;
+}
+
+div.header
+{
+        background-image:url('nav_h.png');
+        background-repeat:repeat-x;
+	background-color: #F9FAFC;
+	margin:  0px;
+	border-bottom: 1px solid #C4CFE5;
+}
+
+div.headertitle
+{
+	padding: 5px 5px 5px 10px;
+}
+
+dl
+{
+        padding: 0 0 0 10px;
+}
+
+/* dl.note, dl.warning, dl.attention, dl.pre, dl.post, dl.invariant, dl.deprecated, dl.todo, dl.test, dl.bug */
+dl.section
+{
+	margin-left: 0px;
+	padding-left: 0px;
+}
+
+dl.note
+{
+        margin-left:-7px;
+        padding-left: 3px;
+        border-left:4px solid;
+        border-color: #D0C000;
+}
+
+dl.warning, dl.attention
+{
+        margin-left:-7px;
+        padding-left: 3px;
+        border-left:4px solid;
+        border-color: #FF0000;
+}
+
+dl.pre, dl.post, dl.invariant
+{
+        margin-left:-7px;
+        padding-left: 3px;
+        border-left:4px solid;
+        border-color: #00D000;
+}
+
+dl.deprecated
+{
+        margin-left:-7px;
+        padding-left: 3px;
+        border-left:4px solid;
+        border-color: #505050;
+}
+
+dl.todo
+{
+        margin-left:-7px;
+        padding-left: 3px;
+        border-left:4px solid;
+        border-color: #00C0E0;
+}
+
+dl.test
+{
+        margin-left:-7px;
+        padding-left: 3px;
+        border-left:4px solid;
+        border-color: #3030E0;
+}
+
+dl.bug
+{
+        margin-left:-7px;
+        padding-left: 3px;
+        border-left:4px solid;
+        border-color: #C08050;
+}
+
+dl.section dd {
+	margin-bottom: 6px;
+}
+
+
+#projectlogo
+{
+	text-align: center;
+	vertical-align: bottom;
+	border-collapse: separate;
+}
+ 
+#projectlogo img
+{ 
+	border: 0px none;
+}
+ 
+#projectalign
+{
+        vertical-align: middle;
+}
+
+#projectname
+{
+	font: 300% Tahoma, Arial,sans-serif;
+	margin: 0px;
+	padding: 2px 0px;
+}
+    
+#projectbrief
+{
+	font: 120% Tahoma, Arial,sans-serif;
+	margin: 0px;
+	padding: 0px;
+}
+
+#projectnumber
+{
+	font: 50% Tahoma, Arial,sans-serif;
+	margin: 0px;
+	padding: 0px;
+}
+
+#titlearea
+{
+	padding: 0px;
+	margin: 0px;
+	width: 100%;
+	border-bottom: 1px solid #5373B4;
+}
+
+.image
+{
+        text-align: center;
+}
+
+.dotgraph
+{
+        text-align: center;
+}
+
+.mscgraph
+{
+        text-align: center;
+}
+
+.diagraph
+{
+        text-align: center;
+}
+
+.caption
+{
+	font-weight: bold;
+}
+
+div.zoom
+{
+	border: 1px solid #90A5CE;
+}
+
+dl.citelist {
+        margin-bottom:50px;
+}
+
+dl.citelist dt {
+        color:#334975;
+        float:left;
+        font-weight:bold;
+        margin-right:10px;
+        padding:5px;
+}
+
+dl.citelist dd {
+        margin:2px 0;
+        padding:5px 0;
+}
+
+div.toc {
+        padding: 14px 25px;
+        background-color: #F4F6FA;
+        border: 1px solid #D8DFEE;
+        border-radius: 7px 7px 7px 7px;
+        float: right;
+        height: auto;
+        margin: 0 8px 10px 10px;
+        width: 200px;
+}
+
+div.toc li {
+        background: url("bdwn.png") no-repeat scroll 0 5px transparent;
+        font: 10px/1.2 Verdana,DejaVu Sans,Geneva,sans-serif;
+        margin-top: 5px;
+        padding-left: 10px;
+        padding-top: 2px;
+}
+
+div.toc h3 {
+        font: bold 12px/1.2 Arial,FreeSans,sans-serif;
+	color: #4665A2;
+        border-bottom: 0 none;
+        margin: 0;
+}
+
+div.toc ul {
+        list-style: none outside none;
+        border: medium none;
+        padding: 0px;
+}       
+
+div.toc li.level1 {
+        margin-left: 0px;
+}
+
+div.toc li.level2 {
+        margin-left: 15px;
+}
+
+div.toc li.level3 {
+        margin-left: 30px;
+}
+
+div.toc li.level4 {
+        margin-left: 45px;
+}
+
+.inherit_header {
+        font-weight: bold;
+        color: gray;
+        cursor: pointer;
+	-webkit-touch-callout: none;
+	-webkit-user-select: none;
+	-khtml-user-select: none;
+	-moz-user-select: none;
+	-ms-user-select: none;
+	user-select: none;
+}
+
+.inherit_header td {
+        padding: 6px 0px 2px 5px;
+}
+
+.inherit {
+        display: none;
+}
+
+tr.heading h2 {
+        margin-top: 12px;
+        margin-bottom: 4px;
+}
+
+/* tooltip related style info */
+
+.ttc {
+        position: absolute;
+        display: none;
+}
+
+#powerTip {
+	cursor: default;
+	white-space: nowrap;
+	background-color: white;
+	border: 1px solid gray;
+	border-radius: 4px 4px 4px 4px;
+	box-shadow: 1px 1px 7px gray;
+	display: none;
+	font-size: smaller;
+	max-width: 80%;
+	opacity: 0.9;
+	padding: 1ex 1em 1em;
+	position: absolute;
+	z-index: 2147483647;
+}
+
+#powerTip div.ttdoc {
+        color: grey;
+	font-style: italic;
+}
+
+#powerTip div.ttname a {
+        font-weight: bold;
+}
+
+#powerTip div.ttname {
+        font-weight: bold;
+}
+
+#powerTip div.ttdeci {
+        color: #006318;
+}
+
+#powerTip div {
+        margin: 0px;
+        padding: 0px;
+        font: 12px/16px Roboto,sans-serif;
+}
+
+#powerTip:before, #powerTip:after {
+	content: "";
+	position: absolute;
+	margin: 0px;
+}
+
+#powerTip.n:after,  #powerTip.n:before,
+#powerTip.s:after,  #powerTip.s:before,
+#powerTip.w:after,  #powerTip.w:before,
+#powerTip.e:after,  #powerTip.e:before,
+#powerTip.ne:after, #powerTip.ne:before,
+#powerTip.se:after, #powerTip.se:before,
+#powerTip.nw:after, #powerTip.nw:before,
+#powerTip.sw:after, #powerTip.sw:before {
+	border: solid transparent;
+	content: " ";
+	height: 0;
+	width: 0;
+	position: absolute;
+}
+
+#powerTip.n:after,  #powerTip.s:after,
+#powerTip.w:after,  #powerTip.e:after,
+#powerTip.nw:after, #powerTip.ne:after,
+#powerTip.sw:after, #powerTip.se:after {
+	border-color: rgba(255, 255, 255, 0);
+}
+
+#powerTip.n:before,  #powerTip.s:before,
+#powerTip.w:before,  #powerTip.e:before,
+#powerTip.nw:before, #powerTip.ne:before,
+#powerTip.sw:before, #powerTip.se:before {
+	border-color: rgba(128, 128, 128, 0);
+}
+
+#powerTip.n:after,  #powerTip.n:before,
+#powerTip.ne:after, #powerTip.ne:before,
+#powerTip.nw:after, #powerTip.nw:before {
+	top: 100%;
+}
+
+#powerTip.n:after, #powerTip.ne:after, #powerTip.nw:after {
+	border-top-color: #ffffff;
+	border-width: 10px;
+	margin: 0px -10px;
+}
+#powerTip.n:before {
+	border-top-color: #808080;
+	border-width: 11px;
+	margin: 0px -11px;
+}
+#powerTip.n:after, #powerTip.n:before {
+	left: 50%;
+}
+
+#powerTip.nw:after, #powerTip.nw:before {
+	right: 14px;
+}
+
+#powerTip.ne:after, #powerTip.ne:before {
+	left: 14px;
+}
+
+#powerTip.s:after,  #powerTip.s:before,
+#powerTip.se:after, #powerTip.se:before,
+#powerTip.sw:after, #powerTip.sw:before {
+	bottom: 100%;
+}
+
+#powerTip.s:after, #powerTip.se:after, #powerTip.sw:after {
+	border-bottom-color: #ffffff;
+	border-width: 10px;
+	margin: 0px -10px;
+}
+
+#powerTip.s:before, #powerTip.se:before, #powerTip.sw:before {
+	border-bottom-color: #808080;
+	border-width: 11px;
+	margin: 0px -11px;
+}
+
+#powerTip.s:after, #powerTip.s:before {
+	left: 50%;
+}
+
+#powerTip.sw:after, #powerTip.sw:before {
+	right: 14px;
+}
+
+#powerTip.se:after, #powerTip.se:before {
+	left: 14px;
+}
+
+#powerTip.e:after, #powerTip.e:before {
+	left: 100%;
+}
+#powerTip.e:after {
+	border-left-color: #ffffff;
+	border-width: 10px;
+	top: 50%;
+	margin-top: -10px;
+}
+#powerTip.e:before {
+	border-left-color: #808080;
+	border-width: 11px;
+	top: 50%;
+	margin-top: -11px;
+}
+
+#powerTip.w:after, #powerTip.w:before {
+	right: 100%;
+}
+#powerTip.w:after {
+	border-right-color: #ffffff;
+	border-width: 10px;
+	top: 50%;
+	margin-top: -10px;
+}
+#powerTip.w:before {
+	border-right-color: #808080;
+	border-width: 11px;
+	top: 50%;
+	margin-top: -11px;
+}
+
+@media print
+{
+  #top { display: none; }
+  #side-nav { display: none; }
+  #nav-path { display: none; }
+  body { overflow:visible; }
+  h1, h2, h3, h4, h5, h6 { page-break-after: avoid; }
+  .summary { display: none; }
+  .memitem { page-break-inside: avoid; }
+  #doc-content
+  {
+    margin-left:0 !important;
+    height:auto !important;
+    width:auto !important;
+    overflow:inherit;
+    display:inline;
+  }
+}
+
diff --git a/releases/1.4.0/cpp-client-api/doxygen.png b/releases/1.4.0/cpp-client-api/doxygen.png
new file mode 100644
index 0000000..3ff17d8
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/doxygen.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/dynsections.js b/releases/1.4.0/cpp-client-api/dynsections.js
new file mode 100644
index 0000000..85e1836
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/dynsections.js
@@ -0,0 +1,97 @@
+function toggleVisibility(linkObj)
+{
+ var base = $(linkObj).attr('id');
+ var summary = $('#'+base+'-summary');
+ var content = $('#'+base+'-content');
+ var trigger = $('#'+base+'-trigger');
+ var src=$(trigger).attr('src');
+ if (content.is(':visible')===true) {
+   content.hide();
+   summary.show();
+   $(linkObj).addClass('closed').removeClass('opened');
+   $(trigger).attr('src',src.substring(0,src.length-8)+'closed.png');
+ } else {
+   content.show();
+   summary.hide();
+   $(linkObj).removeClass('closed').addClass('opened');
+   $(trigger).attr('src',src.substring(0,src.length-10)+'open.png');
+ } 
+ return false;
+}
+
+function updateStripes()
+{
+  $('table.directory tr').
+       removeClass('even').filter(':visible:even').addClass('even');
+}
+
+function toggleLevel(level)
+{
+  $('table.directory tr').each(function() {
+    var l = this.id.split('_').length-1;
+    var i = $('#img'+this.id.substring(3));
+    var a = $('#arr'+this.id.substring(3));
+    if (l<level+1) {
+      i.removeClass('iconfopen iconfclosed').addClass('iconfopen');
+      a.html('&#9660;');
+      $(this).show();
+    } else if (l==level+1) {
+      i.removeClass('iconfclosed iconfopen').addClass('iconfclosed');
+      a.html('&#9658;');
+      $(this).show();
+    } else {
+      $(this).hide();
+    }
+  });
+  updateStripes();
+}
+
+function toggleFolder(id)
+{
+  // the clicked row
+  var currentRow = $('#row_'+id);
+
+  // all rows after the clicked row
+  var rows = currentRow.nextAll("tr");
+
+  var re = new RegExp('^row_'+id+'\\d+_$', "i"); //only one sub
+
+  // only match elements AFTER this one (can't hide elements before)
+  var childRows = rows.filter(function() { return this.id.match(re); });
+
+  // first row is visible we are HIDING
+  if (childRows.filter(':first').is(':visible')===true) {
+    // replace down arrow by right arrow for current row
+    var currentRowSpans = currentRow.find("span");
+    currentRowSpans.filter(".iconfopen").removeClass("iconfopen").addClass("iconfclosed");
+    currentRowSpans.filter(".arrow").html('&#9658;');
+    rows.filter("[id^=row_"+id+"]").hide(); // hide all children
+  } else { // we are SHOWING
+    // replace right arrow by down arrow for current row
+    var currentRowSpans = currentRow.find("span");
+    currentRowSpans.filter(".iconfclosed").removeClass("iconfclosed").addClass("iconfopen");
+    currentRowSpans.filter(".arrow").html('&#9660;');
+    // replace down arrows by right arrows for child rows
+    var childRowsSpans = childRows.find("span");
+    childRowsSpans.filter(".iconfopen").removeClass("iconfopen").addClass("iconfclosed");
+    childRowsSpans.filter(".arrow").html('&#9658;');
+    childRows.show(); //show all children
+  }
+  updateStripes();
+}
+
+
+function toggleInherit(id)
+{
+  var rows = $('tr.inherit.'+id);
+  var img = $('tr.inherit_header.'+id+' img');
+  var src = $(img).attr('src');
+  if (rows.filter(':first').is(':visible')===true) {
+    rows.css('display','none');
+    $(img).attr('src',src.substring(0,src.length-8)+'closed.png');
+  } else {
+    rows.css('display','table-row'); // using show() causes jump in firefox
+    $(img).attr('src',src.substring(0,src.length-10)+'open.png');
+  }
+}
+
diff --git a/releases/1.4.0/cpp-client-api/files.html b/releases/1.4.0/cpp-client-api/files.html
new file mode 100644
index 0000000..f61cf97
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/files.html
@@ -0,0 +1,122 @@
+<!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.11"/>
+<title>Kudu C++ client API: File 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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li class="current"><a href="files.html"><span>File&#160;List</span></a></li>
+      <li><a href="globals.html"><span>File&#160;Members</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- 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 class="header">
+  <div class="headertitle">
+<div class="title">File List</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock">Here is a list of all documented files with brief descriptions:</div><div class="directory">
+<div class="levels">[detail level <span onclick="javascript:toggleLevel(1);">1</span><span onclick="javascript:toggleLevel(2);">2</span><span onclick="javascript:toggleLevel(3);">3</span><span onclick="javascript:toggleLevel(4);">4</span>]</div><table class="directory">
+<tr id="row_0_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_0_" class="arrow" onclick="toggleFolder('0_')">&#9660;</span><span id="img_0_" class="iconfopen" onclick="toggleFolder('0_')">&#160;</span><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html" target="_self">include</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span id="arr_0_0_" class="arrow" onclick="toggleFolder('0_0_')">&#9660;</span><span id="img_0_0_" class="iconfopen" onclick="toggleFolder('0_0_')">&#160;</span><a class="el" href="dir_58b01e52e53886b8d78ab5060a2cd2bd.html" target="_self">kudu</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_0_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span id="arr_0_0_0_" class="arrow" onclick="toggleFolder('0_0_0_')">&#9660;</span><span id="img_0_0_0_" class="iconfopen" onclick="toggleFolder('0_0_0_')">&#160;</span><a class="el" href="dir_4eb331d85bb84eae27db9d0af49f6f99.html" target="_self">client</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_0_0_"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><a href="callbacks_8h_source.html"><span class="icondoc"></span></a><b>callbacks.h</b></td><td class="desc"></td></tr>
+<tr id="row_0_0_0_1_" class="even"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><a href="client_8h_source.html"><span class="icondoc"></span></a><b>client.h</b></td><td class="desc"></td></tr>
+<tr id="row_0_0_0_2_"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><a href="resource__metrics_8h_source.html"><span class="icondoc"></span></a><b>resource_metrics.h</b></td><td class="desc"></td></tr>
+<tr id="row_0_0_0_3_" class="even"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><a href="row__result_8h_source.html"><span class="icondoc"></span></a><b>row_result.h</b></td><td class="desc"></td></tr>
+<tr id="row_0_0_0_4_"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><a href="scan__batch_8h_source.html"><span class="icondoc"></span></a><b>scan_batch.h</b></td><td class="desc"></td></tr>
+<tr id="row_0_0_0_5_" class="even"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><a href="scan__predicate_8h_source.html"><span class="icondoc"></span></a><b>scan_predicate.h</b></td><td class="desc"></td></tr>
+<tr id="row_0_0_0_6_"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><a href="schema_8h_source.html"><span class="icondoc"></span></a><b>schema.h</b></td><td class="desc"></td></tr>
+<tr id="row_0_0_0_7_" class="even"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><a href="shared__ptr_8h_source.html"><span class="icondoc"></span></a><a class="el" href="shared__ptr_8h.html" target="_self">shared_ptr.h</a></td><td class="desc">Smart pointer typedefs for externally-faced code </td></tr>
+<tr id="row_0_0_0_8_"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><a href="stubs_8h_source.html"><span class="icondoc"></span></a><b>stubs.h</b></td><td class="desc"></td></tr>
+<tr id="row_0_0_0_9_" class="even"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><a href="value_8h_source.html"><span class="icondoc"></span></a><b>value.h</b></td><td class="desc"></td></tr>
+<tr id="row_0_0_0_10_"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><a href="write__op_8h_source.html"><span class="icondoc"></span></a><b>write_op.h</b></td><td class="desc"></td></tr>
+<tr id="row_0_0_1_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span id="arr_0_0_1_" class="arrow" onclick="toggleFolder('0_0_1_')">&#9660;</span><span id="img_0_0_1_" class="iconfopen" onclick="toggleFolder('0_0_1_')">&#160;</span><a class="el" href="dir_a7d8e458a72ff63c89f2ceb44d9dd2f6.html" target="_self">common</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_1_0_"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><a href="partial__row_8h_source.html"><span class="icondoc"></span></a><b>partial_row.h</b></td><td class="desc"></td></tr>
+<tr id="row_0_0_2_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span id="arr_0_0_2_" class="arrow" onclick="toggleFolder('0_0_2_')">&#9660;</span><span id="img_0_0_2_" class="iconfopen" onclick="toggleFolder('0_0_2_')">&#160;</span><a class="el" href="dir_e8a2e446cf73a5a1ae0ad6a5a21b6d03.html" target="_self">util</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_2_0_"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><a href="kudu__export_8h_source.html"><span class="icondoc"></span></a><b>kudu_export.h</b></td><td class="desc"></td></tr>
+<tr id="row_0_0_2_1_" class="even"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><a href="monotime_8h_source.html"><span class="icondoc"></span></a><b>monotime.h</b></td><td class="desc"></td></tr>
+<tr id="row_0_0_2_2_"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><a href="slice_8h_source.html"><span class="icondoc"></span></a><b>slice.h</b></td><td class="desc"></td></tr>
+<tr id="row_0_0_2_3_" class="even"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><a href="status_8h_source.html"><span class="icondoc"></span></a><a class="el" href="status_8h.html" target="_self">status.h</a></td><td class="desc"></td></tr>
+</table>
+</div><!-- directory -->
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/folderclosed.png b/releases/1.4.0/cpp-client-api/folderclosed.png
new file mode 100644
index 0000000..bb8ab35
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/folderclosed.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/folderopen.png b/releases/1.4.0/cpp-client-api/folderopen.png
new file mode 100644
index 0000000..d6c7f67
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/folderopen.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/functions.html b/releases/1.4.0/cpp-client-api/functions.html
new file mode 100644
index 0000000..b83a66f
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/functions.html
@@ -0,0 +1,201 @@
+<!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.11"/>
+<title>Kudu C++ client API: Class Members</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li class="current"><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow3" class="tabs2">
+    <ul class="tablist">
+      <li class="current"><a href="functions.html"><span>All</span></a></li>
+      <li><a href="functions_func.html"><span>Functions</span></a></li>
+      <li><a href="functions_vars.html"><span>Variables</span></a></li>
+      <li><a href="functions_type.html"><span>Typedefs</span></a></li>
+      <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+      <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow4" class="tabs3">
+    <ul class="tablist">
+      <li class="current"><a href="functions.html#index_a"><span>a</span></a></li>
+      <li><a href="functions_b.html#index_b"><span>b</span></a></li>
+      <li><a href="functions_c.html#index_c"><span>c</span></a></li>
+      <li><a href="functions_d.html#index_d"><span>d</span></a></li>
+      <li><a href="functions_e.html#index_e"><span>e</span></a></li>
+      <li><a href="functions_f.html#index_f"><span>f</span></a></li>
+      <li><a href="functions_g.html#index_g"><span>g</span></a></li>
+      <li><a href="functions_h.html#index_h"><span>h</span></a></li>
+      <li><a href="functions_i.html#index_i"><span>i</span></a></li>
+      <li><a href="functions_k.html#index_k"><span>k</span></a></li>
+      <li><a href="functions_l.html#index_l"><span>l</span></a></li>
+      <li><a href="functions_m.html#index_m"><span>m</span></a></li>
+      <li><a href="functions_n.html#index_n"><span>n</span></a></li>
+      <li><a href="functions_o.html#index_o"><span>o</span></a></li>
+      <li><a href="functions_p.html#index_p"><span>p</span></a></li>
+      <li><a href="functions_r.html#index_r"><span>r</span></a></li>
+      <li><a href="functions_s.html#index_s"><span>s</span></a></li>
+      <li><a href="functions_t.html#index_t"><span>t</span></a></li>
+      <li><a href="functions_u.html#index_u"><span>u</span></a></li>
+      <li><a href="functions_v.html#index_v"><span>v</span></a></li>
+      <li><a href="functions_w.html#index_w"><span>w</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all documented class members with links to the class documentation for each member:</div>
+
+<h3><a class="anchor" id="index_a"></a>- a -</h3><ul>
+<li>add_hash_partitions()
+: <a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a989ccdb9b6f4186d3227d3811048538e">kudu::client::KuduTableCreator</a>
+</li>
+<li>add_master_server_addr()
+: <a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html#add149f1c1c2d3653e6a6cae4f44fa90c">kudu::client::KuduClientBuilder</a>
+</li>
+<li>add_range_partition()
+: <a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#aac3d941bf3b381c08f64ed919680984a">kudu::client::KuduTableCreator</a>
+</li>
+<li>add_range_partition_split()
+: <a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#adbdd2208d9ede696704fbecea15bea1f">kudu::client::KuduTableCreator</a>
+</li>
+<li>AddColumn()
+: <a class="el" href="classkudu_1_1client_1_1KuduSchemaBuilder.html#a0fdf28d49cc05ba4f3182f7398ddf600">kudu::client::KuduSchemaBuilder</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html#acb9406a6a254997dd584ce6c2cf51cd0">kudu::client::KuduTableAlterer</a>
+</li>
+<li>AddConjunctPredicate()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a47b0fcd30f8002cb4fdcf69351896b74">kudu::client::KuduScanner</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#ac40487d17b8e4dcca7ca08efeb5f195e">kudu::client::KuduScanTokenBuilder</a>
+</li>
+<li>AddDelta()
+: <a class="el" href="classkudu_1_1MonoTime.html#a17dd3af0b55e8d19dc986101ba998de1">kudu::MonoTime</a>
+</li>
+<li>AddExclusiveUpperBound()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a551fd38d48a686f2662727a82e79bd3d">kudu::client::KuduScanner</a>
+</li>
+<li>AddExclusiveUpperBoundPartitionKeyRaw()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#aa951a6ec3aeb82c82afe35d8e3ba18a9">kudu::client::KuduScanner</a>
+</li>
+<li>AddExclusiveUpperBoundRaw()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#aefb6badecb950d5089b2f9d29d1f2ffe">kudu::client::KuduScanner</a>
+</li>
+<li>AddLowerBound()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a67691944fc112f43c565ab4486514b86">kudu::client::KuduScanner</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#ae11ca3d00d15138e957a2c2e89b05fcf">kudu::client::KuduScanTokenBuilder</a>
+</li>
+<li>AddLowerBoundPartitionKeyRaw()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#ab53b88307028a50f66bcffe5e78c6d6e">kudu::client::KuduScanner</a>
+</li>
+<li>AddLowerBoundRaw()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a3e51a978f3e54237fa60f7447ef3436e">kudu::client::KuduScanner</a>
+</li>
+<li>AddRangePartition()
+: <a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html#a521a968f4db133a10629f76c75dde793">kudu::client::KuduTableAlterer</a>
+</li>
+<li>AddUpperBound()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#ac4d0fa934e4c705ac76c424a5431566a">kudu::client::KuduScanTokenBuilder</a>
+</li>
+<li>AllColumnsSet()
+: <a class="el" href="classKuduPartialRow.html#a2d373a8c8682ab6ebdb27137c041be18">KuduPartialRow</a>
+</li>
+<li>Alter()
+: <a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html#a14768f28048355d997e0ed4fa82e218c">kudu::client::KuduTableAlterer</a>
+</li>
+<li>AlterColumn()
+: <a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html#a6d62bfbcfab6b99dcb057e7f7a4cf742">kudu::client::KuduTableAlterer</a>
+</li>
+<li>Apply()
+: <a class="el" href="classkudu_1_1client_1_1KuduSession.html#ad3f7324b27fca298c5ca3d07b4741943">kudu::client::KuduSession</a>
+</li>
+<li>AUTO_FLUSH_BACKGROUND
+: <a class="el" href="classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19a520b8eef7ef0fd149b2757faf43972b1">kudu::client::KuduSession</a>
+</li>
+<li>AUTO_FLUSH_SYNC
+: <a class="el" href="classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19ad74b76e407e62ca951d369521636df2b">kudu::client::KuduSession</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/functions_b.html b/releases/1.4.0/cpp-client-api/functions_b.html
new file mode 100644
index 0000000..798fc54
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/functions_b.html
@@ -0,0 +1,147 @@
+<!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.11"/>
+<title>Kudu C++ client API: Class Members</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li class="current"><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow3" class="tabs2">
+    <ul class="tablist">
+      <li class="current"><a href="functions.html"><span>All</span></a></li>
+      <li><a href="functions_func.html"><span>Functions</span></a></li>
+      <li><a href="functions_vars.html"><span>Variables</span></a></li>
+      <li><a href="functions_type.html"><span>Typedefs</span></a></li>
+      <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+      <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow4" class="tabs3">
+    <ul class="tablist">
+      <li><a href="functions.html#index_a"><span>a</span></a></li>
+      <li class="current"><a href="functions_b.html#index_b"><span>b</span></a></li>
+      <li><a href="functions_c.html#index_c"><span>c</span></a></li>
+      <li><a href="functions_d.html#index_d"><span>d</span></a></li>
+      <li><a href="functions_e.html#index_e"><span>e</span></a></li>
+      <li><a href="functions_f.html#index_f"><span>f</span></a></li>
+      <li><a href="functions_g.html#index_g"><span>g</span></a></li>
+      <li><a href="functions_h.html#index_h"><span>h</span></a></li>
+      <li><a href="functions_i.html#index_i"><span>i</span></a></li>
+      <li><a href="functions_k.html#index_k"><span>k</span></a></li>
+      <li><a href="functions_l.html#index_l"><span>l</span></a></li>
+      <li><a href="functions_m.html#index_m"><span>m</span></a></li>
+      <li><a href="functions_n.html#index_n"><span>n</span></a></li>
+      <li><a href="functions_o.html#index_o"><span>o</span></a></li>
+      <li><a href="functions_p.html#index_p"><span>p</span></a></li>
+      <li><a href="functions_r.html#index_r"><span>r</span></a></li>
+      <li><a href="functions_s.html#index_s"><span>s</span></a></li>
+      <li><a href="functions_t.html#index_t"><span>t</span></a></li>
+      <li><a href="functions_u.html#index_u"><span>u</span></a></li>
+      <li><a href="functions_v.html#index_v"><span>v</span></a></li>
+      <li><a href="functions_w.html#index_w"><span>w</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all documented class members with links to the class documentation for each member:</div>
+
+<h3><a class="anchor" id="index_b"></a>- b -</h3><ul>
+<li>begin()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#a30f55cf8f3c9d6fcb47537e586d82e9f">kudu::client::KuduScanBatch</a>
+</li>
+<li>BlockSize()
+: <a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html#a8502dd68c6743c7c66b2b6a02d41a4e6">kudu::client::KuduColumnSpec</a>
+</li>
+<li>Build()
+: <a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html#a1585dd6eff82519fe81088d1cfd35b77">kudu::client::KuduClientBuilder</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduPartitionerBuilder.html#aa8859050484de2d367781ce6ec41d0ba">kudu::client::KuduPartitionerBuilder</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#acbc00b42db998f3342fa0ca7ab55dfdb">kudu::client::KuduScanTokenBuilder</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduSchemaBuilder.html#af117e347a7d0910dda2695997859db15">kudu::client::KuduSchemaBuilder</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/functions_c.html b/releases/1.4.0/cpp-client-api/functions_c.html
new file mode 100644
index 0000000..c433647
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/functions_c.html
@@ -0,0 +1,216 @@
+<!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.11"/>
+<title>Kudu C++ client API: Class Members</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li class="current"><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow3" class="tabs2">
+    <ul class="tablist">
+      <li class="current"><a href="functions.html"><span>All</span></a></li>
+      <li><a href="functions_func.html"><span>Functions</span></a></li>
+      <li><a href="functions_vars.html"><span>Variables</span></a></li>
+      <li><a href="functions_type.html"><span>Typedefs</span></a></li>
+      <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+      <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow4" class="tabs3">
+    <ul class="tablist">
+      <li><a href="functions.html#index_a"><span>a</span></a></li>
+      <li><a href="functions_b.html#index_b"><span>b</span></a></li>
+      <li class="current"><a href="functions_c.html#index_c"><span>c</span></a></li>
+      <li><a href="functions_d.html#index_d"><span>d</span></a></li>
+      <li><a href="functions_e.html#index_e"><span>e</span></a></li>
+      <li><a href="functions_f.html#index_f"><span>f</span></a></li>
+      <li><a href="functions_g.html#index_g"><span>g</span></a></li>
+      <li><a href="functions_h.html#index_h"><span>h</span></a></li>
+      <li><a href="functions_i.html#index_i"><span>i</span></a></li>
+      <li><a href="functions_k.html#index_k"><span>k</span></a></li>
+      <li><a href="functions_l.html#index_l"><span>l</span></a></li>
+      <li><a href="functions_m.html#index_m"><span>m</span></a></li>
+      <li><a href="functions_n.html#index_n"><span>n</span></a></li>
+      <li><a href="functions_o.html#index_o"><span>o</span></a></li>
+      <li><a href="functions_p.html#index_p"><span>p</span></a></li>
+      <li><a href="functions_r.html#index_r"><span>r</span></a></li>
+      <li><a href="functions_s.html#index_s"><span>s</span></a></li>
+      <li><a href="functions_t.html#index_t"><span>t</span></a></li>
+      <li><a href="functions_u.html#index_u"><span>u</span></a></li>
+      <li><a href="functions_v.html#index_v"><span>v</span></a></li>
+      <li><a href="functions_w.html#index_w"><span>w</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all documented class members with links to the class documentation for each member:</div>
+
+<h3><a class="anchor" id="index_c"></a>- c -</h3><ul>
+<li>cell()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#ae07d3fd8616c5c69cc0a4ef3d247bf2c">kudu::client::KuduScanBatch</a>
+</li>
+<li>CerrLog()
+: <a class="el" href="classkudu_1_1internal__logging_1_1CerrLog.html#ac3773ad2825d82f91ea65109f2def713">kudu::internal_logging::CerrLog</a>
+</li>
+<li>check_size()
+: <a class="el" href="classkudu_1_1Slice.html#a069b48816f49b29abbd291a09dd21f4e">kudu::Slice</a>
+</li>
+<li>clear()
+: <a class="el" href="classkudu_1_1Slice.html#afb914c0769f019a7c2f28b755cba5eb5">kudu::Slice</a>
+</li>
+<li>clear_master_server_addrs()
+: <a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html#a08f4d2bf7053c6336e625ee2e6eeddd1">kudu::client::KuduClientBuilder</a>
+</li>
+<li>client()
+: <a class="el" href="classkudu_1_1client_1_1KuduSession.html#a4ed0bac1edcbba612d7de41e8c8adfd5">kudu::client::KuduSession</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduTable.html#a08836bfb79f6f91e7f235712ea271d35">kudu::client::KuduTable</a>
+</li>
+<li>CLIENT_PROPAGATED
+: <a class="el" href="classkudu_1_1client_1_1KuduSession.html#aabd55109ba3b086bbe33b277cdd40d22ae978fab7451faebf4399830b603c855c">kudu::client::KuduSession</a>
+</li>
+<li>Clone()
+: <a class="el" href="classkudu_1_1client_1_1KuduPredicate.html#a48eae317f4365f10cdf32bcde560da7c">kudu::client::KuduPredicate</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduValue.html#a9925b62808b608aa367ac44d2552c6a3">kudu::client::KuduValue</a>
+</li>
+<li>CloneAndAppend()
+: <a class="el" href="classkudu_1_1Status.html#a67d1309561f0064e1bda0fbd0d1aaabb">kudu::Status</a>
+</li>
+<li>CloneAndPrepend()
+: <a class="el" href="classkudu_1_1Status.html#acb46c72bc79ef8178696b83a01014b9e">kudu::Status</a>
+</li>
+<li>Close()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#ac673dd15cb038e75787af7e74087e874">kudu::client::KuduScanner</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduSession.html#aa5204844e361ecc3068fbc4e02fd4436">kudu::client::KuduSession</a>
+</li>
+<li>CLOSEST_REPLICA
+: <a class="el" href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11aa801886067da41dacd0c9c2b8091f08d8">kudu::client::KuduClient</a>
+</li>
+<li>CodeAsString()
+: <a class="el" href="classkudu_1_1Status.html#aa5bc607c51a4e9e3c461aad27db409c3">kudu::Status</a>
+</li>
+<li>Column()
+: <a class="el" href="classkudu_1_1client_1_1KuduSchema.html#afe784e7c95d85391246a9b4745fed00b">kudu::client::KuduSchema</a>
+</li>
+<li>ComesBefore()
+: <a class="el" href="classkudu_1_1MonoTime.html#a20b322e3ce700c15445943ec02255623">kudu::MonoTime</a>
+</li>
+<li>COMMIT_WAIT
+: <a class="el" href="classkudu_1_1client_1_1KuduSession.html#aabd55109ba3b086bbe33b277cdd40d22a70010f3ef1f70b99b02328c024c436c9">kudu::client::KuduSession</a>
+</li>
+<li>compare()
+: <a class="el" href="classkudu_1_1Slice.html#a0ecc8d893b73a664c69396ad30b14d98">kudu::Slice</a>
+</li>
+<li>ComparisonOp
+: <a class="el" href="classkudu_1_1client_1_1KuduPredicate.html#ad58e80ced596d7738f99b5b83ba24eb4">kudu::client::KuduPredicate</a>
+</li>
+<li>Compression()
+: <a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html#ad9ed2e008ee926ee50c23e664d854e8b">kudu::client::KuduColumnSpec</a>
+</li>
+<li>compression()
+: <a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#a00ef1e67c5fdd537d35f102748b1ad9d">kudu::client::KuduColumnStorageAttributes</a>
+</li>
+<li>CompressionType
+: <a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#af579406931a40daa5cb9e10603341a78">kudu::client::KuduColumnStorageAttributes</a>
+</li>
+<li>CopyFrom()
+: <a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html#a11234db43eb8b758a65ba1b08f6b65b0">kudu::client::KuduColumnSchema</a>
+</li>
+<li>CopyString()
+: <a class="el" href="classkudu_1_1client_1_1KuduValue.html#a886211bbe237e0009fb9b89c146f4bfe">kudu::client::KuduValue</a>
+</li>
+<li>CountBufferedOperations()
+: <a class="el" href="classkudu_1_1client_1_1KuduSession.html#af6249cf3bbad8e2e11e54edf40a7bc1d">kudu::client::KuduSession</a>
+</li>
+<li>CountPendingErrors()
+: <a class="el" href="classkudu_1_1client_1_1KuduSession.html#a277c213a68679c6b0d5c432919eb9198">kudu::client::KuduSession</a>
+</li>
+<li>Create()
+: <a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a30efad5c256dae0af7bb43599403b1cc">kudu::client::KuduTableCreator</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/functions_d.html b/releases/1.4.0/cpp-client-api/functions_d.html
new file mode 100644
index 0000000..ac1cc40
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/functions_d.html
@@ -0,0 +1,173 @@
+<!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.11"/>
+<title>Kudu C++ client API: Class Members</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li class="current"><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow3" class="tabs2">
+    <ul class="tablist">
+      <li class="current"><a href="functions.html"><span>All</span></a></li>
+      <li><a href="functions_func.html"><span>Functions</span></a></li>
+      <li><a href="functions_vars.html"><span>Variables</span></a></li>
+      <li><a href="functions_type.html"><span>Typedefs</span></a></li>
+      <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+      <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow4" class="tabs3">
+    <ul class="tablist">
+      <li><a href="functions.html#index_a"><span>a</span></a></li>
+      <li><a href="functions_b.html#index_b"><span>b</span></a></li>
+      <li><a href="functions_c.html#index_c"><span>c</span></a></li>
+      <li class="current"><a href="functions_d.html#index_d"><span>d</span></a></li>
+      <li><a href="functions_e.html#index_e"><span>e</span></a></li>
+      <li><a href="functions_f.html#index_f"><span>f</span></a></li>
+      <li><a href="functions_g.html#index_g"><span>g</span></a></li>
+      <li><a href="functions_h.html#index_h"><span>h</span></a></li>
+      <li><a href="functions_i.html#index_i"><span>i</span></a></li>
+      <li><a href="functions_k.html#index_k"><span>k</span></a></li>
+      <li><a href="functions_l.html#index_l"><span>l</span></a></li>
+      <li><a href="functions_m.html#index_m"><span>m</span></a></li>
+      <li><a href="functions_n.html#index_n"><span>n</span></a></li>
+      <li><a href="functions_o.html#index_o"><span>o</span></a></li>
+      <li><a href="functions_p.html#index_p"><span>p</span></a></li>
+      <li><a href="functions_r.html#index_r"><span>r</span></a></li>
+      <li><a href="functions_s.html#index_s"><span>s</span></a></li>
+      <li><a href="functions_t.html#index_t"><span>t</span></a></li>
+      <li><a href="functions_u.html#index_u"><span>u</span></a></li>
+      <li><a href="functions_v.html#index_v"><span>v</span></a></li>
+      <li><a href="functions_w.html#index_w"><span>w</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all documented class members with links to the class documentation for each member:</div>
+
+<h3><a class="anchor" id="index_d"></a>- d -</h3><ul>
+<li>Data
+: <a class="el" href="classkudu_1_1client_1_1KuduPredicate.html#ae8643ced562f7c8a4625a58a4e39abb0">kudu::client::KuduPredicate</a>
+</li>
+<li>data()
+: <a class="el" href="classkudu_1_1Slice.html#a2d90a4590b995fb55229d25effb0c5bb">kudu::Slice</a>
+</li>
+<li>DataType
+: <a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html#aba69238e70af5c887a4fb11fa2a120c5">kudu::client::KuduColumnSchema</a>
+</li>
+<li>DataTypeToString()
+: <a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html#af362af4f9c937c2b7fa90ef284cfbd1c">kudu::client::KuduColumnSchema</a>
+</li>
+<li>Default()
+: <a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html#a92c63c0e1872c03fcabeac19d802f6c7">kudu::client::KuduColumnSpec</a>
+</li>
+<li>default_admin_operation_timeout()
+: <a class="el" href="classkudu_1_1client_1_1KuduClient.html#aacfcd61c7cc1bf7817d1aa0bb738414f">kudu::client::KuduClient</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html#a6114bb56e4d9d1231df0ef73c9aec752">kudu::client::KuduClientBuilder</a>
+</li>
+<li>default_rpc_timeout()
+: <a class="el" href="classkudu_1_1client_1_1KuduClient.html#a2d0e8397e979e651a23eb240513a5556">kudu::client::KuduClient</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html#a1813e8c8d24e92a0a710724000e2b3df">kudu::client::KuduClientBuilder</a>
+</li>
+<li>DeleteTable()
+: <a class="el" href="classkudu_1_1client_1_1KuduClient.html#a9d7cbad036bc74c71873a428abce5c1d">kudu::client::KuduClient</a>
+</li>
+<li>DeserializeIntoScanner()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanToken.html#ae90d9422476cf6eee5c33afb41d1f867">kudu::client::KuduScanToken</a>
+</li>
+<li>direct_data()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#a1073a0c6517b126690d99527556dba51">kudu::client::KuduScanBatch</a>
+</li>
+<li>DropColumn()
+: <a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html#ac5a4ec376ec53ba912b85ea0057d10a7">kudu::client::KuduTableAlterer</a>
+</li>
+<li>DropRangePartition()
+: <a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html#ab0f8abf78d35725198876aaa04b737a7">kudu::client::KuduTableAlterer</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/functions_e.html b/releases/1.4.0/cpp-client-api/functions_e.html
new file mode 100644
index 0000000..369d252
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/functions_e.html
@@ -0,0 +1,171 @@
+<!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.11"/>
+<title>Kudu C++ client API: Class Members</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li class="current"><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow3" class="tabs2">
+    <ul class="tablist">
+      <li class="current"><a href="functions.html"><span>All</span></a></li>
+      <li><a href="functions_func.html"><span>Functions</span></a></li>
+      <li><a href="functions_vars.html"><span>Variables</span></a></li>
+      <li><a href="functions_type.html"><span>Typedefs</span></a></li>
+      <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+      <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow4" class="tabs3">
+    <ul class="tablist">
+      <li><a href="functions.html#index_a"><span>a</span></a></li>
+      <li><a href="functions_b.html#index_b"><span>b</span></a></li>
+      <li><a href="functions_c.html#index_c"><span>c</span></a></li>
+      <li><a href="functions_d.html#index_d"><span>d</span></a></li>
+      <li class="current"><a href="functions_e.html#index_e"><span>e</span></a></li>
+      <li><a href="functions_f.html#index_f"><span>f</span></a></li>
+      <li><a href="functions_g.html#index_g"><span>g</span></a></li>
+      <li><a href="functions_h.html#index_h"><span>h</span></a></li>
+      <li><a href="functions_i.html#index_i"><span>i</span></a></li>
+      <li><a href="functions_k.html#index_k"><span>k</span></a></li>
+      <li><a href="functions_l.html#index_l"><span>l</span></a></li>
+      <li><a href="functions_m.html#index_m"><span>m</span></a></li>
+      <li><a href="functions_n.html#index_n"><span>n</span></a></li>
+      <li><a href="functions_o.html#index_o"><span>o</span></a></li>
+      <li><a href="functions_p.html#index_p"><span>p</span></a></li>
+      <li><a href="functions_r.html#index_r"><span>r</span></a></li>
+      <li><a href="functions_s.html#index_s"><span>s</span></a></li>
+      <li><a href="functions_t.html#index_t"><span>t</span></a></li>
+      <li><a href="functions_u.html#index_u"><span>u</span></a></li>
+      <li><a href="functions_v.html#index_v"><span>v</span></a></li>
+      <li><a href="functions_w.html#index_w"><span>w</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all documented class members with links to the class documentation for each member:</div>
+
+<h3><a class="anchor" id="index_e"></a>- e -</h3><ul>
+<li>Earliest()
+: <a class="el" href="classkudu_1_1MonoTime.html#aa553eb3e11cae70a9ee8839a39fc7a14">kudu::MonoTime</a>
+</li>
+<li>empty()
+: <a class="el" href="classkudu_1_1Slice.html#a79e41b882b0a85259be89f5698e27372">kudu::Slice</a>
+</li>
+<li>EncodeRowKey()
+: <a class="el" href="classKuduPartialRow.html#a2721dc18b29237db90a1cda779942533">KuduPartialRow</a>
+</li>
+<li>Encoding()
+: <a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html#ae0ceeb41ac1427c2472a2f28778b6e97">kudu::client::KuduColumnSpec</a>
+</li>
+<li>encoding()
+: <a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#acd93d52b48be7d87a0d3fd4500048f2e">kudu::client::KuduColumnStorageAttributes</a>
+</li>
+<li>EncodingType
+: <a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#aeb835a12e6f40b1a619afa8abd773b6d">kudu::client::KuduColumnStorageAttributes</a>
+</li>
+<li>end()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#ad30dcfafb276b5347842882cf68cb522">kudu::client::KuduScanBatch</a>
+</li>
+<li>Equals()
+: <a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html#a9f0b1346b66394d7372e401c8eb5458a">kudu::client::KuduColumnSchema</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduSchema.html#a3d9bc062492e472a2055841461b2a87f">kudu::client::KuduSchema</a>
+, <a class="el" href="classkudu_1_1MonoDelta.html#a3d139854a8baaa7c59b3e5d59aba95bc">kudu::MonoDelta</a>
+, <a class="el" href="classkudu_1_1MonoTime.html#a25f2816574ca7f424b79644e30774818">kudu::MonoTime</a>
+</li>
+<li>EXCLUSIVE_BOUND
+: <a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343baa117961e0003fd28663861833d23e601">kudu::client::KuduTableCreator</a>
+</li>
+<li>ExportAuthenticationCredentials()
+: <a class="el" href="classkudu_1_1client_1_1KuduClient.html#a974b491e5d0864f4aa3f60347fa1b62e">kudu::client::KuduClient</a>
+</li>
+<li>ExternalConsistencyMode
+: <a class="el" href="classkudu_1_1client_1_1KuduSession.html#aabd55109ba3b086bbe33b277cdd40d22">kudu::client::KuduSession</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/functions_enum.html b/releases/1.4.0/cpp-client-api/functions_enum.html
new file mode 100644
index 0000000..203ff33
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/functions_enum.html
@@ -0,0 +1,141 @@
+<!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.11"/>
+<title>Kudu C++ client API: Class Members - Enumerations</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li class="current"><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow3" class="tabs2">
+    <ul class="tablist">
+      <li><a href="functions.html"><span>All</span></a></li>
+      <li><a href="functions_func.html"><span>Functions</span></a></li>
+      <li><a href="functions_vars.html"><span>Variables</span></a></li>
+      <li><a href="functions_type.html"><span>Typedefs</span></a></li>
+      <li class="current"><a href="functions_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+      <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;<ul>
+<li>ComparisonOp
+: <a class="el" href="classkudu_1_1client_1_1KuduPredicate.html#ad58e80ced596d7738f99b5b83ba24eb4">kudu::client::KuduPredicate</a>
+</li>
+<li>CompressionType
+: <a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#af579406931a40daa5cb9e10603341a78">kudu::client::KuduColumnStorageAttributes</a>
+</li>
+<li>DataType
+: <a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html#aba69238e70af5c887a4fb11fa2a120c5">kudu::client::KuduColumnSchema</a>
+</li>
+<li>EncodingType
+: <a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#aeb835a12e6f40b1a619afa8abd773b6d">kudu::client::KuduColumnStorageAttributes</a>
+</li>
+<li>ExternalConsistencyMode
+: <a class="el" href="classkudu_1_1client_1_1KuduSession.html#aabd55109ba3b086bbe33b277cdd40d22">kudu::client::KuduSession</a>
+</li>
+<li>FlushMode
+: <a class="el" href="classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19">kudu::client::KuduSession</a>
+</li>
+<li>OrderMode
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a3d6c79325c9da9741d0accf1b43bf7f9">kudu::client::KuduScanner</a>
+</li>
+<li>RangePartitionBound
+: <a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343b">kudu::client::KuduTableCreator</a>
+</li>
+<li>ReadMode
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a36fdb59d6488618363331269d3f58348">kudu::client::KuduScanner</a>
+</li>
+<li>ReplicaSelection
+: <a class="el" href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11a">kudu::client::KuduClient</a>
+</li>
+<li>Type
+: <a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html#a87d94ee5801a6b16fc6d1f44ee2e4357">kudu::client::KuduWriteOperation</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/functions_eval.html b/releases/1.4.0/cpp-client-api/functions_eval.html
new file mode 100644
index 0000000..ab0fbb7
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/functions_eval.html
@@ -0,0 +1,156 @@
+<!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.11"/>
+<title>Kudu C++ client API: Class Members - Enumerator</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li class="current"><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow3" class="tabs2">
+    <ul class="tablist">
+      <li><a href="functions.html"><span>All</span></a></li>
+      <li><a href="functions_func.html"><span>Functions</span></a></li>
+      <li><a href="functions_vars.html"><span>Variables</span></a></li>
+      <li><a href="functions_type.html"><span>Typedefs</span></a></li>
+      <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+      <li class="current"><a href="functions_eval.html"><span>Enumerator</span></a></li>
+      <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;<ul>
+<li>AUTO_FLUSH_BACKGROUND
+: <a class="el" href="classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19a520b8eef7ef0fd149b2757faf43972b1">kudu::client::KuduSession</a>
+</li>
+<li>AUTO_FLUSH_SYNC
+: <a class="el" href="classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19ad74b76e407e62ca951d369521636df2b">kudu::client::KuduSession</a>
+</li>
+<li>CLIENT_PROPAGATED
+: <a class="el" href="classkudu_1_1client_1_1KuduSession.html#aabd55109ba3b086bbe33b277cdd40d22ae978fab7451faebf4399830b603c855c">kudu::client::KuduSession</a>
+</li>
+<li>CLOSEST_REPLICA
+: <a class="el" href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11aa801886067da41dacd0c9c2b8091f08d8">kudu::client::KuduClient</a>
+</li>
+<li>COMMIT_WAIT
+: <a class="el" href="classkudu_1_1client_1_1KuduSession.html#aabd55109ba3b086bbe33b277cdd40d22a70010f3ef1f70b99b02328c024c436c9">kudu::client::KuduSession</a>
+</li>
+<li>EXCLUSIVE_BOUND
+: <a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343baa117961e0003fd28663861833d23e601">kudu::client::KuduTableCreator</a>
+</li>
+<li>FIRST_REPLICA
+: <a class="el" href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11aaa060fb6126a3e3fa80079f885dc7d48f">kudu::client::KuduClient</a>
+</li>
+<li>GROUP_VARINT
+: <a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#aeb835a12e6f40b1a619afa8abd773b6da28c1ed31be30579070232164c24b4b82">kudu::client::KuduColumnStorageAttributes</a>
+</li>
+<li>INCLUSIVE_BOUND
+: <a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343ba0f4899cc63fba167455e05b525f0b950">kudu::client::KuduTableCreator</a>
+</li>
+<li>LEADER_ONLY
+: <a class="el" href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11aafb912836db348061379d0e0a9055e239">kudu::client::KuduClient</a>
+</li>
+<li>MANUAL_FLUSH
+: <a class="el" href="classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19a1db3efc2094da09aae45bb68475cdb4a">kudu::client::KuduSession</a>
+</li>
+<li>ORDERED
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a3d6c79325c9da9741d0accf1b43bf7f9a4395ad2ec57ce53e30d8b5748fa2c63a">kudu::client::KuduScanner</a>
+</li>
+<li>READ_AT_SNAPSHOT
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a36fdb59d6488618363331269d3f58348a380798cc81589d865b7b2549e186b2e2">kudu::client::KuduScanner</a>
+</li>
+<li>READ_LATEST
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a36fdb59d6488618363331269d3f58348a8694cef688d819806fa9a85b002231a8">kudu::client::KuduScanner</a>
+</li>
+<li>TIMESTAMP
+: <a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html#aba69238e70af5c887a4fb11fa2a120c5a27d1b7aca7cf9a01d9258a41bbe3b505">kudu::client::KuduColumnSchema</a>
+</li>
+<li>UNORDERED
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a3d6c79325c9da9741d0accf1b43bf7f9adfeea547de613f36a0aff9f585671ec3">kudu::client::KuduScanner</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/functions_f.html b/releases/1.4.0/cpp-client-api/functions_f.html
new file mode 100644
index 0000000..1d01d8c
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/functions_f.html
@@ -0,0 +1,154 @@
+<!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.11"/>
+<title>Kudu C++ client API: Class Members</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li class="current"><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow3" class="tabs2">
+    <ul class="tablist">
+      <li class="current"><a href="functions.html"><span>All</span></a></li>
+      <li><a href="functions_func.html"><span>Functions</span></a></li>
+      <li><a href="functions_vars.html"><span>Variables</span></a></li>
+      <li><a href="functions_type.html"><span>Typedefs</span></a></li>
+      <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+      <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow4" class="tabs3">
+    <ul class="tablist">
+      <li><a href="functions.html#index_a"><span>a</span></a></li>
+      <li><a href="functions_b.html#index_b"><span>b</span></a></li>
+      <li><a href="functions_c.html#index_c"><span>c</span></a></li>
+      <li><a href="functions_d.html#index_d"><span>d</span></a></li>
+      <li><a href="functions_e.html#index_e"><span>e</span></a></li>
+      <li class="current"><a href="functions_f.html#index_f"><span>f</span></a></li>
+      <li><a href="functions_g.html#index_g"><span>g</span></a></li>
+      <li><a href="functions_h.html#index_h"><span>h</span></a></li>
+      <li><a href="functions_i.html#index_i"><span>i</span></a></li>
+      <li><a href="functions_k.html#index_k"><span>k</span></a></li>
+      <li><a href="functions_l.html#index_l"><span>l</span></a></li>
+      <li><a href="functions_m.html#index_m"><span>m</span></a></li>
+      <li><a href="functions_n.html#index_n"><span>n</span></a></li>
+      <li><a href="functions_o.html#index_o"><span>o</span></a></li>
+      <li><a href="functions_p.html#index_p"><span>p</span></a></li>
+      <li><a href="functions_r.html#index_r"><span>r</span></a></li>
+      <li><a href="functions_s.html#index_s"><span>s</span></a></li>
+      <li><a href="functions_t.html#index_t"><span>t</span></a></li>
+      <li><a href="functions_u.html#index_u"><span>u</span></a></li>
+      <li><a href="functions_v.html#index_v"><span>v</span></a></li>
+      <li><a href="functions_w.html#index_w"><span>w</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all documented class members with links to the class documentation for each member:</div>
+
+<h3><a class="anchor" id="index_f"></a>- f -</h3><ul>
+<li>failed_op()
+: <a class="el" href="classkudu_1_1client_1_1KuduError.html#aaa1558d1db19ae85cf8ce1979b3e538a">kudu::client::KuduError</a>
+</li>
+<li>FIRST_REPLICA
+: <a class="el" href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11aaa060fb6126a3e3fa80079f885dc7d48f">kudu::client::KuduClient</a>
+</li>
+<li>Flush()
+: <a class="el" href="classkudu_1_1client_1_1KuduSession.html#a64955abb5f5cc821b6e56354f733ce84">kudu::client::KuduSession</a>
+</li>
+<li>FlushAsync()
+: <a class="el" href="classkudu_1_1client_1_1KuduSession.html#ad8c68570479e95b325d8a5437eef8731">kudu::client::KuduSession</a>
+</li>
+<li>FlushMode
+: <a class="el" href="classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19">kudu::client::KuduSession</a>
+</li>
+<li>FunctionType
+: <a class="el" href="classkudu_1_1client_1_1KuduLoggingFunctionCallback.html#a609838f5c92d8f4612d195c161cf4003">kudu::client::KuduLoggingFunctionCallback&lt; T &gt;</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduStatusFunctionCallback.html#a20c231ae32873ea7f462b8f3ea05d910">kudu::client::KuduStatusFunctionCallback&lt; T &gt;</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/functions_func.html b/releases/1.4.0/cpp-client-api/functions_func.html
new file mode 100644
index 0000000..b8f0852
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/functions_func.html
@@ -0,0 +1,194 @@
+<!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.11"/>
+<title>Kudu C++ client API: Class Members - Functions</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li class="current"><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow3" class="tabs2">
+    <ul class="tablist">
+      <li><a href="functions.html"><span>All</span></a></li>
+      <li class="current"><a href="functions_func.html"><span>Functions</span></a></li>
+      <li><a href="functions_vars.html"><span>Variables</span></a></li>
+      <li><a href="functions_type.html"><span>Typedefs</span></a></li>
+      <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+      <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow4" class="tabs3">
+    <ul class="tablist">
+      <li class="current"><a href="functions_func.html#index_a"><span>a</span></a></li>
+      <li><a href="functions_func_b.html#index_b"><span>b</span></a></li>
+      <li><a href="functions_func_c.html#index_c"><span>c</span></a></li>
+      <li><a href="functions_func_d.html#index_d"><span>d</span></a></li>
+      <li><a href="functions_func_e.html#index_e"><span>e</span></a></li>
+      <li><a href="functions_func_f.html#index_f"><span>f</span></a></li>
+      <li><a href="functions_func_g.html#index_g"><span>g</span></a></li>
+      <li><a href="functions_func_h.html#index_h"><span>h</span></a></li>
+      <li><a href="functions_func_i.html#index_i"><span>i</span></a></li>
+      <li><a href="functions_func_k.html#index_k"><span>k</span></a></li>
+      <li><a href="functions_func_l.html#index_l"><span>l</span></a></li>
+      <li><a href="functions_func_m.html#index_m"><span>m</span></a></li>
+      <li><a href="functions_func_n.html#index_n"><span>n</span></a></li>
+      <li><a href="functions_func_o.html#index_o"><span>o</span></a></li>
+      <li><a href="functions_func_p.html#index_p"><span>p</span></a></li>
+      <li><a href="functions_func_r.html#index_r"><span>r</span></a></li>
+      <li><a href="functions_func_s.html#index_s"><span>s</span></a></li>
+      <li><a href="functions_func_t.html#index_t"><span>t</span></a></li>
+      <li><a href="functions_func_u.html#index_u"><span>u</span></a></li>
+      <li><a href="functions_func_w.html#index_w"><span>w</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_a"></a>- a -</h3><ul>
+<li>add_hash_partitions()
+: <a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a989ccdb9b6f4186d3227d3811048538e">kudu::client::KuduTableCreator</a>
+</li>
+<li>add_master_server_addr()
+: <a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html#add149f1c1c2d3653e6a6cae4f44fa90c">kudu::client::KuduClientBuilder</a>
+</li>
+<li>add_range_partition()
+: <a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#aac3d941bf3b381c08f64ed919680984a">kudu::client::KuduTableCreator</a>
+</li>
+<li>add_range_partition_split()
+: <a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#adbdd2208d9ede696704fbecea15bea1f">kudu::client::KuduTableCreator</a>
+</li>
+<li>AddColumn()
+: <a class="el" href="classkudu_1_1client_1_1KuduSchemaBuilder.html#a0fdf28d49cc05ba4f3182f7398ddf600">kudu::client::KuduSchemaBuilder</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html#acb9406a6a254997dd584ce6c2cf51cd0">kudu::client::KuduTableAlterer</a>
+</li>
+<li>AddConjunctPredicate()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a47b0fcd30f8002cb4fdcf69351896b74">kudu::client::KuduScanner</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#ac40487d17b8e4dcca7ca08efeb5f195e">kudu::client::KuduScanTokenBuilder</a>
+</li>
+<li>AddDelta()
+: <a class="el" href="classkudu_1_1MonoTime.html#a17dd3af0b55e8d19dc986101ba998de1">kudu::MonoTime</a>
+</li>
+<li>AddExclusiveUpperBound()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a551fd38d48a686f2662727a82e79bd3d">kudu::client::KuduScanner</a>
+</li>
+<li>AddExclusiveUpperBoundPartitionKeyRaw()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#aa951a6ec3aeb82c82afe35d8e3ba18a9">kudu::client::KuduScanner</a>
+</li>
+<li>AddExclusiveUpperBoundRaw()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#aefb6badecb950d5089b2f9d29d1f2ffe">kudu::client::KuduScanner</a>
+</li>
+<li>AddLowerBound()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a67691944fc112f43c565ab4486514b86">kudu::client::KuduScanner</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#ae11ca3d00d15138e957a2c2e89b05fcf">kudu::client::KuduScanTokenBuilder</a>
+</li>
+<li>AddLowerBoundPartitionKeyRaw()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#ab53b88307028a50f66bcffe5e78c6d6e">kudu::client::KuduScanner</a>
+</li>
+<li>AddLowerBoundRaw()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a3e51a978f3e54237fa60f7447ef3436e">kudu::client::KuduScanner</a>
+</li>
+<li>AddRangePartition()
+: <a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html#a521a968f4db133a10629f76c75dde793">kudu::client::KuduTableAlterer</a>
+</li>
+<li>AddUpperBound()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#ac4d0fa934e4c705ac76c424a5431566a">kudu::client::KuduScanTokenBuilder</a>
+</li>
+<li>AllColumnsSet()
+: <a class="el" href="classKuduPartialRow.html#a2d373a8c8682ab6ebdb27137c041be18">KuduPartialRow</a>
+</li>
+<li>Alter()
+: <a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html#a14768f28048355d997e0ed4fa82e218c">kudu::client::KuduTableAlterer</a>
+</li>
+<li>AlterColumn()
+: <a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html#a6d62bfbcfab6b99dcb057e7f7a4cf742">kudu::client::KuduTableAlterer</a>
+</li>
+<li>Apply()
+: <a class="el" href="classkudu_1_1client_1_1KuduSession.html#ad3f7324b27fca298c5ca3d07b4741943">kudu::client::KuduSession</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/functions_func_b.html b/releases/1.4.0/cpp-client-api/functions_func_b.html
new file mode 100644
index 0000000..fa59734
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/functions_func_b.html
@@ -0,0 +1,146 @@
+<!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.11"/>
+<title>Kudu C++ client API: Class Members - Functions</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li class="current"><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow3" class="tabs2">
+    <ul class="tablist">
+      <li><a href="functions.html"><span>All</span></a></li>
+      <li class="current"><a href="functions_func.html"><span>Functions</span></a></li>
+      <li><a href="functions_vars.html"><span>Variables</span></a></li>
+      <li><a href="functions_type.html"><span>Typedefs</span></a></li>
+      <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+      <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow4" class="tabs3">
+    <ul class="tablist">
+      <li><a href="functions_func.html#index_a"><span>a</span></a></li>
+      <li class="current"><a href="functions_func_b.html#index_b"><span>b</span></a></li>
+      <li><a href="functions_func_c.html#index_c"><span>c</span></a></li>
+      <li><a href="functions_func_d.html#index_d"><span>d</span></a></li>
+      <li><a href="functions_func_e.html#index_e"><span>e</span></a></li>
+      <li><a href="functions_func_f.html#index_f"><span>f</span></a></li>
+      <li><a href="functions_func_g.html#index_g"><span>g</span></a></li>
+      <li><a href="functions_func_h.html#index_h"><span>h</span></a></li>
+      <li><a href="functions_func_i.html#index_i"><span>i</span></a></li>
+      <li><a href="functions_func_k.html#index_k"><span>k</span></a></li>
+      <li><a href="functions_func_l.html#index_l"><span>l</span></a></li>
+      <li><a href="functions_func_m.html#index_m"><span>m</span></a></li>
+      <li><a href="functions_func_n.html#index_n"><span>n</span></a></li>
+      <li><a href="functions_func_o.html#index_o"><span>o</span></a></li>
+      <li><a href="functions_func_p.html#index_p"><span>p</span></a></li>
+      <li><a href="functions_func_r.html#index_r"><span>r</span></a></li>
+      <li><a href="functions_func_s.html#index_s"><span>s</span></a></li>
+      <li><a href="functions_func_t.html#index_t"><span>t</span></a></li>
+      <li><a href="functions_func_u.html#index_u"><span>u</span></a></li>
+      <li><a href="functions_func_w.html#index_w"><span>w</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_b"></a>- b -</h3><ul>
+<li>begin()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#a30f55cf8f3c9d6fcb47537e586d82e9f">kudu::client::KuduScanBatch</a>
+</li>
+<li>BlockSize()
+: <a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html#a8502dd68c6743c7c66b2b6a02d41a4e6">kudu::client::KuduColumnSpec</a>
+</li>
+<li>Build()
+: <a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html#a1585dd6eff82519fe81088d1cfd35b77">kudu::client::KuduClientBuilder</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduPartitionerBuilder.html#aa8859050484de2d367781ce6ec41d0ba">kudu::client::KuduPartitionerBuilder</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#acbc00b42db998f3342fa0ca7ab55dfdb">kudu::client::KuduScanTokenBuilder</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduSchemaBuilder.html#af117e347a7d0910dda2695997859db15">kudu::client::KuduSchemaBuilder</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/functions_func_c.html b/releases/1.4.0/cpp-client-api/functions_func_c.html
new file mode 100644
index 0000000..494a19e
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/functions_func_c.html
@@ -0,0 +1,200 @@
+<!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.11"/>
+<title>Kudu C++ client API: Class Members - Functions</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li class="current"><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow3" class="tabs2">
+    <ul class="tablist">
+      <li><a href="functions.html"><span>All</span></a></li>
+      <li class="current"><a href="functions_func.html"><span>Functions</span></a></li>
+      <li><a href="functions_vars.html"><span>Variables</span></a></li>
+      <li><a href="functions_type.html"><span>Typedefs</span></a></li>
+      <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+      <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow4" class="tabs3">
+    <ul class="tablist">
+      <li><a href="functions_func.html#index_a"><span>a</span></a></li>
+      <li><a href="functions_func_b.html#index_b"><span>b</span></a></li>
+      <li class="current"><a href="functions_func_c.html#index_c"><span>c</span></a></li>
+      <li><a href="functions_func_d.html#index_d"><span>d</span></a></li>
+      <li><a href="functions_func_e.html#index_e"><span>e</span></a></li>
+      <li><a href="functions_func_f.html#index_f"><span>f</span></a></li>
+      <li><a href="functions_func_g.html#index_g"><span>g</span></a></li>
+      <li><a href="functions_func_h.html#index_h"><span>h</span></a></li>
+      <li><a href="functions_func_i.html#index_i"><span>i</span></a></li>
+      <li><a href="functions_func_k.html#index_k"><span>k</span></a></li>
+      <li><a href="functions_func_l.html#index_l"><span>l</span></a></li>
+      <li><a href="functions_func_m.html#index_m"><span>m</span></a></li>
+      <li><a href="functions_func_n.html#index_n"><span>n</span></a></li>
+      <li><a href="functions_func_o.html#index_o"><span>o</span></a></li>
+      <li><a href="functions_func_p.html#index_p"><span>p</span></a></li>
+      <li><a href="functions_func_r.html#index_r"><span>r</span></a></li>
+      <li><a href="functions_func_s.html#index_s"><span>s</span></a></li>
+      <li><a href="functions_func_t.html#index_t"><span>t</span></a></li>
+      <li><a href="functions_func_u.html#index_u"><span>u</span></a></li>
+      <li><a href="functions_func_w.html#index_w"><span>w</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_c"></a>- c -</h3><ul>
+<li>cell()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#ae07d3fd8616c5c69cc0a4ef3d247bf2c">kudu::client::KuduScanBatch</a>
+</li>
+<li>CerrLog()
+: <a class="el" href="classkudu_1_1internal__logging_1_1CerrLog.html#ac3773ad2825d82f91ea65109f2def713">kudu::internal_logging::CerrLog</a>
+</li>
+<li>check_size()
+: <a class="el" href="classkudu_1_1Slice.html#a069b48816f49b29abbd291a09dd21f4e">kudu::Slice</a>
+</li>
+<li>clear()
+: <a class="el" href="classkudu_1_1Slice.html#afb914c0769f019a7c2f28b755cba5eb5">kudu::Slice</a>
+</li>
+<li>clear_master_server_addrs()
+: <a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html#a08f4d2bf7053c6336e625ee2e6eeddd1">kudu::client::KuduClientBuilder</a>
+</li>
+<li>client()
+: <a class="el" href="classkudu_1_1client_1_1KuduSession.html#a4ed0bac1edcbba612d7de41e8c8adfd5">kudu::client::KuduSession</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduTable.html#a08836bfb79f6f91e7f235712ea271d35">kudu::client::KuduTable</a>
+</li>
+<li>Clone()
+: <a class="el" href="classkudu_1_1client_1_1KuduPredicate.html#a48eae317f4365f10cdf32bcde560da7c">kudu::client::KuduPredicate</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduValue.html#a9925b62808b608aa367ac44d2552c6a3">kudu::client::KuduValue</a>
+</li>
+<li>CloneAndAppend()
+: <a class="el" href="classkudu_1_1Status.html#a67d1309561f0064e1bda0fbd0d1aaabb">kudu::Status</a>
+</li>
+<li>CloneAndPrepend()
+: <a class="el" href="classkudu_1_1Status.html#acb46c72bc79ef8178696b83a01014b9e">kudu::Status</a>
+</li>
+<li>Close()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#ac673dd15cb038e75787af7e74087e874">kudu::client::KuduScanner</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduSession.html#aa5204844e361ecc3068fbc4e02fd4436">kudu::client::KuduSession</a>
+</li>
+<li>CodeAsString()
+: <a class="el" href="classkudu_1_1Status.html#aa5bc607c51a4e9e3c461aad27db409c3">kudu::Status</a>
+</li>
+<li>Column()
+: <a class="el" href="classkudu_1_1client_1_1KuduSchema.html#afe784e7c95d85391246a9b4745fed00b">kudu::client::KuduSchema</a>
+</li>
+<li>ComesBefore()
+: <a class="el" href="classkudu_1_1MonoTime.html#a20b322e3ce700c15445943ec02255623">kudu::MonoTime</a>
+</li>
+<li>compare()
+: <a class="el" href="classkudu_1_1Slice.html#a0ecc8d893b73a664c69396ad30b14d98">kudu::Slice</a>
+</li>
+<li>Compression()
+: <a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html#ad9ed2e008ee926ee50c23e664d854e8b">kudu::client::KuduColumnSpec</a>
+</li>
+<li>compression()
+: <a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#a00ef1e67c5fdd537d35f102748b1ad9d">kudu::client::KuduColumnStorageAttributes</a>
+</li>
+<li>CopyFrom()
+: <a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html#a11234db43eb8b758a65ba1b08f6b65b0">kudu::client::KuduColumnSchema</a>
+</li>
+<li>CopyString()
+: <a class="el" href="classkudu_1_1client_1_1KuduValue.html#a886211bbe237e0009fb9b89c146f4bfe">kudu::client::KuduValue</a>
+</li>
+<li>CountBufferedOperations()
+: <a class="el" href="classkudu_1_1client_1_1KuduSession.html#af6249cf3bbad8e2e11e54edf40a7bc1d">kudu::client::KuduSession</a>
+</li>
+<li>CountPendingErrors()
+: <a class="el" href="classkudu_1_1client_1_1KuduSession.html#a277c213a68679c6b0d5c432919eb9198">kudu::client::KuduSession</a>
+</li>
+<li>Create()
+: <a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a30efad5c256dae0af7bb43599403b1cc">kudu::client::KuduTableCreator</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/functions_func_d.html b/releases/1.4.0/cpp-client-api/functions_func_d.html
new file mode 100644
index 0000000..d18e2c6
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/functions_func_d.html
@@ -0,0 +1,166 @@
+<!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.11"/>
+<title>Kudu C++ client API: Class Members - Functions</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li class="current"><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow3" class="tabs2">
+    <ul class="tablist">
+      <li><a href="functions.html"><span>All</span></a></li>
+      <li class="current"><a href="functions_func.html"><span>Functions</span></a></li>
+      <li><a href="functions_vars.html"><span>Variables</span></a></li>
+      <li><a href="functions_type.html"><span>Typedefs</span></a></li>
+      <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+      <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow4" class="tabs3">
+    <ul class="tablist">
+      <li><a href="functions_func.html#index_a"><span>a</span></a></li>
+      <li><a href="functions_func_b.html#index_b"><span>b</span></a></li>
+      <li><a href="functions_func_c.html#index_c"><span>c</span></a></li>
+      <li class="current"><a href="functions_func_d.html#index_d"><span>d</span></a></li>
+      <li><a href="functions_func_e.html#index_e"><span>e</span></a></li>
+      <li><a href="functions_func_f.html#index_f"><span>f</span></a></li>
+      <li><a href="functions_func_g.html#index_g"><span>g</span></a></li>
+      <li><a href="functions_func_h.html#index_h"><span>h</span></a></li>
+      <li><a href="functions_func_i.html#index_i"><span>i</span></a></li>
+      <li><a href="functions_func_k.html#index_k"><span>k</span></a></li>
+      <li><a href="functions_func_l.html#index_l"><span>l</span></a></li>
+      <li><a href="functions_func_m.html#index_m"><span>m</span></a></li>
+      <li><a href="functions_func_n.html#index_n"><span>n</span></a></li>
+      <li><a href="functions_func_o.html#index_o"><span>o</span></a></li>
+      <li><a href="functions_func_p.html#index_p"><span>p</span></a></li>
+      <li><a href="functions_func_r.html#index_r"><span>r</span></a></li>
+      <li><a href="functions_func_s.html#index_s"><span>s</span></a></li>
+      <li><a href="functions_func_t.html#index_t"><span>t</span></a></li>
+      <li><a href="functions_func_u.html#index_u"><span>u</span></a></li>
+      <li><a href="functions_func_w.html#index_w"><span>w</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_d"></a>- d -</h3><ul>
+<li>data()
+: <a class="el" href="classkudu_1_1Slice.html#a2d90a4590b995fb55229d25effb0c5bb">kudu::Slice</a>
+</li>
+<li>DataTypeToString()
+: <a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html#af362af4f9c937c2b7fa90ef284cfbd1c">kudu::client::KuduColumnSchema</a>
+</li>
+<li>Default()
+: <a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html#a92c63c0e1872c03fcabeac19d802f6c7">kudu::client::KuduColumnSpec</a>
+</li>
+<li>default_admin_operation_timeout()
+: <a class="el" href="classkudu_1_1client_1_1KuduClient.html#aacfcd61c7cc1bf7817d1aa0bb738414f">kudu::client::KuduClient</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html#a6114bb56e4d9d1231df0ef73c9aec752">kudu::client::KuduClientBuilder</a>
+</li>
+<li>default_rpc_timeout()
+: <a class="el" href="classkudu_1_1client_1_1KuduClient.html#a2d0e8397e979e651a23eb240513a5556">kudu::client::KuduClient</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html#a1813e8c8d24e92a0a710724000e2b3df">kudu::client::KuduClientBuilder</a>
+</li>
+<li>DeleteTable()
+: <a class="el" href="classkudu_1_1client_1_1KuduClient.html#a9d7cbad036bc74c71873a428abce5c1d">kudu::client::KuduClient</a>
+</li>
+<li>DeserializeIntoScanner()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanToken.html#ae90d9422476cf6eee5c33afb41d1f867">kudu::client::KuduScanToken</a>
+</li>
+<li>direct_data()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#a1073a0c6517b126690d99527556dba51">kudu::client::KuduScanBatch</a>
+</li>
+<li>DropColumn()
+: <a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html#ac5a4ec376ec53ba912b85ea0057d10a7">kudu::client::KuduTableAlterer</a>
+</li>
+<li>DropRangePartition()
+: <a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html#ab0f8abf78d35725198876aaa04b737a7">kudu::client::KuduTableAlterer</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/functions_func_e.html b/releases/1.4.0/cpp-client-api/functions_func_e.html
new file mode 100644
index 0000000..c40e554
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/functions_func_e.html
@@ -0,0 +1,161 @@
+<!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.11"/>
+<title>Kudu C++ client API: Class Members - Functions</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li class="current"><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow3" class="tabs2">
+    <ul class="tablist">
+      <li><a href="functions.html"><span>All</span></a></li>
+      <li class="current"><a href="functions_func.html"><span>Functions</span></a></li>
+      <li><a href="functions_vars.html"><span>Variables</span></a></li>
+      <li><a href="functions_type.html"><span>Typedefs</span></a></li>
+      <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+      <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow4" class="tabs3">
+    <ul class="tablist">
+      <li><a href="functions_func.html#index_a"><span>a</span></a></li>
+      <li><a href="functions_func_b.html#index_b"><span>b</span></a></li>
+      <li><a href="functions_func_c.html#index_c"><span>c</span></a></li>
+      <li><a href="functions_func_d.html#index_d"><span>d</span></a></li>
+      <li class="current"><a href="functions_func_e.html#index_e"><span>e</span></a></li>
+      <li><a href="functions_func_f.html#index_f"><span>f</span></a></li>
+      <li><a href="functions_func_g.html#index_g"><span>g</span></a></li>
+      <li><a href="functions_func_h.html#index_h"><span>h</span></a></li>
+      <li><a href="functions_func_i.html#index_i"><span>i</span></a></li>
+      <li><a href="functions_func_k.html#index_k"><span>k</span></a></li>
+      <li><a href="functions_func_l.html#index_l"><span>l</span></a></li>
+      <li><a href="functions_func_m.html#index_m"><span>m</span></a></li>
+      <li><a href="functions_func_n.html#index_n"><span>n</span></a></li>
+      <li><a href="functions_func_o.html#index_o"><span>o</span></a></li>
+      <li><a href="functions_func_p.html#index_p"><span>p</span></a></li>
+      <li><a href="functions_func_r.html#index_r"><span>r</span></a></li>
+      <li><a href="functions_func_s.html#index_s"><span>s</span></a></li>
+      <li><a href="functions_func_t.html#index_t"><span>t</span></a></li>
+      <li><a href="functions_func_u.html#index_u"><span>u</span></a></li>
+      <li><a href="functions_func_w.html#index_w"><span>w</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_e"></a>- e -</h3><ul>
+<li>Earliest()
+: <a class="el" href="classkudu_1_1MonoTime.html#aa553eb3e11cae70a9ee8839a39fc7a14">kudu::MonoTime</a>
+</li>
+<li>empty()
+: <a class="el" href="classkudu_1_1Slice.html#a79e41b882b0a85259be89f5698e27372">kudu::Slice</a>
+</li>
+<li>EncodeRowKey()
+: <a class="el" href="classKuduPartialRow.html#a2721dc18b29237db90a1cda779942533">KuduPartialRow</a>
+</li>
+<li>Encoding()
+: <a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html#ae0ceeb41ac1427c2472a2f28778b6e97">kudu::client::KuduColumnSpec</a>
+</li>
+<li>encoding()
+: <a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#acd93d52b48be7d87a0d3fd4500048f2e">kudu::client::KuduColumnStorageAttributes</a>
+</li>
+<li>end()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#ad30dcfafb276b5347842882cf68cb522">kudu::client::KuduScanBatch</a>
+</li>
+<li>Equals()
+: <a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html#a9f0b1346b66394d7372e401c8eb5458a">kudu::client::KuduColumnSchema</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduSchema.html#a3d9bc062492e472a2055841461b2a87f">kudu::client::KuduSchema</a>
+, <a class="el" href="classkudu_1_1MonoDelta.html#a3d139854a8baaa7c59b3e5d59aba95bc">kudu::MonoDelta</a>
+, <a class="el" href="classkudu_1_1MonoTime.html#a25f2816574ca7f424b79644e30774818">kudu::MonoTime</a>
+</li>
+<li>ExportAuthenticationCredentials()
+: <a class="el" href="classkudu_1_1client_1_1KuduClient.html#a974b491e5d0864f4aa3f60347fa1b62e">kudu::client::KuduClient</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/functions_func_f.html b/releases/1.4.0/cpp-client-api/functions_func_f.html
new file mode 100644
index 0000000..97c3dc2
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/functions_func_f.html
@@ -0,0 +1,143 @@
+<!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.11"/>
+<title>Kudu C++ client API: Class Members - Functions</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li class="current"><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow3" class="tabs2">
+    <ul class="tablist">
+      <li><a href="functions.html"><span>All</span></a></li>
+      <li class="current"><a href="functions_func.html"><span>Functions</span></a></li>
+      <li><a href="functions_vars.html"><span>Variables</span></a></li>
+      <li><a href="functions_type.html"><span>Typedefs</span></a></li>
+      <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+      <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow4" class="tabs3">
+    <ul class="tablist">
+      <li><a href="functions_func.html#index_a"><span>a</span></a></li>
+      <li><a href="functions_func_b.html#index_b"><span>b</span></a></li>
+      <li><a href="functions_func_c.html#index_c"><span>c</span></a></li>
+      <li><a href="functions_func_d.html#index_d"><span>d</span></a></li>
+      <li><a href="functions_func_e.html#index_e"><span>e</span></a></li>
+      <li class="current"><a href="functions_func_f.html#index_f"><span>f</span></a></li>
+      <li><a href="functions_func_g.html#index_g"><span>g</span></a></li>
+      <li><a href="functions_func_h.html#index_h"><span>h</span></a></li>
+      <li><a href="functions_func_i.html#index_i"><span>i</span></a></li>
+      <li><a href="functions_func_k.html#index_k"><span>k</span></a></li>
+      <li><a href="functions_func_l.html#index_l"><span>l</span></a></li>
+      <li><a href="functions_func_m.html#index_m"><span>m</span></a></li>
+      <li><a href="functions_func_n.html#index_n"><span>n</span></a></li>
+      <li><a href="functions_func_o.html#index_o"><span>o</span></a></li>
+      <li><a href="functions_func_p.html#index_p"><span>p</span></a></li>
+      <li><a href="functions_func_r.html#index_r"><span>r</span></a></li>
+      <li><a href="functions_func_s.html#index_s"><span>s</span></a></li>
+      <li><a href="functions_func_t.html#index_t"><span>t</span></a></li>
+      <li><a href="functions_func_u.html#index_u"><span>u</span></a></li>
+      <li><a href="functions_func_w.html#index_w"><span>w</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_f"></a>- f -</h3><ul>
+<li>failed_op()
+: <a class="el" href="classkudu_1_1client_1_1KuduError.html#aaa1558d1db19ae85cf8ce1979b3e538a">kudu::client::KuduError</a>
+</li>
+<li>Flush()
+: <a class="el" href="classkudu_1_1client_1_1KuduSession.html#a64955abb5f5cc821b6e56354f733ce84">kudu::client::KuduSession</a>
+</li>
+<li>FlushAsync()
+: <a class="el" href="classkudu_1_1client_1_1KuduSession.html#ad8c68570479e95b325d8a5437eef8731">kudu::client::KuduSession</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/functions_func_g.html b/releases/1.4.0/cpp-client-api/functions_func_g.html
new file mode 100644
index 0000000..76773a2
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/functions_func_g.html
@@ -0,0 +1,164 @@
+<!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.11"/>
+<title>Kudu C++ client API: Class Members - Functions</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li class="current"><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow3" class="tabs2">
+    <ul class="tablist">
+      <li><a href="functions.html"><span>All</span></a></li>
+      <li class="current"><a href="functions_func.html"><span>Functions</span></a></li>
+      <li><a href="functions_vars.html"><span>Variables</span></a></li>
+      <li><a href="functions_type.html"><span>Typedefs</span></a></li>
+      <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+      <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow4" class="tabs3">
+    <ul class="tablist">
+      <li><a href="functions_func.html#index_a"><span>a</span></a></li>
+      <li><a href="functions_func_b.html#index_b"><span>b</span></a></li>
+      <li><a href="functions_func_c.html#index_c"><span>c</span></a></li>
+      <li><a href="functions_func_d.html#index_d"><span>d</span></a></li>
+      <li><a href="functions_func_e.html#index_e"><span>e</span></a></li>
+      <li><a href="functions_func_f.html#index_f"><span>f</span></a></li>
+      <li class="current"><a href="functions_func_g.html#index_g"><span>g</span></a></li>
+      <li><a href="functions_func_h.html#index_h"><span>h</span></a></li>
+      <li><a href="functions_func_i.html#index_i"><span>i</span></a></li>
+      <li><a href="functions_func_k.html#index_k"><span>k</span></a></li>
+      <li><a href="functions_func_l.html#index_l"><span>l</span></a></li>
+      <li><a href="functions_func_m.html#index_m"><span>m</span></a></li>
+      <li><a href="functions_func_n.html#index_n"><span>n</span></a></li>
+      <li><a href="functions_func_o.html#index_o"><span>o</span></a></li>
+      <li><a href="functions_func_p.html#index_p"><span>p</span></a></li>
+      <li><a href="functions_func_r.html#index_r"><span>r</span></a></li>
+      <li><a href="functions_func_s.html#index_s"><span>s</span></a></li>
+      <li><a href="functions_func_t.html#index_t"><span>t</span></a></li>
+      <li><a href="functions_func_u.html#index_u"><span>u</span></a></li>
+      <li><a href="functions_func_w.html#index_w"><span>w</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_g"></a>- g -</h3><ul>
+<li>Get()
+: <a class="el" href="classkudu_1_1client_1_1ResourceMetrics.html#a1161841400ff4fcee5f2a278813e2db2">kudu::client::ResourceMetrics</a>
+</li>
+<li>GetCurrentServer()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#ac2bce7bd17627a3aa46f7d7fdb4c0c10">kudu::client::KuduScanner</a>
+</li>
+<li>GetDeltaSince()
+: <a class="el" href="classkudu_1_1MonoTime.html#ae1a49263c54563ea72ea10033ab8ccdb">kudu::MonoTime</a>
+</li>
+<li>GetLatestObservedTimestamp()
+: <a class="el" href="classkudu_1_1client_1_1KuduClient.html#a3a671b3540c74ef7c358bb98e95031e0">kudu::client::KuduClient</a>
+</li>
+<li>GetMetric()
+: <a class="el" href="classkudu_1_1client_1_1ResourceMetrics.html#a21818e1e42dcc0f7abcdc80c5487b1da">kudu::client::ResourceMetrics</a>
+</li>
+<li>GetPendingErrors()
+: <a class="el" href="classkudu_1_1client_1_1KuduSession.html#ad5e3521623338de49cfd62914bdcb2f7">kudu::client::KuduSession</a>
+</li>
+<li>GetPrimaryKeyColumnIndexes()
+: <a class="el" href="classkudu_1_1client_1_1KuduSchema.html#a192b707f348178b698070d3a88a4d156">kudu::client::KuduSchema</a>
+</li>
+<li>GetProjectionSchema()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a7fad1430b8e1d4caf0614f690fa2666f">kudu::client::KuduScanner</a>
+</li>
+<li>GetResourceMetrics()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a640d0d9de62587b29afbec22b7c6b628">kudu::client::KuduScanner</a>
+</li>
+<li>GetTableSchema()
+: <a class="el" href="classkudu_1_1client_1_1KuduClient.html#a2aa649e05e0cfb0e10ebce98fb4d7a65">kudu::client::KuduClient</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/functions_func_h.html b/releases/1.4.0/cpp-client-api/functions_func_h.html
new file mode 100644
index 0000000..e757f88
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/functions_func_h.html
@@ -0,0 +1,143 @@
+<!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.11"/>
+<title>Kudu C++ client API: Class Members - Functions</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li class="current"><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow3" class="tabs2">
+    <ul class="tablist">
+      <li><a href="functions.html"><span>All</span></a></li>
+      <li class="current"><a href="functions_func.html"><span>Functions</span></a></li>
+      <li><a href="functions_vars.html"><span>Variables</span></a></li>
+      <li><a href="functions_type.html"><span>Typedefs</span></a></li>
+      <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+      <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow4" class="tabs3">
+    <ul class="tablist">
+      <li><a href="functions_func.html#index_a"><span>a</span></a></li>
+      <li><a href="functions_func_b.html#index_b"><span>b</span></a></li>
+      <li><a href="functions_func_c.html#index_c"><span>c</span></a></li>
+      <li><a href="functions_func_d.html#index_d"><span>d</span></a></li>
+      <li><a href="functions_func_e.html#index_e"><span>e</span></a></li>
+      <li><a href="functions_func_f.html#index_f"><span>f</span></a></li>
+      <li><a href="functions_func_g.html#index_g"><span>g</span></a></li>
+      <li class="current"><a href="functions_func_h.html#index_h"><span>h</span></a></li>
+      <li><a href="functions_func_i.html#index_i"><span>i</span></a></li>
+      <li><a href="functions_func_k.html#index_k"><span>k</span></a></li>
+      <li><a href="functions_func_l.html#index_l"><span>l</span></a></li>
+      <li><a href="functions_func_m.html#index_m"><span>m</span></a></li>
+      <li><a href="functions_func_n.html#index_n"><span>n</span></a></li>
+      <li><a href="functions_func_o.html#index_o"><span>o</span></a></li>
+      <li><a href="functions_func_p.html#index_p"><span>p</span></a></li>
+      <li><a href="functions_func_r.html#index_r"><span>r</span></a></li>
+      <li><a href="functions_func_s.html#index_s"><span>s</span></a></li>
+      <li><a href="functions_func_t.html#index_t"><span>t</span></a></li>
+      <li><a href="functions_func_u.html#index_u"><span>u</span></a></li>
+      <li><a href="functions_func_w.html#index_w"><span>w</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_h"></a>- h -</h3><ul>
+<li>HasMoreRows()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#ab04c2012970498590d2d2034d6a44d34">kudu::client::KuduScanner</a>
+</li>
+<li>HasPendingOperations()
+: <a class="el" href="classkudu_1_1client_1_1KuduSession.html#a3f224e9b95f86da7e1f2ea6fcf327756">kudu::client::KuduSession</a>
+</li>
+<li>hostname()
+: <a class="el" href="classkudu_1_1client_1_1KuduTabletServer.html#a24267a240220ed35ffe2b830899edb14">kudu::client::KuduTabletServer</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/functions_func_i.html b/releases/1.4.0/cpp-client-api/functions_func_i.html
new file mode 100644
index 0000000..d1559cb
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/functions_func_i.html
@@ -0,0 +1,233 @@
+<!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.11"/>
+<title>Kudu C++ client API: Class Members - Functions</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li class="current"><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow3" class="tabs2">
+    <ul class="tablist">
+      <li><a href="functions.html"><span>All</span></a></li>
+      <li class="current"><a href="functions_func.html"><span>Functions</span></a></li>
+      <li><a href="functions_vars.html"><span>Variables</span></a></li>
+      <li><a href="functions_type.html"><span>Typedefs</span></a></li>
+      <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+      <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow4" class="tabs3">
+    <ul class="tablist">
+      <li><a href="functions_func.html#index_a"><span>a</span></a></li>
+      <li><a href="functions_func_b.html#index_b"><span>b</span></a></li>
+      <li><a href="functions_func_c.html#index_c"><span>c</span></a></li>
+      <li><a href="functions_func_d.html#index_d"><span>d</span></a></li>
+      <li><a href="functions_func_e.html#index_e"><span>e</span></a></li>
+      <li><a href="functions_func_f.html#index_f"><span>f</span></a></li>
+      <li><a href="functions_func_g.html#index_g"><span>g</span></a></li>
+      <li><a href="functions_func_h.html#index_h"><span>h</span></a></li>
+      <li class="current"><a href="functions_func_i.html#index_i"><span>i</span></a></li>
+      <li><a href="functions_func_k.html#index_k"><span>k</span></a></li>
+      <li><a href="functions_func_l.html#index_l"><span>l</span></a></li>
+      <li><a href="functions_func_m.html#index_m"><span>m</span></a></li>
+      <li><a href="functions_func_n.html#index_n"><span>n</span></a></li>
+      <li><a href="functions_func_o.html#index_o"><span>o</span></a></li>
+      <li><a href="functions_func_p.html#index_p"><span>p</span></a></li>
+      <li><a href="functions_func_r.html#index_r"><span>r</span></a></li>
+      <li><a href="functions_func_s.html#index_s"><span>s</span></a></li>
+      <li><a href="functions_func_t.html#index_t"><span>t</span></a></li>
+      <li><a href="functions_func_u.html#index_u"><span>u</span></a></li>
+      <li><a href="functions_func_w.html#index_w"><span>w</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_i"></a>- i -</h3><ul>
+<li>id()
+: <a class="el" href="classkudu_1_1client_1_1KuduTable.html#a185ff8f18b9bea6b41d6f4cf8dfa1377">kudu::client::KuduTable</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduTablet.html#ae1fc886aa1c72ba64e6ecd05e04a0e31">kudu::client::KuduTablet</a>
+</li>
+<li>import_authentication_credentials()
+: <a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html#a5c411bc4638cbf77e5d318f5049b0b7e">kudu::client::KuduClientBuilder</a>
+</li>
+<li>Increment()
+: <a class="el" href="classkudu_1_1client_1_1ResourceMetrics.html#ae7b5f6021f63c25bbd087ba2cf48dc8a">kudu::client::ResourceMetrics</a>
+</li>
+<li>indirect_data()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#af41b26a5f137122454d6341a5b5c1a43">kudu::client::KuduScanBatch</a>
+</li>
+<li>Initialized()
+: <a class="el" href="classkudu_1_1MonoDelta.html#aad3a0f1a1fc2e504ff137e55cfe068a3">kudu::MonoDelta</a>
+, <a class="el" href="classkudu_1_1MonoTime.html#a4ba08bf71a2496672338522952301926">kudu::MonoTime</a>
+</li>
+<li>IntoKuduScanner()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanToken.html#adb95c9538bb1fc4c83963557ce487292">kudu::client::KuduScanToken</a>
+</li>
+<li>is_leader()
+: <a class="el" href="classkudu_1_1client_1_1KuduReplica.html#a5e380e1e7f2154b61269737d65dd2649">kudu::client::KuduReplica</a>
+</li>
+<li>is_nullable()
+: <a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html#a45ea4feefa1c69b1ec6bc5f0316ed7ec">kudu::client::KuduColumnSchema</a>
+</li>
+<li>IsAborted()
+: <a class="el" href="classkudu_1_1Status.html#ad4fe06882fdfb2a040e4d7d10363ca0a">kudu::Status</a>
+</li>
+<li>IsAlreadyPresent()
+: <a class="el" href="classkudu_1_1Status.html#ab9e4ddf4c48889f365c6d359ae560e1c">kudu::Status</a>
+</li>
+<li>IsAlterTableInProgress()
+: <a class="el" href="classkudu_1_1client_1_1KuduClient.html#a7a331e528759296089837b4611c01809">kudu::client::KuduClient</a>
+</li>
+<li>IsColumnSet()
+: <a class="el" href="classKuduPartialRow.html#a592d2ee5fb13a710fcd675cc675f2193">KuduPartialRow</a>
+</li>
+<li>IsConfigurationError()
+: <a class="el" href="classkudu_1_1Status.html#a8d31d26943101023125666bbbea002e3">kudu::Status</a>
+</li>
+<li>IsCorruption()
+: <a class="el" href="classkudu_1_1Status.html#a36fa7d6fc0cd9ab1f9ad48e4a7614bc9">kudu::Status</a>
+</li>
+<li>IsCreateTableInProgress()
+: <a class="el" href="classkudu_1_1client_1_1KuduClient.html#a2f0323b439d8658b2ac31fde7f46de63">kudu::client::KuduClient</a>
+</li>
+<li>IsEndOfFile()
+: <a class="el" href="classkudu_1_1Status.html#adead843ea27f50252f561c995c97b2e6">kudu::Status</a>
+</li>
+<li>IsIllegalState()
+: <a class="el" href="classkudu_1_1Status.html#a75e5cf90718eea9654c7e58546ea1aa2">kudu::Status</a>
+</li>
+<li>IsIncomplete()
+: <a class="el" href="classkudu_1_1Status.html#af68a02f8069b1a8670fcc1b7acd869b9">kudu::Status</a>
+</li>
+<li>IsInvalidArgument()
+: <a class="el" href="classkudu_1_1Status.html#a56e991c78f5a4aed32b97fbeccf13c2c">kudu::Status</a>
+</li>
+<li>IsIOError()
+: <a class="el" href="classkudu_1_1Status.html#a991a91d7c07ffa41e6802a12f34d1acf">kudu::Status</a>
+</li>
+<li>IsKeySet()
+: <a class="el" href="classKuduPartialRow.html#a8e51d3b848636aabe561e3e66b9470e8">KuduPartialRow</a>
+</li>
+<li>IsMultiMaster()
+: <a class="el" href="classkudu_1_1client_1_1KuduClient.html#a6f52dff0717d6e96863aff068bfb3795">kudu::client::KuduClient</a>
+</li>
+<li>IsNetworkError()
+: <a class="el" href="classkudu_1_1Status.html#a70c83ddb5b234e814db84dfbbb751d0c">kudu::Status</a>
+</li>
+<li>IsNotAuthorized()
+: <a class="el" href="classkudu_1_1Status.html#aef9c22bc13669be3e2289844ec916244">kudu::Status</a>
+</li>
+<li>IsNotFound()
+: <a class="el" href="classkudu_1_1Status.html#a38e1a8eb7b23092569cb61983ebb671d">kudu::Status</a>
+</li>
+<li>IsNotSupported()
+: <a class="el" href="classkudu_1_1Status.html#a2b1672aba7ec84133cd086186b27821b">kudu::Status</a>
+</li>
+<li>IsNull()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#a1b0b04656fec608919b7b6ac7c99451e">kudu::client::KuduScanBatch</a>
+, <a class="el" href="classKuduPartialRow.html#acaff842dad3af9546b2ed936613e59ab">KuduPartialRow</a>
+</li>
+<li>IsRemoteError()
+: <a class="el" href="classkudu_1_1Status.html#a96a35401df4ecd6420c86c65bc3e05f9">kudu::Status</a>
+</li>
+<li>IsRuntimeError()
+: <a class="el" href="classkudu_1_1Status.html#abc68e44f825df4e221e9fcce419a90cf">kudu::Status</a>
+</li>
+<li>IsServiceUnavailable()
+: <a class="el" href="classkudu_1_1Status.html#a7bce15fc7b4d95b0bdffce963972cce8">kudu::Status</a>
+</li>
+<li>IsTimedOut()
+: <a class="el" href="classkudu_1_1Status.html#a80fe0286d8e3ac011a611afbac4edb11">kudu::Status</a>
+</li>
+<li>IsUninitialized()
+: <a class="el" href="classkudu_1_1Status.html#a325666f396d7f9900403765cecbaecbf">kudu::Status</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/functions_func_k.html b/releases/1.4.0/cpp-client-api/functions_func_k.html
new file mode 100644
index 0000000..28ae0c7
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/functions_func_k.html
@@ -0,0 +1,170 @@
+<!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.11"/>
+<title>Kudu C++ client API: Class Members - Functions</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li class="current"><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow3" class="tabs2">
+    <ul class="tablist">
+      <li><a href="functions.html"><span>All</span></a></li>
+      <li class="current"><a href="functions_func.html"><span>Functions</span></a></li>
+      <li><a href="functions_vars.html"><span>Variables</span></a></li>
+      <li><a href="functions_type.html"><span>Typedefs</span></a></li>
+      <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+      <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow4" class="tabs3">
+    <ul class="tablist">
+      <li><a href="functions_func.html#index_a"><span>a</span></a></li>
+      <li><a href="functions_func_b.html#index_b"><span>b</span></a></li>
+      <li><a href="functions_func_c.html#index_c"><span>c</span></a></li>
+      <li><a href="functions_func_d.html#index_d"><span>d</span></a></li>
+      <li><a href="functions_func_e.html#index_e"><span>e</span></a></li>
+      <li><a href="functions_func_f.html#index_f"><span>f</span></a></li>
+      <li><a href="functions_func_g.html#index_g"><span>g</span></a></li>
+      <li><a href="functions_func_h.html#index_h"><span>h</span></a></li>
+      <li><a href="functions_func_i.html#index_i"><span>i</span></a></li>
+      <li class="current"><a href="functions_func_k.html#index_k"><span>k</span></a></li>
+      <li><a href="functions_func_l.html#index_l"><span>l</span></a></li>
+      <li><a href="functions_func_m.html#index_m"><span>m</span></a></li>
+      <li><a href="functions_func_n.html#index_n"><span>n</span></a></li>
+      <li><a href="functions_func_o.html#index_o"><span>o</span></a></li>
+      <li><a href="functions_func_p.html#index_p"><span>p</span></a></li>
+      <li><a href="functions_func_r.html#index_r"><span>r</span></a></li>
+      <li><a href="functions_func_s.html#index_s"><span>s</span></a></li>
+      <li><a href="functions_func_t.html#index_t"><span>t</span></a></li>
+      <li><a href="functions_func_u.html#index_u"><span>u</span></a></li>
+      <li><a href="functions_func_w.html#index_w"><span>w</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_k"></a>- k -</h3><ul>
+<li>KeepAlive()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#aa4a0caf7142880255d7aac1d75f33d21">kudu::client::KuduScanner</a>
+</li>
+<li>KuduColumnSchema()
+: <a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html#aaa771e9d224978f735b3aabb04bc129a">kudu::client::KuduColumnSchema</a>
+</li>
+<li>KuduColumnStorageAttributes()
+: <a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#a2d6e5bec50a7305b3b4d75d21d000fab">kudu::client::KuduColumnStorageAttributes</a>
+</li>
+<li>KuduLoggingFunctionCallback()
+: <a class="el" href="classkudu_1_1client_1_1KuduLoggingFunctionCallback.html#a4263c504b21e0e5827f47a902e908a2c">kudu::client::KuduLoggingFunctionCallback&lt; T &gt;</a>
+</li>
+<li>KuduLoggingMemberCallback()
+: <a class="el" href="classkudu_1_1client_1_1KuduLoggingMemberCallback.html#aeda4119b1288db0d055c9800e3485fd8">kudu::client::KuduLoggingMemberCallback&lt; T &gt;</a>
+</li>
+<li>KuduPartialRow()
+: <a class="el" href="classKuduPartialRow.html#ab4ebb399982edbb3e877e38a74c700f1">KuduPartialRow</a>
+</li>
+<li>KuduPartitionerBuilder()
+: <a class="el" href="classkudu_1_1client_1_1KuduPartitionerBuilder.html#a27d130235be1c2691779e1d97732a4ba">kudu::client::KuduPartitionerBuilder</a>
+</li>
+<li>KuduScanner()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a2c621f778072a02f4092e96a0baf8180">kudu::client::KuduScanner</a>
+</li>
+<li>KuduScanTokenBuilder()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#aa8d300b560d419030abd503b66812484">kudu::client::KuduScanTokenBuilder</a>
+</li>
+<li>KuduSchema()
+: <a class="el" href="classkudu_1_1client_1_1KuduSchema.html#a41a683f3d93357fe68531bf71df39d02">kudu::client::KuduSchema</a>
+</li>
+<li>KuduStatusFunctionCallback()
+: <a class="el" href="classkudu_1_1client_1_1KuduStatusFunctionCallback.html#aca289bbf6ad9720bd74a90550f6c9b3b">kudu::client::KuduStatusFunctionCallback&lt; T &gt;</a>
+</li>
+<li>KuduStatusMemberCallback()
+: <a class="el" href="classkudu_1_1client_1_1KuduStatusMemberCallback.html#acdb02b9798adf2c80b39cfb024f199aa">kudu::client::KuduStatusMemberCallback&lt; T &gt;</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/functions_func_l.html b/releases/1.4.0/cpp-client-api/functions_func_l.html
new file mode 100644
index 0000000..317a6f4
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/functions_func_l.html
@@ -0,0 +1,143 @@
+<!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.11"/>
+<title>Kudu C++ client API: Class Members - Functions</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li class="current"><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow3" class="tabs2">
+    <ul class="tablist">
+      <li><a href="functions.html"><span>All</span></a></li>
+      <li class="current"><a href="functions_func.html"><span>Functions</span></a></li>
+      <li><a href="functions_vars.html"><span>Variables</span></a></li>
+      <li><a href="functions_type.html"><span>Typedefs</span></a></li>
+      <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+      <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow4" class="tabs3">
+    <ul class="tablist">
+      <li><a href="functions_func.html#index_a"><span>a</span></a></li>
+      <li><a href="functions_func_b.html#index_b"><span>b</span></a></li>
+      <li><a href="functions_func_c.html#index_c"><span>c</span></a></li>
+      <li><a href="functions_func_d.html#index_d"><span>d</span></a></li>
+      <li><a href="functions_func_e.html#index_e"><span>e</span></a></li>
+      <li><a href="functions_func_f.html#index_f"><span>f</span></a></li>
+      <li><a href="functions_func_g.html#index_g"><span>g</span></a></li>
+      <li><a href="functions_func_h.html#index_h"><span>h</span></a></li>
+      <li><a href="functions_func_i.html#index_i"><span>i</span></a></li>
+      <li><a href="functions_func_k.html#index_k"><span>k</span></a></li>
+      <li class="current"><a href="functions_func_l.html#index_l"><span>l</span></a></li>
+      <li><a href="functions_func_m.html#index_m"><span>m</span></a></li>
+      <li><a href="functions_func_n.html#index_n"><span>n</span></a></li>
+      <li><a href="functions_func_o.html#index_o"><span>o</span></a></li>
+      <li><a href="functions_func_p.html#index_p"><span>p</span></a></li>
+      <li><a href="functions_func_r.html#index_r"><span>r</span></a></li>
+      <li><a href="functions_func_s.html#index_s"><span>s</span></a></li>
+      <li><a href="functions_func_t.html#index_t"><span>t</span></a></li>
+      <li><a href="functions_func_u.html#index_u"><span>u</span></a></li>
+      <li><a href="functions_func_w.html#index_w"><span>w</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_l"></a>- l -</h3><ul>
+<li>LessThan()
+: <a class="el" href="classkudu_1_1MonoDelta.html#a8f4ae8075a1ff013115a558d97e1ad4c">kudu::MonoDelta</a>
+</li>
+<li>ListTables()
+: <a class="el" href="classkudu_1_1client_1_1KuduClient.html#a3ab09f69753b8c99ac7b2eeed03faa1d">kudu::client::KuduClient</a>
+</li>
+<li>ListTabletServers()
+: <a class="el" href="classkudu_1_1client_1_1KuduClient.html#ae283a49551a081524b41f5d8e51e68d9">kudu::client::KuduClient</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/functions_func_m.html b/releases/1.4.0/cpp-client-api/functions_func_m.html
new file mode 100644
index 0000000..d37c075
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/functions_func_m.html
@@ -0,0 +1,167 @@
+<!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.11"/>
+<title>Kudu C++ client API: Class Members - Functions</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li class="current"><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow3" class="tabs2">
+    <ul class="tablist">
+      <li><a href="functions.html"><span>All</span></a></li>
+      <li class="current"><a href="functions_func.html"><span>Functions</span></a></li>
+      <li><a href="functions_vars.html"><span>Variables</span></a></li>
+      <li><a href="functions_type.html"><span>Typedefs</span></a></li>
+      <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+      <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow4" class="tabs3">
+    <ul class="tablist">
+      <li><a href="functions_func.html#index_a"><span>a</span></a></li>
+      <li><a href="functions_func_b.html#index_b"><span>b</span></a></li>
+      <li><a href="functions_func_c.html#index_c"><span>c</span></a></li>
+      <li><a href="functions_func_d.html#index_d"><span>d</span></a></li>
+      <li><a href="functions_func_e.html#index_e"><span>e</span></a></li>
+      <li><a href="functions_func_f.html#index_f"><span>f</span></a></li>
+      <li><a href="functions_func_g.html#index_g"><span>g</span></a></li>
+      <li><a href="functions_func_h.html#index_h"><span>h</span></a></li>
+      <li><a href="functions_func_i.html#index_i"><span>i</span></a></li>
+      <li><a href="functions_func_k.html#index_k"><span>k</span></a></li>
+      <li><a href="functions_func_l.html#index_l"><span>l</span></a></li>
+      <li class="current"><a href="functions_func_m.html#index_m"><span>m</span></a></li>
+      <li><a href="functions_func_n.html#index_n"><span>n</span></a></li>
+      <li><a href="functions_func_o.html#index_o"><span>o</span></a></li>
+      <li><a href="functions_func_p.html#index_p"><span>p</span></a></li>
+      <li><a href="functions_func_r.html#index_r"><span>r</span></a></li>
+      <li><a href="functions_func_s.html#index_s"><span>s</span></a></li>
+      <li><a href="functions_func_t.html#index_t"><span>t</span></a></li>
+      <li><a href="functions_func_u.html#index_u"><span>u</span></a></li>
+      <li><a href="functions_func_w.html#index_w"><span>w</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_m"></a>- m -</h3><ul>
+<li>master_server_addrs()
+: <a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html#a0c1b92afad7a6e21c5ea781fb7d42114">kudu::client::KuduClientBuilder</a>
+</li>
+<li>Max()
+: <a class="el" href="classkudu_1_1MonoTime.html#a28d08092b30ccefc5e45a6e228034ef9">kudu::MonoTime</a>
+</li>
+<li>memory_footprint_excluding_this()
+: <a class="el" href="classkudu_1_1Status.html#a6dd1852c4c78a3c6d8ace5155546db93">kudu::Status</a>
+</li>
+<li>memory_footprint_including_this()
+: <a class="el" href="classkudu_1_1Status.html#a7a2d4eb7636a485b5b2cc42f0b8ad627">kudu::Status</a>
+</li>
+<li>message()
+: <a class="el" href="classkudu_1_1Status.html#a3547012ea31cc504141f2222eec38857">kudu::Status</a>
+</li>
+<li>Min()
+: <a class="el" href="classkudu_1_1MonoTime.html#acf4fc0351fe9245431932e481e002b99">kudu::MonoTime</a>
+</li>
+<li>MonoDelta()
+: <a class="el" href="classkudu_1_1MonoDelta.html#ad0646900f0927ad9be6302fcda8bfe5f">kudu::MonoDelta</a>
+</li>
+<li>MonoTime()
+: <a class="el" href="classkudu_1_1MonoTime.html#a8f49b7fd2e217b5541d4ce45bda63bd4">kudu::MonoTime</a>
+</li>
+<li>MoreThan()
+: <a class="el" href="classkudu_1_1MonoDelta.html#a218cc5fcd3ce70365210b7c5587aa6ff">kudu::MonoDelta</a>
+</li>
+<li>mutable_data()
+: <a class="el" href="classkudu_1_1Slice.html#a2771156d34daa166067b8d319ad7d164">kudu::Slice</a>
+</li>
+<li>mutable_row()
+: <a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html#a8889770ce62e2ca0ce5d55c9c90af6bc">kudu::client::KuduWriteOperation</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/functions_func_n.html b/releases/1.4.0/cpp-client-api/functions_func_n.html
new file mode 100644
index 0000000..7254184
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/functions_func_n.html
@@ -0,0 +1,201 @@
+<!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.11"/>
+<title>Kudu C++ client API: Class Members - Functions</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li class="current"><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow3" class="tabs2">
+    <ul class="tablist">
+      <li><a href="functions.html"><span>All</span></a></li>
+      <li class="current"><a href="functions_func.html"><span>Functions</span></a></li>
+      <li><a href="functions_vars.html"><span>Variables</span></a></li>
+      <li><a href="functions_type.html"><span>Typedefs</span></a></li>
+      <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+      <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow4" class="tabs3">
+    <ul class="tablist">
+      <li><a href="functions_func.html#index_a"><span>a</span></a></li>
+      <li><a href="functions_func_b.html#index_b"><span>b</span></a></li>
+      <li><a href="functions_func_c.html#index_c"><span>c</span></a></li>
+      <li><a href="functions_func_d.html#index_d"><span>d</span></a></li>
+      <li><a href="functions_func_e.html#index_e"><span>e</span></a></li>
+      <li><a href="functions_func_f.html#index_f"><span>f</span></a></li>
+      <li><a href="functions_func_g.html#index_g"><span>g</span></a></li>
+      <li><a href="functions_func_h.html#index_h"><span>h</span></a></li>
+      <li><a href="functions_func_i.html#index_i"><span>i</span></a></li>
+      <li><a href="functions_func_k.html#index_k"><span>k</span></a></li>
+      <li><a href="functions_func_l.html#index_l"><span>l</span></a></li>
+      <li><a href="functions_func_m.html#index_m"><span>m</span></a></li>
+      <li class="current"><a href="functions_func_n.html#index_n"><span>n</span></a></li>
+      <li><a href="functions_func_o.html#index_o"><span>o</span></a></li>
+      <li><a href="functions_func_p.html#index_p"><span>p</span></a></li>
+      <li><a href="functions_func_r.html#index_r"><span>r</span></a></li>
+      <li><a href="functions_func_s.html#index_s"><span>s</span></a></li>
+      <li><a href="functions_func_t.html#index_t"><span>t</span></a></li>
+      <li><a href="functions_func_u.html#index_u"><span>u</span></a></li>
+      <li><a href="functions_func_w.html#index_w"><span>w</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_n"></a>- n -</h3><ul>
+<li>name()
+: <a class="el" href="classkudu_1_1client_1_1KuduTable.html#aa0f8b6d63c800727c3a827945512555e">kudu::client::KuduTable</a>
+</li>
+<li>NanosToTimeSpec()
+: <a class="el" href="classkudu_1_1MonoDelta.html#a4854924550c571f8af548270da52ac22">kudu::MonoDelta</a>
+</li>
+<li>NewComparisonPredicate()
+: <a class="el" href="classkudu_1_1client_1_1KuduTable.html#aed6c3571aff35270a3e6cd66770f1cea">kudu::client::KuduTable</a>
+</li>
+<li>NewDelete()
+: <a class="el" href="classkudu_1_1client_1_1KuduTable.html#ad873078bdbcafe015d359a65c370a89a">kudu::client::KuduTable</a>
+</li>
+<li>NewInListPredicate()
+: <a class="el" href="classkudu_1_1client_1_1KuduTable.html#a453ffb83cf7c12541caba5ea182fadd9">kudu::client::KuduTable</a>
+</li>
+<li>NewInsert()
+: <a class="el" href="classkudu_1_1client_1_1KuduTable.html#a0c78f86c5d0fbf53437c2c9db26f92b6">kudu::client::KuduTable</a>
+</li>
+<li>NewIsNotNullPredicate()
+: <a class="el" href="classkudu_1_1client_1_1KuduTable.html#af6e70f115cf3c0359b1c170533a2d523">kudu::client::KuduTable</a>
+</li>
+<li>NewIsNullPredicate()
+: <a class="el" href="classkudu_1_1client_1_1KuduTable.html#a5f453909cdeda167ad15506358470466">kudu::client::KuduTable</a>
+</li>
+<li>NewRow()
+: <a class="el" href="classkudu_1_1client_1_1KuduSchema.html#aafaa50819a283b014ae03373e53489a1">kudu::client::KuduSchema</a>
+</li>
+<li>NewSession()
+: <a class="el" href="classkudu_1_1client_1_1KuduClient.html#a1f5b9bf8767b44f03f4d3220dfd5f925">kudu::client::KuduClient</a>
+</li>
+<li>NewTableAlterer()
+: <a class="el" href="classkudu_1_1client_1_1KuduClient.html#a116bbcf13dc0991ad2a3129630075aea">kudu::client::KuduClient</a>
+</li>
+<li>NewTableCreator()
+: <a class="el" href="classkudu_1_1client_1_1KuduClient.html#a003f13604b4fb378f61e133a9b49d153">kudu::client::KuduClient</a>
+</li>
+<li>NewUpdate()
+: <a class="el" href="classkudu_1_1client_1_1KuduTable.html#a7e95271452d608fc2b563f7b46ddcda8">kudu::client::KuduTable</a>
+</li>
+<li>NewUpsert()
+: <a class="el" href="classkudu_1_1client_1_1KuduTable.html#a19e92dbaeeff86c5d707b15b2a7051fc">kudu::client::KuduTable</a>
+</li>
+<li>NextBatch()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#af365f1d3b3b34aeb7d016727a9019067">kudu::client::KuduScanner</a>
+</li>
+<li>NotNull()
+: <a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html#af8c64c5a8a7a93ec644d481f23d91cca">kudu::client::KuduColumnSpec</a>
+</li>
+<li>Now()
+: <a class="el" href="classkudu_1_1MonoTime.html#a6c83d5c31e6ea5a869a655646f924783">kudu::MonoTime</a>
+</li>
+<li>Nullable()
+: <a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html#aab05d7d45f4cd2dadb8e0c715d87e841">kudu::client::KuduColumnSpec</a>
+</li>
+<li>num_columns()
+: <a class="el" href="classkudu_1_1client_1_1KuduSchema.html#ac9e9f590006bd7ccfa44b87dec1b3c7a">kudu::client::KuduSchema</a>
+</li>
+<li>num_replicas()
+: <a class="el" href="classkudu_1_1client_1_1KuduTable.html#a147bdffbd798161916471b721d63128f">kudu::client::KuduTable</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a9dd4673755ba242eab3f06b19182d139">kudu::client::KuduTableCreator</a>
+</li>
+<li>NumPartitions()
+: <a class="el" href="classkudu_1_1client_1_1KuduPartitioner.html#af692612faaccb259bf3d15f2bf5b246d">kudu::client::KuduPartitioner</a>
+</li>
+<li>NumRows()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#a16e45694c5932eb3decc2184c3834157">kudu::client::KuduScanBatch</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/functions_func_o.html b/releases/1.4.0/cpp-client-api/functions_func_o.html
new file mode 100644
index 0000000..49c9102
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/functions_func_o.html
@@ -0,0 +1,176 @@
+<!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.11"/>
+<title>Kudu C++ client API: Class Members - Functions</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li class="current"><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow3" class="tabs2">
+    <ul class="tablist">
+      <li><a href="functions.html"><span>All</span></a></li>
+      <li class="current"><a href="functions_func.html"><span>Functions</span></a></li>
+      <li><a href="functions_vars.html"><span>Variables</span></a></li>
+      <li><a href="functions_type.html"><span>Typedefs</span></a></li>
+      <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+      <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow4" class="tabs3">
+    <ul class="tablist">
+      <li><a href="functions_func.html#index_a"><span>a</span></a></li>
+      <li><a href="functions_func_b.html#index_b"><span>b</span></a></li>
+      <li><a href="functions_func_c.html#index_c"><span>c</span></a></li>
+      <li><a href="functions_func_d.html#index_d"><span>d</span></a></li>
+      <li><a href="functions_func_e.html#index_e"><span>e</span></a></li>
+      <li><a href="functions_func_f.html#index_f"><span>f</span></a></li>
+      <li><a href="functions_func_g.html#index_g"><span>g</span></a></li>
+      <li><a href="functions_func_h.html#index_h"><span>h</span></a></li>
+      <li><a href="functions_func_i.html#index_i"><span>i</span></a></li>
+      <li><a href="functions_func_k.html#index_k"><span>k</span></a></li>
+      <li><a href="functions_func_l.html#index_l"><span>l</span></a></li>
+      <li><a href="functions_func_m.html#index_m"><span>m</span></a></li>
+      <li><a href="functions_func_n.html#index_n"><span>n</span></a></li>
+      <li class="current"><a href="functions_func_o.html#index_o"><span>o</span></a></li>
+      <li><a href="functions_func_p.html#index_p"><span>p</span></a></li>
+      <li><a href="functions_func_r.html#index_r"><span>r</span></a></li>
+      <li><a href="functions_func_s.html#index_s"><span>s</span></a></li>
+      <li><a href="functions_func_t.html#index_t"><span>t</span></a></li>
+      <li><a href="functions_func_u.html#index_u"><span>u</span></a></li>
+      <li><a href="functions_func_w.html#index_w"><span>w</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_o"></a>- o -</h3><ul>
+<li>OK()
+: <a class="el" href="classkudu_1_1Status.html#adaff3248b2f66041d0a7dd59f118b7ac">kudu::Status</a>
+</li>
+<li>ok()
+: <a class="el" href="classkudu_1_1Status.html#abf6454dcb72bfa92189a0595b5a858a7">kudu::Status</a>
+</li>
+<li>Open()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#aa1ff3c11d9ac9f8183189ea5ac1ed9f1">kudu::client::KuduScanner</a>
+</li>
+<li>OpenTable()
+: <a class="el" href="classkudu_1_1client_1_1KuduClient.html#aa82a09718ffe68d3255195e736aec8d7">kudu::client::KuduClient</a>
+</li>
+<li>operator!=()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#afd2b2c4cb038cbd366c2af8cf09a3a68">kudu::client::KuduScanBatch</a>
+</li>
+<li>operator()()
+: <a class="el" href="structkudu_1_1Slice_1_1Comparator.html#a2f33c829e2febd880f9cbcbebb08fa6a">kudu::Slice::Comparator</a>
+</li>
+<li>operator*()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#ab057b7b1bfb713a7e8f216e3b288cb10">kudu::client::KuduScanBatch</a>
+</li>
+<li>operator++()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#ad5df483ed3172caab5a8d6a72abfad0c">kudu::client::KuduScanBatch</a>
+</li>
+<li>operator-=()
+: <a class="el" href="classkudu_1_1MonoTime.html#a2264cf528d0a346e60e0921022333bf8">kudu::MonoTime</a>
+</li>
+<li>operator&lt;&lt;()
+: <a class="el" href="classkudu_1_1internal__logging_1_1CerrLog.html#a9febb74005a76f9b203e9718275ab724">kudu::internal_logging::CerrLog</a>
+, <a class="el" href="classkudu_1_1internal__logging_1_1NullLog.html#abe50abde8e4af12413c99f437094dc8a">kudu::internal_logging::NullLog</a>
+</li>
+<li>operator=()
+: <a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html#a4b58da787c8e7dc14987aa74a54f199e">kudu::client::KuduColumnSchema</a>
+, <a class="el" href="classkudu_1_1Status.html#aa387797d8a80892563d56244a2351a88">kudu::Status</a>
+, <a class="el" href="classKuduPartialRow.html#a03cab3e1aa0bef19c14f94181934181f">KuduPartialRow</a>
+</li>
+<li>operator==()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#a378a5844a4b4774056b26f0003c15048">kudu::client::KuduScanBatch</a>
+</li>
+<li>operator[]()
+: <a class="el" href="classkudu_1_1Slice.html#a5ff06bc0fd9734536a464e604ec226f2">kudu::Slice</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/functions_func_p.html b/releases/1.4.0/cpp-client-api/functions_func_p.html
new file mode 100644
index 0000000..675296f
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/functions_func_p.html
@@ -0,0 +1,149 @@
+<!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.11"/>
+<title>Kudu C++ client API: Class Members - Functions</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li class="current"><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow3" class="tabs2">
+    <ul class="tablist">
+      <li><a href="functions.html"><span>All</span></a></li>
+      <li class="current"><a href="functions_func.html"><span>Functions</span></a></li>
+      <li><a href="functions_vars.html"><span>Variables</span></a></li>
+      <li><a href="functions_type.html"><span>Typedefs</span></a></li>
+      <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+      <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow4" class="tabs3">
+    <ul class="tablist">
+      <li><a href="functions_func.html#index_a"><span>a</span></a></li>
+      <li><a href="functions_func_b.html#index_b"><span>b</span></a></li>
+      <li><a href="functions_func_c.html#index_c"><span>c</span></a></li>
+      <li><a href="functions_func_d.html#index_d"><span>d</span></a></li>
+      <li><a href="functions_func_e.html#index_e"><span>e</span></a></li>
+      <li><a href="functions_func_f.html#index_f"><span>f</span></a></li>
+      <li><a href="functions_func_g.html#index_g"><span>g</span></a></li>
+      <li><a href="functions_func_h.html#index_h"><span>h</span></a></li>
+      <li><a href="functions_func_i.html#index_i"><span>i</span></a></li>
+      <li><a href="functions_func_k.html#index_k"><span>k</span></a></li>
+      <li><a href="functions_func_l.html#index_l"><span>l</span></a></li>
+      <li><a href="functions_func_m.html#index_m"><span>m</span></a></li>
+      <li><a href="functions_func_n.html#index_n"><span>n</span></a></li>
+      <li><a href="functions_func_o.html#index_o"><span>o</span></a></li>
+      <li class="current"><a href="functions_func_p.html#index_p"><span>p</span></a></li>
+      <li><a href="functions_func_r.html#index_r"><span>r</span></a></li>
+      <li><a href="functions_func_s.html#index_s"><span>s</span></a></li>
+      <li><a href="functions_func_t.html#index_t"><span>t</span></a></li>
+      <li><a href="functions_func_u.html#index_u"><span>u</span></a></li>
+      <li><a href="functions_func_w.html#index_w"><span>w</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_p"></a>- p -</h3><ul>
+<li>partition_schema()
+: <a class="el" href="classkudu_1_1client_1_1KuduTable.html#af1125879ce34fa6c994a70fe1803a808">kudu::client::KuduTable</a>
+</li>
+<li>PartitionRow()
+: <a class="el" href="classkudu_1_1client_1_1KuduPartitioner.html#a05d816ba08d85d5c0c95025e12d2e369">kudu::client::KuduPartitioner</a>
+</li>
+<li>port()
+: <a class="el" href="classkudu_1_1client_1_1KuduTabletServer.html#ab4715d71c64dad1059698f2bb9ef192d">kudu::client::KuduTabletServer</a>
+</li>
+<li>posix_code()
+: <a class="el" href="classkudu_1_1Status.html#a20d5b34e3507a5dd326029a87df641dc">kudu::Status</a>
+</li>
+<li>projection_schema()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#a3b58e77f53beea357fbb8bcddaab3137">kudu::client::KuduScanBatch</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/functions_func_r.html b/releases/1.4.0/cpp-client-api/functions_func_r.html
new file mode 100644
index 0000000..50b8de5
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/functions_func_r.html
@@ -0,0 +1,170 @@
+<!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.11"/>
+<title>Kudu C++ client API: Class Members - Functions</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li class="current"><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow3" class="tabs2">
+    <ul class="tablist">
+      <li><a href="functions.html"><span>All</span></a></li>
+      <li class="current"><a href="functions_func.html"><span>Functions</span></a></li>
+      <li><a href="functions_vars.html"><span>Variables</span></a></li>
+      <li><a href="functions_type.html"><span>Typedefs</span></a></li>
+      <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+      <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow4" class="tabs3">
+    <ul class="tablist">
+      <li><a href="functions_func.html#index_a"><span>a</span></a></li>
+      <li><a href="functions_func_b.html#index_b"><span>b</span></a></li>
+      <li><a href="functions_func_c.html#index_c"><span>c</span></a></li>
+      <li><a href="functions_func_d.html#index_d"><span>d</span></a></li>
+      <li><a href="functions_func_e.html#index_e"><span>e</span></a></li>
+      <li><a href="functions_func_f.html#index_f"><span>f</span></a></li>
+      <li><a href="functions_func_g.html#index_g"><span>g</span></a></li>
+      <li><a href="functions_func_h.html#index_h"><span>h</span></a></li>
+      <li><a href="functions_func_i.html#index_i"><span>i</span></a></li>
+      <li><a href="functions_func_k.html#index_k"><span>k</span></a></li>
+      <li><a href="functions_func_l.html#index_l"><span>l</span></a></li>
+      <li><a href="functions_func_m.html#index_m"><span>m</span></a></li>
+      <li><a href="functions_func_n.html#index_n"><span>n</span></a></li>
+      <li><a href="functions_func_o.html#index_o"><span>o</span></a></li>
+      <li><a href="functions_func_p.html#index_p"><span>p</span></a></li>
+      <li class="current"><a href="functions_func_r.html#index_r"><span>r</span></a></li>
+      <li><a href="functions_func_s.html#index_s"><span>s</span></a></li>
+      <li><a href="functions_func_t.html#index_t"><span>t</span></a></li>
+      <li><a href="functions_func_u.html#index_u"><span>u</span></a></li>
+      <li><a href="functions_func_w.html#index_w"><span>w</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_r"></a>- r -</h3><ul>
+<li>release_failed_op()
+: <a class="el" href="classkudu_1_1client_1_1KuduError.html#ae1a49bd16eeff4d2ab88fa70e1dc3c6a">kudu::client::KuduError</a>
+</li>
+<li>relocate()
+: <a class="el" href="classkudu_1_1Slice.html#a4bb1c9fe13873623b5a5a118830b1806">kudu::Slice</a>
+</li>
+<li>remove_prefix()
+: <a class="el" href="classkudu_1_1Slice.html#a00f5d310f9ebf17c198cf3feb69c3842">kudu::Slice</a>
+</li>
+<li>RenameTo()
+: <a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html#abeb2cbbaa01253165202574db03872f4">kudu::client::KuduColumnSpec</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html#aca8ea8d7b65e6952c76fd97f12d5b324">kudu::client::KuduTableAlterer</a>
+</li>
+<li>replicas()
+: <a class="el" href="classkudu_1_1client_1_1KuduTablet.html#a7816ea063549347b676fc18dfa297619">kudu::client::KuduTablet</a>
+</li>
+<li>Reset()
+: <a class="el" href="classkudu_1_1client_1_1KuduSchema.html#a3f51ccf1a7e6f4a4fe4958073305dbab">kudu::client::KuduSchema</a>
+</li>
+<li>Row()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#a93c2f0914140dd405a51d57e2f75014a">kudu::client::KuduScanBatch</a>
+</li>
+<li>row()
+: <a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html#a973b342ced786b23754b57fd83b34aa3">kudu::client::KuduWriteOperation</a>
+</li>
+<li>RowPtr()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#a92bbfa48e9b503181c2dfb5f11f14e4e">kudu::client::KuduScanBatch</a>
+</li>
+<li>Run()
+: <a class="el" href="classkudu_1_1client_1_1KuduLoggingCallback.html#ad9d5ac9b45246c5a4304d53ee86102eb">kudu::client::KuduLoggingCallback</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduLoggingFunctionCallback.html#ab5119cbc60675f3ca77e08c1e87ec215">kudu::client::KuduLoggingFunctionCallback&lt; T &gt;</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduLoggingMemberCallback.html#a3d75e43bb4af846af66735fabe642a88">kudu::client::KuduLoggingMemberCallback&lt; T &gt;</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduStatusCallback.html#a2333beedb1d0c08a8c127b4552fbeb07">kudu::client::KuduStatusCallback</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduStatusFunctionCallback.html#af4c3e7fbd4fed52bcba220f95a27f70a">kudu::client::KuduStatusFunctionCallback&lt; T &gt;</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduStatusMemberCallback.html#a94bde1bdcb3cde6f78b11d822be19232">kudu::client::KuduStatusMemberCallback&lt; T &gt;</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/functions_func_s.html b/releases/1.4.0/cpp-client-api/functions_func_s.html
new file mode 100644
index 0000000..d47f52b
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/functions_func_s.html
@@ -0,0 +1,246 @@
+<!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.11"/>
+<title>Kudu C++ client API: Class Members - Functions</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li class="current"><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow3" class="tabs2">
+    <ul class="tablist">
+      <li><a href="functions.html"><span>All</span></a></li>
+      <li class="current"><a href="functions_func.html"><span>Functions</span></a></li>
+      <li><a href="functions_vars.html"><span>Variables</span></a></li>
+      <li><a href="functions_type.html"><span>Typedefs</span></a></li>
+      <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+      <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow4" class="tabs3">
+    <ul class="tablist">
+      <li><a href="functions_func.html#index_a"><span>a</span></a></li>
+      <li><a href="functions_func_b.html#index_b"><span>b</span></a></li>
+      <li><a href="functions_func_c.html#index_c"><span>c</span></a></li>
+      <li><a href="functions_func_d.html#index_d"><span>d</span></a></li>
+      <li><a href="functions_func_e.html#index_e"><span>e</span></a></li>
+      <li><a href="functions_func_f.html#index_f"><span>f</span></a></li>
+      <li><a href="functions_func_g.html#index_g"><span>g</span></a></li>
+      <li><a href="functions_func_h.html#index_h"><span>h</span></a></li>
+      <li><a href="functions_func_i.html#index_i"><span>i</span></a></li>
+      <li><a href="functions_func_k.html#index_k"><span>k</span></a></li>
+      <li><a href="functions_func_l.html#index_l"><span>l</span></a></li>
+      <li><a href="functions_func_m.html#index_m"><span>m</span></a></li>
+      <li><a href="functions_func_n.html#index_n"><span>n</span></a></li>
+      <li><a href="functions_func_o.html#index_o"><span>o</span></a></li>
+      <li><a href="functions_func_p.html#index_p"><span>p</span></a></li>
+      <li><a href="functions_func_r.html#index_r"><span>r</span></a></li>
+      <li class="current"><a href="functions_func_s.html#index_s"><span>s</span></a></li>
+      <li><a href="functions_func_t.html#index_t"><span>t</span></a></li>
+      <li><a href="functions_func_u.html#index_u"><span>u</span></a></li>
+      <li><a href="functions_func_w.html#index_w"><span>w</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_s"></a>- s -</h3><ul>
+<li>schema()
+: <a class="el" href="classkudu_1_1client_1_1KuduTable.html#a4482e54a05c5b61b2bddc8c5297973fd">kudu::client::KuduTable</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a38a83cf0e856ebaf4a5afe8c4a1d06f7">kudu::client::KuduTableCreator</a>
+, <a class="el" href="classKuduPartialRow.html#a33abfa2504b7e6323cdbba22ad346023">KuduPartialRow</a>
+</li>
+<li>Serialize()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanToken.html#a6eb749ddf0a1434596d86df88341a008">kudu::client::KuduScanToken</a>
+</li>
+<li>set_range_partition_columns()
+: <a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a482701285b7a071dd56f04df480bc7c3">kudu::client::KuduTableCreator</a>
+</li>
+<li>SetBatchSizeBytes()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#af82c4ccb442c222033841dd65cf5a67c">kudu::client::KuduScanner</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#a36523ca7f2f9a2b4e3c096cf6167643c">kudu::client::KuduScanTokenBuilder</a>
+</li>
+<li>SetBuildTimeout()
+: <a class="el" href="classkudu_1_1client_1_1KuduPartitionerBuilder.html#a11e28b7ad87a53a92d2ad5494f2c5f14">kudu::client::KuduPartitionerBuilder</a>
+</li>
+<li>SetCacheBlocks()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a4a4a2e354b3113561758b9bf4095d310">kudu::client::KuduScanner</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#a7ab7c9c1c4f4d3bbbc18b2b35d7d5475">kudu::client::KuduScanTokenBuilder</a>
+</li>
+<li>SetErrorBufferSpace()
+: <a class="el" href="classkudu_1_1client_1_1KuduSession.html#af1c5e5e8faba286cddc266057e9a82d5">kudu::client::KuduSession</a>
+</li>
+<li>SetExternalConsistencyMode()
+: <a class="el" href="classkudu_1_1client_1_1KuduSession.html#a56d1c7f47dfcaf5121b15a4435a8eeca">kudu::client::KuduSession</a>
+</li>
+<li>SetFaultTolerant()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a107a8a682c0977272e0ae47746d39e6f">kudu::client::KuduScanner</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#a4a17f27950ccd59bcb3430fb28b61dbe">kudu::client::KuduScanTokenBuilder</a>
+</li>
+<li>SetFlushMode()
+: <a class="el" href="classkudu_1_1client_1_1KuduSession.html#a83555781b5a037f87c215e565ecf1a8f">kudu::client::KuduSession</a>
+</li>
+<li>SetLatestObservedTimestamp()
+: <a class="el" href="classkudu_1_1client_1_1KuduClient.html#a0809b055eda76fd68988462f2a9791dd">kudu::client::KuduClient</a>
+</li>
+<li>SetMutationBufferFlushInterval()
+: <a class="el" href="classkudu_1_1client_1_1KuduSession.html#aabe75f0688f992dbdb2694a50d07f941">kudu::client::KuduSession</a>
+</li>
+<li>SetMutationBufferFlushWatermark()
+: <a class="el" href="classkudu_1_1client_1_1KuduSession.html#a7311344cec37b3847217197c35467cdf">kudu::client::KuduSession</a>
+</li>
+<li>SetMutationBufferMaxNum()
+: <a class="el" href="classkudu_1_1client_1_1KuduSession.html#ac9a96017f86bfb6348fca9bfa0b8b5a4">kudu::client::KuduSession</a>
+</li>
+<li>SetMutationBufferSpace()
+: <a class="el" href="classkudu_1_1client_1_1KuduSession.html#aefa9bbc51c27104ce103b9ecda3b8abf">kudu::client::KuduSession</a>
+</li>
+<li>SetNull()
+: <a class="el" href="classKuduPartialRow.html#aedbcf22d41791c5ae28e978eb9054cc5">KuduPartialRow</a>
+</li>
+<li>SetOrderMode()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a93a87740ea75c9b6524dc229576b69fc">kudu::client::KuduScanner</a>
+</li>
+<li>SetPrimaryKey()
+: <a class="el" href="classkudu_1_1client_1_1KuduSchemaBuilder.html#ad4c1619445fea575a775f23752b6bfb9">kudu::client::KuduSchemaBuilder</a>
+</li>
+<li>SetProjectedColumnIndexes()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a8d938c6efc1b36d456c91b5af0b1578d">kudu::client::KuduScanner</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#a01d990e024632c7749cca96b4f857be8">kudu::client::KuduScanTokenBuilder</a>
+</li>
+<li>SetProjectedColumnNames()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#abb10b26056757bf81c410d3d5e6bcc01">kudu::client::KuduScanner</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#a0dbb58301fc0e48ce44f41215d32f0ad">kudu::client::KuduScanTokenBuilder</a>
+</li>
+<li>SetProjectedColumns()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a68e2115cde71e113674e7a8b4df399ad">kudu::client::KuduScanner</a>
+</li>
+<li>SetReadMode()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a248e0a05e7bfdc31b5b8d363a937e81e">kudu::client::KuduScanner</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#adb34f01a9bc52a9e23ce49124bab3892">kudu::client::KuduScanTokenBuilder</a>
+</li>
+<li>SetRowFormatFlags()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a3dbaf4c2db6a37517a242dcb8ee64c11">kudu::client::KuduScanner</a>
+</li>
+<li>SetSelection()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#af1db3f372fe3d0f30cd0b6a36b783cc8">kudu::client::KuduScanner</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#a168bfed43dcd754a17d4c82293dade88">kudu::client::KuduScanTokenBuilder</a>
+</li>
+<li>SetSnapshotMicros()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a5b36a405daf09399438d5501b25b9f9f">kudu::client::KuduScanner</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#aa4c1cfa570edfaab818831a2330eece5">kudu::client::KuduScanTokenBuilder</a>
+</li>
+<li>SetSnapshotRaw()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#ab13dbb301197b411dec4cd6870801bae">kudu::client::KuduScanner</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#a313e345dc6c1f9ccdad65df5af2cf4b7">kudu::client::KuduScanTokenBuilder</a>
+</li>
+<li>SetTimeoutMillis()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a97c9f5e6a1056484c88ced411e19bee6">kudu::client::KuduScanner</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#a0f0e58d5d6fb3867ff0a03f7fc633445">kudu::client::KuduScanTokenBuilder</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduSession.html#a25b22362650d7120f59cc1025e40bd79">kudu::client::KuduSession</a>
+</li>
+<li>size()
+: <a class="el" href="classkudu_1_1Slice.html#a141b4a1fc0555d57f192e574e427c146">kudu::Slice</a>
+</li>
+<li>Slice()
+: <a class="el" href="classkudu_1_1Slice.html#aaee66c59ee434349680679bdf0462b66">kudu::Slice</a>
+</li>
+<li>split_rows()
+: <a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#ae12cc7c72da40f25b079273a6169faf9">kudu::client::KuduTableCreator</a>
+</li>
+<li>starts_with()
+: <a class="el" href="classkudu_1_1Slice.html#a3ad7697d76b8205099d43ca552c12b8d">kudu::Slice</a>
+</li>
+<li>status()
+: <a class="el" href="classkudu_1_1client_1_1KuduError.html#abd5c5cd46255c8587a5562aec197077c">kudu::client::KuduError</a>
+</li>
+<li>Status()
+: <a class="el" href="classkudu_1_1Status.html#ad14eb530b3449967ee976aaa1c0bcde0">kudu::Status</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/functions_func_t.html b/releases/1.4.0/cpp-client-api/functions_func_t.html
new file mode 100644
index 0000000..2ec9cd7
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/functions_func_t.html
@@ -0,0 +1,186 @@
+<!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.11"/>
+<title>Kudu C++ client API: Class Members - Functions</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li class="current"><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow3" class="tabs2">
+    <ul class="tablist">
+      <li><a href="functions.html"><span>All</span></a></li>
+      <li class="current"><a href="functions_func.html"><span>Functions</span></a></li>
+      <li><a href="functions_vars.html"><span>Variables</span></a></li>
+      <li><a href="functions_type.html"><span>Typedefs</span></a></li>
+      <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+      <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow4" class="tabs3">
+    <ul class="tablist">
+      <li><a href="functions_func.html#index_a"><span>a</span></a></li>
+      <li><a href="functions_func_b.html#index_b"><span>b</span></a></li>
+      <li><a href="functions_func_c.html#index_c"><span>c</span></a></li>
+      <li><a href="functions_func_d.html#index_d"><span>d</span></a></li>
+      <li><a href="functions_func_e.html#index_e"><span>e</span></a></li>
+      <li><a href="functions_func_f.html#index_f"><span>f</span></a></li>
+      <li><a href="functions_func_g.html#index_g"><span>g</span></a></li>
+      <li><a href="functions_func_h.html#index_h"><span>h</span></a></li>
+      <li><a href="functions_func_i.html#index_i"><span>i</span></a></li>
+      <li><a href="functions_func_k.html#index_k"><span>k</span></a></li>
+      <li><a href="functions_func_l.html#index_l"><span>l</span></a></li>
+      <li><a href="functions_func_m.html#index_m"><span>m</span></a></li>
+      <li><a href="functions_func_n.html#index_n"><span>n</span></a></li>
+      <li><a href="functions_func_o.html#index_o"><span>o</span></a></li>
+      <li><a href="functions_func_p.html#index_p"><span>p</span></a></li>
+      <li><a href="functions_func_r.html#index_r"><span>r</span></a></li>
+      <li><a href="functions_func_s.html#index_s"><span>s</span></a></li>
+      <li class="current"><a href="functions_func_t.html#index_t"><span>t</span></a></li>
+      <li><a href="functions_func_u.html#index_u"><span>u</span></a></li>
+      <li><a href="functions_func_w.html#index_w"><span>w</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_t"></a>- t -</h3><ul>
+<li>table_name()
+: <a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a15126b62437fc1741b41249080376f93">kudu::client::KuduTableCreator</a>
+</li>
+<li>TableExists()
+: <a class="el" href="classkudu_1_1client_1_1KuduClient.html#a96e9a6c0a16a8825c291528ac27af818">kudu::client::KuduClient</a>
+</li>
+<li>tablet()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanToken.html#a6513d5a02c745177d63d807de54aa301">kudu::client::KuduScanToken</a>
+</li>
+<li>timeout()
+: <a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html#add2961a41c37a6b0fd869e0f553a04a1">kudu::client::KuduTableAlterer</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a52855857927fe1a08fbd4c81e746c235">kudu::client::KuduTableCreator</a>
+</li>
+<li>ToDebugString()
+: <a class="el" href="classkudu_1_1Slice.html#a412d632121ba52444d891c7a4f31dd42">kudu::Slice</a>
+</li>
+<li>ToEncodedRowKeyOrDie()
+: <a class="el" href="classKuduPartialRow.html#ae76fac9268c7baa2cbcb8ccd2b22f49a">KuduPartialRow</a>
+</li>
+<li>ToString()
+: <a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#ac41bdd2fadff633e94b514ad1465fa44">kudu::client::KuduColumnStorageAttributes</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduDelete.html#a586dc46e1d10118465e3b834ac578de0">kudu::client::KuduDelete</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduInsert.html#a7c0fb45a5bfa96574b6328be392ba240">kudu::client::KuduInsert</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#a57ebd850adefa8af87f815540d890a34">kudu::client::KuduScanBatch</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#aea36ffb783be3ffdf370cd7399f232d3">kudu::client::KuduScanner</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduUpdate.html#af05d202ea529554b6d033d51ec942718">kudu::client::KuduUpdate</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduUpsert.html#a0608280ef5b4eb2a53c0b303db7401c8">kudu::client::KuduUpsert</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html#a50b5405c4dfc7af038daa4780aea6e19">kudu::client::KuduWriteOperation</a>
+, <a class="el" href="classkudu_1_1MonoDelta.html#a85141ae2fb1820cef6c7ab0f0305e1af">kudu::MonoDelta</a>
+, <a class="el" href="classkudu_1_1MonoTime.html#a47cd514149a06d1fbf2d10d08ef29957">kudu::MonoTime</a>
+, <a class="el" href="classkudu_1_1Slice.html#a730a4e2cdf7d40818fa95c164a18d381">kudu::Slice</a>
+, <a class="el" href="classkudu_1_1Status.html#ab10872bd6ee01ee1b93a351fd0c1b104">kudu::Status</a>
+, <a class="el" href="classKuduPartialRow.html#a998461fed88b566d159c2a3062353aa9">KuduPartialRow</a>
+</li>
+<li>ToTimeSpec()
+: <a class="el" href="classkudu_1_1MonoDelta.html#af72679c7dcec94a486b91e92aa3cb4b4">kudu::MonoDelta</a>
+</li>
+<li>ToTimeVal()
+: <a class="el" href="classkudu_1_1MonoDelta.html#af154577344dbba2afa5438872fc3ebd6">kudu::MonoDelta</a>
+</li>
+<li>truncate()
+: <a class="el" href="classkudu_1_1Slice.html#a20f1c8e91ff0209e5c8f86766ef63d44">kudu::Slice</a>
+</li>
+<li>ts()
+: <a class="el" href="classkudu_1_1client_1_1KuduReplica.html#ad7081012fda917ece3e149a20318288a">kudu::client::KuduReplica</a>
+</li>
+<li>type()
+: <a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html#a138fb61c6f39afbd2696642216486e56">kudu::client::KuduColumnSchema</a>
+</li>
+<li>Type()
+: <a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html#a67e794a08387e17ba430d6942419a2c2">kudu::client::KuduColumnSpec</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/functions_func_u.html b/releases/1.4.0/cpp-client-api/functions_func_u.html
new file mode 100644
index 0000000..f03794a
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/functions_func_u.html
@@ -0,0 +1,140 @@
+<!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.11"/>
+<title>Kudu C++ client API: Class Members - Functions</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li class="current"><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow3" class="tabs2">
+    <ul class="tablist">
+      <li><a href="functions.html"><span>All</span></a></li>
+      <li class="current"><a href="functions_func.html"><span>Functions</span></a></li>
+      <li><a href="functions_vars.html"><span>Variables</span></a></li>
+      <li><a href="functions_type.html"><span>Typedefs</span></a></li>
+      <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+      <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow4" class="tabs3">
+    <ul class="tablist">
+      <li><a href="functions_func.html#index_a"><span>a</span></a></li>
+      <li><a href="functions_func_b.html#index_b"><span>b</span></a></li>
+      <li><a href="functions_func_c.html#index_c"><span>c</span></a></li>
+      <li><a href="functions_func_d.html#index_d"><span>d</span></a></li>
+      <li><a href="functions_func_e.html#index_e"><span>e</span></a></li>
+      <li><a href="functions_func_f.html#index_f"><span>f</span></a></li>
+      <li><a href="functions_func_g.html#index_g"><span>g</span></a></li>
+      <li><a href="functions_func_h.html#index_h"><span>h</span></a></li>
+      <li><a href="functions_func_i.html#index_i"><span>i</span></a></li>
+      <li><a href="functions_func_k.html#index_k"><span>k</span></a></li>
+      <li><a href="functions_func_l.html#index_l"><span>l</span></a></li>
+      <li><a href="functions_func_m.html#index_m"><span>m</span></a></li>
+      <li><a href="functions_func_n.html#index_n"><span>n</span></a></li>
+      <li><a href="functions_func_o.html#index_o"><span>o</span></a></li>
+      <li><a href="functions_func_p.html#index_p"><span>p</span></a></li>
+      <li><a href="functions_func_r.html#index_r"><span>r</span></a></li>
+      <li><a href="functions_func_s.html#index_s"><span>s</span></a></li>
+      <li><a href="functions_func_t.html#index_t"><span>t</span></a></li>
+      <li class="current"><a href="functions_func_u.html#index_u"><span>u</span></a></li>
+      <li><a href="functions_func_w.html#index_w"><span>w</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_u"></a>- u -</h3><ul>
+<li>Unset()
+: <a class="el" href="classKuduPartialRow.html#adccabf294832ba33fce80a72992f6e23">KuduPartialRow</a>
+</li>
+<li>uuid()
+: <a class="el" href="classkudu_1_1client_1_1KuduTabletServer.html#aacee61a6644f332b466718df00903137">kudu::client::KuduTabletServer</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/functions_func_w.html b/releases/1.4.0/cpp-client-api/functions_func_w.html
new file mode 100644
index 0000000..6102236
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/functions_func_w.html
@@ -0,0 +1,141 @@
+<!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.11"/>
+<title>Kudu C++ client API: Class Members - Functions</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li class="current"><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow3" class="tabs2">
+    <ul class="tablist">
+      <li><a href="functions.html"><span>All</span></a></li>
+      <li class="current"><a href="functions_func.html"><span>Functions</span></a></li>
+      <li><a href="functions_vars.html"><span>Variables</span></a></li>
+      <li><a href="functions_type.html"><span>Typedefs</span></a></li>
+      <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+      <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow4" class="tabs3">
+    <ul class="tablist">
+      <li><a href="functions_func.html#index_a"><span>a</span></a></li>
+      <li><a href="functions_func_b.html#index_b"><span>b</span></a></li>
+      <li><a href="functions_func_c.html#index_c"><span>c</span></a></li>
+      <li><a href="functions_func_d.html#index_d"><span>d</span></a></li>
+      <li><a href="functions_func_e.html#index_e"><span>e</span></a></li>
+      <li><a href="functions_func_f.html#index_f"><span>f</span></a></li>
+      <li><a href="functions_func_g.html#index_g"><span>g</span></a></li>
+      <li><a href="functions_func_h.html#index_h"><span>h</span></a></li>
+      <li><a href="functions_func_i.html#index_i"><span>i</span></a></li>
+      <li><a href="functions_func_k.html#index_k"><span>k</span></a></li>
+      <li><a href="functions_func_l.html#index_l"><span>l</span></a></li>
+      <li><a href="functions_func_m.html#index_m"><span>m</span></a></li>
+      <li><a href="functions_func_n.html#index_n"><span>n</span></a></li>
+      <li><a href="functions_func_o.html#index_o"><span>o</span></a></li>
+      <li><a href="functions_func_p.html#index_p"><span>p</span></a></li>
+      <li><a href="functions_func_r.html#index_r"><span>r</span></a></li>
+      <li><a href="functions_func_s.html#index_s"><span>s</span></a></li>
+      <li><a href="functions_func_t.html#index_t"><span>t</span></a></li>
+      <li><a href="functions_func_u.html#index_u"><span>u</span></a></li>
+      <li class="current"><a href="functions_func_w.html#index_w"><span>w</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_w"></a>- w -</h3><ul>
+<li>wait()
+: <a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html#a86e6d55d0888d4bc99789b1dcd0e5646">kudu::client::KuduTableAlterer</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a48f9e977356c37666106f303100198d9">kudu::client::KuduTableCreator</a>
+</li>
+<li>was_possibly_successful()
+: <a class="el" href="classkudu_1_1client_1_1KuduError.html#a178b3cee942e4fbbe21fef859c8da3aa">kudu::client::KuduError</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/functions_g.html b/releases/1.4.0/cpp-client-api/functions_g.html
new file mode 100644
index 0000000..65416ff
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/functions_g.html
@@ -0,0 +1,168 @@
+<!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.11"/>
+<title>Kudu C++ client API: Class Members</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li class="current"><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow3" class="tabs2">
+    <ul class="tablist">
+      <li class="current"><a href="functions.html"><span>All</span></a></li>
+      <li><a href="functions_func.html"><span>Functions</span></a></li>
+      <li><a href="functions_vars.html"><span>Variables</span></a></li>
+      <li><a href="functions_type.html"><span>Typedefs</span></a></li>
+      <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+      <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow4" class="tabs3">
+    <ul class="tablist">
+      <li><a href="functions.html#index_a"><span>a</span></a></li>
+      <li><a href="functions_b.html#index_b"><span>b</span></a></li>
+      <li><a href="functions_c.html#index_c"><span>c</span></a></li>
+      <li><a href="functions_d.html#index_d"><span>d</span></a></li>
+      <li><a href="functions_e.html#index_e"><span>e</span></a></li>
+      <li><a href="functions_f.html#index_f"><span>f</span></a></li>
+      <li class="current"><a href="functions_g.html#index_g"><span>g</span></a></li>
+      <li><a href="functions_h.html#index_h"><span>h</span></a></li>
+      <li><a href="functions_i.html#index_i"><span>i</span></a></li>
+      <li><a href="functions_k.html#index_k"><span>k</span></a></li>
+      <li><a href="functions_l.html#index_l"><span>l</span></a></li>
+      <li><a href="functions_m.html#index_m"><span>m</span></a></li>
+      <li><a href="functions_n.html#index_n"><span>n</span></a></li>
+      <li><a href="functions_o.html#index_o"><span>o</span></a></li>
+      <li><a href="functions_p.html#index_p"><span>p</span></a></li>
+      <li><a href="functions_r.html#index_r"><span>r</span></a></li>
+      <li><a href="functions_s.html#index_s"><span>s</span></a></li>
+      <li><a href="functions_t.html#index_t"><span>t</span></a></li>
+      <li><a href="functions_u.html#index_u"><span>u</span></a></li>
+      <li><a href="functions_v.html#index_v"><span>v</span></a></li>
+      <li><a href="functions_w.html#index_w"><span>w</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all documented class members with links to the class documentation for each member:</div>
+
+<h3><a class="anchor" id="index_g"></a>- g -</h3><ul>
+<li>Get()
+: <a class="el" href="classkudu_1_1client_1_1ResourceMetrics.html#a1161841400ff4fcee5f2a278813e2db2">kudu::client::ResourceMetrics</a>
+</li>
+<li>GetCurrentServer()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#ac2bce7bd17627a3aa46f7d7fdb4c0c10">kudu::client::KuduScanner</a>
+</li>
+<li>GetDeltaSince()
+: <a class="el" href="classkudu_1_1MonoTime.html#ae1a49263c54563ea72ea10033ab8ccdb">kudu::MonoTime</a>
+</li>
+<li>GetLatestObservedTimestamp()
+: <a class="el" href="classkudu_1_1client_1_1KuduClient.html#a3a671b3540c74ef7c358bb98e95031e0">kudu::client::KuduClient</a>
+</li>
+<li>GetMetric()
+: <a class="el" href="classkudu_1_1client_1_1ResourceMetrics.html#a21818e1e42dcc0f7abcdc80c5487b1da">kudu::client::ResourceMetrics</a>
+</li>
+<li>GetPendingErrors()
+: <a class="el" href="classkudu_1_1client_1_1KuduSession.html#ad5e3521623338de49cfd62914bdcb2f7">kudu::client::KuduSession</a>
+</li>
+<li>GetPrimaryKeyColumnIndexes()
+: <a class="el" href="classkudu_1_1client_1_1KuduSchema.html#a192b707f348178b698070d3a88a4d156">kudu::client::KuduSchema</a>
+</li>
+<li>GetProjectionSchema()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a7fad1430b8e1d4caf0614f690fa2666f">kudu::client::KuduScanner</a>
+</li>
+<li>GetResourceMetrics()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a640d0d9de62587b29afbec22b7c6b628">kudu::client::KuduScanner</a>
+</li>
+<li>GetTableSchema()
+: <a class="el" href="classkudu_1_1client_1_1KuduClient.html#a2aa649e05e0cfb0e10ebce98fb4d7a65">kudu::client::KuduClient</a>
+</li>
+<li>GROUP_VARINT
+: <a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#aeb835a12e6f40b1a619afa8abd773b6da28c1ed31be30579070232164c24b4b82">kudu::client::KuduColumnStorageAttributes</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/functions_h.html b/releases/1.4.0/cpp-client-api/functions_h.html
new file mode 100644
index 0000000..f3e5b91
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/functions_h.html
@@ -0,0 +1,144 @@
+<!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.11"/>
+<title>Kudu C++ client API: Class Members</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li class="current"><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow3" class="tabs2">
+    <ul class="tablist">
+      <li class="current"><a href="functions.html"><span>All</span></a></li>
+      <li><a href="functions_func.html"><span>Functions</span></a></li>
+      <li><a href="functions_vars.html"><span>Variables</span></a></li>
+      <li><a href="functions_type.html"><span>Typedefs</span></a></li>
+      <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+      <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow4" class="tabs3">
+    <ul class="tablist">
+      <li><a href="functions.html#index_a"><span>a</span></a></li>
+      <li><a href="functions_b.html#index_b"><span>b</span></a></li>
+      <li><a href="functions_c.html#index_c"><span>c</span></a></li>
+      <li><a href="functions_d.html#index_d"><span>d</span></a></li>
+      <li><a href="functions_e.html#index_e"><span>e</span></a></li>
+      <li><a href="functions_f.html#index_f"><span>f</span></a></li>
+      <li><a href="functions_g.html#index_g"><span>g</span></a></li>
+      <li class="current"><a href="functions_h.html#index_h"><span>h</span></a></li>
+      <li><a href="functions_i.html#index_i"><span>i</span></a></li>
+      <li><a href="functions_k.html#index_k"><span>k</span></a></li>
+      <li><a href="functions_l.html#index_l"><span>l</span></a></li>
+      <li><a href="functions_m.html#index_m"><span>m</span></a></li>
+      <li><a href="functions_n.html#index_n"><span>n</span></a></li>
+      <li><a href="functions_o.html#index_o"><span>o</span></a></li>
+      <li><a href="functions_p.html#index_p"><span>p</span></a></li>
+      <li><a href="functions_r.html#index_r"><span>r</span></a></li>
+      <li><a href="functions_s.html#index_s"><span>s</span></a></li>
+      <li><a href="functions_t.html#index_t"><span>t</span></a></li>
+      <li><a href="functions_u.html#index_u"><span>u</span></a></li>
+      <li><a href="functions_v.html#index_v"><span>v</span></a></li>
+      <li><a href="functions_w.html#index_w"><span>w</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all documented class members with links to the class documentation for each member:</div>
+
+<h3><a class="anchor" id="index_h"></a>- h -</h3><ul>
+<li>HasMoreRows()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#ab04c2012970498590d2d2034d6a44d34">kudu::client::KuduScanner</a>
+</li>
+<li>HasPendingOperations()
+: <a class="el" href="classkudu_1_1client_1_1KuduSession.html#a3f224e9b95f86da7e1f2ea6fcf327756">kudu::client::KuduSession</a>
+</li>
+<li>hostname()
+: <a class="el" href="classkudu_1_1client_1_1KuduTabletServer.html#a24267a240220ed35ffe2b830899edb14">kudu::client::KuduTabletServer</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/functions_i.html b/releases/1.4.0/cpp-client-api/functions_i.html
new file mode 100644
index 0000000..e302d44
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/functions_i.html
@@ -0,0 +1,237 @@
+<!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.11"/>
+<title>Kudu C++ client API: Class Members</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li class="current"><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow3" class="tabs2">
+    <ul class="tablist">
+      <li class="current"><a href="functions.html"><span>All</span></a></li>
+      <li><a href="functions_func.html"><span>Functions</span></a></li>
+      <li><a href="functions_vars.html"><span>Variables</span></a></li>
+      <li><a href="functions_type.html"><span>Typedefs</span></a></li>
+      <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+      <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow4" class="tabs3">
+    <ul class="tablist">
+      <li><a href="functions.html#index_a"><span>a</span></a></li>
+      <li><a href="functions_b.html#index_b"><span>b</span></a></li>
+      <li><a href="functions_c.html#index_c"><span>c</span></a></li>
+      <li><a href="functions_d.html#index_d"><span>d</span></a></li>
+      <li><a href="functions_e.html#index_e"><span>e</span></a></li>
+      <li><a href="functions_f.html#index_f"><span>f</span></a></li>
+      <li><a href="functions_g.html#index_g"><span>g</span></a></li>
+      <li><a href="functions_h.html#index_h"><span>h</span></a></li>
+      <li class="current"><a href="functions_i.html#index_i"><span>i</span></a></li>
+      <li><a href="functions_k.html#index_k"><span>k</span></a></li>
+      <li><a href="functions_l.html#index_l"><span>l</span></a></li>
+      <li><a href="functions_m.html#index_m"><span>m</span></a></li>
+      <li><a href="functions_n.html#index_n"><span>n</span></a></li>
+      <li><a href="functions_o.html#index_o"><span>o</span></a></li>
+      <li><a href="functions_p.html#index_p"><span>p</span></a></li>
+      <li><a href="functions_r.html#index_r"><span>r</span></a></li>
+      <li><a href="functions_s.html#index_s"><span>s</span></a></li>
+      <li><a href="functions_t.html#index_t"><span>t</span></a></li>
+      <li><a href="functions_u.html#index_u"><span>u</span></a></li>
+      <li><a href="functions_v.html#index_v"><span>v</span></a></li>
+      <li><a href="functions_w.html#index_w"><span>w</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all documented class members with links to the class documentation for each member:</div>
+
+<h3><a class="anchor" id="index_i"></a>- i -</h3><ul>
+<li>id()
+: <a class="el" href="classkudu_1_1client_1_1KuduTable.html#a185ff8f18b9bea6b41d6f4cf8dfa1377">kudu::client::KuduTable</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduTablet.html#ae1fc886aa1c72ba64e6ecd05e04a0e31">kudu::client::KuduTablet</a>
+</li>
+<li>import_authentication_credentials()
+: <a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html#a5c411bc4638cbf77e5d318f5049b0b7e">kudu::client::KuduClientBuilder</a>
+</li>
+<li>INCLUSIVE_BOUND
+: <a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343ba0f4899cc63fba167455e05b525f0b950">kudu::client::KuduTableCreator</a>
+</li>
+<li>Increment()
+: <a class="el" href="classkudu_1_1client_1_1ResourceMetrics.html#ae7b5f6021f63c25bbd087ba2cf48dc8a">kudu::client::ResourceMetrics</a>
+</li>
+<li>indirect_data()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#af41b26a5f137122454d6341a5b5c1a43">kudu::client::KuduScanBatch</a>
+</li>
+<li>Initialized()
+: <a class="el" href="classkudu_1_1MonoDelta.html#aad3a0f1a1fc2e504ff137e55cfe068a3">kudu::MonoDelta</a>
+, <a class="el" href="classkudu_1_1MonoTime.html#a4ba08bf71a2496672338522952301926">kudu::MonoTime</a>
+</li>
+<li>IntoKuduScanner()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanToken.html#adb95c9538bb1fc4c83963557ce487292">kudu::client::KuduScanToken</a>
+</li>
+<li>is_leader()
+: <a class="el" href="classkudu_1_1client_1_1KuduReplica.html#a5e380e1e7f2154b61269737d65dd2649">kudu::client::KuduReplica</a>
+</li>
+<li>is_nullable()
+: <a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html#a45ea4feefa1c69b1ec6bc5f0316ed7ec">kudu::client::KuduColumnSchema</a>
+</li>
+<li>IsAborted()
+: <a class="el" href="classkudu_1_1Status.html#ad4fe06882fdfb2a040e4d7d10363ca0a">kudu::Status</a>
+</li>
+<li>IsAlreadyPresent()
+: <a class="el" href="classkudu_1_1Status.html#ab9e4ddf4c48889f365c6d359ae560e1c">kudu::Status</a>
+</li>
+<li>IsAlterTableInProgress()
+: <a class="el" href="classkudu_1_1client_1_1KuduClient.html#a7a331e528759296089837b4611c01809">kudu::client::KuduClient</a>
+</li>
+<li>IsColumnSet()
+: <a class="el" href="classKuduPartialRow.html#aa53b99d14bb61a010c4857cad17bb8ff">KuduPartialRow</a>
+</li>
+<li>IsConfigurationError()
+: <a class="el" href="classkudu_1_1Status.html#a8d31d26943101023125666bbbea002e3">kudu::Status</a>
+</li>
+<li>IsCorruption()
+: <a class="el" href="classkudu_1_1Status.html#a36fa7d6fc0cd9ab1f9ad48e4a7614bc9">kudu::Status</a>
+</li>
+<li>IsCreateTableInProgress()
+: <a class="el" href="classkudu_1_1client_1_1KuduClient.html#a2f0323b439d8658b2ac31fde7f46de63">kudu::client::KuduClient</a>
+</li>
+<li>IsEndOfFile()
+: <a class="el" href="classkudu_1_1Status.html#adead843ea27f50252f561c995c97b2e6">kudu::Status</a>
+</li>
+<li>IsIllegalState()
+: <a class="el" href="classkudu_1_1Status.html#a75e5cf90718eea9654c7e58546ea1aa2">kudu::Status</a>
+</li>
+<li>IsIncomplete()
+: <a class="el" href="classkudu_1_1Status.html#af68a02f8069b1a8670fcc1b7acd869b9">kudu::Status</a>
+</li>
+<li>IsInvalidArgument()
+: <a class="el" href="classkudu_1_1Status.html#a56e991c78f5a4aed32b97fbeccf13c2c">kudu::Status</a>
+</li>
+<li>IsIOError()
+: <a class="el" href="classkudu_1_1Status.html#a991a91d7c07ffa41e6802a12f34d1acf">kudu::Status</a>
+</li>
+<li>IsKeySet()
+: <a class="el" href="classKuduPartialRow.html#a8e51d3b848636aabe561e3e66b9470e8">KuduPartialRow</a>
+</li>
+<li>IsMultiMaster()
+: <a class="el" href="classkudu_1_1client_1_1KuduClient.html#a6f52dff0717d6e96863aff068bfb3795">kudu::client::KuduClient</a>
+</li>
+<li>IsNetworkError()
+: <a class="el" href="classkudu_1_1Status.html#a70c83ddb5b234e814db84dfbbb751d0c">kudu::Status</a>
+</li>
+<li>IsNotAuthorized()
+: <a class="el" href="classkudu_1_1Status.html#aef9c22bc13669be3e2289844ec916244">kudu::Status</a>
+</li>
+<li>IsNotFound()
+: <a class="el" href="classkudu_1_1Status.html#a38e1a8eb7b23092569cb61983ebb671d">kudu::Status</a>
+</li>
+<li>IsNotSupported()
+: <a class="el" href="classkudu_1_1Status.html#a2b1672aba7ec84133cd086186b27821b">kudu::Status</a>
+</li>
+<li>IsNull()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#a1b0b04656fec608919b7b6ac7c99451e">kudu::client::KuduScanBatch</a>
+, <a class="el" href="classKuduPartialRow.html#a0b0a0103eea4cc39fbc89df0a9403a26">KuduPartialRow</a>
+</li>
+<li>IsRemoteError()
+: <a class="el" href="classkudu_1_1Status.html#a96a35401df4ecd6420c86c65bc3e05f9">kudu::Status</a>
+</li>
+<li>IsRuntimeError()
+: <a class="el" href="classkudu_1_1Status.html#abc68e44f825df4e221e9fcce419a90cf">kudu::Status</a>
+</li>
+<li>IsServiceUnavailable()
+: <a class="el" href="classkudu_1_1Status.html#a7bce15fc7b4d95b0bdffce963972cce8">kudu::Status</a>
+</li>
+<li>IsTimedOut()
+: <a class="el" href="classkudu_1_1Status.html#a80fe0286d8e3ac011a611afbac4edb11">kudu::Status</a>
+</li>
+<li>IsUninitialized()
+: <a class="el" href="classkudu_1_1Status.html#a325666f396d7f9900403765cecbaecbf">kudu::Status</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/functions_k.html b/releases/1.4.0/cpp-client-api/functions_k.html
new file mode 100644
index 0000000..e284ed7
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/functions_k.html
@@ -0,0 +1,174 @@
+<!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.11"/>
+<title>Kudu C++ client API: Class Members</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li class="current"><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow3" class="tabs2">
+    <ul class="tablist">
+      <li class="current"><a href="functions.html"><span>All</span></a></li>
+      <li><a href="functions_func.html"><span>Functions</span></a></li>
+      <li><a href="functions_vars.html"><span>Variables</span></a></li>
+      <li><a href="functions_type.html"><span>Typedefs</span></a></li>
+      <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+      <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow4" class="tabs3">
+    <ul class="tablist">
+      <li><a href="functions.html#index_a"><span>a</span></a></li>
+      <li><a href="functions_b.html#index_b"><span>b</span></a></li>
+      <li><a href="functions_c.html#index_c"><span>c</span></a></li>
+      <li><a href="functions_d.html#index_d"><span>d</span></a></li>
+      <li><a href="functions_e.html#index_e"><span>e</span></a></li>
+      <li><a href="functions_f.html#index_f"><span>f</span></a></li>
+      <li><a href="functions_g.html#index_g"><span>g</span></a></li>
+      <li><a href="functions_h.html#index_h"><span>h</span></a></li>
+      <li><a href="functions_i.html#index_i"><span>i</span></a></li>
+      <li class="current"><a href="functions_k.html#index_k"><span>k</span></a></li>
+      <li><a href="functions_l.html#index_l"><span>l</span></a></li>
+      <li><a href="functions_m.html#index_m"><span>m</span></a></li>
+      <li><a href="functions_n.html#index_n"><span>n</span></a></li>
+      <li><a href="functions_o.html#index_o"><span>o</span></a></li>
+      <li><a href="functions_p.html#index_p"><span>p</span></a></li>
+      <li><a href="functions_r.html#index_r"><span>r</span></a></li>
+      <li><a href="functions_s.html#index_s"><span>s</span></a></li>
+      <li><a href="functions_t.html#index_t"><span>t</span></a></li>
+      <li><a href="functions_u.html#index_u"><span>u</span></a></li>
+      <li><a href="functions_v.html#index_v"><span>v</span></a></li>
+      <li><a href="functions_w.html#index_w"><span>w</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all documented class members with links to the class documentation for each member:</div>
+
+<h3><a class="anchor" id="index_k"></a>- k -</h3><ul>
+<li>KeepAlive()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#aa4a0caf7142880255d7aac1d75f33d21">kudu::client::KuduScanner</a>
+</li>
+<li>kNoTimestamp
+: <a class="el" href="classkudu_1_1client_1_1KuduClient.html#a196f1a18c000cdca309d05161caaddaa">kudu::client::KuduClient</a>
+</li>
+<li>KuduColumnSchema()
+: <a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html#afc82e98af83ba61079ba5d30401b5872">kudu::client::KuduColumnSchema</a>
+</li>
+<li>KuduColumnStorageAttributes()
+: <a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#a2d6e5bec50a7305b3b4d75d21d000fab">kudu::client::KuduColumnStorageAttributes</a>
+</li>
+<li>KuduLoggingFunctionCallback()
+: <a class="el" href="classkudu_1_1client_1_1KuduLoggingFunctionCallback.html#a4263c504b21e0e5827f47a902e908a2c">kudu::client::KuduLoggingFunctionCallback&lt; T &gt;</a>
+</li>
+<li>KuduLoggingMemberCallback()
+: <a class="el" href="classkudu_1_1client_1_1KuduLoggingMemberCallback.html#aeda4119b1288db0d055c9800e3485fd8">kudu::client::KuduLoggingMemberCallback&lt; T &gt;</a>
+</li>
+<li>KuduPartialRow()
+: <a class="el" href="classKuduPartialRow.html#a9eb1cbd1b216f6313a03c82ab67112e4">KuduPartialRow</a>
+</li>
+<li>KuduPartitionerBuilder()
+: <a class="el" href="classkudu_1_1client_1_1KuduPartitionerBuilder.html#a27d130235be1c2691779e1d97732a4ba">kudu::client::KuduPartitionerBuilder</a>
+</li>
+<li>KuduScanner()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a2c621f778072a02f4092e96a0baf8180">kudu::client::KuduScanner</a>
+</li>
+<li>KuduScanTokenBuilder()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#aa8d300b560d419030abd503b66812484">kudu::client::KuduScanTokenBuilder</a>
+</li>
+<li>KuduSchema()
+: <a class="el" href="classkudu_1_1client_1_1KuduSchema.html#a41a683f3d93357fe68531bf71df39d02">kudu::client::KuduSchema</a>
+</li>
+<li>KuduStatusFunctionCallback()
+: <a class="el" href="classkudu_1_1client_1_1KuduStatusFunctionCallback.html#aca289bbf6ad9720bd74a90550f6c9b3b">kudu::client::KuduStatusFunctionCallback&lt; T &gt;</a>
+</li>
+<li>KuduStatusMemberCallback()
+: <a class="el" href="classkudu_1_1client_1_1KuduStatusMemberCallback.html#acdb02b9798adf2c80b39cfb024f199aa">kudu::client::KuduStatusMemberCallback&lt; T &gt;</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/functions_l.html b/releases/1.4.0/cpp-client-api/functions_l.html
new file mode 100644
index 0000000..3324e1c
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/functions_l.html
@@ -0,0 +1,147 @@
+<!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.11"/>
+<title>Kudu C++ client API: Class Members</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li class="current"><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow3" class="tabs2">
+    <ul class="tablist">
+      <li class="current"><a href="functions.html"><span>All</span></a></li>
+      <li><a href="functions_func.html"><span>Functions</span></a></li>
+      <li><a href="functions_vars.html"><span>Variables</span></a></li>
+      <li><a href="functions_type.html"><span>Typedefs</span></a></li>
+      <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+      <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow4" class="tabs3">
+    <ul class="tablist">
+      <li><a href="functions.html#index_a"><span>a</span></a></li>
+      <li><a href="functions_b.html#index_b"><span>b</span></a></li>
+      <li><a href="functions_c.html#index_c"><span>c</span></a></li>
+      <li><a href="functions_d.html#index_d"><span>d</span></a></li>
+      <li><a href="functions_e.html#index_e"><span>e</span></a></li>
+      <li><a href="functions_f.html#index_f"><span>f</span></a></li>
+      <li><a href="functions_g.html#index_g"><span>g</span></a></li>
+      <li><a href="functions_h.html#index_h"><span>h</span></a></li>
+      <li><a href="functions_i.html#index_i"><span>i</span></a></li>
+      <li><a href="functions_k.html#index_k"><span>k</span></a></li>
+      <li class="current"><a href="functions_l.html#index_l"><span>l</span></a></li>
+      <li><a href="functions_m.html#index_m"><span>m</span></a></li>
+      <li><a href="functions_n.html#index_n"><span>n</span></a></li>
+      <li><a href="functions_o.html#index_o"><span>o</span></a></li>
+      <li><a href="functions_p.html#index_p"><span>p</span></a></li>
+      <li><a href="functions_r.html#index_r"><span>r</span></a></li>
+      <li><a href="functions_s.html#index_s"><span>s</span></a></li>
+      <li><a href="functions_t.html#index_t"><span>t</span></a></li>
+      <li><a href="functions_u.html#index_u"><span>u</span></a></li>
+      <li><a href="functions_v.html#index_v"><span>v</span></a></li>
+      <li><a href="functions_w.html#index_w"><span>w</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all documented class members with links to the class documentation for each member:</div>
+
+<h3><a class="anchor" id="index_l"></a>- l -</h3><ul>
+<li>LEADER_ONLY
+: <a class="el" href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11aafb912836db348061379d0e0a9055e239">kudu::client::KuduClient</a>
+</li>
+<li>LessThan()
+: <a class="el" href="classkudu_1_1MonoDelta.html#a8f4ae8075a1ff013115a558d97e1ad4c">kudu::MonoDelta</a>
+</li>
+<li>ListTables()
+: <a class="el" href="classkudu_1_1client_1_1KuduClient.html#a3ab09f69753b8c99ac7b2eeed03faa1d">kudu::client::KuduClient</a>
+</li>
+<li>ListTabletServers()
+: <a class="el" href="classkudu_1_1client_1_1KuduClient.html#ae283a49551a081524b41f5d8e51e68d9">kudu::client::KuduClient</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/functions_m.html b/releases/1.4.0/cpp-client-api/functions_m.html
new file mode 100644
index 0000000..a7f1e14
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/functions_m.html
@@ -0,0 +1,175 @@
+<!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.11"/>
+<title>Kudu C++ client API: Class Members</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li class="current"><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow3" class="tabs2">
+    <ul class="tablist">
+      <li class="current"><a href="functions.html"><span>All</span></a></li>
+      <li><a href="functions_func.html"><span>Functions</span></a></li>
+      <li><a href="functions_vars.html"><span>Variables</span></a></li>
+      <li><a href="functions_type.html"><span>Typedefs</span></a></li>
+      <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+      <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow4" class="tabs3">
+    <ul class="tablist">
+      <li><a href="functions.html#index_a"><span>a</span></a></li>
+      <li><a href="functions_b.html#index_b"><span>b</span></a></li>
+      <li><a href="functions_c.html#index_c"><span>c</span></a></li>
+      <li><a href="functions_d.html#index_d"><span>d</span></a></li>
+      <li><a href="functions_e.html#index_e"><span>e</span></a></li>
+      <li><a href="functions_f.html#index_f"><span>f</span></a></li>
+      <li><a href="functions_g.html#index_g"><span>g</span></a></li>
+      <li><a href="functions_h.html#index_h"><span>h</span></a></li>
+      <li><a href="functions_i.html#index_i"><span>i</span></a></li>
+      <li><a href="functions_k.html#index_k"><span>k</span></a></li>
+      <li><a href="functions_l.html#index_l"><span>l</span></a></li>
+      <li class="current"><a href="functions_m.html#index_m"><span>m</span></a></li>
+      <li><a href="functions_n.html#index_n"><span>n</span></a></li>
+      <li><a href="functions_o.html#index_o"><span>o</span></a></li>
+      <li><a href="functions_p.html#index_p"><span>p</span></a></li>
+      <li><a href="functions_r.html#index_r"><span>r</span></a></li>
+      <li><a href="functions_s.html#index_s"><span>s</span></a></li>
+      <li><a href="functions_t.html#index_t"><span>t</span></a></li>
+      <li><a href="functions_u.html#index_u"><span>u</span></a></li>
+      <li><a href="functions_v.html#index_v"><span>v</span></a></li>
+      <li><a href="functions_w.html#index_w"><span>w</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all documented class members with links to the class documentation for each member:</div>
+
+<h3><a class="anchor" id="index_m"></a>- m -</h3><ul>
+<li>MANUAL_FLUSH
+: <a class="el" href="classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19a1db3efc2094da09aae45bb68475cdb4a">kudu::client::KuduSession</a>
+</li>
+<li>master_server_addrs()
+: <a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html#a0c1b92afad7a6e21c5ea781fb7d42114">kudu::client::KuduClientBuilder</a>
+</li>
+<li>Max()
+: <a class="el" href="classkudu_1_1MonoTime.html#a28d08092b30ccefc5e45a6e228034ef9">kudu::MonoTime</a>
+</li>
+<li>MemberType
+: <a class="el" href="classkudu_1_1client_1_1KuduLoggingMemberCallback.html#a379dffd7e67238b37b9a4e4ad8e2a3ec">kudu::client::KuduLoggingMemberCallback&lt; T &gt;</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduStatusMemberCallback.html#a1ad9e466506c3453cdd8429d5744f17a">kudu::client::KuduStatusMemberCallback&lt; T &gt;</a>
+</li>
+<li>memory_footprint_excluding_this()
+: <a class="el" href="classkudu_1_1Status.html#a6dd1852c4c78a3c6d8ace5155546db93">kudu::Status</a>
+</li>
+<li>memory_footprint_including_this()
+: <a class="el" href="classkudu_1_1Status.html#a7a2d4eb7636a485b5b2cc42f0b8ad627">kudu::Status</a>
+</li>
+<li>message()
+: <a class="el" href="classkudu_1_1Status.html#a3547012ea31cc504141f2222eec38857">kudu::Status</a>
+</li>
+<li>Min()
+: <a class="el" href="classkudu_1_1MonoTime.html#acf4fc0351fe9245431932e481e002b99">kudu::MonoTime</a>
+</li>
+<li>MonoDelta()
+: <a class="el" href="classkudu_1_1MonoDelta.html#ad0646900f0927ad9be6302fcda8bfe5f">kudu::MonoDelta</a>
+</li>
+<li>MonoTime()
+: <a class="el" href="classkudu_1_1MonoTime.html#a8f49b7fd2e217b5541d4ce45bda63bd4">kudu::MonoTime</a>
+</li>
+<li>MoreThan()
+: <a class="el" href="classkudu_1_1MonoDelta.html#a218cc5fcd3ce70365210b7c5587aa6ff">kudu::MonoDelta</a>
+</li>
+<li>mutable_data()
+: <a class="el" href="classkudu_1_1Slice.html#a2771156d34daa166067b8d319ad7d164">kudu::Slice</a>
+</li>
+<li>mutable_row()
+: <a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html#a8889770ce62e2ca0ce5d55c9c90af6bc">kudu::client::KuduWriteOperation</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/functions_n.html b/releases/1.4.0/cpp-client-api/functions_n.html
new file mode 100644
index 0000000..d6fda7f
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/functions_n.html
@@ -0,0 +1,205 @@
+<!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.11"/>
+<title>Kudu C++ client API: Class Members</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li class="current"><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow3" class="tabs2">
+    <ul class="tablist">
+      <li class="current"><a href="functions.html"><span>All</span></a></li>
+      <li><a href="functions_func.html"><span>Functions</span></a></li>
+      <li><a href="functions_vars.html"><span>Variables</span></a></li>
+      <li><a href="functions_type.html"><span>Typedefs</span></a></li>
+      <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+      <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow4" class="tabs3">
+    <ul class="tablist">
+      <li><a href="functions.html#index_a"><span>a</span></a></li>
+      <li><a href="functions_b.html#index_b"><span>b</span></a></li>
+      <li><a href="functions_c.html#index_c"><span>c</span></a></li>
+      <li><a href="functions_d.html#index_d"><span>d</span></a></li>
+      <li><a href="functions_e.html#index_e"><span>e</span></a></li>
+      <li><a href="functions_f.html#index_f"><span>f</span></a></li>
+      <li><a href="functions_g.html#index_g"><span>g</span></a></li>
+      <li><a href="functions_h.html#index_h"><span>h</span></a></li>
+      <li><a href="functions_i.html#index_i"><span>i</span></a></li>
+      <li><a href="functions_k.html#index_k"><span>k</span></a></li>
+      <li><a href="functions_l.html#index_l"><span>l</span></a></li>
+      <li><a href="functions_m.html#index_m"><span>m</span></a></li>
+      <li class="current"><a href="functions_n.html#index_n"><span>n</span></a></li>
+      <li><a href="functions_o.html#index_o"><span>o</span></a></li>
+      <li><a href="functions_p.html#index_p"><span>p</span></a></li>
+      <li><a href="functions_r.html#index_r"><span>r</span></a></li>
+      <li><a href="functions_s.html#index_s"><span>s</span></a></li>
+      <li><a href="functions_t.html#index_t"><span>t</span></a></li>
+      <li><a href="functions_u.html#index_u"><span>u</span></a></li>
+      <li><a href="functions_v.html#index_v"><span>v</span></a></li>
+      <li><a href="functions_w.html#index_w"><span>w</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all documented class members with links to the class documentation for each member:</div>
+
+<h3><a class="anchor" id="index_n"></a>- n -</h3><ul>
+<li>name()
+: <a class="el" href="classkudu_1_1client_1_1KuduTable.html#aa0f8b6d63c800727c3a827945512555e">kudu::client::KuduTable</a>
+</li>
+<li>NanosToTimeSpec()
+: <a class="el" href="classkudu_1_1MonoDelta.html#a4854924550c571f8af548270da52ac22">kudu::MonoDelta</a>
+</li>
+<li>NewComparisonPredicate()
+: <a class="el" href="classkudu_1_1client_1_1KuduTable.html#aed6c3571aff35270a3e6cd66770f1cea">kudu::client::KuduTable</a>
+</li>
+<li>NewDelete()
+: <a class="el" href="classkudu_1_1client_1_1KuduTable.html#ad873078bdbcafe015d359a65c370a89a">kudu::client::KuduTable</a>
+</li>
+<li>NewInListPredicate()
+: <a class="el" href="classkudu_1_1client_1_1KuduTable.html#a453ffb83cf7c12541caba5ea182fadd9">kudu::client::KuduTable</a>
+</li>
+<li>NewInsert()
+: <a class="el" href="classkudu_1_1client_1_1KuduTable.html#a0c78f86c5d0fbf53437c2c9db26f92b6">kudu::client::KuduTable</a>
+</li>
+<li>NewIsNotNullPredicate()
+: <a class="el" href="classkudu_1_1client_1_1KuduTable.html#af6e70f115cf3c0359b1c170533a2d523">kudu::client::KuduTable</a>
+</li>
+<li>NewIsNullPredicate()
+: <a class="el" href="classkudu_1_1client_1_1KuduTable.html#a5f453909cdeda167ad15506358470466">kudu::client::KuduTable</a>
+</li>
+<li>NewRow()
+: <a class="el" href="classkudu_1_1client_1_1KuduSchema.html#aafaa50819a283b014ae03373e53489a1">kudu::client::KuduSchema</a>
+</li>
+<li>NewSession()
+: <a class="el" href="classkudu_1_1client_1_1KuduClient.html#a1f5b9bf8767b44f03f4d3220dfd5f925">kudu::client::KuduClient</a>
+</li>
+<li>NewTableAlterer()
+: <a class="el" href="classkudu_1_1client_1_1KuduClient.html#a116bbcf13dc0991ad2a3129630075aea">kudu::client::KuduClient</a>
+</li>
+<li>NewTableCreator()
+: <a class="el" href="classkudu_1_1client_1_1KuduClient.html#a003f13604b4fb378f61e133a9b49d153">kudu::client::KuduClient</a>
+</li>
+<li>NewUpdate()
+: <a class="el" href="classkudu_1_1client_1_1KuduTable.html#a7e95271452d608fc2b563f7b46ddcda8">kudu::client::KuduTable</a>
+</li>
+<li>NewUpsert()
+: <a class="el" href="classkudu_1_1client_1_1KuduTable.html#a19e92dbaeeff86c5d707b15b2a7051fc">kudu::client::KuduTable</a>
+</li>
+<li>NextBatch()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#af1475d9a0667839c1ed9c3714b47d487">kudu::client::KuduScanner</a>
+</li>
+<li>NO_FLAGS
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a68345956f3f4c7fd5e1665fd292f6a85">kudu::client::KuduScanner</a>
+</li>
+<li>NotNull()
+: <a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html#af8c64c5a8a7a93ec644d481f23d91cca">kudu::client::KuduColumnSpec</a>
+</li>
+<li>Now()
+: <a class="el" href="classkudu_1_1MonoTime.html#a6c83d5c31e6ea5a869a655646f924783">kudu::MonoTime</a>
+</li>
+<li>Nullable()
+: <a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html#aab05d7d45f4cd2dadb8e0c715d87e841">kudu::client::KuduColumnSpec</a>
+</li>
+<li>num_columns()
+: <a class="el" href="classkudu_1_1client_1_1KuduSchema.html#ac9e9f590006bd7ccfa44b87dec1b3c7a">kudu::client::KuduSchema</a>
+</li>
+<li>num_replicas()
+: <a class="el" href="classkudu_1_1client_1_1KuduTable.html#a147bdffbd798161916471b721d63128f">kudu::client::KuduTable</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a9dd4673755ba242eab3f06b19182d139">kudu::client::KuduTableCreator</a>
+</li>
+<li>NumPartitions()
+: <a class="el" href="classkudu_1_1client_1_1KuduPartitioner.html#af692612faaccb259bf3d15f2bf5b246d">kudu::client::KuduPartitioner</a>
+</li>
+<li>NumRows()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#a16e45694c5932eb3decc2184c3834157">kudu::client::KuduScanBatch</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/functions_o.html b/releases/1.4.0/cpp-client-api/functions_o.html
new file mode 100644
index 0000000..910c1c1
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/functions_o.html
@@ -0,0 +1,184 @@
+<!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.11"/>
+<title>Kudu C++ client API: Class Members</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li class="current"><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow3" class="tabs2">
+    <ul class="tablist">
+      <li class="current"><a href="functions.html"><span>All</span></a></li>
+      <li><a href="functions_func.html"><span>Functions</span></a></li>
+      <li><a href="functions_vars.html"><span>Variables</span></a></li>
+      <li><a href="functions_type.html"><span>Typedefs</span></a></li>
+      <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+      <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow4" class="tabs3">
+    <ul class="tablist">
+      <li><a href="functions.html#index_a"><span>a</span></a></li>
+      <li><a href="functions_b.html#index_b"><span>b</span></a></li>
+      <li><a href="functions_c.html#index_c"><span>c</span></a></li>
+      <li><a href="functions_d.html#index_d"><span>d</span></a></li>
+      <li><a href="functions_e.html#index_e"><span>e</span></a></li>
+      <li><a href="functions_f.html#index_f"><span>f</span></a></li>
+      <li><a href="functions_g.html#index_g"><span>g</span></a></li>
+      <li><a href="functions_h.html#index_h"><span>h</span></a></li>
+      <li><a href="functions_i.html#index_i"><span>i</span></a></li>
+      <li><a href="functions_k.html#index_k"><span>k</span></a></li>
+      <li><a href="functions_l.html#index_l"><span>l</span></a></li>
+      <li><a href="functions_m.html#index_m"><span>m</span></a></li>
+      <li><a href="functions_n.html#index_n"><span>n</span></a></li>
+      <li class="current"><a href="functions_o.html#index_o"><span>o</span></a></li>
+      <li><a href="functions_p.html#index_p"><span>p</span></a></li>
+      <li><a href="functions_r.html#index_r"><span>r</span></a></li>
+      <li><a href="functions_s.html#index_s"><span>s</span></a></li>
+      <li><a href="functions_t.html#index_t"><span>t</span></a></li>
+      <li><a href="functions_u.html#index_u"><span>u</span></a></li>
+      <li><a href="functions_v.html#index_v"><span>v</span></a></li>
+      <li><a href="functions_w.html#index_w"><span>w</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all documented class members with links to the class documentation for each member:</div>
+
+<h3><a class="anchor" id="index_o"></a>- o -</h3><ul>
+<li>OK()
+: <a class="el" href="classkudu_1_1Status.html#adaff3248b2f66041d0a7dd59f118b7ac">kudu::Status</a>
+</li>
+<li>ok()
+: <a class="el" href="classkudu_1_1Status.html#abf6454dcb72bfa92189a0595b5a858a7">kudu::Status</a>
+</li>
+<li>Open()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#aa1ff3c11d9ac9f8183189ea5ac1ed9f1">kudu::client::KuduScanner</a>
+</li>
+<li>OpenTable()
+: <a class="el" href="classkudu_1_1client_1_1KuduClient.html#aa82a09718ffe68d3255195e736aec8d7">kudu::client::KuduClient</a>
+</li>
+<li>operator!=()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#afd2b2c4cb038cbd366c2af8cf09a3a68">kudu::client::KuduScanBatch</a>
+</li>
+<li>operator()()
+: <a class="el" href="structkudu_1_1Slice_1_1Comparator.html#a2f33c829e2febd880f9cbcbebb08fa6a">kudu::Slice::Comparator</a>
+</li>
+<li>operator*()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#ab057b7b1bfb713a7e8f216e3b288cb10">kudu::client::KuduScanBatch</a>
+</li>
+<li>operator++()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#ad5df483ed3172caab5a8d6a72abfad0c">kudu::client::KuduScanBatch</a>
+</li>
+<li>operator-=()
+: <a class="el" href="classkudu_1_1MonoTime.html#a2264cf528d0a346e60e0921022333bf8">kudu::MonoTime</a>
+</li>
+<li>operator&lt;&lt;()
+: <a class="el" href="classkudu_1_1internal__logging_1_1CerrLog.html#a9febb74005a76f9b203e9718275ab724">kudu::internal_logging::CerrLog</a>
+, <a class="el" href="classkudu_1_1internal__logging_1_1NullLog.html#abe50abde8e4af12413c99f437094dc8a">kudu::internal_logging::NullLog</a>
+</li>
+<li>operator=()
+: <a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html#a4b58da787c8e7dc14987aa74a54f199e">kudu::client::KuduColumnSchema</a>
+, <a class="el" href="classkudu_1_1Status.html#aa387797d8a80892563d56244a2351a88">kudu::Status</a>
+, <a class="el" href="classKuduPartialRow.html#a03cab3e1aa0bef19c14f94181934181f">KuduPartialRow</a>
+</li>
+<li>operator==()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#a378a5844a4b4774056b26f0003c15048">kudu::client::KuduScanBatch</a>
+, <a class="el" href="classkudu_1_1Slice.html#a1323493265790d022203af0d8b31fd9c">kudu::Slice</a>
+</li>
+<li>operator[]()
+: <a class="el" href="classkudu_1_1Slice.html#a5ff06bc0fd9734536a464e604ec226f2">kudu::Slice</a>
+</li>
+<li>ORDERED
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a3d6c79325c9da9741d0accf1b43bf7f9a4395ad2ec57ce53e30d8b5748fa2c63a">kudu::client::KuduScanner</a>
+</li>
+<li>OrderMode
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a3d6c79325c9da9741d0accf1b43bf7f9">kudu::client::KuduScanner</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/functions_p.html b/releases/1.4.0/cpp-client-api/functions_p.html
new file mode 100644
index 0000000..830f66a
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/functions_p.html
@@ -0,0 +1,153 @@
+<!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.11"/>
+<title>Kudu C++ client API: Class Members</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li class="current"><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow3" class="tabs2">
+    <ul class="tablist">
+      <li class="current"><a href="functions.html"><span>All</span></a></li>
+      <li><a href="functions_func.html"><span>Functions</span></a></li>
+      <li><a href="functions_vars.html"><span>Variables</span></a></li>
+      <li><a href="functions_type.html"><span>Typedefs</span></a></li>
+      <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+      <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow4" class="tabs3">
+    <ul class="tablist">
+      <li><a href="functions.html#index_a"><span>a</span></a></li>
+      <li><a href="functions_b.html#index_b"><span>b</span></a></li>
+      <li><a href="functions_c.html#index_c"><span>c</span></a></li>
+      <li><a href="functions_d.html#index_d"><span>d</span></a></li>
+      <li><a href="functions_e.html#index_e"><span>e</span></a></li>
+      <li><a href="functions_f.html#index_f"><span>f</span></a></li>
+      <li><a href="functions_g.html#index_g"><span>g</span></a></li>
+      <li><a href="functions_h.html#index_h"><span>h</span></a></li>
+      <li><a href="functions_i.html#index_i"><span>i</span></a></li>
+      <li><a href="functions_k.html#index_k"><span>k</span></a></li>
+      <li><a href="functions_l.html#index_l"><span>l</span></a></li>
+      <li><a href="functions_m.html#index_m"><span>m</span></a></li>
+      <li><a href="functions_n.html#index_n"><span>n</span></a></li>
+      <li><a href="functions_o.html#index_o"><span>o</span></a></li>
+      <li class="current"><a href="functions_p.html#index_p"><span>p</span></a></li>
+      <li><a href="functions_r.html#index_r"><span>r</span></a></li>
+      <li><a href="functions_s.html#index_s"><span>s</span></a></li>
+      <li><a href="functions_t.html#index_t"><span>t</span></a></li>
+      <li><a href="functions_u.html#index_u"><span>u</span></a></li>
+      <li><a href="functions_v.html#index_v"><span>v</span></a></li>
+      <li><a href="functions_w.html#index_w"><span>w</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all documented class members with links to the class documentation for each member:</div>
+
+<h3><a class="anchor" id="index_p"></a>- p -</h3><ul>
+<li>PAD_UNIXTIME_MICROS_TO_16_BYTES
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a63cd270f3bc72f4197d2581ec8f8fc44">kudu::client::KuduScanner</a>
+</li>
+<li>partition_schema()
+: <a class="el" href="classkudu_1_1client_1_1KuduTable.html#af1125879ce34fa6c994a70fe1803a808">kudu::client::KuduTable</a>
+</li>
+<li>PartitionRow()
+: <a class="el" href="classkudu_1_1client_1_1KuduPartitioner.html#a05d816ba08d85d5c0c95025e12d2e369">kudu::client::KuduPartitioner</a>
+</li>
+<li>port()
+: <a class="el" href="classkudu_1_1client_1_1KuduTabletServer.html#ab4715d71c64dad1059698f2bb9ef192d">kudu::client::KuduTabletServer</a>
+</li>
+<li>posix_code()
+: <a class="el" href="classkudu_1_1Status.html#a20d5b34e3507a5dd326029a87df641dc">kudu::Status</a>
+</li>
+<li>projection_schema()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#a3b58e77f53beea357fbb8bcddaab3137">kudu::client::KuduScanBatch</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/functions_r.html b/releases/1.4.0/cpp-client-api/functions_r.html
new file mode 100644
index 0000000..9811cf4
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/functions_r.html
@@ -0,0 +1,186 @@
+<!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.11"/>
+<title>Kudu C++ client API: Class Members</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li class="current"><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow3" class="tabs2">
+    <ul class="tablist">
+      <li class="current"><a href="functions.html"><span>All</span></a></li>
+      <li><a href="functions_func.html"><span>Functions</span></a></li>
+      <li><a href="functions_vars.html"><span>Variables</span></a></li>
+      <li><a href="functions_type.html"><span>Typedefs</span></a></li>
+      <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+      <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow4" class="tabs3">
+    <ul class="tablist">
+      <li><a href="functions.html#index_a"><span>a</span></a></li>
+      <li><a href="functions_b.html#index_b"><span>b</span></a></li>
+      <li><a href="functions_c.html#index_c"><span>c</span></a></li>
+      <li><a href="functions_d.html#index_d"><span>d</span></a></li>
+      <li><a href="functions_e.html#index_e"><span>e</span></a></li>
+      <li><a href="functions_f.html#index_f"><span>f</span></a></li>
+      <li><a href="functions_g.html#index_g"><span>g</span></a></li>
+      <li><a href="functions_h.html#index_h"><span>h</span></a></li>
+      <li><a href="functions_i.html#index_i"><span>i</span></a></li>
+      <li><a href="functions_k.html#index_k"><span>k</span></a></li>
+      <li><a href="functions_l.html#index_l"><span>l</span></a></li>
+      <li><a href="functions_m.html#index_m"><span>m</span></a></li>
+      <li><a href="functions_n.html#index_n"><span>n</span></a></li>
+      <li><a href="functions_o.html#index_o"><span>o</span></a></li>
+      <li><a href="functions_p.html#index_p"><span>p</span></a></li>
+      <li class="current"><a href="functions_r.html#index_r"><span>r</span></a></li>
+      <li><a href="functions_s.html#index_s"><span>s</span></a></li>
+      <li><a href="functions_t.html#index_t"><span>t</span></a></li>
+      <li><a href="functions_u.html#index_u"><span>u</span></a></li>
+      <li><a href="functions_v.html#index_v"><span>v</span></a></li>
+      <li><a href="functions_w.html#index_w"><span>w</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all documented class members with links to the class documentation for each member:</div>
+
+<h3><a class="anchor" id="index_r"></a>- r -</h3><ul>
+<li>RangePartitionBound
+: <a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343b">kudu::client::KuduTableCreator</a>
+</li>
+<li>READ_AT_SNAPSHOT
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a36fdb59d6488618363331269d3f58348a380798cc81589d865b7b2549e186b2e2">kudu::client::KuduScanner</a>
+</li>
+<li>READ_LATEST
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a36fdb59d6488618363331269d3f58348a8694cef688d819806fa9a85b002231a8">kudu::client::KuduScanner</a>
+</li>
+<li>ReadMode
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a36fdb59d6488618363331269d3f58348">kudu::client::KuduScanner</a>
+</li>
+<li>release_failed_op()
+: <a class="el" href="classkudu_1_1client_1_1KuduError.html#ae1a49bd16eeff4d2ab88fa70e1dc3c6a">kudu::client::KuduError</a>
+</li>
+<li>relocate()
+: <a class="el" href="classkudu_1_1Slice.html#a4bb1c9fe13873623b5a5a118830b1806">kudu::Slice</a>
+</li>
+<li>remove_prefix()
+: <a class="el" href="classkudu_1_1Slice.html#a00f5d310f9ebf17c198cf3feb69c3842">kudu::Slice</a>
+</li>
+<li>RenameTo()
+: <a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html#abeb2cbbaa01253165202574db03872f4">kudu::client::KuduColumnSpec</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html#aca8ea8d7b65e6952c76fd97f12d5b324">kudu::client::KuduTableAlterer</a>
+</li>
+<li>replicas()
+: <a class="el" href="classkudu_1_1client_1_1KuduTablet.html#a7816ea063549347b676fc18dfa297619">kudu::client::KuduTablet</a>
+</li>
+<li>ReplicaSelection
+: <a class="el" href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11a">kudu::client::KuduClient</a>
+</li>
+<li>Reset()
+: <a class="el" href="classkudu_1_1client_1_1KuduSchema.html#a3f51ccf1a7e6f4a4fe4958073305dbab">kudu::client::KuduSchema</a>
+</li>
+<li>Row()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#a93c2f0914140dd405a51d57e2f75014a">kudu::client::KuduScanBatch</a>
+</li>
+<li>row()
+: <a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html#a973b342ced786b23754b57fd83b34aa3">kudu::client::KuduWriteOperation</a>
+</li>
+<li>RowPtr()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#a92bbfa48e9b503181c2dfb5f11f14e4e">kudu::client::KuduScanBatch</a>
+</li>
+<li>Run()
+: <a class="el" href="classkudu_1_1client_1_1KuduLoggingCallback.html#ad9d5ac9b45246c5a4304d53ee86102eb">kudu::client::KuduLoggingCallback</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduLoggingFunctionCallback.html#ab5119cbc60675f3ca77e08c1e87ec215">kudu::client::KuduLoggingFunctionCallback&lt; T &gt;</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduLoggingMemberCallback.html#a3d75e43bb4af846af66735fabe642a88">kudu::client::KuduLoggingMemberCallback&lt; T &gt;</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduStatusCallback.html#a2333beedb1d0c08a8c127b4552fbeb07">kudu::client::KuduStatusCallback</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduStatusFunctionCallback.html#af4c3e7fbd4fed52bcba220f95a27f70a">kudu::client::KuduStatusFunctionCallback&lt; T &gt;</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduStatusMemberCallback.html#a94bde1bdcb3cde6f78b11d822be19232">kudu::client::KuduStatusMemberCallback&lt; T &gt;</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/functions_rela.html b/releases/1.4.0/cpp-client-api/functions_rela.html
new file mode 100644
index 0000000..5ceb4cd
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/functions_rela.html
@@ -0,0 +1,111 @@
+<!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.11"/>
+<title>Kudu C++ client API: Class Members - Related Functions</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li class="current"><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow3" class="tabs2">
+    <ul class="tablist">
+      <li><a href="functions.html"><span>All</span></a></li>
+      <li><a href="functions_func.html"><span>Functions</span></a></li>
+      <li><a href="functions_vars.html"><span>Variables</span></a></li>
+      <li><a href="functions_type.html"><span>Typedefs</span></a></li>
+      <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+      <li class="current"><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;<ul>
+<li>operator==
+: <a class="el" href="classkudu_1_1Slice.html#a1323493265790d022203af0d8b31fd9c">kudu::Slice</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/functions_s.html b/releases/1.4.0/cpp-client-api/functions_s.html
new file mode 100644
index 0000000..c39d5bd
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/functions_s.html
@@ -0,0 +1,247 @@
+<!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.11"/>
+<title>Kudu C++ client API: Class Members</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li class="current"><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow3" class="tabs2">
+    <ul class="tablist">
+      <li class="current"><a href="functions.html"><span>All</span></a></li>
+      <li><a href="functions_func.html"><span>Functions</span></a></li>
+      <li><a href="functions_vars.html"><span>Variables</span></a></li>
+      <li><a href="functions_type.html"><span>Typedefs</span></a></li>
+      <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+      <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow4" class="tabs3">
+    <ul class="tablist">
+      <li><a href="functions.html#index_a"><span>a</span></a></li>
+      <li><a href="functions_b.html#index_b"><span>b</span></a></li>
+      <li><a href="functions_c.html#index_c"><span>c</span></a></li>
+      <li><a href="functions_d.html#index_d"><span>d</span></a></li>
+      <li><a href="functions_e.html#index_e"><span>e</span></a></li>
+      <li><a href="functions_f.html#index_f"><span>f</span></a></li>
+      <li><a href="functions_g.html#index_g"><span>g</span></a></li>
+      <li><a href="functions_h.html#index_h"><span>h</span></a></li>
+      <li><a href="functions_i.html#index_i"><span>i</span></a></li>
+      <li><a href="functions_k.html#index_k"><span>k</span></a></li>
+      <li><a href="functions_l.html#index_l"><span>l</span></a></li>
+      <li><a href="functions_m.html#index_m"><span>m</span></a></li>
+      <li><a href="functions_n.html#index_n"><span>n</span></a></li>
+      <li><a href="functions_o.html#index_o"><span>o</span></a></li>
+      <li><a href="functions_p.html#index_p"><span>p</span></a></li>
+      <li><a href="functions_r.html#index_r"><span>r</span></a></li>
+      <li class="current"><a href="functions_s.html#index_s"><span>s</span></a></li>
+      <li><a href="functions_t.html#index_t"><span>t</span></a></li>
+      <li><a href="functions_u.html#index_u"><span>u</span></a></li>
+      <li><a href="functions_v.html#index_v"><span>v</span></a></li>
+      <li><a href="functions_w.html#index_w"><span>w</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all documented class members with links to the class documentation for each member:</div>
+
+<h3><a class="anchor" id="index_s"></a>- s -</h3><ul>
+<li>schema()
+: <a class="el" href="classkudu_1_1client_1_1KuduTable.html#a4482e54a05c5b61b2bddc8c5297973fd">kudu::client::KuduTable</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a38a83cf0e856ebaf4a5afe8c4a1d06f7">kudu::client::KuduTableCreator</a>
+, <a class="el" href="classKuduPartialRow.html#a33abfa2504b7e6323cdbba22ad346023">KuduPartialRow</a>
+</li>
+<li>Serialize()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanToken.html#a6eb749ddf0a1434596d86df88341a008">kudu::client::KuduScanToken</a>
+</li>
+<li>set_range_partition_columns()
+: <a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a482701285b7a071dd56f04df480bc7c3">kudu::client::KuduTableCreator</a>
+</li>
+<li>SetBatchSizeBytes()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#af82c4ccb442c222033841dd65cf5a67c">kudu::client::KuduScanner</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#a36523ca7f2f9a2b4e3c096cf6167643c">kudu::client::KuduScanTokenBuilder</a>
+</li>
+<li>SetBuildTimeout()
+: <a class="el" href="classkudu_1_1client_1_1KuduPartitionerBuilder.html#a11e28b7ad87a53a92d2ad5494f2c5f14">kudu::client::KuduPartitionerBuilder</a>
+</li>
+<li>SetCacheBlocks()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a4a4a2e354b3113561758b9bf4095d310">kudu::client::KuduScanner</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#a7ab7c9c1c4f4d3bbbc18b2b35d7d5475">kudu::client::KuduScanTokenBuilder</a>
+</li>
+<li>SetErrorBufferSpace()
+: <a class="el" href="classkudu_1_1client_1_1KuduSession.html#af1c5e5e8faba286cddc266057e9a82d5">kudu::client::KuduSession</a>
+</li>
+<li>SetExternalConsistencyMode()
+: <a class="el" href="classkudu_1_1client_1_1KuduSession.html#a56d1c7f47dfcaf5121b15a4435a8eeca">kudu::client::KuduSession</a>
+</li>
+<li>SetFaultTolerant()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a107a8a682c0977272e0ae47746d39e6f">kudu::client::KuduScanner</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#a4a17f27950ccd59bcb3430fb28b61dbe">kudu::client::KuduScanTokenBuilder</a>
+</li>
+<li>SetFlushMode()
+: <a class="el" href="classkudu_1_1client_1_1KuduSession.html#a83555781b5a037f87c215e565ecf1a8f">kudu::client::KuduSession</a>
+</li>
+<li>SetLatestObservedTimestamp()
+: <a class="el" href="classkudu_1_1client_1_1KuduClient.html#a0809b055eda76fd68988462f2a9791dd">kudu::client::KuduClient</a>
+</li>
+<li>SetMutationBufferFlushInterval()
+: <a class="el" href="classkudu_1_1client_1_1KuduSession.html#aabe75f0688f992dbdb2694a50d07f941">kudu::client::KuduSession</a>
+</li>
+<li>SetMutationBufferFlushWatermark()
+: <a class="el" href="classkudu_1_1client_1_1KuduSession.html#a7311344cec37b3847217197c35467cdf">kudu::client::KuduSession</a>
+</li>
+<li>SetMutationBufferMaxNum()
+: <a class="el" href="classkudu_1_1client_1_1KuduSession.html#ac9a96017f86bfb6348fca9bfa0b8b5a4">kudu::client::KuduSession</a>
+</li>
+<li>SetMutationBufferSpace()
+: <a class="el" href="classkudu_1_1client_1_1KuduSession.html#aefa9bbc51c27104ce103b9ecda3b8abf">kudu::client::KuduSession</a>
+</li>
+<li>SetNull()
+: <a class="el" href="classKuduPartialRow.html#aedbcf22d41791c5ae28e978eb9054cc5">KuduPartialRow</a>
+</li>
+<li>SetOrderMode()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a93a87740ea75c9b6524dc229576b69fc">kudu::client::KuduScanner</a>
+</li>
+<li>SetPrimaryKey()
+: <a class="el" href="classkudu_1_1client_1_1KuduSchemaBuilder.html#ad4c1619445fea575a775f23752b6bfb9">kudu::client::KuduSchemaBuilder</a>
+</li>
+<li>SetProjectedColumnIndexes()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a8d938c6efc1b36d456c91b5af0b1578d">kudu::client::KuduScanner</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#a01d990e024632c7749cca96b4f857be8">kudu::client::KuduScanTokenBuilder</a>
+</li>
+<li>SetProjectedColumnNames()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#abb10b26056757bf81c410d3d5e6bcc01">kudu::client::KuduScanner</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#a0dbb58301fc0e48ce44f41215d32f0ad">kudu::client::KuduScanTokenBuilder</a>
+</li>
+<li>SetProjectedColumns()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a68e2115cde71e113674e7a8b4df399ad">kudu::client::KuduScanner</a>
+</li>
+<li>SetReadMode()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a248e0a05e7bfdc31b5b8d363a937e81e">kudu::client::KuduScanner</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#adb34f01a9bc52a9e23ce49124bab3892">kudu::client::KuduScanTokenBuilder</a>
+</li>
+<li>SetRowFormatFlags()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a3dbaf4c2db6a37517a242dcb8ee64c11">kudu::client::KuduScanner</a>
+</li>
+<li>SetSelection()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#af1db3f372fe3d0f30cd0b6a36b783cc8">kudu::client::KuduScanner</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#a168bfed43dcd754a17d4c82293dade88">kudu::client::KuduScanTokenBuilder</a>
+</li>
+<li>SetSnapshotMicros()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a5b36a405daf09399438d5501b25b9f9f">kudu::client::KuduScanner</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#aa4c1cfa570edfaab818831a2330eece5">kudu::client::KuduScanTokenBuilder</a>
+</li>
+<li>SetSnapshotRaw()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#ab13dbb301197b411dec4cd6870801bae">kudu::client::KuduScanner</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#a313e345dc6c1f9ccdad65df5af2cf4b7">kudu::client::KuduScanTokenBuilder</a>
+</li>
+<li>SetTimeoutMillis()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a97c9f5e6a1056484c88ced411e19bee6">kudu::client::KuduScanner</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#a0f0e58d5d6fb3867ff0a03f7fc633445">kudu::client::KuduScanTokenBuilder</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduSession.html#a25b22362650d7120f59cc1025e40bd79">kudu::client::KuduSession</a>
+</li>
+<li>size()
+: <a class="el" href="classkudu_1_1Slice.html#a141b4a1fc0555d57f192e574e427c146">kudu::Slice</a>
+</li>
+<li>Slice()
+: <a class="el" href="classkudu_1_1Slice.html#aaee66c59ee434349680679bdf0462b66">kudu::Slice</a>
+</li>
+<li>split_rows()
+: <a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#ae12cc7c72da40f25b079273a6169faf9">kudu::client::KuduTableCreator</a>
+</li>
+<li>starts_with()
+: <a class="el" href="classkudu_1_1Slice.html#a3ad7697d76b8205099d43ca552c12b8d">kudu::Slice</a>
+</li>
+<li>status()
+: <a class="el" href="classkudu_1_1client_1_1KuduError.html#abd5c5cd46255c8587a5562aec197077c">kudu::client::KuduError</a>
+</li>
+<li>Status()
+: <a class="el" href="classkudu_1_1Status.html#ad14eb530b3449967ee976aaa1c0bcde0">kudu::Status</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/functions_t.html b/releases/1.4.0/cpp-client-api/functions_t.html
new file mode 100644
index 0000000..5061a97
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/functions_t.html
@@ -0,0 +1,194 @@
+<!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.11"/>
+<title>Kudu C++ client API: Class Members</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li class="current"><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow3" class="tabs2">
+    <ul class="tablist">
+      <li class="current"><a href="functions.html"><span>All</span></a></li>
+      <li><a href="functions_func.html"><span>Functions</span></a></li>
+      <li><a href="functions_vars.html"><span>Variables</span></a></li>
+      <li><a href="functions_type.html"><span>Typedefs</span></a></li>
+      <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+      <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow4" class="tabs3">
+    <ul class="tablist">
+      <li><a href="functions.html#index_a"><span>a</span></a></li>
+      <li><a href="functions_b.html#index_b"><span>b</span></a></li>
+      <li><a href="functions_c.html#index_c"><span>c</span></a></li>
+      <li><a href="functions_d.html#index_d"><span>d</span></a></li>
+      <li><a href="functions_e.html#index_e"><span>e</span></a></li>
+      <li><a href="functions_f.html#index_f"><span>f</span></a></li>
+      <li><a href="functions_g.html#index_g"><span>g</span></a></li>
+      <li><a href="functions_h.html#index_h"><span>h</span></a></li>
+      <li><a href="functions_i.html#index_i"><span>i</span></a></li>
+      <li><a href="functions_k.html#index_k"><span>k</span></a></li>
+      <li><a href="functions_l.html#index_l"><span>l</span></a></li>
+      <li><a href="functions_m.html#index_m"><span>m</span></a></li>
+      <li><a href="functions_n.html#index_n"><span>n</span></a></li>
+      <li><a href="functions_o.html#index_o"><span>o</span></a></li>
+      <li><a href="functions_p.html#index_p"><span>p</span></a></li>
+      <li><a href="functions_r.html#index_r"><span>r</span></a></li>
+      <li><a href="functions_s.html#index_s"><span>s</span></a></li>
+      <li class="current"><a href="functions_t.html#index_t"><span>t</span></a></li>
+      <li><a href="functions_u.html#index_u"><span>u</span></a></li>
+      <li><a href="functions_v.html#index_v"><span>v</span></a></li>
+      <li><a href="functions_w.html#index_w"><span>w</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all documented class members with links to the class documentation for each member:</div>
+
+<h3><a class="anchor" id="index_t"></a>- t -</h3><ul>
+<li>table_name()
+: <a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a15126b62437fc1741b41249080376f93">kudu::client::KuduTableCreator</a>
+</li>
+<li>TableExists()
+: <a class="el" href="classkudu_1_1client_1_1KuduClient.html#a96e9a6c0a16a8825c291528ac27af818">kudu::client::KuduClient</a>
+</li>
+<li>tablet()
+: <a class="el" href="classkudu_1_1client_1_1KuduScanToken.html#a6513d5a02c745177d63d807de54aa301">kudu::client::KuduScanToken</a>
+</li>
+<li>timeout()
+: <a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html#add2961a41c37a6b0fd869e0f553a04a1">kudu::client::KuduTableAlterer</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a52855857927fe1a08fbd4c81e746c235">kudu::client::KuduTableCreator</a>
+</li>
+<li>TIMESTAMP
+: <a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html#aba69238e70af5c887a4fb11fa2a120c5a27d1b7aca7cf9a01d9258a41bbe3b505">kudu::client::KuduColumnSchema</a>
+</li>
+<li>ToDebugString()
+: <a class="el" href="classkudu_1_1Slice.html#a412d632121ba52444d891c7a4f31dd42">kudu::Slice</a>
+</li>
+<li>ToEncodedRowKeyOrDie()
+: <a class="el" href="classKuduPartialRow.html#ae76fac9268c7baa2cbcb8ccd2b22f49a">KuduPartialRow</a>
+</li>
+<li>ToString()
+: <a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#ac41bdd2fadff633e94b514ad1465fa44">kudu::client::KuduColumnStorageAttributes</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduDelete.html#a586dc46e1d10118465e3b834ac578de0">kudu::client::KuduDelete</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduInsert.html#a7c0fb45a5bfa96574b6328be392ba240">kudu::client::KuduInsert</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#a57ebd850adefa8af87f815540d890a34">kudu::client::KuduScanBatch</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#aea36ffb783be3ffdf370cd7399f232d3">kudu::client::KuduScanner</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduUpdate.html#af05d202ea529554b6d033d51ec942718">kudu::client::KuduUpdate</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduUpsert.html#a0608280ef5b4eb2a53c0b303db7401c8">kudu::client::KuduUpsert</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html#a50b5405c4dfc7af038daa4780aea6e19">kudu::client::KuduWriteOperation</a>
+, <a class="el" href="classkudu_1_1MonoDelta.html#a85141ae2fb1820cef6c7ab0f0305e1af">kudu::MonoDelta</a>
+, <a class="el" href="classkudu_1_1MonoTime.html#a47cd514149a06d1fbf2d10d08ef29957">kudu::MonoTime</a>
+, <a class="el" href="classkudu_1_1Slice.html#a730a4e2cdf7d40818fa95c164a18d381">kudu::Slice</a>
+, <a class="el" href="classkudu_1_1Status.html#ab10872bd6ee01ee1b93a351fd0c1b104">kudu::Status</a>
+, <a class="el" href="classKuduPartialRow.html#a998461fed88b566d159c2a3062353aa9">KuduPartialRow</a>
+</li>
+<li>ToTimeSpec()
+: <a class="el" href="classkudu_1_1MonoDelta.html#af72679c7dcec94a486b91e92aa3cb4b4">kudu::MonoDelta</a>
+</li>
+<li>ToTimeVal()
+: <a class="el" href="classkudu_1_1MonoDelta.html#af154577344dbba2afa5438872fc3ebd6">kudu::MonoDelta</a>
+</li>
+<li>truncate()
+: <a class="el" href="classkudu_1_1Slice.html#a20f1c8e91ff0209e5c8f86766ef63d44">kudu::Slice</a>
+</li>
+<li>ts()
+: <a class="el" href="classkudu_1_1client_1_1KuduReplica.html#ad7081012fda917ece3e149a20318288a">kudu::client::KuduReplica</a>
+</li>
+<li>type()
+: <a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html#a138fb61c6f39afbd2696642216486e56">kudu::client::KuduColumnSchema</a>
+</li>
+<li>Type()
+: <a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html#a67e794a08387e17ba430d6942419a2c2">kudu::client::KuduColumnSpec</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html#a87d94ee5801a6b16fc6d1f44ee2e4357">kudu::client::KuduWriteOperation</a>
+</li>
+<li>type
+: <a class="el" href="structkudu_1_1SliceMap.html#ac97e49d0aa50ae49f34ab3bbd95ea5e6">kudu::SliceMap&lt; T &gt;</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/functions_type.html b/releases/1.4.0/cpp-client-api/functions_type.html
new file mode 100644
index 0000000..0a34f7a
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/functions_type.html
@@ -0,0 +1,122 @@
+<!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.11"/>
+<title>Kudu C++ client API: Class Members - Typedefs</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li class="current"><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow3" class="tabs2">
+    <ul class="tablist">
+      <li><a href="functions.html"><span>All</span></a></li>
+      <li><a href="functions_func.html"><span>Functions</span></a></li>
+      <li><a href="functions_vars.html"><span>Variables</span></a></li>
+      <li class="current"><a href="functions_type.html"><span>Typedefs</span></a></li>
+      <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+      <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;<ul>
+<li>FunctionType
+: <a class="el" href="classkudu_1_1client_1_1KuduLoggingFunctionCallback.html#a609838f5c92d8f4612d195c161cf4003">kudu::client::KuduLoggingFunctionCallback&lt; T &gt;</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduStatusFunctionCallback.html#a20c231ae32873ea7f462b8f3ea05d910">kudu::client::KuduStatusFunctionCallback&lt; T &gt;</a>
+</li>
+<li>MemberType
+: <a class="el" href="classkudu_1_1client_1_1KuduLoggingMemberCallback.html#a379dffd7e67238b37b9a4e4ad8e2a3ec">kudu::client::KuduLoggingMemberCallback&lt; T &gt;</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduStatusMemberCallback.html#a1ad9e466506c3453cdd8429d5744f17a">kudu::client::KuduStatusMemberCallback&lt; T &gt;</a>
+</li>
+<li>type
+: <a class="el" href="structkudu_1_1SliceMap.html#ac97e49d0aa50ae49f34ab3bbd95ea5e6">kudu::SliceMap&lt; T &gt;</a>
+</li>
+<li>value_type
+: <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#ae1a827120c84eeedb703451bd5782467">kudu::client::KuduScanBatch</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/functions_u.html b/releases/1.4.0/cpp-client-api/functions_u.html
new file mode 100644
index 0000000..541cac2
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/functions_u.html
@@ -0,0 +1,144 @@
+<!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.11"/>
+<title>Kudu C++ client API: Class Members</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li class="current"><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow3" class="tabs2">
+    <ul class="tablist">
+      <li class="current"><a href="functions.html"><span>All</span></a></li>
+      <li><a href="functions_func.html"><span>Functions</span></a></li>
+      <li><a href="functions_vars.html"><span>Variables</span></a></li>
+      <li><a href="functions_type.html"><span>Typedefs</span></a></li>
+      <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+      <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow4" class="tabs3">
+    <ul class="tablist">
+      <li><a href="functions.html#index_a"><span>a</span></a></li>
+      <li><a href="functions_b.html#index_b"><span>b</span></a></li>
+      <li><a href="functions_c.html#index_c"><span>c</span></a></li>
+      <li><a href="functions_d.html#index_d"><span>d</span></a></li>
+      <li><a href="functions_e.html#index_e"><span>e</span></a></li>
+      <li><a href="functions_f.html#index_f"><span>f</span></a></li>
+      <li><a href="functions_g.html#index_g"><span>g</span></a></li>
+      <li><a href="functions_h.html#index_h"><span>h</span></a></li>
+      <li><a href="functions_i.html#index_i"><span>i</span></a></li>
+      <li><a href="functions_k.html#index_k"><span>k</span></a></li>
+      <li><a href="functions_l.html#index_l"><span>l</span></a></li>
+      <li><a href="functions_m.html#index_m"><span>m</span></a></li>
+      <li><a href="functions_n.html#index_n"><span>n</span></a></li>
+      <li><a href="functions_o.html#index_o"><span>o</span></a></li>
+      <li><a href="functions_p.html#index_p"><span>p</span></a></li>
+      <li><a href="functions_r.html#index_r"><span>r</span></a></li>
+      <li><a href="functions_s.html#index_s"><span>s</span></a></li>
+      <li><a href="functions_t.html#index_t"><span>t</span></a></li>
+      <li class="current"><a href="functions_u.html#index_u"><span>u</span></a></li>
+      <li><a href="functions_v.html#index_v"><span>v</span></a></li>
+      <li><a href="functions_w.html#index_w"><span>w</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all documented class members with links to the class documentation for each member:</div>
+
+<h3><a class="anchor" id="index_u"></a>- u -</h3><ul>
+<li>UNORDERED
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a3d6c79325c9da9741d0accf1b43bf7f9adfeea547de613f36a0aff9f585671ec3">kudu::client::KuduScanner</a>
+</li>
+<li>Unset()
+: <a class="el" href="classKuduPartialRow.html#adccabf294832ba33fce80a72992f6e23">KuduPartialRow</a>
+</li>
+<li>uuid()
+: <a class="el" href="classkudu_1_1client_1_1KuduTabletServer.html#aacee61a6644f332b466718df00903137">kudu::client::KuduTabletServer</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/functions_v.html b/releases/1.4.0/cpp-client-api/functions_v.html
new file mode 100644
index 0000000..07603d7
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/functions_v.html
@@ -0,0 +1,138 @@
+<!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.11"/>
+<title>Kudu C++ client API: Class Members</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li class="current"><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow3" class="tabs2">
+    <ul class="tablist">
+      <li class="current"><a href="functions.html"><span>All</span></a></li>
+      <li><a href="functions_func.html"><span>Functions</span></a></li>
+      <li><a href="functions_vars.html"><span>Variables</span></a></li>
+      <li><a href="functions_type.html"><span>Typedefs</span></a></li>
+      <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+      <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow4" class="tabs3">
+    <ul class="tablist">
+      <li><a href="functions.html#index_a"><span>a</span></a></li>
+      <li><a href="functions_b.html#index_b"><span>b</span></a></li>
+      <li><a href="functions_c.html#index_c"><span>c</span></a></li>
+      <li><a href="functions_d.html#index_d"><span>d</span></a></li>
+      <li><a href="functions_e.html#index_e"><span>e</span></a></li>
+      <li><a href="functions_f.html#index_f"><span>f</span></a></li>
+      <li><a href="functions_g.html#index_g"><span>g</span></a></li>
+      <li><a href="functions_h.html#index_h"><span>h</span></a></li>
+      <li><a href="functions_i.html#index_i"><span>i</span></a></li>
+      <li><a href="functions_k.html#index_k"><span>k</span></a></li>
+      <li><a href="functions_l.html#index_l"><span>l</span></a></li>
+      <li><a href="functions_m.html#index_m"><span>m</span></a></li>
+      <li><a href="functions_n.html#index_n"><span>n</span></a></li>
+      <li><a href="functions_o.html#index_o"><span>o</span></a></li>
+      <li><a href="functions_p.html#index_p"><span>p</span></a></li>
+      <li><a href="functions_r.html#index_r"><span>r</span></a></li>
+      <li><a href="functions_s.html#index_s"><span>s</span></a></li>
+      <li><a href="functions_t.html#index_t"><span>t</span></a></li>
+      <li><a href="functions_u.html#index_u"><span>u</span></a></li>
+      <li class="current"><a href="functions_v.html#index_v"><span>v</span></a></li>
+      <li><a href="functions_w.html#index_w"><span>w</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all documented class members with links to the class documentation for each member:</div>
+
+<h3><a class="anchor" id="index_v"></a>- v -</h3><ul>
+<li>value_type
+: <a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html#ae1a827120c84eeedb703451bd5782467">kudu::client::KuduScanBatch</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/functions_vars.html b/releases/1.4.0/cpp-client-api/functions_vars.html
new file mode 100644
index 0000000..d8ae353
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/functions_vars.html
@@ -0,0 +1,120 @@
+<!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.11"/>
+<title>Kudu C++ client API: Class Members - Variables</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li class="current"><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow3" class="tabs2">
+    <ul class="tablist">
+      <li><a href="functions.html"><span>All</span></a></li>
+      <li><a href="functions_func.html"><span>Functions</span></a></li>
+      <li class="current"><a href="functions_vars.html"><span>Variables</span></a></li>
+      <li><a href="functions_type.html"><span>Typedefs</span></a></li>
+      <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+      <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;<ul>
+<li>Data
+: <a class="el" href="classkudu_1_1client_1_1KuduPredicate.html#ae8643ced562f7c8a4625a58a4e39abb0">kudu::client::KuduPredicate</a>
+</li>
+<li>kNoTimestamp
+: <a class="el" href="classkudu_1_1client_1_1KuduClient.html#a196f1a18c000cdca309d05161caaddaa">kudu::client::KuduClient</a>
+</li>
+<li>NO_FLAGS
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a68345956f3f4c7fd5e1665fd292f6a85">kudu::client::KuduScanner</a>
+</li>
+<li>PAD_UNIXTIME_MICROS_TO_16_BYTES
+: <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a63cd270f3bc72f4197d2581ec8f8fc44">kudu::client::KuduScanner</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/functions_w.html b/releases/1.4.0/cpp-client-api/functions_w.html
new file mode 100644
index 0000000..1fb0221
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/functions_w.html
@@ -0,0 +1,142 @@
+<!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.11"/>
+<title>Kudu C++ client API: Class Members</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li class="current"><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow3" class="tabs2">
+    <ul class="tablist">
+      <li class="current"><a href="functions.html"><span>All</span></a></li>
+      <li><a href="functions_func.html"><span>Functions</span></a></li>
+      <li><a href="functions_vars.html"><span>Variables</span></a></li>
+      <li><a href="functions_type.html"><span>Typedefs</span></a></li>
+      <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+      <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow4" class="tabs3">
+    <ul class="tablist">
+      <li><a href="functions.html#index_a"><span>a</span></a></li>
+      <li><a href="functions_b.html#index_b"><span>b</span></a></li>
+      <li><a href="functions_c.html#index_c"><span>c</span></a></li>
+      <li><a href="functions_d.html#index_d"><span>d</span></a></li>
+      <li><a href="functions_e.html#index_e"><span>e</span></a></li>
+      <li><a href="functions_f.html#index_f"><span>f</span></a></li>
+      <li><a href="functions_g.html#index_g"><span>g</span></a></li>
+      <li><a href="functions_h.html#index_h"><span>h</span></a></li>
+      <li><a href="functions_i.html#index_i"><span>i</span></a></li>
+      <li><a href="functions_k.html#index_k"><span>k</span></a></li>
+      <li><a href="functions_l.html#index_l"><span>l</span></a></li>
+      <li><a href="functions_m.html#index_m"><span>m</span></a></li>
+      <li><a href="functions_n.html#index_n"><span>n</span></a></li>
+      <li><a href="functions_o.html#index_o"><span>o</span></a></li>
+      <li><a href="functions_p.html#index_p"><span>p</span></a></li>
+      <li><a href="functions_r.html#index_r"><span>r</span></a></li>
+      <li><a href="functions_s.html#index_s"><span>s</span></a></li>
+      <li><a href="functions_t.html#index_t"><span>t</span></a></li>
+      <li><a href="functions_u.html#index_u"><span>u</span></a></li>
+      <li><a href="functions_v.html#index_v"><span>v</span></a></li>
+      <li class="current"><a href="functions_w.html#index_w"><span>w</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all documented class members with links to the class documentation for each member:</div>
+
+<h3><a class="anchor" id="index_w"></a>- w -</h3><ul>
+<li>wait()
+: <a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html#a86e6d55d0888d4bc99789b1dcd0e5646">kudu::client::KuduTableAlterer</a>
+, <a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a48f9e977356c37666106f303100198d9">kudu::client::KuduTableCreator</a>
+</li>
+<li>was_possibly_successful()
+: <a class="el" href="classkudu_1_1client_1_1KuduError.html#a178b3cee942e4fbbe21fef859c8da3aa">kudu::client::KuduError</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/globals.html b/releases/1.4.0/cpp-client-api/globals.html
new file mode 100644
index 0000000..2e8c989
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/globals.html
@@ -0,0 +1,131 @@
+<!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.11"/>
+<title>Kudu C++ client API: File Members</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="files.html"><span>File&#160;List</span></a></li>
+      <li class="current"><a href="globals.html"><span>File&#160;Members</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow3" class="tabs2">
+    <ul class="tablist">
+      <li class="current"><a href="globals.html"><span>All</span></a></li>
+      <li><a href="globals_defs.html"><span>Macros</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all documented file members with links to the documentation:</div><ul>
+<li>KUDU_CHECK_OK
+: <a class="el" href="status_8h.html#ac503ba85e942147294cdc82087da60f6">status.h</a>
+</li>
+<li>KUDU_CHECK_OK_PREPEND
+: <a class="el" href="status_8h.html#a706c9f6ef1715b8f7a9185fb3c247d3f">status.h</a>
+</li>
+<li>KUDU_DCHECK_OK
+: <a class="el" href="status_8h.html#a99332afa18f00de3c7fcf3e76949df9d">status.h</a>
+</li>
+<li>KUDU_DCHECK_OK_PREPEND
+: <a class="el" href="status_8h.html#a2b360b53025724bb97d1dc21e25e26cc">status.h</a>
+</li>
+<li>KUDU_LOG_AND_RETURN
+: <a class="el" href="status_8h.html#abbd85cc2c5535627091bb06a21918150">status.h</a>
+</li>
+<li>KUDU_RETURN_NOT_OK
+: <a class="el" href="status_8h.html#a0de56a3f0e9d83b8ffdd63eac83c54ab">status.h</a>
+</li>
+<li>KUDU_RETURN_NOT_OK_LOG
+: <a class="el" href="status_8h.html#af09a6a2eca53c9424d74c7fd9f39c5ce">status.h</a>
+</li>
+<li>KUDU_RETURN_NOT_OK_PREPEND
+: <a class="el" href="status_8h.html#af66b8458f1d3f1264c1da86744e29e46">status.h</a>
+</li>
+<li>KUDU_RETURN_NOT_OK_RET
+: <a class="el" href="status_8h.html#a58d31c81bf1101a3ead737e9a4a4f223">status.h</a>
+</li>
+<li>KUDU_WARN_NOT_OK
+: <a class="el" href="status_8h.html#a1e64fec5ef85c0c738f6ac3f398f607e">status.h</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/globals_defs.html b/releases/1.4.0/cpp-client-api/globals_defs.html
new file mode 100644
index 0000000..2536ca0
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/globals_defs.html
@@ -0,0 +1,131 @@
+<!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.11"/>
+<title>Kudu C++ client API: File Members</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="files.html"><span>File&#160;List</span></a></li>
+      <li class="current"><a href="globals.html"><span>File&#160;Members</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow3" class="tabs2">
+    <ul class="tablist">
+      <li><a href="globals.html"><span>All</span></a></li>
+      <li class="current"><a href="globals_defs.html"><span>Macros</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;<ul>
+<li>KUDU_CHECK_OK
+: <a class="el" href="status_8h.html#ac503ba85e942147294cdc82087da60f6">status.h</a>
+</li>
+<li>KUDU_CHECK_OK_PREPEND
+: <a class="el" href="status_8h.html#a706c9f6ef1715b8f7a9185fb3c247d3f">status.h</a>
+</li>
+<li>KUDU_DCHECK_OK
+: <a class="el" href="status_8h.html#a99332afa18f00de3c7fcf3e76949df9d">status.h</a>
+</li>
+<li>KUDU_DCHECK_OK_PREPEND
+: <a class="el" href="status_8h.html#a2b360b53025724bb97d1dc21e25e26cc">status.h</a>
+</li>
+<li>KUDU_LOG_AND_RETURN
+: <a class="el" href="status_8h.html#abbd85cc2c5535627091bb06a21918150">status.h</a>
+</li>
+<li>KUDU_RETURN_NOT_OK
+: <a class="el" href="status_8h.html#a0de56a3f0e9d83b8ffdd63eac83c54ab">status.h</a>
+</li>
+<li>KUDU_RETURN_NOT_OK_LOG
+: <a class="el" href="status_8h.html#af09a6a2eca53c9424d74c7fd9f39c5ce">status.h</a>
+</li>
+<li>KUDU_RETURN_NOT_OK_PREPEND
+: <a class="el" href="status_8h.html#af66b8458f1d3f1264c1da86744e29e46">status.h</a>
+</li>
+<li>KUDU_RETURN_NOT_OK_RET
+: <a class="el" href="status_8h.html#a58d31c81bf1101a3ead737e9a4a4f223">status.h</a>
+</li>
+<li>KUDU_WARN_NOT_OK
+: <a class="el" href="status_8h.html#a1e64fec5ef85c0c738f6ac3f398f607e">status.h</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/graph_legend.html b/releases/1.4.0/cpp-client-api/graph_legend.html
new file mode 100644
index 0000000..0bba399
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/graph_legend.html
@@ -0,0 +1,120 @@
+<!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.11"/>
+<title>Kudu C++ client API: Graph Legend</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- 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 class="header">
+  <div class="headertitle">
+<div class="title">Graph Legend</div>  </div>
+</div><!--header-->
+<div class="contents">
+<p>This page explains how to interpret the graphs that are generated by doxygen.</p>
+<p>Consider the following example: </p><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;/*! Invisible class because of truncation */</div><div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;class Invisible { };</div><div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;</div><div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;/*! Truncated class, inheritance relation is hidden */</div><div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;class Truncated : public Invisible { };</div><div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;</div><div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;/* Class not documented with doxygen comments */</div><div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;class Undocumented { };</div><div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;</div><div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;/*! Class that is inherited using public inheritance */</div><div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;class PublicBase : public Truncated { };</div><div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;</div><div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;/*! A template class */</div><div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;template&lt;class T&gt; class Templ { };</div><div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;</div><div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;/*! Class that is inherited using protected inheritance */</div><div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;class ProtectedBase { };</div><div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;</div><div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;/*! Class that is inherited using private inheritance */</div><div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;class PrivateBase { };</div><div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;</div><div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;/*! Class that is used by the Inherited class */</div><div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;class Used { };</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;/*! Super class that inherits a number of other classes */</div><div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;class Inherited : public PublicBase,</div><div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;                  protected ProtectedBase,</div><div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;                  private PrivateBase,</div><div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;                  public Undocumented,</div><div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;                  public Templ&lt;int&gt;</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;  private:</div><div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;    Used *m_usedClass;</div><div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;};</div></div><!-- fragment --><p> This will result in the following graph:</p>
+<center><div class="image">
+<img src="graph_legend.png" />
+</div>
+</center><p>The boxes in the above graph have the following meaning: </p>
+<ul>
+<li>
+A filled gray box represents the struct or class for which the graph is generated. </li>
+<li>
+A box with a black border denotes a documented struct or class. </li>
+<li>
+A box with a gray border denotes an undocumented struct or class. </li>
+<li>
+A box with a red border denotes a documented struct or class forwhich not all inheritance/containment relations are shown. A graph is truncated if it does not fit within the specified boundaries. </li>
+</ul>
+<p>The arrows have the following meaning: </p>
+<ul>
+<li>
+A dark blue arrow is used to visualize a public inheritance relation between two classes. </li>
+<li>
+A dark green arrow is used for protected inheritance. </li>
+<li>
+A dark red arrow is used for private inheritance. </li>
+<li>
+A purple dashed arrow is used if a class is contained or used by another class. The arrow is labeled with the variable(s) through which the pointed class or struct is accessible. </li>
+<li>
+A yellow dashed arrow denotes a relation between a template instance and the template class it was instantiated from. The arrow is labeled with the template parameters of the instance. </li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/graph_legend.md5 b/releases/1.4.0/cpp-client-api/graph_legend.md5
new file mode 100644
index 0000000..a06ed05
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/graph_legend.md5
@@ -0,0 +1 @@
+387ff8eb65306fa251338d3c9bd7bfff
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/graph_legend.png b/releases/1.4.0/cpp-client-api/graph_legend.png
new file mode 100644
index 0000000..37f264e
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/graph_legend.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/hierarchy.html b/releases/1.4.0/cpp-client-api/hierarchy.html
new file mode 100644
index 0000000..6b66fc5
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/hierarchy.html
@@ -0,0 +1,153 @@
+<!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.11"/>
+<title>Kudu C++ client API: Class Hierarchy</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li class="current"><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- 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 class="header">
+  <div class="headertitle">
+<div class="title">Class Hierarchy</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock">
+<p><a href="inherits.html">Go to the graphical class hierarchy</a></p>
+This inheritance list is sorted roughly, but not completely, alphabetically:</div><div class="directory">
+<div class="levels">[detail level <span onclick="javascript:toggleLevel(1);">1</span><span onclick="javascript:toggleLevel(2);">2</span>]</div><table class="directory">
+<tr id="row_0_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1internal__logging_1_1CerrLog.html" target="_self">kudu::internal_logging::CerrLog</a></td><td class="desc">A helper for stderr log sink </td></tr>
+<tr id="row_1_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structkudu_1_1Slice_1_1Comparator.html" target="_self">kudu::Slice::Comparator</a></td><td class="desc"><a class="el" href="structkudu_1_1Slice_1_1Comparator.html" title="Comparator struct, useful for ordered collections (like STL maps). ">Comparator</a> struct, useful for ordered collections (like STL maps) </td></tr>
+<tr id="row_2_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_2_" class="arrow" onclick="toggleFolder('2_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><b>iterator</b></td><td class="desc"></td></tr>
+<tr id="row_2_0_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html" target="_self">kudu::client::KuduScanBatch</a></td><td class="desc">A batch of zero or more rows returned by a scan operation </td></tr>
+<tr id="row_3_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html" target="_self">kudu::client::KuduClientBuilder</a></td><td class="desc">A "factory" for <a class="el" href="classkudu_1_1client_1_1KuduClient.html" title="A handle for a connection to a cluster. ">KuduClient</a> objects </td></tr>
+<tr id="row_4_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html" target="_self">kudu::client::KuduColumnSchema</a></td><td class="desc">Representation of the column schema </td></tr>
+<tr id="row_5_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html" target="_self">kudu::client::KuduColumnSpec</a></td><td class="desc">Builder API for specifying or altering a column within a table schema </td></tr>
+<tr id="row_6_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html" target="_self">kudu::client::KuduColumnStorageAttributes</a></td><td class="desc">Representation of column storage attributes </td></tr>
+<tr id="row_7_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduError.html" target="_self">kudu::client::KuduError</a></td><td class="desc">This class represents an error which occurred in a write operation </td></tr>
+<tr id="row_8_"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_8_" class="arrow" onclick="toggleFolder('8_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduLoggingCallback.html" target="_self">kudu::client::KuduLoggingCallback</a></td><td class="desc">The interface for all logging callbacks </td></tr>
+<tr id="row_8_0_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduLoggingFunctionCallback.html" target="_self">kudu::client::KuduLoggingFunctionCallback&lt; T &gt;</a></td><td class="desc">The logging callback that invokes a function by pointer with a single argument </td></tr>
+<tr id="row_8_1_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduLoggingMemberCallback.html" target="_self">kudu::client::KuduLoggingMemberCallback&lt; T &gt;</a></td><td class="desc">The logging callback that invokes a member function of an object </td></tr>
+<tr id="row_9_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classKuduPartialRow.html" target="_self">KuduPartialRow</a></td><td class="desc">A row which may only contain values for a subset of the columns </td></tr>
+<tr id="row_10_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduPartitioner.html" target="_self">kudu::client::KuduPartitioner</a></td><td class="desc"></td></tr>
+<tr id="row_11_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduPartitionerBuilder.html" target="_self">kudu::client::KuduPartitionerBuilder</a></td><td class="desc">Builder for Partitioner instances </td></tr>
+<tr id="row_12_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html" target="_self">kudu::client::KuduPredicate</a></td><td class="desc">A representation of comparison predicate for Kudu queries </td></tr>
+<tr id="row_13_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduReplica.html" target="_self">kudu::client::KuduReplica</a></td><td class="desc">In-memory representation of a remote tablet's replica </td></tr>
+<tr id="row_14_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduScanner.html" target="_self">kudu::client::KuduScanner</a></td><td class="desc">This class is a representation of a single scan </td></tr>
+<tr id="row_15_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduScanToken.html" target="_self">kudu::client::KuduScanToken</a></td><td class="desc">A scan descriptor limited to a single physical contiguous location </td></tr>
+<tr id="row_16_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html" target="_self">kudu::client::KuduScanTokenBuilder</a></td><td class="desc">Builds scan tokens for a table </td></tr>
+<tr id="row_17_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduSchema.html" target="_self">kudu::client::KuduSchema</a></td><td class="desc">A representation of a table's schema </td></tr>
+<tr id="row_18_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduSchemaBuilder.html" target="_self">kudu::client::KuduSchemaBuilder</a></td><td class="desc">Builder API for constructing a <a class="el" href="classkudu_1_1client_1_1KuduSchema.html" title="A representation of a table&#39;s schema. ">KuduSchema</a> object </td></tr>
+<tr id="row_19_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_19_" class="arrow" onclick="toggleFolder('19_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduStatusCallback.html" target="_self">kudu::client::KuduStatusCallback</a></td><td class="desc">The interface for all status callbacks </td></tr>
+<tr id="row_19_0_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduStatusFunctionCallback.html" target="_self">kudu::client::KuduStatusFunctionCallback&lt; T &gt;</a></td><td class="desc">The status callback that invokes a function by pointer with a single argument </td></tr>
+<tr id="row_19_1_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduStatusMemberCallback.html" target="_self">kudu::client::KuduStatusMemberCallback&lt; T &gt;</a></td><td class="desc">The status callback that invokes a member function of an object </td></tr>
+<tr id="row_20_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduTableAlterer.html" target="_self">kudu::client::KuduTableAlterer</a></td><td class="desc">Alters an existing table based on the provided steps </td></tr>
+<tr id="row_21_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html" target="_self">kudu::client::KuduTableCreator</a></td><td class="desc">A helper class to create a new table with the desired options </td></tr>
+<tr id="row_22_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduTablet.html" target="_self">kudu::client::KuduTablet</a></td><td class="desc">In-memory representation of a remote tablet </td></tr>
+<tr id="row_23_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduTabletServer.html" target="_self">kudu::client::KuduTabletServer</a></td><td class="desc">In-memory representation of a remote tablet server </td></tr>
+<tr id="row_24_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduValue.html" target="_self">kudu::client::KuduValue</a></td><td class="desc">A constant cell value with a specific type </td></tr>
+<tr id="row_25_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_25_" class="arrow" onclick="toggleFolder('25_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html" target="_self">kudu::client::KuduWriteOperation</a></td><td class="desc">A single-row write operation to be sent to a Kudu table </td></tr>
+<tr id="row_25_0_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduDelete.html" target="_self">kudu::client::KuduDelete</a></td><td class="desc">A single row delete to be sent to the cluster </td></tr>
+<tr id="row_25_1_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduInsert.html" target="_self">kudu::client::KuduInsert</a></td><td class="desc">A single row insert to be sent to the cluster </td></tr>
+<tr id="row_25_2_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduUpdate.html" target="_self">kudu::client::KuduUpdate</a></td><td class="desc">A single row update to be sent to the cluster </td></tr>
+<tr id="row_25_3_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduUpsert.html" target="_self">kudu::client::KuduUpsert</a></td><td class="desc">A single row upsert to be sent to the cluster </td></tr>
+<tr id="row_26_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1MonoDelta.html" target="_self">kudu::MonoDelta</a></td><td class="desc">A representation of a time interval </td></tr>
+<tr id="row_27_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1MonoTime.html" target="_self">kudu::MonoTime</a></td><td class="desc">Representation of a particular point in time </td></tr>
+<tr id="row_28_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1internal__logging_1_1NullLog.html" target="_self">kudu::internal_logging::NullLog</a></td><td class="desc">A helper for the nil log sink </td></tr>
+<tr id="row_29_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1ResourceMetrics.html" target="_self">kudu::client::ResourceMetrics</a></td><td class="desc">A generic catalog of simple metrics </td></tr>
+<tr id="row_30_"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_30_" class="arrow" onclick="toggleFolder('30_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><b>RowPtr</b></td><td class="desc"></td></tr>
+<tr id="row_30_0_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduScanBatch.html" target="_self">kudu::client::KuduScanBatch</a></td><td class="desc">A batch of zero or more rows returned by a scan operation </td></tr>
+<tr id="row_31_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1Slice.html" target="_self">kudu::Slice</a></td><td class="desc">A wrapper around externally allocated data </td></tr>
+<tr id="row_32_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structkudu_1_1SliceMap.html" target="_self">kudu::SliceMap&lt; T &gt;</a></td><td class="desc">STL map whose keys are Slices </td></tr>
+<tr id="row_33_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1Status.html" target="_self">kudu::Status</a></td><td class="desc">A representation of an operation's outcome </td></tr>
+<tr id="row_34_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_34_" class="arrow" onclick="toggleFolder('34_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><b>enable_shared_from_this</b></td><td class="desc"></td></tr>
+<tr id="row_34_0_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduClient.html" target="_self">kudu::client::KuduClient</a></td><td class="desc">A handle for a connection to a cluster </td></tr>
+<tr id="row_34_1_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduSession.html" target="_self">kudu::client::KuduSession</a></td><td class="desc">Representation of a Kudu client session </td></tr>
+<tr id="row_34_2_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classkudu_1_1client_1_1KuduTable.html" target="_self">kudu::client::KuduTable</a></td><td class="desc">A representation of a table on a particular cluster </td></tr>
+</table>
+</div><!-- directory -->
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/index.html b/releases/1.4.0/cpp-client-api/index.html
new file mode 100644
index 0000000..d9e3614
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/index.html
@@ -0,0 +1,92 @@
+<!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.11"/>
+<title>Kudu C++ client API: Kudu C++ client API documentation</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li class="current"><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- 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 class="header">
+  <div class="headertitle">
+<div class="title">Kudu C++ client API documentation </div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><p>Kudu provides C++ and Java client APIs, as well as reference examples to illustrate their use (check the source code for the examples). This is Kudu C++ client API. Use of any APIs other than the client APIs is unsupported. </p>
+</div></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_0.map b/releases/1.4.0/cpp-client-api/inherit_graph_0.map
new file mode 100644
index 0000000..08171d7
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_0.map
@@ -0,0 +1,5 @@
+<map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
+<area shape="rect" id="node2" href="$classkudu_1_1client_1_1KuduClient.html" title="A handle for a connection to a cluster. " alt="" coords="227,5,388,32"/>
+<area shape="rect" id="node3" href="$classkudu_1_1client_1_1KuduSession.html" title="Representation of a Kudu client session. " alt="" coords="220,56,395,83"/>
+<area shape="rect" id="node4" href="$classkudu_1_1client_1_1KuduTable.html" title="A representation of a table on a particular cluster. " alt="" coords="228,107,387,133"/>
+</map>
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_0.md5 b/releases/1.4.0/cpp-client-api/inherit_graph_0.md5
new file mode 100644
index 0000000..0ddfb31
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_0.md5
@@ -0,0 +1 @@
+e3da738f5fb0952c44faa26bed77aac9
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_0.png b/releases/1.4.0/cpp-client-api/inherit_graph_0.png
new file mode 100644
index 0000000..39737d8
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_0.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_1.map b/releases/1.4.0/cpp-client-api/inherit_graph_1.map
new file mode 100644
index 0000000..a1d2e99
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_1.map
@@ -0,0 +1,3 @@
+<map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
+<area shape="rect" id="node1" href="$classkudu_1_1client_1_1KuduClientBuilder.html" title="A &quot;factory&quot; for KuduClient objects. " alt="" coords="5,5,167,47"/>
+</map>
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_1.md5 b/releases/1.4.0/cpp-client-api/inherit_graph_1.md5
new file mode 100644
index 0000000..c76307c
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_1.md5
@@ -0,0 +1 @@
+ccc95e540e0b0814be82078ef1c1345d
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_1.png b/releases/1.4.0/cpp-client-api/inherit_graph_1.png
new file mode 100644
index 0000000..7c02f15
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_1.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_10.map b/releases/1.4.0/cpp-client-api/inherit_graph_10.map
new file mode 100644
index 0000000..35ecf07
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_10.map
@@ -0,0 +1,3 @@
+<map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
+<area shape="rect" id="node1" href="$classkudu_1_1client_1_1KuduReplica.html" title="In&#45;memory representation of a remote tablet&#39;s replica. " alt="" coords="5,5,176,32"/>
+</map>
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_10.md5 b/releases/1.4.0/cpp-client-api/inherit_graph_10.md5
new file mode 100644
index 0000000..4fc3899
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_10.md5
@@ -0,0 +1 @@
+472011b462e65b3c2f82c8e8ebae186a
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_10.png b/releases/1.4.0/cpp-client-api/inherit_graph_10.png
new file mode 100644
index 0000000..624c60a
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_10.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_11.map b/releases/1.4.0/cpp-client-api/inherit_graph_11.map
new file mode 100644
index 0000000..5134094
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_11.map
@@ -0,0 +1,3 @@
+<map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
+<area shape="rect" id="node2" href="$classkudu_1_1client_1_1KuduScanBatch.html" title="A batch of zero or more rows returned by a scan operation. " alt="" coords="120,31,311,57"/>
+</map>
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_11.md5 b/releases/1.4.0/cpp-client-api/inherit_graph_11.md5
new file mode 100644
index 0000000..28073da
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_11.md5
@@ -0,0 +1 @@
+7886916407d9d6ccea8f7d3bddd4df53
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_11.png b/releases/1.4.0/cpp-client-api/inherit_graph_11.png
new file mode 100644
index 0000000..e690f88
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_11.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_12.map b/releases/1.4.0/cpp-client-api/inherit_graph_12.map
new file mode 100644
index 0000000..b795e08
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_12.map
@@ -0,0 +1,3 @@
+<map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
+<area shape="rect" id="node1" href="$classkudu_1_1client_1_1KuduScanner.html" title="This class is a representation of a single scan. " alt="" coords="5,5,180,32"/>
+</map>
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_12.md5 b/releases/1.4.0/cpp-client-api/inherit_graph_12.md5
new file mode 100644
index 0000000..74ec260
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_12.md5
@@ -0,0 +1 @@
+33698973dc070defee5811a525f22d2e
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_12.png b/releases/1.4.0/cpp-client-api/inherit_graph_12.png
new file mode 100644
index 0000000..efa0029
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_12.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_13.map b/releases/1.4.0/cpp-client-api/inherit_graph_13.map
new file mode 100644
index 0000000..b32a4f1
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_13.map
@@ -0,0 +1,3 @@
+<map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
+<area shape="rect" id="node1" href="$classkudu_1_1client_1_1KuduScanToken.html" title="A scan descriptor limited to a single physical contiguous location. " alt="" coords="5,5,199,32"/>
+</map>
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_13.md5 b/releases/1.4.0/cpp-client-api/inherit_graph_13.md5
new file mode 100644
index 0000000..734d40d
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_13.md5
@@ -0,0 +1 @@
+0cb65fd06643b34d485c6b19ff347b0c
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_13.png b/releases/1.4.0/cpp-client-api/inherit_graph_13.png
new file mode 100644
index 0000000..f35f609
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_13.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_14.map b/releases/1.4.0/cpp-client-api/inherit_graph_14.map
new file mode 100644
index 0000000..01e97e0
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_14.map
@@ -0,0 +1,3 @@
+<map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
+<area shape="rect" id="node1" href="$classkudu_1_1client_1_1KuduScanTokenBuilder.html" title="Builds scan tokens for a table. " alt="" coords="5,5,199,47"/>
+</map>
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_14.md5 b/releases/1.4.0/cpp-client-api/inherit_graph_14.md5
new file mode 100644
index 0000000..5b7af43
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_14.md5
@@ -0,0 +1 @@
+508e569d8dbdba96080d8944105cc147
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_14.png b/releases/1.4.0/cpp-client-api/inherit_graph_14.png
new file mode 100644
index 0000000..c09ade4
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_14.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_15.map b/releases/1.4.0/cpp-client-api/inherit_graph_15.map
new file mode 100644
index 0000000..9910f48
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_15.map
@@ -0,0 +1,3 @@
+<map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
+<area shape="rect" id="node1" href="$classkudu_1_1client_1_1KuduSchema.html" title="A representation of a table&#39;s schema. " alt="" coords="5,5,180,32"/>
+</map>
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_15.md5 b/releases/1.4.0/cpp-client-api/inherit_graph_15.md5
new file mode 100644
index 0000000..a951fa7
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_15.md5
@@ -0,0 +1 @@
+1f8f5203cbf1700a9ca8221b358c5f12
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_15.png b/releases/1.4.0/cpp-client-api/inherit_graph_15.png
new file mode 100644
index 0000000..a6d90a8
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_15.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_16.map b/releases/1.4.0/cpp-client-api/inherit_graph_16.map
new file mode 100644
index 0000000..efe699f
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_16.map
@@ -0,0 +1,3 @@
+<map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
+<area shape="rect" id="node1" href="$classkudu_1_1client_1_1KuduSchemaBuilder.html" title="Builder API for constructing a KuduSchema object. " alt="" coords="5,5,180,47"/>
+</map>
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_16.md5 b/releases/1.4.0/cpp-client-api/inherit_graph_16.md5
new file mode 100644
index 0000000..1e7a5b2
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_16.md5
@@ -0,0 +1 @@
+daa9573895a3ab8767301dc5d201da83
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_16.png b/releases/1.4.0/cpp-client-api/inherit_graph_16.png
new file mode 100644
index 0000000..f70c1b5
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_16.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_17.map b/releases/1.4.0/cpp-client-api/inherit_graph_17.map
new file mode 100644
index 0000000..9dc5f53
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_17.map
@@ -0,0 +1,5 @@
+<map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
+<area shape="rect" id="node1" href="$classkudu_1_1client_1_1KuduStatusCallback.html" title="The interface for all status callbacks. " alt="" coords="5,39,171,80"/>
+<area shape="rect" id="node2" href="$classkudu_1_1client_1_1KuduStatusFunctionCallback.html" title="The status callback that invokes a function by pointer with a single argument. " alt="" coords="219,5,384,47"/>
+<area shape="rect" id="node3" href="$classkudu_1_1client_1_1KuduStatusMemberCallback.html" title="The status callback that invokes a member function of an object. " alt="" coords="219,71,384,112"/>
+</map>
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_17.md5 b/releases/1.4.0/cpp-client-api/inherit_graph_17.md5
new file mode 100644
index 0000000..ffaae4c
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_17.md5
@@ -0,0 +1 @@
+59009dd71b1fa7ef9eaf936ae8907f9b
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_17.png b/releases/1.4.0/cpp-client-api/inherit_graph_17.png
new file mode 100644
index 0000000..a35b54e
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_17.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_18.map b/releases/1.4.0/cpp-client-api/inherit_graph_18.map
new file mode 100644
index 0000000..2d76ec8
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_18.map
@@ -0,0 +1,3 @@
+<map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
+<area shape="rect" id="node1" href="$classkudu_1_1client_1_1KuduTableAlterer.html" title="Alters an existing table based on the provided steps. " alt="" coords="5,5,203,32"/>
+</map>
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_18.md5 b/releases/1.4.0/cpp-client-api/inherit_graph_18.md5
new file mode 100644
index 0000000..11734de
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_18.md5
@@ -0,0 +1 @@
+01984aa1995d55ac00ceaef979f4274d
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_18.png b/releases/1.4.0/cpp-client-api/inherit_graph_18.png
new file mode 100644
index 0000000..c14e19d
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_18.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_19.map b/releases/1.4.0/cpp-client-api/inherit_graph_19.map
new file mode 100644
index 0000000..05d6911
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_19.map
@@ -0,0 +1,3 @@
+<map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
+<area shape="rect" id="node1" href="$classkudu_1_1client_1_1KuduTableCreator.html" title="A helper class to create a new table with the desired options. " alt="" coords="5,5,208,32"/>
+</map>
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_19.md5 b/releases/1.4.0/cpp-client-api/inherit_graph_19.md5
new file mode 100644
index 0000000..dddb3eb
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_19.md5
@@ -0,0 +1 @@
+a010d5307874e8d8b5546dff690f2fed
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_19.png b/releases/1.4.0/cpp-client-api/inherit_graph_19.png
new file mode 100644
index 0000000..3459a66
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_19.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_2.map b/releases/1.4.0/cpp-client-api/inherit_graph_2.map
new file mode 100644
index 0000000..d32189b
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_2.map
@@ -0,0 +1,3 @@
+<map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
+<area shape="rect" id="node1" href="$classkudu_1_1client_1_1KuduColumnSchema.html" title="Representation of the column schema. " alt="" coords="5,5,177,47"/>
+</map>
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_2.md5 b/releases/1.4.0/cpp-client-api/inherit_graph_2.md5
new file mode 100644
index 0000000..eabd84c
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_2.md5
@@ -0,0 +1 @@
+2811c0ffa2f44970249956ddf9d5ecf0
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_2.png b/releases/1.4.0/cpp-client-api/inherit_graph_2.png
new file mode 100644
index 0000000..8a35dea
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_2.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_20.map b/releases/1.4.0/cpp-client-api/inherit_graph_20.map
new file mode 100644
index 0000000..09b63e0
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_20.map
@@ -0,0 +1,3 @@
+<map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
+<area shape="rect" id="node1" href="$classkudu_1_1client_1_1KuduTablet.html" title="In&#45;memory representation of a remote tablet. " alt="" coords="5,5,168,32"/>
+</map>
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_20.md5 b/releases/1.4.0/cpp-client-api/inherit_graph_20.md5
new file mode 100644
index 0000000..6db1d41
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_20.md5
@@ -0,0 +1 @@
+433213c65773e856d822afb92bd82474
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_20.png b/releases/1.4.0/cpp-client-api/inherit_graph_20.png
new file mode 100644
index 0000000..028255c
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_20.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_21.map b/releases/1.4.0/cpp-client-api/inherit_graph_21.map
new file mode 100644
index 0000000..554b5a1
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_21.map
@@ -0,0 +1,3 @@
+<map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
+<area shape="rect" id="node1" href="$classkudu_1_1client_1_1KuduTabletServer.html" title="In&#45;memory representation of a remote tablet server. " alt="" coords="5,5,168,47"/>
+</map>
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_21.md5 b/releases/1.4.0/cpp-client-api/inherit_graph_21.md5
new file mode 100644
index 0000000..28f8ff0
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_21.md5
@@ -0,0 +1 @@
+3250cee679bb04fe90e000d2c0f860af
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_21.png b/releases/1.4.0/cpp-client-api/inherit_graph_21.png
new file mode 100644
index 0000000..0c1e142
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_21.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_22.map b/releases/1.4.0/cpp-client-api/inherit_graph_22.map
new file mode 100644
index 0000000..443e658
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_22.map
@@ -0,0 +1,3 @@
+<map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
+<area shape="rect" id="node1" href="$classkudu_1_1client_1_1KuduValue.html" title="A constant cell value with a specific type. " alt="" coords="5,5,165,32"/>
+</map>
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_22.md5 b/releases/1.4.0/cpp-client-api/inherit_graph_22.md5
new file mode 100644
index 0000000..023032e
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_22.md5
@@ -0,0 +1 @@
+ead987d5079de997d5435b9c88dbeec4
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_22.png b/releases/1.4.0/cpp-client-api/inherit_graph_22.png
new file mode 100644
index 0000000..f6fe49c
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_22.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_23.map b/releases/1.4.0/cpp-client-api/inherit_graph_23.map
new file mode 100644
index 0000000..e731f00
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_23.map
@@ -0,0 +1,7 @@
+<map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
+<area shape="rect" id="node1" href="$classkudu_1_1client_1_1KuduWriteOperation.html" title="A single&#45;row write operation to be sent to a Kudu table. " alt="" coords="5,81,220,108"/>
+<area shape="rect" id="node2" href="$classkudu_1_1client_1_1KuduDelete.html" title="A single row delete to be sent to the cluster. " alt="" coords="270,5,435,32"/>
+<area shape="rect" id="node3" href="$classkudu_1_1client_1_1KuduInsert.html" title="A single row insert to be sent to the cluster. " alt="" coords="273,56,433,83"/>
+<area shape="rect" id="node4" href="$classkudu_1_1client_1_1KuduUpdate.html" title="A single row update to be sent to the cluster. " alt="" coords="268,107,437,133"/>
+<area shape="rect" id="node5" href="$classkudu_1_1client_1_1KuduUpsert.html" title="A single row upsert to be sent to the cluster. " alt="" coords="269,157,436,184"/>
+</map>
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_23.md5 b/releases/1.4.0/cpp-client-api/inherit_graph_23.md5
new file mode 100644
index 0000000..7ed8cb2
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_23.md5
@@ -0,0 +1 @@
+89c8bf76229754f04e295970ab3d02be
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_23.png b/releases/1.4.0/cpp-client-api/inherit_graph_23.png
new file mode 100644
index 0000000..88c9f26
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_23.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_24.map b/releases/1.4.0/cpp-client-api/inherit_graph_24.map
new file mode 100644
index 0000000..905d41b
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_24.map
@@ -0,0 +1,3 @@
+<map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
+<area shape="rect" id="node1" href="$classkudu_1_1client_1_1ResourceMetrics.html" title="A generic catalog of simple metrics. " alt="" coords="5,5,201,32"/>
+</map>
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_24.md5 b/releases/1.4.0/cpp-client-api/inherit_graph_24.md5
new file mode 100644
index 0000000..3cb04d9
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_24.md5
@@ -0,0 +1 @@
+2cdca15b126c424b1decd815f8a69dae
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_24.png b/releases/1.4.0/cpp-client-api/inherit_graph_24.png
new file mode 100644
index 0000000..c5ba695
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_24.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_25.map b/releases/1.4.0/cpp-client-api/inherit_graph_25.map
new file mode 100644
index 0000000..1516445
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_25.map
@@ -0,0 +1,3 @@
+<map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
+<area shape="rect" id="node1" href="$classkudu_1_1internal__logging_1_1CerrLog.html" title="A helper for stderr log sink. " alt="" coords="5,5,153,47"/>
+</map>
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_25.md5 b/releases/1.4.0/cpp-client-api/inherit_graph_25.md5
new file mode 100644
index 0000000..c4a69f9
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_25.md5
@@ -0,0 +1 @@
+44acf00efa546724e412c2626666ef8a
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_25.png b/releases/1.4.0/cpp-client-api/inherit_graph_25.png
new file mode 100644
index 0000000..2a79c13
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_25.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_26.map b/releases/1.4.0/cpp-client-api/inherit_graph_26.map
new file mode 100644
index 0000000..9693ad3
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_26.map
@@ -0,0 +1,3 @@
+<map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
+<area shape="rect" id="node1" href="$classkudu_1_1internal__logging_1_1NullLog.html" title="A helper for the nil log sink. " alt="" coords="5,5,153,47"/>
+</map>
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_26.md5 b/releases/1.4.0/cpp-client-api/inherit_graph_26.md5
new file mode 100644
index 0000000..932a472
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_26.md5
@@ -0,0 +1 @@
+f844ef33330dc9302a11894540620f3e
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_26.png b/releases/1.4.0/cpp-client-api/inherit_graph_26.png
new file mode 100644
index 0000000..de1fadf
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_26.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_27.map b/releases/1.4.0/cpp-client-api/inherit_graph_27.map
new file mode 100644
index 0000000..8d594d4
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_27.map
@@ -0,0 +1,3 @@
+<map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
+<area shape="rect" id="node1" href="$classkudu_1_1MonoDelta.html" title="A representation of a time interval. " alt="" coords="5,5,127,32"/>
+</map>
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_27.md5 b/releases/1.4.0/cpp-client-api/inherit_graph_27.md5
new file mode 100644
index 0000000..cb1bbd0
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_27.md5
@@ -0,0 +1 @@
+448dc707ea4bdf03ed3f76001d20ee55
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_27.png b/releases/1.4.0/cpp-client-api/inherit_graph_27.png
new file mode 100644
index 0000000..6f0ccc2
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_27.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_28.map b/releases/1.4.0/cpp-client-api/inherit_graph_28.map
new file mode 100644
index 0000000..1031c9b
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_28.map
@@ -0,0 +1,3 @@
+<map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
+<area shape="rect" id="node1" href="$classkudu_1_1MonoTime.html" title="Representation of a particular point in time. " alt="" coords="5,5,124,32"/>
+</map>
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_28.md5 b/releases/1.4.0/cpp-client-api/inherit_graph_28.md5
new file mode 100644
index 0000000..f6fa1a8
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_28.md5
@@ -0,0 +1 @@
+595f5fa28a253ae00a3ded7bd52eb89b
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_28.png b/releases/1.4.0/cpp-client-api/inherit_graph_28.png
new file mode 100644
index 0000000..2c4a474
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_28.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_29.map b/releases/1.4.0/cpp-client-api/inherit_graph_29.map
new file mode 100644
index 0000000..e3c0d33
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_29.map
@@ -0,0 +1,3 @@
+<map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
+<area shape="rect" id="node1" href="$classkudu_1_1Slice.html" title="A wrapper around externally allocated data. " alt="" coords="5,5,92,32"/>
+</map>
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_29.md5 b/releases/1.4.0/cpp-client-api/inherit_graph_29.md5
new file mode 100644
index 0000000..b84db0b
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_29.md5
@@ -0,0 +1 @@
+d62ff9513e23a17593079ae77dba36a9
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_29.png b/releases/1.4.0/cpp-client-api/inherit_graph_29.png
new file mode 100644
index 0000000..0cb0d17
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_29.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_3.map b/releases/1.4.0/cpp-client-api/inherit_graph_3.map
new file mode 100644
index 0000000..ca02622
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_3.map
@@ -0,0 +1,3 @@
+<map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
+<area shape="rect" id="node1" href="$classkudu_1_1client_1_1KuduColumnSpec.html" title="Builder API for specifying or altering a column within a table schema. " alt="" coords="5,5,208,32"/>
+</map>
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_3.md5 b/releases/1.4.0/cpp-client-api/inherit_graph_3.md5
new file mode 100644
index 0000000..34f8abb
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_3.md5
@@ -0,0 +1 @@
+cc3f205decacf7f997fab328360070a0
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_3.png b/releases/1.4.0/cpp-client-api/inherit_graph_3.png
new file mode 100644
index 0000000..d60c01d
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_3.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_30.map b/releases/1.4.0/cpp-client-api/inherit_graph_30.map
new file mode 100644
index 0000000..1ff423a
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_30.map
@@ -0,0 +1,3 @@
+<map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
+<area shape="rect" id="node1" href="$structkudu_1_1Slice_1_1Comparator.html" title="Comparator struct, useful for ordered collections (like STL maps). " alt="" coords="5,5,168,32"/>
+</map>
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_30.md5 b/releases/1.4.0/cpp-client-api/inherit_graph_30.md5
new file mode 100644
index 0000000..ebb0ca5
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_30.md5
@@ -0,0 +1 @@
+e2f240a7649569cb768b7c6dff77c7f8
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_30.png b/releases/1.4.0/cpp-client-api/inherit_graph_30.png
new file mode 100644
index 0000000..c44891a
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_30.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_31.map b/releases/1.4.0/cpp-client-api/inherit_graph_31.map
new file mode 100644
index 0000000..1ea3723
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_31.map
@@ -0,0 +1,3 @@
+<map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
+<area shape="rect" id="node1" href="$structkudu_1_1SliceMap.html" title="STL map whose keys are Slices. " alt="" coords="5,5,149,32"/>
+</map>
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_31.md5 b/releases/1.4.0/cpp-client-api/inherit_graph_31.md5
new file mode 100644
index 0000000..a8f0296
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_31.md5
@@ -0,0 +1 @@
+43226203bb9299dfb8409129f924146a
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_31.png b/releases/1.4.0/cpp-client-api/inherit_graph_31.png
new file mode 100644
index 0000000..93d09e7
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_31.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_32.map b/releases/1.4.0/cpp-client-api/inherit_graph_32.map
new file mode 100644
index 0000000..d1ddc21
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_32.map
@@ -0,0 +1,3 @@
+<map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
+<area shape="rect" id="node1" href="$classkudu_1_1Status.html" title="A representation of an operation&#39;s outcome. " alt="" coords="5,5,101,32"/>
+</map>
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_32.md5 b/releases/1.4.0/cpp-client-api/inherit_graph_32.md5
new file mode 100644
index 0000000..962036e
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_32.md5
@@ -0,0 +1 @@
+86c7a6a058ccbeb7e4a8feef033f386f
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_32.png b/releases/1.4.0/cpp-client-api/inherit_graph_32.png
new file mode 100644
index 0000000..b59e31a
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_32.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_33.map b/releases/1.4.0/cpp-client-api/inherit_graph_33.map
new file mode 100644
index 0000000..ab26fca
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_33.map
@@ -0,0 +1,3 @@
+<map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
+<area shape="rect" id="node1" href="$classKuduPartialRow.html" title="A row which may only contain values for a subset of the columns. " alt="" coords="5,5,121,32"/>
+</map>
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_33.md5 b/releases/1.4.0/cpp-client-api/inherit_graph_33.md5
new file mode 100644
index 0000000..aae0ea1
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_33.md5
@@ -0,0 +1 @@
+89b1e989775181f44bc11a3a6b3a5476
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_33.png b/releases/1.4.0/cpp-client-api/inherit_graph_33.png
new file mode 100644
index 0000000..83cacab
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_33.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_4.map b/releases/1.4.0/cpp-client-api/inherit_graph_4.map
new file mode 100644
index 0000000..5cd6e4d
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_4.map
@@ -0,0 +1,3 @@
+<map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
+<area shape="rect" id="node1" href="$classkudu_1_1client_1_1KuduColumnStorageAttributes.html" title="Representation of column storage attributes. " alt="" coords="5,5,177,47"/>
+</map>
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_4.md5 b/releases/1.4.0/cpp-client-api/inherit_graph_4.md5
new file mode 100644
index 0000000..e000bfe
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_4.md5
@@ -0,0 +1 @@
+b2e83ab07b774560d96a107090c74f0e
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_4.png b/releases/1.4.0/cpp-client-api/inherit_graph_4.png
new file mode 100644
index 0000000..3c09d0e
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_4.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_5.map b/releases/1.4.0/cpp-client-api/inherit_graph_5.map
new file mode 100644
index 0000000..590b59d
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_5.map
@@ -0,0 +1,3 @@
+<map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
+<area shape="rect" id="node1" href="$classkudu_1_1client_1_1KuduError.html" title="This class represents an error which occurred in a write operation. " alt="" coords="5,5,160,32"/>
+</map>
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_5.md5 b/releases/1.4.0/cpp-client-api/inherit_graph_5.md5
new file mode 100644
index 0000000..5960b6e
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_5.md5
@@ -0,0 +1 @@
+548704f1d46300d11bd4896b6e119b50
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_5.png b/releases/1.4.0/cpp-client-api/inherit_graph_5.png
new file mode 100644
index 0000000..f85e949
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_5.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_6.map b/releases/1.4.0/cpp-client-api/inherit_graph_6.map
new file mode 100644
index 0000000..85d8f9a
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_6.map
@@ -0,0 +1,5 @@
+<map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
+<area shape="rect" id="node1" href="$classkudu_1_1client_1_1KuduLoggingCallback.html" title="The interface for all logging callbacks. " alt="" coords="5,39,177,80"/>
+<area shape="rect" id="node2" href="$classkudu_1_1client_1_1KuduLoggingFunctionCallback.html" title="The logging callback that invokes a function by pointer with a single argument. " alt="" coords="225,5,397,47"/>
+<area shape="rect" id="node3" href="$classkudu_1_1client_1_1KuduLoggingMemberCallback.html" title="The logging callback that invokes a member function of an object. " alt="" coords="225,71,397,112"/>
+</map>
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_6.md5 b/releases/1.4.0/cpp-client-api/inherit_graph_6.md5
new file mode 100644
index 0000000..e59d4ac
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_6.md5
@@ -0,0 +1 @@
+303d1d0fff4210f9e0240a83a30b7e9b
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_6.png b/releases/1.4.0/cpp-client-api/inherit_graph_6.png
new file mode 100644
index 0000000..883161d
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_6.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_7.map b/releases/1.4.0/cpp-client-api/inherit_graph_7.map
new file mode 100644
index 0000000..65eb54b
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_7.map
@@ -0,0 +1,3 @@
+<map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
+<area shape="rect" id="node1" href="$classkudu_1_1client_1_1KuduPartitioner.html" title="kudu::client::KuduPartitioner" alt="" coords="5,5,192,32"/>
+</map>
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_7.md5 b/releases/1.4.0/cpp-client-api/inherit_graph_7.md5
new file mode 100644
index 0000000..400e8d7
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_7.md5
@@ -0,0 +1 @@
+3032012a915d454f317d9c92b04fe417
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_7.png b/releases/1.4.0/cpp-client-api/inherit_graph_7.png
new file mode 100644
index 0000000..4f56714
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_7.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_8.map b/releases/1.4.0/cpp-client-api/inherit_graph_8.map
new file mode 100644
index 0000000..e4f7210
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_8.map
@@ -0,0 +1,3 @@
+<map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
+<area shape="rect" id="node1" href="$classkudu_1_1client_1_1KuduPartitionerBuilder.html" title="Builder for Partitioner instances. " alt="" coords="5,5,192,47"/>
+</map>
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_8.md5 b/releases/1.4.0/cpp-client-api/inherit_graph_8.md5
new file mode 100644
index 0000000..e86846b
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_8.md5
@@ -0,0 +1 @@
+a407276fb7428050b0a158f09c214210
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_8.png b/releases/1.4.0/cpp-client-api/inherit_graph_8.png
new file mode 100644
index 0000000..785b8e5
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_8.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_9.map b/releases/1.4.0/cpp-client-api/inherit_graph_9.map
new file mode 100644
index 0000000..736c5f2
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_9.map
@@ -0,0 +1,3 @@
+<map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
+<area shape="rect" id="node1" href="$classkudu_1_1client_1_1KuduPredicate.html" title="A representation of comparison predicate for Kudu queries. " alt="" coords="5,5,188,32"/>
+</map>
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_9.md5 b/releases/1.4.0/cpp-client-api/inherit_graph_9.md5
new file mode 100644
index 0000000..c855142
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_9.md5
@@ -0,0 +1 @@
+e193ee21805ad13d5b88b1c4c7da1694
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/inherit_graph_9.png b/releases/1.4.0/cpp-client-api/inherit_graph_9.png
new file mode 100644
index 0000000..8fb161f
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherit_graph_9.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/inherits.html b/releases/1.4.0/cpp-client-api/inherits.html
new file mode 100644
index 0000000..31458b8
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/inherits.html
@@ -0,0 +1,283 @@
+<!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.11"/>
+<title>Kudu C++ client API: Class Hierarchy</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li class="current"><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- 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 class="header">
+  <div class="headertitle">
+<div class="title">Class Hierarchy</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock">
+<p><a href="hierarchy.html">Go to the textual class hierarchy</a></p>
+</div><table border="0" cellspacing="10" cellpadding="0">
+<tr><td><img src="inherit_graph_0.png" border="0" alt="" usemap="#kudu_1_1client_1_1KuduClient"/>
+<map name="kudu_1_1client_1_1KuduClient" id="kudu_1_1client_1_1KuduClient">
+<area shape="rect" id="node2" href="classkudu_1_1client_1_1KuduClient.html" title="A handle for a connection to a cluster. " alt="" coords="227,5,388,32"/>
+<area shape="rect" id="node3" href="classkudu_1_1client_1_1KuduSession.html" title="Representation of a Kudu client session. " alt="" coords="220,56,395,83"/>
+<area shape="rect" id="node4" href="classkudu_1_1client_1_1KuduTable.html" title="A representation of a table on a particular cluster. " alt="" coords="228,107,387,133"/>
+</map>
+</td></tr>
+<tr><td><img src="inherit_graph_1.png" border="0" alt="" usemap="#kudu_1_1client_1_1KuduClientBuilder"/>
+<map name="kudu_1_1client_1_1KuduClientBuilder" id="kudu_1_1client_1_1KuduClientBuilder">
+<area shape="rect" id="node1" href="classkudu_1_1client_1_1KuduClientBuilder.html" title="A &quot;factory&quot; for KuduClient objects. " alt="" coords="5,5,167,47"/>
+</map>
+</td></tr>
+<tr><td><img src="inherit_graph_2.png" border="0" alt="" usemap="#kudu_1_1client_1_1KuduColumnSchema"/>
+<map name="kudu_1_1client_1_1KuduColumnSchema" id="kudu_1_1client_1_1KuduColumnSchema">
+<area shape="rect" id="node1" href="classkudu_1_1client_1_1KuduColumnSchema.html" title="Representation of the column schema. " alt="" coords="5,5,177,47"/>
+</map>
+</td></tr>
+<tr><td><img src="inherit_graph_3.png" border="0" alt="" usemap="#kudu_1_1client_1_1KuduColumnSpec"/>
+<map name="kudu_1_1client_1_1KuduColumnSpec" id="kudu_1_1client_1_1KuduColumnSpec">
+<area shape="rect" id="node1" href="classkudu_1_1client_1_1KuduColumnSpec.html" title="Builder API for specifying or altering a column within a table schema. " alt="" coords="5,5,208,32"/>
+</map>
+</td></tr>
+<tr><td><img src="inherit_graph_4.png" border="0" alt="" usemap="#kudu_1_1client_1_1KuduColumnStorageAttributes"/>
+<map name="kudu_1_1client_1_1KuduColumnStorageAttributes" id="kudu_1_1client_1_1KuduColumnStorageAttributes">
+<area shape="rect" id="node1" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html" title="Representation of column storage attributes. " alt="" coords="5,5,177,47"/>
+</map>
+</td></tr>
+<tr><td><img src="inherit_graph_5.png" border="0" alt="" usemap="#kudu_1_1client_1_1KuduError"/>
+<map name="kudu_1_1client_1_1KuduError" id="kudu_1_1client_1_1KuduError">
+<area shape="rect" id="node1" href="classkudu_1_1client_1_1KuduError.html" title="This class represents an error which occurred in a write operation. " alt="" coords="5,5,160,32"/>
+</map>
+</td></tr>
+<tr><td><img src="inherit_graph_6.png" border="0" alt="" usemap="#kudu_1_1client_1_1KuduLoggingCallback"/>
+<map name="kudu_1_1client_1_1KuduLoggingCallback" id="kudu_1_1client_1_1KuduLoggingCallback">
+<area shape="rect" id="node1" href="classkudu_1_1client_1_1KuduLoggingCallback.html" title="The interface for all logging callbacks. " alt="" coords="5,39,177,80"/>
+<area shape="rect" id="node2" href="classkudu_1_1client_1_1KuduLoggingFunctionCallback.html" title="The logging callback that invokes a function by pointer with a single argument. " alt="" coords="225,5,397,47"/>
+<area shape="rect" id="node3" href="classkudu_1_1client_1_1KuduLoggingMemberCallback.html" title="The logging callback that invokes a member function of an object. " alt="" coords="225,71,397,112"/>
+</map>
+</td></tr>
+<tr><td><img src="inherit_graph_7.png" border="0" alt="" usemap="#kudu_1_1client_1_1KuduPartitioner"/>
+<map name="kudu_1_1client_1_1KuduPartitioner" id="kudu_1_1client_1_1KuduPartitioner">
+<area shape="rect" id="node1" href="classkudu_1_1client_1_1KuduPartitioner.html" title="kudu::client::KuduPartitioner" alt="" coords="5,5,192,32"/>
+</map>
+</td></tr>
+<tr><td><img src="inherit_graph_8.png" border="0" alt="" usemap="#kudu_1_1client_1_1KuduPartitionerBuilder"/>
+<map name="kudu_1_1client_1_1KuduPartitionerBuilder" id="kudu_1_1client_1_1KuduPartitionerBuilder">
+<area shape="rect" id="node1" href="classkudu_1_1client_1_1KuduPartitionerBuilder.html" title="Builder for Partitioner instances. " alt="" coords="5,5,192,47"/>
+</map>
+</td></tr>
+<tr><td><img src="inherit_graph_9.png" border="0" alt="" usemap="#kudu_1_1client_1_1KuduPredicate"/>
+<map name="kudu_1_1client_1_1KuduPredicate" id="kudu_1_1client_1_1KuduPredicate">
+<area shape="rect" id="node1" href="classkudu_1_1client_1_1KuduPredicate.html" title="A representation of comparison predicate for Kudu queries. " alt="" coords="5,5,188,32"/>
+</map>
+</td></tr>
+<tr><td><img src="inherit_graph_10.png" border="0" alt="" usemap="#kudu_1_1client_1_1KuduReplica"/>
+<map name="kudu_1_1client_1_1KuduReplica" id="kudu_1_1client_1_1KuduReplica">
+<area shape="rect" id="node1" href="classkudu_1_1client_1_1KuduReplica.html" title="In&#45;memory representation of a remote tablet&#39;s replica. " alt="" coords="5,5,176,32"/>
+</map>
+</td></tr>
+<tr><td><img src="inherit_graph_11.png" border="0" alt="" usemap="#kudu_1_1client_1_1KuduScanBatch"/>
+<map name="kudu_1_1client_1_1KuduScanBatch" id="kudu_1_1client_1_1KuduScanBatch">
+<area shape="rect" id="node2" href="classkudu_1_1client_1_1KuduScanBatch.html" title="A batch of zero or more rows returned by a scan operation. " alt="" coords="120,31,311,57"/>
+</map>
+</td></tr>
+<tr><td><img src="inherit_graph_12.png" border="0" alt="" usemap="#kudu_1_1client_1_1KuduScanner"/>
+<map name="kudu_1_1client_1_1KuduScanner" id="kudu_1_1client_1_1KuduScanner">
+<area shape="rect" id="node1" href="classkudu_1_1client_1_1KuduScanner.html" title="This class is a representation of a single scan. " alt="" coords="5,5,180,32"/>
+</map>
+</td></tr>
+<tr><td><img src="inherit_graph_13.png" border="0" alt="" usemap="#kudu_1_1client_1_1KuduScanToken"/>
+<map name="kudu_1_1client_1_1KuduScanToken" id="kudu_1_1client_1_1KuduScanToken">
+<area shape="rect" id="node1" href="classkudu_1_1client_1_1KuduScanToken.html" title="A scan descriptor limited to a single physical contiguous location. " alt="" coords="5,5,199,32"/>
+</map>
+</td></tr>
+<tr><td><img src="inherit_graph_14.png" border="0" alt="" usemap="#kudu_1_1client_1_1KuduScanTokenBuilder"/>
+<map name="kudu_1_1client_1_1KuduScanTokenBuilder" id="kudu_1_1client_1_1KuduScanTokenBuilder">
+<area shape="rect" id="node1" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html" title="Builds scan tokens for a table. " alt="" coords="5,5,199,47"/>
+</map>
+</td></tr>
+<tr><td><img src="inherit_graph_15.png" border="0" alt="" usemap="#kudu_1_1client_1_1KuduSchema"/>
+<map name="kudu_1_1client_1_1KuduSchema" id="kudu_1_1client_1_1KuduSchema">
+<area shape="rect" id="node1" href="classkudu_1_1client_1_1KuduSchema.html" title="A representation of a table&#39;s schema. " alt="" coords="5,5,180,32"/>
+</map>
+</td></tr>
+<tr><td><img src="inherit_graph_16.png" border="0" alt="" usemap="#kudu_1_1client_1_1KuduSchemaBuilder"/>
+<map name="kudu_1_1client_1_1KuduSchemaBuilder" id="kudu_1_1client_1_1KuduSchemaBuilder">
+<area shape="rect" id="node1" href="classkudu_1_1client_1_1KuduSchemaBuilder.html" title="Builder API for constructing a KuduSchema object. " alt="" coords="5,5,180,47"/>
+</map>
+</td></tr>
+<tr><td><img src="inherit_graph_17.png" border="0" alt="" usemap="#kudu_1_1client_1_1KuduStatusCallback"/>
+<map name="kudu_1_1client_1_1KuduStatusCallback" id="kudu_1_1client_1_1KuduStatusCallback">
+<area shape="rect" id="node1" href="classkudu_1_1client_1_1KuduStatusCallback.html" title="The interface for all status callbacks. " alt="" coords="5,39,171,80"/>
+<area shape="rect" id="node2" href="classkudu_1_1client_1_1KuduStatusFunctionCallback.html" title="The status callback that invokes a function by pointer with a single argument. " alt="" coords="219,5,384,47"/>
+<area shape="rect" id="node3" href="classkudu_1_1client_1_1KuduStatusMemberCallback.html" title="The status callback that invokes a member function of an object. " alt="" coords="219,71,384,112"/>
+</map>
+</td></tr>
+<tr><td><img src="inherit_graph_18.png" border="0" alt="" usemap="#kudu_1_1client_1_1KuduTableAlterer"/>
+<map name="kudu_1_1client_1_1KuduTableAlterer" id="kudu_1_1client_1_1KuduTableAlterer">
+<area shape="rect" id="node1" href="classkudu_1_1client_1_1KuduTableAlterer.html" title="Alters an existing table based on the provided steps. " alt="" coords="5,5,203,32"/>
+</map>
+</td></tr>
+<tr><td><img src="inherit_graph_19.png" border="0" alt="" usemap="#kudu_1_1client_1_1KuduTableCreator"/>
+<map name="kudu_1_1client_1_1KuduTableCreator" id="kudu_1_1client_1_1KuduTableCreator">
+<area shape="rect" id="node1" href="classkudu_1_1client_1_1KuduTableCreator.html" title="A helper class to create a new table with the desired options. " alt="" coords="5,5,208,32"/>
+</map>
+</td></tr>
+<tr><td><img src="inherit_graph_20.png" border="0" alt="" usemap="#kudu_1_1client_1_1KuduTablet"/>
+<map name="kudu_1_1client_1_1KuduTablet" id="kudu_1_1client_1_1KuduTablet">
+<area shape="rect" id="node1" href="classkudu_1_1client_1_1KuduTablet.html" title="In&#45;memory representation of a remote tablet. " alt="" coords="5,5,168,32"/>
+</map>
+</td></tr>
+<tr><td><img src="inherit_graph_21.png" border="0" alt="" usemap="#kudu_1_1client_1_1KuduTabletServer"/>
+<map name="kudu_1_1client_1_1KuduTabletServer" id="kudu_1_1client_1_1KuduTabletServer">
+<area shape="rect" id="node1" href="classkudu_1_1client_1_1KuduTabletServer.html" title="In&#45;memory representation of a remote tablet server. " alt="" coords="5,5,168,47"/>
+</map>
+</td></tr>
+<tr><td><img src="inherit_graph_22.png" border="0" alt="" usemap="#kudu_1_1client_1_1KuduValue"/>
+<map name="kudu_1_1client_1_1KuduValue" id="kudu_1_1client_1_1KuduValue">
+<area shape="rect" id="node1" href="classkudu_1_1client_1_1KuduValue.html" title="A constant cell value with a specific type. " alt="" coords="5,5,165,32"/>
+</map>
+</td></tr>
+<tr><td><img src="inherit_graph_23.png" border="0" alt="" usemap="#kudu_1_1client_1_1KuduWriteOperation"/>
+<map name="kudu_1_1client_1_1KuduWriteOperation" id="kudu_1_1client_1_1KuduWriteOperation">
+<area shape="rect" id="node1" href="classkudu_1_1client_1_1KuduWriteOperation.html" title="A single&#45;row write operation to be sent to a Kudu table. " alt="" coords="5,81,220,108"/>
+<area shape="rect" id="node2" href="classkudu_1_1client_1_1KuduDelete.html" title="A single row delete to be sent to the cluster. " alt="" coords="270,5,435,32"/>
+<area shape="rect" id="node3" href="classkudu_1_1client_1_1KuduInsert.html" title="A single row insert to be sent to the cluster. " alt="" coords="273,56,433,83"/>
+<area shape="rect" id="node4" href="classkudu_1_1client_1_1KuduUpdate.html" title="A single row update to be sent to the cluster. " alt="" coords="268,107,437,133"/>
+<area shape="rect" id="node5" href="classkudu_1_1client_1_1KuduUpsert.html" title="A single row upsert to be sent to the cluster. " alt="" coords="269,157,436,184"/>
+</map>
+</td></tr>
+<tr><td><img src="inherit_graph_24.png" border="0" alt="" usemap="#kudu_1_1client_1_1ResourceMetrics"/>
+<map name="kudu_1_1client_1_1ResourceMetrics" id="kudu_1_1client_1_1ResourceMetrics">
+<area shape="rect" id="node1" href="classkudu_1_1client_1_1ResourceMetrics.html" title="A generic catalog of simple metrics. " alt="" coords="5,5,201,32"/>
+</map>
+</td></tr>
+<tr><td><img src="inherit_graph_25.png" border="0" alt="" usemap="#kudu_1_1internal__logging_1_1CerrLog"/>
+<map name="kudu_1_1internal__logging_1_1CerrLog" id="kudu_1_1internal__logging_1_1CerrLog">
+<area shape="rect" id="node1" href="classkudu_1_1internal__logging_1_1CerrLog.html" title="A helper for stderr log sink. " alt="" coords="5,5,153,47"/>
+</map>
+</td></tr>
+<tr><td><img src="inherit_graph_26.png" border="0" alt="" usemap="#kudu_1_1internal__logging_1_1NullLog"/>
+<map name="kudu_1_1internal__logging_1_1NullLog" id="kudu_1_1internal__logging_1_1NullLog">
+<area shape="rect" id="node1" href="classkudu_1_1internal__logging_1_1NullLog.html" title="A helper for the nil log sink. " alt="" coords="5,5,153,47"/>
+</map>
+</td></tr>
+<tr><td><img src="inherit_graph_27.png" border="0" alt="" usemap="#kudu_1_1MonoDelta"/>
+<map name="kudu_1_1MonoDelta" id="kudu_1_1MonoDelta">
+<area shape="rect" id="node1" href="classkudu_1_1MonoDelta.html" title="A representation of a time interval. " alt="" coords="5,5,127,32"/>
+</map>
+</td></tr>
+<tr><td><img src="inherit_graph_28.png" border="0" alt="" usemap="#kudu_1_1MonoTime"/>
+<map name="kudu_1_1MonoTime" id="kudu_1_1MonoTime">
+<area shape="rect" id="node1" href="classkudu_1_1MonoTime.html" title="Representation of a particular point in time. " alt="" coords="5,5,124,32"/>
+</map>
+</td></tr>
+<tr><td><img src="inherit_graph_29.png" border="0" alt="" usemap="#kudu_1_1Slice"/>
+<map name="kudu_1_1Slice" id="kudu_1_1Slice">
+<area shape="rect" id="node1" href="classkudu_1_1Slice.html" title="A wrapper around externally allocated data. " alt="" coords="5,5,92,32"/>
+</map>
+</td></tr>
+<tr><td><img src="inherit_graph_30.png" border="0" alt="" usemap="#kudu_1_1Slice_1_1Comparator"/>
+<map name="kudu_1_1Slice_1_1Comparator" id="kudu_1_1Slice_1_1Comparator">
+<area shape="rect" id="node1" href="structkudu_1_1Slice_1_1Comparator.html" title="Comparator struct, useful for ordered collections (like STL maps). " alt="" coords="5,5,168,32"/>
+</map>
+</td></tr>
+<tr><td><img src="inherit_graph_31.png" border="0" alt="" usemap="#kudu_1_1SliceMap_3_01T_01_4"/>
+<map name="kudu_1_1SliceMap_3_01T_01_4" id="kudu_1_1SliceMap_3_01T_01_4">
+<area shape="rect" id="node1" href="structkudu_1_1SliceMap.html" title="STL map whose keys are Slices. " alt="" coords="5,5,149,32"/>
+</map>
+</td></tr>
+<tr><td><img src="inherit_graph_32.png" border="0" alt="" usemap="#kudu_1_1Status"/>
+<map name="kudu_1_1Status" id="kudu_1_1Status">
+<area shape="rect" id="node1" href="classkudu_1_1Status.html" title="A representation of an operation&#39;s outcome. " alt="" coords="5,5,101,32"/>
+</map>
+</td></tr>
+<tr><td><img src="inherit_graph_33.png" border="0" alt="" usemap="#KuduPartialRow"/>
+<map name="KuduPartialRow" id="KuduPartialRow">
+<area shape="rect" id="node1" href="classKuduPartialRow.html" title="A row which may only contain values for a subset of the columns. " alt="" coords="5,5,121,32"/>
+</map>
+</td></tr>
+</table>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/jquery.js b/releases/1.4.0/cpp-client-api/jquery.js
new file mode 100644
index 0000000..d52a1c7
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/jquery.js
@@ -0,0 +1,68 @@
+/*
+ * jQuery JavaScript Library v1.7.1
+ * http://jquery.com/
+ *
+ * Copyright 2011, John Resig
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * Includes Sizzle.js
+ * http://sizzlejs.com/
+ * Copyright 2011, The Dojo Foundation
+ * Released under the MIT, BSD, and GPL Licenses.
+ *
+ * Date: Mon Nov 21 21:11:03 2011 -0500
+ */
+(function(bb,L){var av=bb.document,bu=bb.navigator,bl=bb.location;var b=(function(){var bF=function(b0,b1){return new bF.fn.init(b0,b1,bD)},bU=bb.jQuery,bH=bb.$,bD,bY=/^(?:[^#<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/,bM=/\S/,bI=/^\s+/,bE=/\s+$/,bA=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,bN=/^[\],:{}\s]*$/,bW=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,bP=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,bJ=/(?:^|:|,)(?:\s*\[)+/g,by=/(webkit)[ \/]([\w.]+)/,bR=/(opera)(?:.*version)?[ \/]([\w.]+)/,bQ=/(msie) ([\w.]+)/,bS=/(mozilla)(?:.*? rv:([\w.]+))?/,bB=/-([a-z]|[0-9])/ig,bZ=/^-ms-/,bT=function(b0,b1){return(b1+"").toUpperCase()},bX=bu.userAgent,bV,bC,e,bL=Object.prototype.toString,bG=Object.prototype.hasOwnProperty,bz=Array.prototype.push,bK=Array.prototype.slice,bO=String.prototype.trim,bv=Array.prototype.indexOf,bx={};bF.fn=bF.prototype={constructor:bF,init:function(b0,b4,b3){var b2,b5,b1,b6;if(!b0){return this}if(b0.nodeType){this.context=this[0]=b0;this.length=1;return this}if(b0==="body"&&!b4&&av.body){this.context=av;this[0]=av.body;this.selector=b0;this.length=1;return this}if(typeof b0==="string"){if(b0.charAt(0)==="<"&&b0.charAt(b0.length-1)===">"&&b0.length>=3){b2=[null,b0,null]}else{b2=bY.exec(b0)}if(b2&&(b2[1]||!b4)){if(b2[1]){b4=b4 instanceof bF?b4[0]:b4;b6=(b4?b4.ownerDocument||b4:av);b1=bA.exec(b0);if(b1){if(bF.isPlainObject(b4)){b0=[av.createElement(b1[1])];bF.fn.attr.call(b0,b4,true)}else{b0=[b6.createElement(b1[1])]}}else{b1=bF.buildFragment([b2[1]],[b6]);b0=(b1.cacheable?bF.clone(b1.fragment):b1.fragment).childNodes}return bF.merge(this,b0)}else{b5=av.getElementById(b2[2]);if(b5&&b5.parentNode){if(b5.id!==b2[2]){return b3.find(b0)}this.length=1;this[0]=b5}this.context=av;this.selector=b0;return this}}else{if(!b4||b4.jquery){return(b4||b3).find(b0)}else{return this.constructor(b4).find(b0)}}}else{if(bF.isFunction(b0)){return b3.ready(b0)}}if(b0.selector!==L){this.selector=b0.selector;this.context=b0.context}return bF.makeArray(b0,this)},selector:"",jquery:"1.7.1",length:0,size:function(){return this.length},toArray:function(){return bK.call(this,0)},get:function(b0){return b0==null?this.toArray():(b0<0?this[this.length+b0]:this[b0])},pushStack:function(b1,b3,b0){var b2=this.constructor();if(bF.isArray(b1)){bz.apply(b2,b1)}else{bF.merge(b2,b1)}b2.prevObject=this;b2.context=this.context;if(b3==="find"){b2.selector=this.selector+(this.selector?" ":"")+b0}else{if(b3){b2.selector=this.selector+"."+b3+"("+b0+")"}}return b2},each:function(b1,b0){return bF.each(this,b1,b0)},ready:function(b0){bF.bindReady();bC.add(b0);return this},eq:function(b0){b0=+b0;return b0===-1?this.slice(b0):this.slice(b0,b0+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(bK.apply(this,arguments),"slice",bK.call(arguments).join(","))},map:function(b0){return this.pushStack(bF.map(this,function(b2,b1){return b0.call(b2,b1,b2)}))},end:function(){return this.prevObject||this.constructor(null)},push:bz,sort:[].sort,splice:[].splice};bF.fn.init.prototype=bF.fn;bF.extend=bF.fn.extend=function(){var b9,b2,b0,b1,b6,b7,b5=arguments[0]||{},b4=1,b3=arguments.length,b8=false;if(typeof b5==="boolean"){b8=b5;b5=arguments[1]||{};b4=2}if(typeof b5!=="object"&&!bF.isFunction(b5)){b5={}}if(b3===b4){b5=this;--b4}for(;b4<b3;b4++){if((b9=arguments[b4])!=null){for(b2 in b9){b0=b5[b2];b1=b9[b2];if(b5===b1){continue}if(b8&&b1&&(bF.isPlainObject(b1)||(b6=bF.isArray(b1)))){if(b6){b6=false;b7=b0&&bF.isArray(b0)?b0:[]}else{b7=b0&&bF.isPlainObject(b0)?b0:{}}b5[b2]=bF.extend(b8,b7,b1)}else{if(b1!==L){b5[b2]=b1}}}}}return b5};bF.extend({noConflict:function(b0){if(bb.$===bF){bb.$=bH}if(b0&&bb.jQuery===bF){bb.jQuery=bU}return bF},isReady:false,readyWait:1,holdReady:function(b0){if(b0){bF.readyWait++}else{bF.ready(true)}},ready:function(b0){if((b0===true&&!--bF.readyWait)||(b0!==true&&!bF.isReady)){if(!av.body){return setTimeout(bF.ready,1)}bF.isReady=true;if(b0!==true&&--bF.readyWait>0){return}bC.fireWith(av,[bF]);if(bF.fn.trigger){bF(av).trigger("ready").off("ready")}}},bindReady:function(){if(bC){return}bC=bF.Callbacks("once memory");if(av.readyState==="complete"){return setTimeout(bF.ready,1)}if(av.addEventListener){av.addEventListener("DOMContentLoaded",e,false);bb.addEventListener("load",bF.ready,false)}else{if(av.attachEvent){av.attachEvent("onreadystatechange",e);bb.attachEvent("onload",bF.ready);var b0=false;try{b0=bb.frameElement==null}catch(b1){}if(av.documentElement.doScroll&&b0){bw()}}}},isFunction:function(b0){return bF.type(b0)==="function"},isArray:Array.isArray||function(b0){return bF.type(b0)==="array"},isWindow:function(b0){return b0&&typeof b0==="object"&&"setInterval" in b0},isNumeric:function(b0){return !isNaN(parseFloat(b0))&&isFinite(b0)},type:function(b0){return b0==null?String(b0):bx[bL.call(b0)]||"object"},isPlainObject:function(b2){if(!b2||bF.type(b2)!=="object"||b2.nodeType||bF.isWindow(b2)){return false}try{if(b2.constructor&&!bG.call(b2,"constructor")&&!bG.call(b2.constructor.prototype,"isPrototypeOf")){return false}}catch(b1){return false}var b0;for(b0 in b2){}return b0===L||bG.call(b2,b0)},isEmptyObject:function(b1){for(var b0 in b1){return false}return true},error:function(b0){throw new Error(b0)},parseJSON:function(b0){if(typeof b0!=="string"||!b0){return null}b0=bF.trim(b0);if(bb.JSON&&bb.JSON.parse){return bb.JSON.parse(b0)}if(bN.test(b0.replace(bW,"@").replace(bP,"]").replace(bJ,""))){return(new Function("return "+b0))()}bF.error("Invalid JSON: "+b0)},parseXML:function(b2){var b0,b1;try{if(bb.DOMParser){b1=new DOMParser();b0=b1.parseFromString(b2,"text/xml")}else{b0=new ActiveXObject("Microsoft.XMLDOM");b0.async="false";b0.loadXML(b2)}}catch(b3){b0=L}if(!b0||!b0.documentElement||b0.getElementsByTagName("parsererror").length){bF.error("Invalid XML: "+b2)}return b0},noop:function(){},globalEval:function(b0){if(b0&&bM.test(b0)){(bb.execScript||function(b1){bb["eval"].call(bb,b1)})(b0)}},camelCase:function(b0){return b0.replace(bZ,"ms-").replace(bB,bT)},nodeName:function(b1,b0){return b1.nodeName&&b1.nodeName.toUpperCase()===b0.toUpperCase()},each:function(b3,b6,b2){var b1,b4=0,b5=b3.length,b0=b5===L||bF.isFunction(b3);if(b2){if(b0){for(b1 in b3){if(b6.apply(b3[b1],b2)===false){break}}}else{for(;b4<b5;){if(b6.apply(b3[b4++],b2)===false){break}}}}else{if(b0){for(b1 in b3){if(b6.call(b3[b1],b1,b3[b1])===false){break}}}else{for(;b4<b5;){if(b6.call(b3[b4],b4,b3[b4++])===false){break}}}}return b3},trim:bO?function(b0){return b0==null?"":bO.call(b0)}:function(b0){return b0==null?"":b0.toString().replace(bI,"").replace(bE,"")},makeArray:function(b3,b1){var b0=b1||[];if(b3!=null){var b2=bF.type(b3);if(b3.length==null||b2==="string"||b2==="function"||b2==="regexp"||bF.isWindow(b3)){bz.call(b0,b3)}else{bF.merge(b0,b3)}}return b0},inArray:function(b2,b3,b1){var b0;if(b3){if(bv){return bv.call(b3,b2,b1)}b0=b3.length;b1=b1?b1<0?Math.max(0,b0+b1):b1:0;for(;b1<b0;b1++){if(b1 in b3&&b3[b1]===b2){return b1}}}return -1},merge:function(b4,b2){var b3=b4.length,b1=0;if(typeof b2.length==="number"){for(var b0=b2.length;b1<b0;b1++){b4[b3++]=b2[b1]}}else{while(b2[b1]!==L){b4[b3++]=b2[b1++]}}b4.length=b3;return b4},grep:function(b1,b6,b0){var b2=[],b5;b0=!!b0;for(var b3=0,b4=b1.length;b3<b4;b3++){b5=!!b6(b1[b3],b3);if(b0!==b5){b2.push(b1[b3])}}return b2},map:function(b0,b7,b8){var b5,b6,b4=[],b2=0,b1=b0.length,b3=b0 instanceof bF||b1!==L&&typeof b1==="number"&&((b1>0&&b0[0]&&b0[b1-1])||b1===0||bF.isArray(b0));if(b3){for(;b2<b1;b2++){b5=b7(b0[b2],b2,b8);if(b5!=null){b4[b4.length]=b5}}}else{for(b6 in b0){b5=b7(b0[b6],b6,b8);if(b5!=null){b4[b4.length]=b5}}}return b4.concat.apply([],b4)},guid:1,proxy:function(b4,b3){if(typeof b3==="string"){var b2=b4[b3];b3=b4;b4=b2}if(!bF.isFunction(b4)){return L}var b0=bK.call(arguments,2),b1=function(){return b4.apply(b3,b0.concat(bK.call(arguments)))};b1.guid=b4.guid=b4.guid||b1.guid||bF.guid++;return b1},access:function(b0,b8,b6,b2,b5,b7){var b1=b0.length;if(typeof b8==="object"){for(var b3 in b8){bF.access(b0,b3,b8[b3],b2,b5,b6)}return b0}if(b6!==L){b2=!b7&&b2&&bF.isFunction(b6);for(var b4=0;b4<b1;b4++){b5(b0[b4],b8,b2?b6.call(b0[b4],b4,b5(b0[b4],b8)):b6,b7)}return b0}return b1?b5(b0[0],b8):L},now:function(){return(new Date()).getTime()},uaMatch:function(b1){b1=b1.toLowerCase();var b0=by.exec(b1)||bR.exec(b1)||bQ.exec(b1)||b1.indexOf("compatible")<0&&bS.exec(b1)||[];return{browser:b0[1]||"",version:b0[2]||"0"}},sub:function(){function b0(b3,b4){return new b0.fn.init(b3,b4)}bF.extend(true,b0,this);b0.superclass=this;b0.fn=b0.prototype=this();b0.fn.constructor=b0;b0.sub=this.sub;b0.fn.init=function b2(b3,b4){if(b4&&b4 instanceof bF&&!(b4 instanceof b0)){b4=b0(b4)}return bF.fn.init.call(this,b3,b4,b1)};b0.fn.init.prototype=b0.fn;var b1=b0(av);return b0},browser:{}});bF.each("Boolean Number String Function Array Date RegExp Object".split(" "),function(b1,b0){bx["[object "+b0+"]"]=b0.toLowerCase()});bV=bF.uaMatch(bX);if(bV.browser){bF.browser[bV.browser]=true;bF.browser.version=bV.version}if(bF.browser.webkit){bF.browser.safari=true}if(bM.test("\xA0")){bI=/^[\s\xA0]+/;bE=/[\s\xA0]+$/}bD=bF(av);if(av.addEventListener){e=function(){av.removeEventListener("DOMContentLoaded",e,false);bF.ready()}}else{if(av.attachEvent){e=function(){if(av.readyState==="complete"){av.detachEvent("onreadystatechange",e);bF.ready()}}}}function bw(){if(bF.isReady){return}try{av.documentElement.doScroll("left")}catch(b0){setTimeout(bw,1);return}bF.ready()}return bF})();var a2={};function X(e){var bv=a2[e]={},bw,bx;e=e.split(/\s+/);for(bw=0,bx=e.length;bw<bx;bw++){bv[e[bw]]=true}return bv}b.Callbacks=function(bw){bw=bw?(a2[bw]||X(bw)):{};var bB=[],bC=[],bx,by,bv,bz,bA,bE=function(bF){var bG,bJ,bI,bH,bK;for(bG=0,bJ=bF.length;bG<bJ;bG++){bI=bF[bG];bH=b.type(bI);if(bH==="array"){bE(bI)}else{if(bH==="function"){if(!bw.unique||!bD.has(bI)){bB.push(bI)}}}}},e=function(bG,bF){bF=bF||[];bx=!bw.memory||[bG,bF];by=true;bA=bv||0;bv=0;bz=bB.length;for(;bB&&bA<bz;bA++){if(bB[bA].apply(bG,bF)===false&&bw.stopOnFalse){bx=true;break}}by=false;if(bB){if(!bw.once){if(bC&&bC.length){bx=bC.shift();bD.fireWith(bx[0],bx[1])}}else{if(bx===true){bD.disable()}else{bB=[]}}}},bD={add:function(){if(bB){var bF=bB.length;bE(arguments);if(by){bz=bB.length}else{if(bx&&bx!==true){bv=bF;e(bx[0],bx[1])}}}return this},remove:function(){if(bB){var bF=arguments,bH=0,bI=bF.length;for(;bH<bI;bH++){for(var bG=0;bG<bB.length;bG++){if(bF[bH]===bB[bG]){if(by){if(bG<=bz){bz--;if(bG<=bA){bA--}}}bB.splice(bG--,1);if(bw.unique){break}}}}}return this},has:function(bG){if(bB){var bF=0,bH=bB.length;for(;bF<bH;bF++){if(bG===bB[bF]){return true}}}return false},empty:function(){bB=[];return this},disable:function(){bB=bC=bx=L;return this},disabled:function(){return !bB},lock:function(){bC=L;if(!bx||bx===true){bD.disable()}return this},locked:function(){return !bC},fireWith:function(bG,bF){if(bC){if(by){if(!bw.once){bC.push([bG,bF])}}else{if(!(bw.once&&bx)){e(bG,bF)}}}return this},fire:function(){bD.fireWith(this,arguments);return this},fired:function(){return !!bx}};return bD};var aJ=[].slice;b.extend({Deferred:function(by){var bx=b.Callbacks("once memory"),bw=b.Callbacks("once memory"),bv=b.Callbacks("memory"),e="pending",bA={resolve:bx,reject:bw,notify:bv},bC={done:bx.add,fail:bw.add,progress:bv.add,state:function(){return e},isResolved:bx.fired,isRejected:bw.fired,then:function(bE,bD,bF){bB.done(bE).fail(bD).progress(bF);return this},always:function(){bB.done.apply(bB,arguments).fail.apply(bB,arguments);return this},pipe:function(bF,bE,bD){return b.Deferred(function(bG){b.each({done:[bF,"resolve"],fail:[bE,"reject"],progress:[bD,"notify"]},function(bI,bL){var bH=bL[0],bK=bL[1],bJ;if(b.isFunction(bH)){bB[bI](function(){bJ=bH.apply(this,arguments);if(bJ&&b.isFunction(bJ.promise)){bJ.promise().then(bG.resolve,bG.reject,bG.notify)}else{bG[bK+"With"](this===bB?bG:this,[bJ])}})}else{bB[bI](bG[bK])}})}).promise()},promise:function(bE){if(bE==null){bE=bC}else{for(var bD in bC){bE[bD]=bC[bD]}}return bE}},bB=bC.promise({}),bz;for(bz in bA){bB[bz]=bA[bz].fire;bB[bz+"With"]=bA[bz].fireWith}bB.done(function(){e="resolved"},bw.disable,bv.lock).fail(function(){e="rejected"},bx.disable,bv.lock);if(by){by.call(bB,bB)}return bB},when:function(bA){var bx=aJ.call(arguments,0),bv=0,e=bx.length,bB=new Array(e),bw=e,by=e,bC=e<=1&&bA&&b.isFunction(bA.promise)?bA:b.Deferred(),bE=bC.promise();function bD(bF){return function(bG){bx[bF]=arguments.length>1?aJ.call(arguments,0):bG;if(!(--bw)){bC.resolveWith(bC,bx)}}}function bz(bF){return function(bG){bB[bF]=arguments.length>1?aJ.call(arguments,0):bG;bC.notifyWith(bE,bB)}}if(e>1){for(;bv<e;bv++){if(bx[bv]&&bx[bv].promise&&b.isFunction(bx[bv].promise)){bx[bv].promise().then(bD(bv),bC.reject,bz(bv))}else{--bw}}if(!bw){bC.resolveWith(bC,bx)}}else{if(bC!==bA){bC.resolveWith(bC,e?[bA]:[])}}return bE}});b.support=(function(){var bJ,bI,bF,bG,bx,bE,bA,bD,bz,bK,bB,by,bw,bv=av.createElement("div"),bH=av.documentElement;bv.setAttribute("className","t");bv.innerHTML="   <link/><table></table><a href='/a' style='top:1px;float:left;opacity:.55;'>a</a><input type='checkbox'/>";bI=bv.getElementsByTagName("*");bF=bv.getElementsByTagName("a")[0];if(!bI||!bI.length||!bF){return{}}bG=av.createElement("select");bx=bG.appendChild(av.createElement("option"));bE=bv.getElementsByTagName("input")[0];bJ={leadingWhitespace:(bv.firstChild.nodeType===3),tbody:!bv.getElementsByTagName("tbody").length,htmlSerialize:!!bv.getElementsByTagName("link").length,style:/top/.test(bF.getAttribute("style")),hrefNormalized:(bF.getAttribute("href")==="/a"),opacity:/^0.55/.test(bF.style.opacity),cssFloat:!!bF.style.cssFloat,checkOn:(bE.value==="on"),optSelected:bx.selected,getSetAttribute:bv.className!=="t",enctype:!!av.createElement("form").enctype,html5Clone:av.createElement("nav").cloneNode(true).outerHTML!=="<:nav></:nav>",submitBubbles:true,changeBubbles:true,focusinBubbles:false,deleteExpando:true,noCloneEvent:true,inlineBlockNeedsLayout:false,shrinkWrapBlocks:false,reliableMarginRight:true};bE.checked=true;bJ.noCloneChecked=bE.cloneNode(true).checked;bG.disabled=true;bJ.optDisabled=!bx.disabled;try{delete bv.test}catch(bC){bJ.deleteExpando=false}if(!bv.addEventListener&&bv.attachEvent&&bv.fireEvent){bv.attachEvent("onclick",function(){bJ.noCloneEvent=false});bv.cloneNode(true).fireEvent("onclick")}bE=av.createElement("input");bE.value="t";bE.setAttribute("type","radio");bJ.radioValue=bE.value==="t";bE.setAttribute("checked","checked");bv.appendChild(bE);bD=av.createDocumentFragment();bD.appendChild(bv.lastChild);bJ.checkClone=bD.cloneNode(true).cloneNode(true).lastChild.checked;bJ.appendChecked=bE.checked;bD.removeChild(bE);bD.appendChild(bv);bv.innerHTML="";if(bb.getComputedStyle){bA=av.createElement("div");bA.style.width="0";bA.style.marginRight="0";bv.style.width="2px";bv.appendChild(bA);bJ.reliableMarginRight=(parseInt((bb.getComputedStyle(bA,null)||{marginRight:0}).marginRight,10)||0)===0}if(bv.attachEvent){for(by in {submit:1,change:1,focusin:1}){bB="on"+by;bw=(bB in bv);if(!bw){bv.setAttribute(bB,"return;");bw=(typeof bv[bB]==="function")}bJ[by+"Bubbles"]=bw}}bD.removeChild(bv);bD=bG=bx=bA=bv=bE=null;b(function(){var bM,bU,bV,bT,bN,bO,bL,bS,bR,e,bP,bQ=av.getElementsByTagName("body")[0];if(!bQ){return}bL=1;bS="position:absolute;top:0;left:0;width:1px;height:1px;margin:0;";bR="visibility:hidden;border:0;";e="style='"+bS+"border:5px solid #000;padding:0;'";bP="<div "+e+"><div></div></div><table "+e+" cellpadding='0' cellspacing='0'><tr><td></td></tr></table>";bM=av.createElement("div");bM.style.cssText=bR+"width:0;height:0;position:static;top:0;margin-top:"+bL+"px";bQ.insertBefore(bM,bQ.firstChild);bv=av.createElement("div");bM.appendChild(bv);bv.innerHTML="<table><tr><td style='padding:0;border:0;display:none'></td><td>t</td></tr></table>";bz=bv.getElementsByTagName("td");bw=(bz[0].offsetHeight===0);bz[0].style.display="";bz[1].style.display="none";bJ.reliableHiddenOffsets=bw&&(bz[0].offsetHeight===0);bv.innerHTML="";bv.style.width=bv.style.paddingLeft="1px";b.boxModel=bJ.boxModel=bv.offsetWidth===2;if(typeof bv.style.zoom!=="undefined"){bv.style.display="inline";bv.style.zoom=1;bJ.inlineBlockNeedsLayout=(bv.offsetWidth===2);bv.style.display="";bv.innerHTML="<div style='width:4px;'></div>";bJ.shrinkWrapBlocks=(bv.offsetWidth!==2)}bv.style.cssText=bS+bR;bv.innerHTML=bP;bU=bv.firstChild;bV=bU.firstChild;bN=bU.nextSibling.firstChild.firstChild;bO={doesNotAddBorder:(bV.offsetTop!==5),doesAddBorderForTableAndCells:(bN.offsetTop===5)};bV.style.position="fixed";bV.style.top="20px";bO.fixedPosition=(bV.offsetTop===20||bV.offsetTop===15);bV.style.position=bV.style.top="";bU.style.overflow="hidden";bU.style.position="relative";bO.subtractsBorderForOverflowNotVisible=(bV.offsetTop===-5);bO.doesNotIncludeMarginInBodyOffset=(bQ.offsetTop!==bL);bQ.removeChild(bM);bv=bM=null;b.extend(bJ,bO)});return bJ})();var aS=/^(?:\{.*\}|\[.*\])$/,aA=/([A-Z])/g;b.extend({cache:{},uuid:0,expando:"jQuery"+(b.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:true,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:true},hasData:function(e){e=e.nodeType?b.cache[e[b.expando]]:e[b.expando];return !!e&&!S(e)},data:function(bx,bv,bz,by){if(!b.acceptData(bx)){return}var bG,bA,bD,bE=b.expando,bC=typeof bv==="string",bF=bx.nodeType,e=bF?b.cache:bx,bw=bF?bx[bE]:bx[bE]&&bE,bB=bv==="events";if((!bw||!e[bw]||(!bB&&!by&&!e[bw].data))&&bC&&bz===L){return}if(!bw){if(bF){bx[bE]=bw=++b.uuid}else{bw=bE}}if(!e[bw]){e[bw]={};if(!bF){e[bw].toJSON=b.noop}}if(typeof bv==="object"||typeof bv==="function"){if(by){e[bw]=b.extend(e[bw],bv)}else{e[bw].data=b.extend(e[bw].data,bv)}}bG=bA=e[bw];if(!by){if(!bA.data){bA.data={}}bA=bA.data}if(bz!==L){bA[b.camelCase(bv)]=bz}if(bB&&!bA[bv]){return bG.events}if(bC){bD=bA[bv];if(bD==null){bD=bA[b.camelCase(bv)]}}else{bD=bA}return bD},removeData:function(bx,bv,by){if(!b.acceptData(bx)){return}var bB,bA,bz,bC=b.expando,bD=bx.nodeType,e=bD?b.cache:bx,bw=bD?bx[bC]:bC;if(!e[bw]){return}if(bv){bB=by?e[bw]:e[bw].data;if(bB){if(!b.isArray(bv)){if(bv in bB){bv=[bv]}else{bv=b.camelCase(bv);if(bv in bB){bv=[bv]}else{bv=bv.split(" ")}}}for(bA=0,bz=bv.length;bA<bz;bA++){delete bB[bv[bA]]}if(!(by?S:b.isEmptyObject)(bB)){return}}}if(!by){delete e[bw].data;if(!S(e[bw])){return}}if(b.support.deleteExpando||!e.setInterval){delete e[bw]}else{e[bw]=null}if(bD){if(b.support.deleteExpando){delete bx[bC]}else{if(bx.removeAttribute){bx.removeAttribute(bC)}else{bx[bC]=null}}}},_data:function(bv,e,bw){return b.data(bv,e,bw,true)},acceptData:function(bv){if(bv.nodeName){var e=b.noData[bv.nodeName.toLowerCase()];if(e){return !(e===true||bv.getAttribute("classid")!==e)}}return true}});b.fn.extend({data:function(by,bA){var bB,e,bw,bz=null;if(typeof by==="undefined"){if(this.length){bz=b.data(this[0]);if(this[0].nodeType===1&&!b._data(this[0],"parsedAttrs")){e=this[0].attributes;for(var bx=0,bv=e.length;bx<bv;bx++){bw=e[bx].name;if(bw.indexOf("data-")===0){bw=b.camelCase(bw.substring(5));a5(this[0],bw,bz[bw])}}b._data(this[0],"parsedAttrs",true)}}return bz}else{if(typeof by==="object"){return this.each(function(){b.data(this,by)})}}bB=by.split(".");bB[1]=bB[1]?"."+bB[1]:"";if(bA===L){bz=this.triggerHandler("getData"+bB[1]+"!",[bB[0]]);if(bz===L&&this.length){bz=b.data(this[0],by);bz=a5(this[0],by,bz)}return bz===L&&bB[1]?this.data(bB[0]):bz}else{return this.each(function(){var bC=b(this),bD=[bB[0],bA];bC.triggerHandler("setData"+bB[1]+"!",bD);b.data(this,by,bA);bC.triggerHandler("changeData"+bB[1]+"!",bD)})}},removeData:function(e){return this.each(function(){b.removeData(this,e)})}});function a5(bx,bw,by){if(by===L&&bx.nodeType===1){var bv="data-"+bw.replace(aA,"-$1").toLowerCase();by=bx.getAttribute(bv);if(typeof by==="string"){try{by=by==="true"?true:by==="false"?false:by==="null"?null:b.isNumeric(by)?parseFloat(by):aS.test(by)?b.parseJSON(by):by}catch(bz){}b.data(bx,bw,by)}else{by=L}}return by}function S(bv){for(var e in bv){if(e==="data"&&b.isEmptyObject(bv[e])){continue}if(e!=="toJSON"){return false}}return true}function bi(by,bx,bA){var bw=bx+"defer",bv=bx+"queue",e=bx+"mark",bz=b._data(by,bw);if(bz&&(bA==="queue"||!b._data(by,bv))&&(bA==="mark"||!b._data(by,e))){setTimeout(function(){if(!b._data(by,bv)&&!b._data(by,e)){b.removeData(by,bw,true);bz.fire()}},0)}}b.extend({_mark:function(bv,e){if(bv){e=(e||"fx")+"mark";b._data(bv,e,(b._data(bv,e)||0)+1)}},_unmark:function(by,bx,bv){if(by!==true){bv=bx;bx=by;by=false}if(bx){bv=bv||"fx";var e=bv+"mark",bw=by?0:((b._data(bx,e)||1)-1);if(bw){b._data(bx,e,bw)}else{b.removeData(bx,e,true);bi(bx,bv,"mark")}}},queue:function(bv,e,bx){var bw;if(bv){e=(e||"fx")+"queue";bw=b._data(bv,e);if(bx){if(!bw||b.isArray(bx)){bw=b._data(bv,e,b.makeArray(bx))}else{bw.push(bx)}}return bw||[]}},dequeue:function(by,bx){bx=bx||"fx";var bv=b.queue(by,bx),bw=bv.shift(),e={};if(bw==="inprogress"){bw=bv.shift()}if(bw){if(bx==="fx"){bv.unshift("inprogress")}b._data(by,bx+".run",e);bw.call(by,function(){b.dequeue(by,bx)},e)}if(!bv.length){b.removeData(by,bx+"queue "+bx+".run",true);bi(by,bx,"queue")}}});b.fn.extend({queue:function(e,bv){if(typeof e!=="string"){bv=e;e="fx"}if(bv===L){return b.queue(this[0],e)}return this.each(function(){var bw=b.queue(this,e,bv);if(e==="fx"&&bw[0]!=="inprogress"){b.dequeue(this,e)}})},dequeue:function(e){return this.each(function(){b.dequeue(this,e)})},delay:function(bv,e){bv=b.fx?b.fx.speeds[bv]||bv:bv;e=e||"fx";return this.queue(e,function(bx,bw){var by=setTimeout(bx,bv);bw.stop=function(){clearTimeout(by)}})},clearQueue:function(e){return this.queue(e||"fx",[])},promise:function(bD,bw){if(typeof bD!=="string"){bw=bD;bD=L}bD=bD||"fx";var e=b.Deferred(),bv=this,by=bv.length,bB=1,bz=bD+"defer",bA=bD+"queue",bC=bD+"mark",bx;function bE(){if(!(--bB)){e.resolveWith(bv,[bv])}}while(by--){if((bx=b.data(bv[by],bz,L,true)||(b.data(bv[by],bA,L,true)||b.data(bv[by],bC,L,true))&&b.data(bv[by],bz,b.Callbacks("once memory"),true))){bB++;bx.add(bE)}}bE();return e.promise()}});var aP=/[\n\t\r]/g,af=/\s+/,aU=/\r/g,g=/^(?:button|input)$/i,D=/^(?:button|input|object|select|textarea)$/i,l=/^a(?:rea)?$/i,ao=/^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i,F=b.support.getSetAttribute,be,aY,aF;b.fn.extend({attr:function(e,bv){return b.access(this,e,bv,true,b.attr)},removeAttr:function(e){return this.each(function(){b.removeAttr(this,e)})},prop:function(e,bv){return b.access(this,e,bv,true,b.prop)},removeProp:function(e){e=b.propFix[e]||e;return this.each(function(){try{this[e]=L;delete this[e]}catch(bv){}})},addClass:function(by){var bA,bw,bv,bx,bz,bB,e;if(b.isFunction(by)){return this.each(function(bC){b(this).addClass(by.call(this,bC,this.className))})}if(by&&typeof by==="string"){bA=by.split(af);for(bw=0,bv=this.length;bw<bv;bw++){bx=this[bw];if(bx.nodeType===1){if(!bx.className&&bA.length===1){bx.className=by}else{bz=" "+bx.className+" ";for(bB=0,e=bA.length;bB<e;bB++){if(!~bz.indexOf(" "+bA[bB]+" ")){bz+=bA[bB]+" "}}bx.className=b.trim(bz)}}}}return this},removeClass:function(bz){var bA,bw,bv,by,bx,bB,e;if(b.isFunction(bz)){return this.each(function(bC){b(this).removeClass(bz.call(this,bC,this.className))})}if((bz&&typeof bz==="string")||bz===L){bA=(bz||"").split(af);for(bw=0,bv=this.length;bw<bv;bw++){by=this[bw];if(by.nodeType===1&&by.className){if(bz){bx=(" "+by.className+" ").replace(aP," ");for(bB=0,e=bA.length;bB<e;bB++){bx=bx.replace(" "+bA[bB]+" "," ")}by.className=b.trim(bx)}else{by.className=""}}}}return this},toggleClass:function(bx,bv){var bw=typeof bx,e=typeof bv==="boolean";if(b.isFunction(bx)){return this.each(function(by){b(this).toggleClass(bx.call(this,by,this.className,bv),bv)})}return this.each(function(){if(bw==="string"){var bA,bz=0,by=b(this),bB=bv,bC=bx.split(af);while((bA=bC[bz++])){bB=e?bB:!by.hasClass(bA);by[bB?"addClass":"removeClass"](bA)}}else{if(bw==="undefined"||bw==="boolean"){if(this.className){b._data(this,"__className__",this.className)}this.className=this.className||bx===false?"":b._data(this,"__className__")||""}}})},hasClass:function(e){var bx=" "+e+" ",bw=0,bv=this.length;for(;bw<bv;bw++){if(this[bw].nodeType===1&&(" "+this[bw].className+" ").replace(aP," ").indexOf(bx)>-1){return true}}return false},val:function(bx){var e,bv,by,bw=this[0];if(!arguments.length){if(bw){e=b.valHooks[bw.nodeName.toLowerCase()]||b.valHooks[bw.type];if(e&&"get" in e&&(bv=e.get(bw,"value"))!==L){return bv}bv=bw.value;return typeof bv==="string"?bv.replace(aU,""):bv==null?"":bv}return}by=b.isFunction(bx);return this.each(function(bA){var bz=b(this),bB;if(this.nodeType!==1){return}if(by){bB=bx.call(this,bA,bz.val())}else{bB=bx}if(bB==null){bB=""}else{if(typeof bB==="number"){bB+=""}else{if(b.isArray(bB)){bB=b.map(bB,function(bC){return bC==null?"":bC+""})}}}e=b.valHooks[this.nodeName.toLowerCase()]||b.valHooks[this.type];if(!e||!("set" in e)||e.set(this,bB,"value")===L){this.value=bB}})}});b.extend({valHooks:{option:{get:function(e){var bv=e.attributes.value;return !bv||bv.specified?e.value:e.text}},select:{get:function(e){var bA,bv,bz,bx,by=e.selectedIndex,bB=[],bC=e.options,bw=e.type==="select-one";if(by<0){return null}bv=bw?by:0;bz=bw?by+1:bC.length;for(;bv<bz;bv++){bx=bC[bv];if(bx.selected&&(b.support.optDisabled?!bx.disabled:bx.getAttribute("disabled")===null)&&(!bx.parentNode.disabled||!b.nodeName(bx.parentNode,"optgroup"))){bA=b(bx).val();if(bw){return bA}bB.push(bA)}}if(bw&&!bB.length&&bC.length){return b(bC[by]).val()}return bB},set:function(bv,bw){var e=b.makeArray(bw);b(bv).find("option").each(function(){this.selected=b.inArray(b(this).val(),e)>=0});if(!e.length){bv.selectedIndex=-1}return e}}},attrFn:{val:true,css:true,html:true,text:true,data:true,width:true,height:true,offset:true},attr:function(bA,bx,bB,bz){var bw,e,by,bv=bA.nodeType;if(!bA||bv===3||bv===8||bv===2){return}if(bz&&bx in b.attrFn){return b(bA)[bx](bB)}if(typeof bA.getAttribute==="undefined"){return b.prop(bA,bx,bB)}by=bv!==1||!b.isXMLDoc(bA);if(by){bx=bx.toLowerCase();e=b.attrHooks[bx]||(ao.test(bx)?aY:be)}if(bB!==L){if(bB===null){b.removeAttr(bA,bx);return}else{if(e&&"set" in e&&by&&(bw=e.set(bA,bB,bx))!==L){return bw}else{bA.setAttribute(bx,""+bB);return bB}}}else{if(e&&"get" in e&&by&&(bw=e.get(bA,bx))!==null){return bw}else{bw=bA.getAttribute(bx);return bw===null?L:bw}}},removeAttr:function(bx,bz){var by,bA,bv,e,bw=0;if(bz&&bx.nodeType===1){bA=bz.toLowerCase().split(af);e=bA.length;for(;bw<e;bw++){bv=bA[bw];if(bv){by=b.propFix[bv]||bv;b.attr(bx,bv,"");bx.removeAttribute(F?bv:by);if(ao.test(bv)&&by in bx){bx[by]=false}}}}},attrHooks:{type:{set:function(e,bv){if(g.test(e.nodeName)&&e.parentNode){b.error("type property can't be changed")}else{if(!b.support.radioValue&&bv==="radio"&&b.nodeName(e,"input")){var bw=e.value;e.setAttribute("type",bv);if(bw){e.value=bw}return bv}}}},value:{get:function(bv,e){if(be&&b.nodeName(bv,"button")){return be.get(bv,e)}return e in bv?bv.value:null},set:function(bv,bw,e){if(be&&b.nodeName(bv,"button")){return be.set(bv,bw,e)}bv.value=bw}}},propFix:{tabindex:"tabIndex",readonly:"readOnly","for":"htmlFor","class":"className",maxlength:"maxLength",cellspacing:"cellSpacing",cellpadding:"cellPadding",rowspan:"rowSpan",colspan:"colSpan",usemap:"useMap",frameborder:"frameBorder",contenteditable:"contentEditable"},prop:function(bz,bx,bA){var bw,e,by,bv=bz.nodeType;if(!bz||bv===3||bv===8||bv===2){return}by=bv!==1||!b.isXMLDoc(bz);if(by){bx=b.propFix[bx]||bx;e=b.propHooks[bx]}if(bA!==L){if(e&&"set" in e&&(bw=e.set(bz,bA,bx))!==L){return bw}else{return(bz[bx]=bA)}}else{if(e&&"get" in e&&(bw=e.get(bz,bx))!==null){return bw}else{return bz[bx]}}},propHooks:{tabIndex:{get:function(bv){var e=bv.getAttributeNode("tabindex");return e&&e.specified?parseInt(e.value,10):D.test(bv.nodeName)||l.test(bv.nodeName)&&bv.href?0:L}}}});b.attrHooks.tabindex=b.propHooks.tabIndex;aY={get:function(bv,e){var bx,bw=b.prop(bv,e);return bw===true||typeof bw!=="boolean"&&(bx=bv.getAttributeNode(e))&&bx.nodeValue!==false?e.toLowerCase():L},set:function(bv,bx,e){var bw;if(bx===false){b.removeAttr(bv,e)}else{bw=b.propFix[e]||e;if(bw in bv){bv[bw]=true}bv.setAttribute(e,e.toLowerCase())}return e}};if(!F){aF={name:true,id:true};be=b.valHooks.button={get:function(bw,bv){var e;e=bw.getAttributeNode(bv);return e&&(aF[bv]?e.nodeValue!=="":e.specified)?e.nodeValue:L},set:function(bw,bx,bv){var e=bw.getAttributeNode(bv);if(!e){e=av.createAttribute(bv);bw.setAttributeNode(e)}return(e.nodeValue=bx+"")}};b.attrHooks.tabindex.set=be.set;b.each(["width","height"],function(bv,e){b.attrHooks[e]=b.extend(b.attrHooks[e],{set:function(bw,bx){if(bx===""){bw.setAttribute(e,"auto");return bx}}})});b.attrHooks.contenteditable={get:be.get,set:function(bv,bw,e){if(bw===""){bw="false"}be.set(bv,bw,e)}}}if(!b.support.hrefNormalized){b.each(["href","src","width","height"],function(bv,e){b.attrHooks[e]=b.extend(b.attrHooks[e],{get:function(bx){var bw=bx.getAttribute(e,2);return bw===null?L:bw}})})}if(!b.support.style){b.attrHooks.style={get:function(e){return e.style.cssText.toLowerCase()||L},set:function(e,bv){return(e.style.cssText=""+bv)}}}if(!b.support.optSelected){b.propHooks.selected=b.extend(b.propHooks.selected,{get:function(bv){var e=bv.parentNode;if(e){e.selectedIndex;if(e.parentNode){e.parentNode.selectedIndex}}return null}})}if(!b.support.enctype){b.propFix.enctype="encoding"}if(!b.support.checkOn){b.each(["radio","checkbox"],function(){b.valHooks[this]={get:function(e){return e.getAttribute("value")===null?"on":e.value}}})}b.each(["radio","checkbox"],function(){b.valHooks[this]=b.extend(b.valHooks[this],{set:function(e,bv){if(b.isArray(bv)){return(e.checked=b.inArray(b(e).val(),bv)>=0)}}})});var bd=/^(?:textarea|input|select)$/i,n=/^([^\.]*)?(?:\.(.+))?$/,J=/\bhover(\.\S+)?\b/,aO=/^key/,bf=/^(?:mouse|contextmenu)|click/,T=/^(?:focusinfocus|focusoutblur)$/,U=/^(\w*)(?:#([\w\-]+))?(?:\.([\w\-]+))?$/,Y=function(e){var bv=U.exec(e);if(bv){bv[1]=(bv[1]||"").toLowerCase();bv[3]=bv[3]&&new RegExp("(?:^|\\s)"+bv[3]+"(?:\\s|$)")}return bv},j=function(bw,e){var bv=bw.attributes||{};return((!e[1]||bw.nodeName.toLowerCase()===e[1])&&(!e[2]||(bv.id||{}).value===e[2])&&(!e[3]||e[3].test((bv["class"]||{}).value)))},bt=function(e){return b.event.special.hover?e:e.replace(J,"mouseenter$1 mouseleave$1")};b.event={add:function(bx,bC,bJ,bA,by){var bD,bB,bK,bI,bH,bF,e,bG,bv,bz,bw,bE;if(bx.nodeType===3||bx.nodeType===8||!bC||!bJ||!(bD=b._data(bx))){return}if(bJ.handler){bv=bJ;bJ=bv.handler}if(!bJ.guid){bJ.guid=b.guid++}bK=bD.events;if(!bK){bD.events=bK={}}bB=bD.handle;if(!bB){bD.handle=bB=function(bL){return typeof b!=="undefined"&&(!bL||b.event.triggered!==bL.type)?b.event.dispatch.apply(bB.elem,arguments):L};bB.elem=bx}bC=b.trim(bt(bC)).split(" ");for(bI=0;bI<bC.length;bI++){bH=n.exec(bC[bI])||[];bF=bH[1];e=(bH[2]||"").split(".").sort();bE=b.event.special[bF]||{};bF=(by?bE.delegateType:bE.bindType)||bF;bE=b.event.special[bF]||{};bG=b.extend({type:bF,origType:bH[1],data:bA,handler:bJ,guid:bJ.guid,selector:by,quick:Y(by),namespace:e.join(".")},bv);bw=bK[bF];if(!bw){bw=bK[bF]=[];bw.delegateCount=0;if(!bE.setup||bE.setup.call(bx,bA,e,bB)===false){if(bx.addEventListener){bx.addEventListener(bF,bB,false)}else{if(bx.attachEvent){bx.attachEvent("on"+bF,bB)}}}}if(bE.add){bE.add.call(bx,bG);if(!bG.handler.guid){bG.handler.guid=bJ.guid}}if(by){bw.splice(bw.delegateCount++,0,bG)}else{bw.push(bG)}b.event.global[bF]=true}bx=null},global:{},remove:function(bJ,bE,bv,bH,bB){var bI=b.hasData(bJ)&&b._data(bJ),bF,bx,bz,bL,bC,bA,bG,bw,by,bK,bD,e;if(!bI||!(bw=bI.events)){return}bE=b.trim(bt(bE||"")).split(" ");for(bF=0;bF<bE.length;bF++){bx=n.exec(bE[bF])||[];bz=bL=bx[1];bC=bx[2];if(!bz){for(bz in bw){b.event.remove(bJ,bz+bE[bF],bv,bH,true)}continue}by=b.event.special[bz]||{};bz=(bH?by.delegateType:by.bindType)||bz;bD=bw[bz]||[];bA=bD.length;bC=bC?new RegExp("(^|\\.)"+bC.split(".").sort().join("\\.(?:.*\\.)?")+"(\\.|$)"):null;for(bG=0;bG<bD.length;bG++){e=bD[bG];if((bB||bL===e.origType)&&(!bv||bv.guid===e.guid)&&(!bC||bC.test(e.namespace))&&(!bH||bH===e.selector||bH==="**"&&e.selector)){bD.splice(bG--,1);if(e.selector){bD.delegateCount--}if(by.remove){by.remove.call(bJ,e)}}}if(bD.length===0&&bA!==bD.length){if(!by.teardown||by.teardown.call(bJ,bC)===false){b.removeEvent(bJ,bz,bI.handle)}delete bw[bz]}}if(b.isEmptyObject(bw)){bK=bI.handle;if(bK){bK.elem=null}b.removeData(bJ,["events","handle"],true)}},customEvent:{getData:true,setData:true,changeData:true},trigger:function(bv,bD,bA,bJ){if(bA&&(bA.nodeType===3||bA.nodeType===8)){return}var bG=bv.type||bv,bx=[],e,bw,bC,bH,bz,by,bF,bE,bB,bI;if(T.test(bG+b.event.triggered)){return}if(bG.indexOf("!")>=0){bG=bG.slice(0,-1);bw=true}if(bG.indexOf(".")>=0){bx=bG.split(".");bG=bx.shift();bx.sort()}if((!bA||b.event.customEvent[bG])&&!b.event.global[bG]){return}bv=typeof bv==="object"?bv[b.expando]?bv:new b.Event(bG,bv):new b.Event(bG);bv.type=bG;bv.isTrigger=true;bv.exclusive=bw;bv.namespace=bx.join(".");bv.namespace_re=bv.namespace?new RegExp("(^|\\.)"+bx.join("\\.(?:.*\\.)?")+"(\\.|$)"):null;by=bG.indexOf(":")<0?"on"+bG:"";if(!bA){e=b.cache;for(bC in e){if(e[bC].events&&e[bC].events[bG]){b.event.trigger(bv,bD,e[bC].handle.elem,true)}}return}bv.result=L;if(!bv.target){bv.target=bA}bD=bD!=null?b.makeArray(bD):[];bD.unshift(bv);bF=b.event.special[bG]||{};if(bF.trigger&&bF.trigger.apply(bA,bD)===false){return}bB=[[bA,bF.bindType||bG]];if(!bJ&&!bF.noBubble&&!b.isWindow(bA)){bI=bF.delegateType||bG;bH=T.test(bI+bG)?bA:bA.parentNode;bz=null;for(;bH;bH=bH.parentNode){bB.push([bH,bI]);bz=bH}if(bz&&bz===bA.ownerDocument){bB.push([bz.defaultView||bz.parentWindow||bb,bI])}}for(bC=0;bC<bB.length&&!bv.isPropagationStopped();bC++){bH=bB[bC][0];bv.type=bB[bC][1];bE=(b._data(bH,"events")||{})[bv.type]&&b._data(bH,"handle");if(bE){bE.apply(bH,bD)}bE=by&&bH[by];if(bE&&b.acceptData(bH)&&bE.apply(bH,bD)===false){bv.preventDefault()}}bv.type=bG;if(!bJ&&!bv.isDefaultPrevented()){if((!bF._default||bF._default.apply(bA.ownerDocument,bD)===false)&&!(bG==="click"&&b.nodeName(bA,"a"))&&b.acceptData(bA)){if(by&&bA[bG]&&((bG!=="focus"&&bG!=="blur")||bv.target.offsetWidth!==0)&&!b.isWindow(bA)){bz=bA[by];if(bz){bA[by]=null}b.event.triggered=bG;bA[bG]();b.event.triggered=L;if(bz){bA[by]=bz}}}}return bv.result},dispatch:function(e){e=b.event.fix(e||bb.event);var bz=((b._data(this,"events")||{})[e.type]||[]),bA=bz.delegateCount,bG=[].slice.call(arguments,0),by=!e.exclusive&&!e.namespace,bH=[],bC,bB,bK,bx,bF,bE,bv,bD,bI,bw,bJ;bG[0]=e;e.delegateTarget=this;if(bA&&!e.target.disabled&&!(e.button&&e.type==="click")){bx=b(this);bx.context=this.ownerDocument||this;for(bK=e.target;bK!=this;bK=bK.parentNode||this){bE={};bD=[];bx[0]=bK;for(bC=0;bC<bA;bC++){bI=bz[bC];bw=bI.selector;if(bE[bw]===L){bE[bw]=(bI.quick?j(bK,bI.quick):bx.is(bw))}if(bE[bw]){bD.push(bI)}}if(bD.length){bH.push({elem:bK,matches:bD})}}}if(bz.length>bA){bH.push({elem:this,matches:bz.slice(bA)})}for(bC=0;bC<bH.length&&!e.isPropagationStopped();bC++){bv=bH[bC];e.currentTarget=bv.elem;for(bB=0;bB<bv.matches.length&&!e.isImmediatePropagationStopped();bB++){bI=bv.matches[bB];if(by||(!e.namespace&&!bI.namespace)||e.namespace_re&&e.namespace_re.test(bI.namespace)){e.data=bI.data;e.handleObj=bI;bF=((b.event.special[bI.origType]||{}).handle||bI.handler).apply(bv.elem,bG);if(bF!==L){e.result=bF;if(bF===false){e.preventDefault();e.stopPropagation()}}}}}return e.result},props:"attrChange attrName relatedNode srcElement altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),fixHooks:{},keyHooks:{props:"char charCode key keyCode".split(" "),filter:function(bv,e){if(bv.which==null){bv.which=e.charCode!=null?e.charCode:e.keyCode}return bv}},mouseHooks:{props:"button buttons clientX clientY fromElement offsetX offsetY pageX pageY screenX screenY toElement".split(" "),filter:function(bx,bw){var by,bz,e,bv=bw.button,bA=bw.fromElement;if(bx.pageX==null&&bw.clientX!=null){by=bx.target.ownerDocument||av;bz=by.documentElement;e=by.body;bx.pageX=bw.clientX+(bz&&bz.scrollLeft||e&&e.scrollLeft||0)-(bz&&bz.clientLeft||e&&e.clientLeft||0);bx.pageY=bw.clientY+(bz&&bz.scrollTop||e&&e.scrollTop||0)-(bz&&bz.clientTop||e&&e.clientTop||0)}if(!bx.relatedTarget&&bA){bx.relatedTarget=bA===bx.target?bw.toElement:bA}if(!bx.which&&bv!==L){bx.which=(bv&1?1:(bv&2?3:(bv&4?2:0)))}return bx}},fix:function(bw){if(bw[b.expando]){return bw}var bv,bz,e=bw,bx=b.event.fixHooks[bw.type]||{},by=bx.props?this.props.concat(bx.props):this.props;bw=b.Event(e);for(bv=by.length;bv;){bz=by[--bv];bw[bz]=e[bz]}if(!bw.target){bw.target=e.srcElement||av}if(bw.target.nodeType===3){bw.target=bw.target.parentNode}if(bw.metaKey===L){bw.metaKey=bw.ctrlKey}return bx.filter?bx.filter(bw,e):bw},special:{ready:{setup:b.bindReady},load:{noBubble:true},focus:{delegateType:"focusin"},blur:{delegateType:"focusout"},beforeunload:{setup:function(bw,bv,e){if(b.isWindow(this)){this.onbeforeunload=e}},teardown:function(bv,e){if(this.onbeforeunload===e){this.onbeforeunload=null}}}},simulate:function(bw,by,bx,bv){var bz=b.extend(new b.Event(),bx,{type:bw,isSimulated:true,originalEvent:{}});if(bv){b.event.trigger(bz,null,by)}else{b.event.dispatch.call(by,bz)}if(bz.isDefaultPrevented()){bx.preventDefault()}}};b.event.handle=b.event.dispatch;b.removeEvent=av.removeEventListener?function(bv,e,bw){if(bv.removeEventListener){bv.removeEventListener(e,bw,false)}}:function(bv,e,bw){if(bv.detachEvent){bv.detachEvent("on"+e,bw)}};b.Event=function(bv,e){if(!(this instanceof b.Event)){return new b.Event(bv,e)}if(bv&&bv.type){this.originalEvent=bv;this.type=bv.type;this.isDefaultPrevented=(bv.defaultPrevented||bv.returnValue===false||bv.getPreventDefault&&bv.getPreventDefault())?i:bk}else{this.type=bv}if(e){b.extend(this,e)}this.timeStamp=bv&&bv.timeStamp||b.now();this[b.expando]=true};function bk(){return false}function i(){return true}b.Event.prototype={preventDefault:function(){this.isDefaultPrevented=i;var bv=this.originalEvent;if(!bv){return}if(bv.preventDefault){bv.preventDefault()}else{bv.returnValue=false}},stopPropagation:function(){this.isPropagationStopped=i;var bv=this.originalEvent;if(!bv){return}if(bv.stopPropagation){bv.stopPropagation()}bv.cancelBubble=true},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=i;this.stopPropagation()},isDefaultPrevented:bk,isPropagationStopped:bk,isImmediatePropagationStopped:bk};b.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(bv,e){b.event.special[bv]={delegateType:e,bindType:e,handle:function(bz){var bB=this,bA=bz.relatedTarget,by=bz.handleObj,bw=by.selector,bx;if(!bA||(bA!==bB&&!b.contains(bB,bA))){bz.type=by.origType;bx=by.handler.apply(this,arguments);bz.type=e}return bx}}});if(!b.support.submitBubbles){b.event.special.submit={setup:function(){if(b.nodeName(this,"form")){return false}b.event.add(this,"click._submit keypress._submit",function(bx){var bw=bx.target,bv=b.nodeName(bw,"input")||b.nodeName(bw,"button")?bw.form:L;if(bv&&!bv._submit_attached){b.event.add(bv,"submit._submit",function(e){if(this.parentNode&&!e.isTrigger){b.event.simulate("submit",this.parentNode,e,true)}});bv._submit_attached=true}})},teardown:function(){if(b.nodeName(this,"form")){return false}b.event.remove(this,"._submit")}}}if(!b.support.changeBubbles){b.event.special.change={setup:function(){if(bd.test(this.nodeName)){if(this.type==="checkbox"||this.type==="radio"){b.event.add(this,"propertychange._change",function(e){if(e.originalEvent.propertyName==="checked"){this._just_changed=true}});b.event.add(this,"click._change",function(e){if(this._just_changed&&!e.isTrigger){this._just_changed=false;b.event.simulate("change",this,e,true)}})}return false}b.event.add(this,"beforeactivate._change",function(bw){var bv=bw.target;if(bd.test(bv.nodeName)&&!bv._change_attached){b.event.add(bv,"change._change",function(e){if(this.parentNode&&!e.isSimulated&&!e.isTrigger){b.event.simulate("change",this.parentNode,e,true)}});bv._change_attached=true}})},handle:function(bv){var e=bv.target;if(this!==e||bv.isSimulated||bv.isTrigger||(e.type!=="radio"&&e.type!=="checkbox")){return bv.handleObj.handler.apply(this,arguments)}},teardown:function(){b.event.remove(this,"._change");return bd.test(this.nodeName)}}}if(!b.support.focusinBubbles){b.each({focus:"focusin",blur:"focusout"},function(bx,e){var bv=0,bw=function(by){b.event.simulate(e,by.target,b.event.fix(by),true)};b.event.special[e]={setup:function(){if(bv++===0){av.addEventListener(bx,bw,true)}},teardown:function(){if(--bv===0){av.removeEventListener(bx,bw,true)}}}})}b.fn.extend({on:function(bw,e,bz,by,bv){var bA,bx;if(typeof bw==="object"){if(typeof e!=="string"){bz=e;e=L}for(bx in bw){this.on(bx,e,bz,bw[bx],bv)}return this}if(bz==null&&by==null){by=e;bz=e=L}else{if(by==null){if(typeof e==="string"){by=bz;bz=L}else{by=bz;bz=e;e=L}}}if(by===false){by=bk}else{if(!by){return this}}if(bv===1){bA=by;by=function(bB){b().off(bB);return bA.apply(this,arguments)};by.guid=bA.guid||(bA.guid=b.guid++)}return this.each(function(){b.event.add(this,bw,by,bz,e)})},one:function(bv,e,bx,bw){return this.on.call(this,bv,e,bx,bw,1)},off:function(bw,e,by){if(bw&&bw.preventDefault&&bw.handleObj){var bv=bw.handleObj;b(bw.delegateTarget).off(bv.namespace?bv.type+"."+bv.namespace:bv.type,bv.selector,bv.handler);return this}if(typeof bw==="object"){for(var bx in bw){this.off(bx,e,bw[bx])}return this}if(e===false||typeof e==="function"){by=e;e=L}if(by===false){by=bk}return this.each(function(){b.event.remove(this,bw,by,e)})},bind:function(e,bw,bv){return this.on(e,null,bw,bv)},unbind:function(e,bv){return this.off(e,null,bv)},live:function(e,bw,bv){b(this.context).on(e,this.selector,bw,bv);return this},die:function(e,bv){b(this.context).off(e,this.selector||"**",bv);return this},delegate:function(e,bv,bx,bw){return this.on(bv,e,bx,bw)},undelegate:function(e,bv,bw){return arguments.length==1?this.off(e,"**"):this.off(bv,e,bw)},trigger:function(e,bv){return this.each(function(){b.event.trigger(e,bv,this)})},triggerHandler:function(e,bv){if(this[0]){return b.event.trigger(e,bv,this[0],true)}},toggle:function(bx){var bv=arguments,e=bx.guid||b.guid++,bw=0,by=function(bz){var bA=(b._data(this,"lastToggle"+bx.guid)||0)%bw;b._data(this,"lastToggle"+bx.guid,bA+1);bz.preventDefault();return bv[bA].apply(this,arguments)||false};by.guid=e;while(bw<bv.length){bv[bw++].guid=e}return this.click(by)},hover:function(e,bv){return this.mouseenter(e).mouseleave(bv||e)}});b.each(("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu").split(" "),function(bv,e){b.fn[e]=function(bx,bw){if(bw==null){bw=bx;bx=null}return arguments.length>0?this.on(e,null,bx,bw):this.trigger(e)};if(b.attrFn){b.attrFn[e]=true}if(aO.test(e)){b.event.fixHooks[e]=b.event.keyHooks}if(bf.test(e)){b.event.fixHooks[e]=b.event.mouseHooks}});
+/*
+ * Sizzle CSS Selector Engine
+ *  Copyright 2011, The Dojo Foundation
+ *  Released under the MIT, BSD, and GPL Licenses.
+ *  More information: http://sizzlejs.com/
+ */
+(function(){var bH=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,bC="sizcache"+(Math.random()+"").replace(".",""),bI=0,bL=Object.prototype.toString,bB=false,bA=true,bK=/\\/g,bO=/\r\n/g,bQ=/\W/;[0,0].sort(function(){bA=false;return 0});var by=function(bV,e,bY,bZ){bY=bY||[];e=e||av;var b1=e;if(e.nodeType!==1&&e.nodeType!==9){return[]}if(!bV||typeof bV!=="string"){return bY}var bS,b3,b6,bR,b2,b5,b4,bX,bU=true,bT=by.isXML(e),bW=[],b0=bV;do{bH.exec("");bS=bH.exec(b0);if(bS){b0=bS[3];bW.push(bS[1]);if(bS[2]){bR=bS[3];break}}}while(bS);if(bW.length>1&&bD.exec(bV)){if(bW.length===2&&bE.relative[bW[0]]){b3=bM(bW[0]+bW[1],e,bZ)}else{b3=bE.relative[bW[0]]?[e]:by(bW.shift(),e);while(bW.length){bV=bW.shift();if(bE.relative[bV]){bV+=bW.shift()}b3=bM(bV,b3,bZ)}}}else{if(!bZ&&bW.length>1&&e.nodeType===9&&!bT&&bE.match.ID.test(bW[0])&&!bE.match.ID.test(bW[bW.length-1])){b2=by.find(bW.shift(),e,bT);e=b2.expr?by.filter(b2.expr,b2.set)[0]:b2.set[0]}if(e){b2=bZ?{expr:bW.pop(),set:bF(bZ)}:by.find(bW.pop(),bW.length===1&&(bW[0]==="~"||bW[0]==="+")&&e.parentNode?e.parentNode:e,bT);b3=b2.expr?by.filter(b2.expr,b2.set):b2.set;if(bW.length>0){b6=bF(b3)}else{bU=false}while(bW.length){b5=bW.pop();b4=b5;if(!bE.relative[b5]){b5=""}else{b4=bW.pop()}if(b4==null){b4=e}bE.relative[b5](b6,b4,bT)}}else{b6=bW=[]}}if(!b6){b6=b3}if(!b6){by.error(b5||bV)}if(bL.call(b6)==="[object Array]"){if(!bU){bY.push.apply(bY,b6)}else{if(e&&e.nodeType===1){for(bX=0;b6[bX]!=null;bX++){if(b6[bX]&&(b6[bX]===true||b6[bX].nodeType===1&&by.contains(e,b6[bX]))){bY.push(b3[bX])}}}else{for(bX=0;b6[bX]!=null;bX++){if(b6[bX]&&b6[bX].nodeType===1){bY.push(b3[bX])}}}}}else{bF(b6,bY)}if(bR){by(bR,b1,bY,bZ);by.uniqueSort(bY)}return bY};by.uniqueSort=function(bR){if(bJ){bB=bA;bR.sort(bJ);if(bB){for(var e=1;e<bR.length;e++){if(bR[e]===bR[e-1]){bR.splice(e--,1)}}}}return bR};by.matches=function(e,bR){return by(e,null,null,bR)};by.matchesSelector=function(e,bR){return by(bR,null,null,[e]).length>0};by.find=function(bX,e,bY){var bW,bS,bU,bT,bV,bR;if(!bX){return[]}for(bS=0,bU=bE.order.length;bS<bU;bS++){bV=bE.order[bS];if((bT=bE.leftMatch[bV].exec(bX))){bR=bT[1];bT.splice(1,1);if(bR.substr(bR.length-1)!=="\\"){bT[1]=(bT[1]||"").replace(bK,"");bW=bE.find[bV](bT,e,bY);if(bW!=null){bX=bX.replace(bE.match[bV],"");break}}}}if(!bW){bW=typeof e.getElementsByTagName!=="undefined"?e.getElementsByTagName("*"):[]}return{set:bW,expr:bX}};by.filter=function(b1,b0,b4,bU){var bW,e,bZ,b6,b3,bR,bT,bV,b2,bS=b1,b5=[],bY=b0,bX=b0&&b0[0]&&by.isXML(b0[0]);while(b1&&b0.length){for(bZ in bE.filter){if((bW=bE.leftMatch[bZ].exec(b1))!=null&&bW[2]){bR=bE.filter[bZ];bT=bW[1];e=false;bW.splice(1,1);if(bT.substr(bT.length-1)==="\\"){continue}if(bY===b5){b5=[]}if(bE.preFilter[bZ]){bW=bE.preFilter[bZ](bW,bY,b4,b5,bU,bX);if(!bW){e=b6=true}else{if(bW===true){continue}}}if(bW){for(bV=0;(b3=bY[bV])!=null;bV++){if(b3){b6=bR(b3,bW,bV,bY);b2=bU^b6;if(b4&&b6!=null){if(b2){e=true}else{bY[bV]=false}}else{if(b2){b5.push(b3);e=true}}}}}if(b6!==L){if(!b4){bY=b5}b1=b1.replace(bE.match[bZ],"");if(!e){return[]}break}}}if(b1===bS){if(e==null){by.error(b1)}else{break}}bS=b1}return bY};by.error=function(e){throw new Error("Syntax error, unrecognized expression: "+e)};var bw=by.getText=function(bU){var bS,bT,e=bU.nodeType,bR="";if(e){if(e===1||e===9){if(typeof bU.textContent==="string"){return bU.textContent}else{if(typeof bU.innerText==="string"){return bU.innerText.replace(bO,"")}else{for(bU=bU.firstChild;bU;bU=bU.nextSibling){bR+=bw(bU)}}}}else{if(e===3||e===4){return bU.nodeValue}}}else{for(bS=0;(bT=bU[bS]);bS++){if(bT.nodeType!==8){bR+=bw(bT)}}}return bR};var bE=by.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,CLASS:/\.((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF\-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF\-]|\\.)+)\s*(?:(\S?=)\s*(?:(['"])(.*?)\3|(#?(?:[\w\u00c0-\uFFFF\-]|\\.)*)|)|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*\-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\(\s*(even|odd|(?:[+\-]?\d+|(?:[+\-]?\d*)?n\s*(?:[+\-]\s*\d+)?))\s*\))?/,POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^\-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF\-]|\\.)+)(?:\((['"]?)((?:\([^\)]+\)|[^\(\)]*)+)\2\))?/},leftMatch:{},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(e){return e.getAttribute("href")},type:function(e){return e.getAttribute("type")}},relative:{"+":function(bW,bR){var bT=typeof bR==="string",bV=bT&&!bQ.test(bR),bX=bT&&!bV;if(bV){bR=bR.toLowerCase()}for(var bS=0,e=bW.length,bU;bS<e;bS++){if((bU=bW[bS])){while((bU=bU.previousSibling)&&bU.nodeType!==1){}bW[bS]=bX||bU&&bU.nodeName.toLowerCase()===bR?bU||false:bU===bR}}if(bX){by.filter(bR,bW,true)}},">":function(bW,bR){var bV,bU=typeof bR==="string",bS=0,e=bW.length;if(bU&&!bQ.test(bR)){bR=bR.toLowerCase();for(;bS<e;bS++){bV=bW[bS];if(bV){var bT=bV.parentNode;bW[bS]=bT.nodeName.toLowerCase()===bR?bT:false}}}else{for(;bS<e;bS++){bV=bW[bS];if(bV){bW[bS]=bU?bV.parentNode:bV.parentNode===bR}}if(bU){by.filter(bR,bW,true)}}},"":function(bT,bR,bV){var bU,bS=bI++,e=bN;if(typeof bR==="string"&&!bQ.test(bR)){bR=bR.toLowerCase();bU=bR;e=bv}e("parentNode",bR,bS,bT,bU,bV)},"~":function(bT,bR,bV){var bU,bS=bI++,e=bN;if(typeof bR==="string"&&!bQ.test(bR)){bR=bR.toLowerCase();bU=bR;e=bv}e("previousSibling",bR,bS,bT,bU,bV)}},find:{ID:function(bR,bS,bT){if(typeof bS.getElementById!=="undefined"&&!bT){var e=bS.getElementById(bR[1]);return e&&e.parentNode?[e]:[]}},NAME:function(bS,bV){if(typeof bV.getElementsByName!=="undefined"){var bR=[],bU=bV.getElementsByName(bS[1]);for(var bT=0,e=bU.length;bT<e;bT++){if(bU[bT].getAttribute("name")===bS[1]){bR.push(bU[bT])}}return bR.length===0?null:bR}},TAG:function(e,bR){if(typeof bR.getElementsByTagName!=="undefined"){return bR.getElementsByTagName(e[1])}}},preFilter:{CLASS:function(bT,bR,bS,e,bW,bX){bT=" "+bT[1].replace(bK,"")+" ";if(bX){return bT}for(var bU=0,bV;(bV=bR[bU])!=null;bU++){if(bV){if(bW^(bV.className&&(" "+bV.className+" ").replace(/[\t\n\r]/g," ").indexOf(bT)>=0)){if(!bS){e.push(bV)}}else{if(bS){bR[bU]=false}}}}return false},ID:function(e){return e[1].replace(bK,"")},TAG:function(bR,e){return bR[1].replace(bK,"").toLowerCase()},CHILD:function(e){if(e[1]==="nth"){if(!e[2]){by.error(e[0])}e[2]=e[2].replace(/^\+|\s*/g,"");var bR=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec(e[2]==="even"&&"2n"||e[2]==="odd"&&"2n+1"||!/\D/.test(e[2])&&"0n+"+e[2]||e[2]);e[2]=(bR[1]+(bR[2]||1))-0;e[3]=bR[3]-0}else{if(e[2]){by.error(e[0])}}e[0]=bI++;return e},ATTR:function(bU,bR,bS,e,bV,bW){var bT=bU[1]=bU[1].replace(bK,"");if(!bW&&bE.attrMap[bT]){bU[1]=bE.attrMap[bT]}bU[4]=(bU[4]||bU[5]||"").replace(bK,"");if(bU[2]==="~="){bU[4]=" "+bU[4]+" "}return bU},PSEUDO:function(bU,bR,bS,e,bV){if(bU[1]==="not"){if((bH.exec(bU[3])||"").length>1||/^\w/.test(bU[3])){bU[3]=by(bU[3],null,null,bR)}else{var bT=by.filter(bU[3],bR,bS,true^bV);if(!bS){e.push.apply(e,bT)}return false}}else{if(bE.match.POS.test(bU[0])||bE.match.CHILD.test(bU[0])){return true}}return bU},POS:function(e){e.unshift(true);return e}},filters:{enabled:function(e){return e.disabled===false&&e.type!=="hidden"},disabled:function(e){return e.disabled===true},checked:function(e){return e.checked===true},selected:function(e){if(e.parentNode){e.parentNode.selectedIndex}return e.selected===true},parent:function(e){return !!e.firstChild},empty:function(e){return !e.firstChild},has:function(bS,bR,e){return !!by(e[3],bS).length},header:function(e){return(/h\d/i).test(e.nodeName)},text:function(bS){var e=bS.getAttribute("type"),bR=bS.type;return bS.nodeName.toLowerCase()==="input"&&"text"===bR&&(e===bR||e===null)},radio:function(e){return e.nodeName.toLowerCase()==="input"&&"radio"===e.type},checkbox:function(e){return e.nodeName.toLowerCase()==="input"&&"checkbox"===e.type},file:function(e){return e.nodeName.toLowerCase()==="input"&&"file"===e.type},password:function(e){return e.nodeName.toLowerCase()==="input"&&"password"===e.type},submit:function(bR){var e=bR.nodeName.toLowerCase();return(e==="input"||e==="button")&&"submit"===bR.type},image:function(e){return e.nodeName.toLowerCase()==="input"&&"image"===e.type},reset:function(bR){var e=bR.nodeName.toLowerCase();return(e==="input"||e==="button")&&"reset"===bR.type},button:function(bR){var e=bR.nodeName.toLowerCase();return e==="input"&&"button"===bR.type||e==="button"},input:function(e){return(/input|select|textarea|button/i).test(e.nodeName)},focus:function(e){return e===e.ownerDocument.activeElement}},setFilters:{first:function(bR,e){return e===0},last:function(bS,bR,e,bT){return bR===bT.length-1},even:function(bR,e){return e%2===0},odd:function(bR,e){return e%2===1},lt:function(bS,bR,e){return bR<e[3]-0},gt:function(bS,bR,e){return bR>e[3]-0},nth:function(bS,bR,e){return e[3]-0===bR},eq:function(bS,bR,e){return e[3]-0===bR}},filter:{PSEUDO:function(bS,bX,bW,bY){var e=bX[1],bR=bE.filters[e];if(bR){return bR(bS,bW,bX,bY)}else{if(e==="contains"){return(bS.textContent||bS.innerText||bw([bS])||"").indexOf(bX[3])>=0}else{if(e==="not"){var bT=bX[3];for(var bV=0,bU=bT.length;bV<bU;bV++){if(bT[bV]===bS){return false}}return true}else{by.error(e)}}}},CHILD:function(bS,bU){var bT,b0,bW,bZ,e,bV,bY,bX=bU[1],bR=bS;switch(bX){case"only":case"first":while((bR=bR.previousSibling)){if(bR.nodeType===1){return false}}if(bX==="first"){return true}bR=bS;case"last":while((bR=bR.nextSibling)){if(bR.nodeType===1){return false}}return true;case"nth":bT=bU[2];b0=bU[3];if(bT===1&&b0===0){return true}bW=bU[0];bZ=bS.parentNode;if(bZ&&(bZ[bC]!==bW||!bS.nodeIndex)){bV=0;for(bR=bZ.firstChild;bR;bR=bR.nextSibling){if(bR.nodeType===1){bR.nodeIndex=++bV}}bZ[bC]=bW}bY=bS.nodeIndex-b0;if(bT===0){return bY===0}else{return(bY%bT===0&&bY/bT>=0)}}},ID:function(bR,e){return bR.nodeType===1&&bR.getAttribute("id")===e},TAG:function(bR,e){return(e==="*"&&bR.nodeType===1)||!!bR.nodeName&&bR.nodeName.toLowerCase()===e},CLASS:function(bR,e){return(" "+(bR.className||bR.getAttribute("class"))+" ").indexOf(e)>-1},ATTR:function(bV,bT){var bS=bT[1],e=by.attr?by.attr(bV,bS):bE.attrHandle[bS]?bE.attrHandle[bS](bV):bV[bS]!=null?bV[bS]:bV.getAttribute(bS),bW=e+"",bU=bT[2],bR=bT[4];return e==null?bU==="!=":!bU&&by.attr?e!=null:bU==="="?bW===bR:bU==="*="?bW.indexOf(bR)>=0:bU==="~="?(" "+bW+" ").indexOf(bR)>=0:!bR?bW&&e!==false:bU==="!="?bW!==bR:bU==="^="?bW.indexOf(bR)===0:bU==="$="?bW.substr(bW.length-bR.length)===bR:bU==="|="?bW===bR||bW.substr(0,bR.length+1)===bR+"-":false},POS:function(bU,bR,bS,bV){var e=bR[2],bT=bE.setFilters[e];if(bT){return bT(bU,bS,bR,bV)}}}};var bD=bE.match.POS,bx=function(bR,e){return"\\"+(e-0+1)};for(var bz in bE.match){bE.match[bz]=new RegExp(bE.match[bz].source+(/(?![^\[]*\])(?![^\(]*\))/.source));bE.leftMatch[bz]=new RegExp(/(^(?:.|\r|\n)*?)/.source+bE.match[bz].source.replace(/\\(\d+)/g,bx))}var bF=function(bR,e){bR=Array.prototype.slice.call(bR,0);if(e){e.push.apply(e,bR);return e}return bR};try{Array.prototype.slice.call(av.documentElement.childNodes,0)[0].nodeType}catch(bP){bF=function(bU,bT){var bS=0,bR=bT||[];if(bL.call(bU)==="[object Array]"){Array.prototype.push.apply(bR,bU)}else{if(typeof bU.length==="number"){for(var e=bU.length;bS<e;bS++){bR.push(bU[bS])}}else{for(;bU[bS];bS++){bR.push(bU[bS])}}}return bR}}var bJ,bG;if(av.documentElement.compareDocumentPosition){bJ=function(bR,e){if(bR===e){bB=true;return 0}if(!bR.compareDocumentPosition||!e.compareDocumentPosition){return bR.compareDocumentPosition?-1:1}return bR.compareDocumentPosition(e)&4?-1:1}}else{bJ=function(bY,bX){if(bY===bX){bB=true;return 0}else{if(bY.sourceIndex&&bX.sourceIndex){return bY.sourceIndex-bX.sourceIndex}}var bV,bR,bS=[],e=[],bU=bY.parentNode,bW=bX.parentNode,bZ=bU;if(bU===bW){return bG(bY,bX)}else{if(!bU){return -1}else{if(!bW){return 1}}}while(bZ){bS.unshift(bZ);bZ=bZ.parentNode}bZ=bW;while(bZ){e.unshift(bZ);bZ=bZ.parentNode}bV=bS.length;bR=e.length;for(var bT=0;bT<bV&&bT<bR;bT++){if(bS[bT]!==e[bT]){return bG(bS[bT],e[bT])}}return bT===bV?bG(bY,e[bT],-1):bG(bS[bT],bX,1)};bG=function(bR,e,bS){if(bR===e){return bS}var bT=bR.nextSibling;while(bT){if(bT===e){return -1}bT=bT.nextSibling}return 1}}(function(){var bR=av.createElement("div"),bS="script"+(new Date()).getTime(),e=av.documentElement;bR.innerHTML="<a name='"+bS+"'/>";e.insertBefore(bR,e.firstChild);if(av.getElementById(bS)){bE.find.ID=function(bU,bV,bW){if(typeof bV.getElementById!=="undefined"&&!bW){var bT=bV.getElementById(bU[1]);return bT?bT.id===bU[1]||typeof bT.getAttributeNode!=="undefined"&&bT.getAttributeNode("id").nodeValue===bU[1]?[bT]:L:[]}};bE.filter.ID=function(bV,bT){var bU=typeof bV.getAttributeNode!=="undefined"&&bV.getAttributeNode("id");return bV.nodeType===1&&bU&&bU.nodeValue===bT}}e.removeChild(bR);e=bR=null})();(function(){var e=av.createElement("div");e.appendChild(av.createComment(""));if(e.getElementsByTagName("*").length>0){bE.find.TAG=function(bR,bV){var bU=bV.getElementsByTagName(bR[1]);if(bR[1]==="*"){var bT=[];for(var bS=0;bU[bS];bS++){if(bU[bS].nodeType===1){bT.push(bU[bS])}}bU=bT}return bU}}e.innerHTML="<a href='#'></a>";if(e.firstChild&&typeof e.firstChild.getAttribute!=="undefined"&&e.firstChild.getAttribute("href")!=="#"){bE.attrHandle.href=function(bR){return bR.getAttribute("href",2)}}e=null})();if(av.querySelectorAll){(function(){var e=by,bT=av.createElement("div"),bS="__sizzle__";bT.innerHTML="<p class='TEST'></p>";if(bT.querySelectorAll&&bT.querySelectorAll(".TEST").length===0){return}by=function(b4,bV,bZ,b3){bV=bV||av;if(!b3&&!by.isXML(bV)){var b2=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b4);if(b2&&(bV.nodeType===1||bV.nodeType===9)){if(b2[1]){return bF(bV.getElementsByTagName(b4),bZ)}else{if(b2[2]&&bE.find.CLASS&&bV.getElementsByClassName){return bF(bV.getElementsByClassName(b2[2]),bZ)}}}if(bV.nodeType===9){if(b4==="body"&&bV.body){return bF([bV.body],bZ)}else{if(b2&&b2[3]){var bY=bV.getElementById(b2[3]);if(bY&&bY.parentNode){if(bY.id===b2[3]){return bF([bY],bZ)}}else{return bF([],bZ)}}}try{return bF(bV.querySelectorAll(b4),bZ)}catch(b0){}}else{if(bV.nodeType===1&&bV.nodeName.toLowerCase()!=="object"){var bW=bV,bX=bV.getAttribute("id"),bU=bX||bS,b6=bV.parentNode,b5=/^\s*[+~]/.test(b4);if(!bX){bV.setAttribute("id",bU)}else{bU=bU.replace(/'/g,"\\$&")}if(b5&&b6){bV=bV.parentNode}try{if(!b5||b6){return bF(bV.querySelectorAll("[id='"+bU+"'] "+b4),bZ)}}catch(b1){}finally{if(!bX){bW.removeAttribute("id")}}}}}return e(b4,bV,bZ,b3)};for(var bR in e){by[bR]=e[bR]}bT=null})()}(function(){var e=av.documentElement,bS=e.matchesSelector||e.mozMatchesSelector||e.webkitMatchesSelector||e.msMatchesSelector;if(bS){var bU=!bS.call(av.createElement("div"),"div"),bR=false;try{bS.call(av.documentElement,"[test!='']:sizzle")}catch(bT){bR=true}by.matchesSelector=function(bW,bY){bY=bY.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!by.isXML(bW)){try{if(bR||!bE.match.PSEUDO.test(bY)&&!/!=/.test(bY)){var bV=bS.call(bW,bY);if(bV||!bU||bW.document&&bW.document.nodeType!==11){return bV}}}catch(bX){}}return by(bY,null,null,[bW]).length>0}}})();(function(){var e=av.createElement("div");e.innerHTML="<div class='test e'></div><div class='test'></div>";if(!e.getElementsByClassName||e.getElementsByClassName("e").length===0){return}e.lastChild.className="e";if(e.getElementsByClassName("e").length===1){return}bE.order.splice(1,0,"CLASS");bE.find.CLASS=function(bR,bS,bT){if(typeof bS.getElementsByClassName!=="undefined"&&!bT){return bS.getElementsByClassName(bR[1])}};e=null})();function bv(bR,bW,bV,bZ,bX,bY){for(var bT=0,bS=bZ.length;bT<bS;bT++){var e=bZ[bT];if(e){var bU=false;e=e[bR];while(e){if(e[bC]===bV){bU=bZ[e.sizset];break}if(e.nodeType===1&&!bY){e[bC]=bV;e.sizset=bT}if(e.nodeName.toLowerCase()===bW){bU=e;break}e=e[bR]}bZ[bT]=bU}}}function bN(bR,bW,bV,bZ,bX,bY){for(var bT=0,bS=bZ.length;bT<bS;bT++){var e=bZ[bT];if(e){var bU=false;e=e[bR];while(e){if(e[bC]===bV){bU=bZ[e.sizset];break}if(e.nodeType===1){if(!bY){e[bC]=bV;e.sizset=bT}if(typeof bW!=="string"){if(e===bW){bU=true;break}}else{if(by.filter(bW,[e]).length>0){bU=e;break}}}e=e[bR]}bZ[bT]=bU}}}if(av.documentElement.contains){by.contains=function(bR,e){return bR!==e&&(bR.contains?bR.contains(e):true)}}else{if(av.documentElement.compareDocumentPosition){by.contains=function(bR,e){return !!(bR.compareDocumentPosition(e)&16)}}else{by.contains=function(){return false}}}by.isXML=function(e){var bR=(e?e.ownerDocument||e:0).documentElement;return bR?bR.nodeName!=="HTML":false};var bM=function(bS,e,bW){var bV,bX=[],bU="",bY=e.nodeType?[e]:e;while((bV=bE.match.PSEUDO.exec(bS))){bU+=bV[0];bS=bS.replace(bE.match.PSEUDO,"")}bS=bE.relative[bS]?bS+"*":bS;for(var bT=0,bR=bY.length;bT<bR;bT++){by(bS,bY[bT],bX,bW)}return by.filter(bU,bX)};by.attr=b.attr;by.selectors.attrMap={};b.find=by;b.expr=by.selectors;b.expr[":"]=b.expr.filters;b.unique=by.uniqueSort;b.text=by.getText;b.isXMLDoc=by.isXML;b.contains=by.contains})();var ab=/Until$/,aq=/^(?:parents|prevUntil|prevAll)/,a9=/,/,bp=/^.[^:#\[\.,]*$/,P=Array.prototype.slice,H=b.expr.match.POS,ay={children:true,contents:true,next:true,prev:true};b.fn.extend({find:function(e){var bw=this,by,bv;if(typeof e!=="string"){return b(e).filter(function(){for(by=0,bv=bw.length;by<bv;by++){if(b.contains(bw[by],this)){return true}}})}var bx=this.pushStack("","find",e),bA,bB,bz;for(by=0,bv=this.length;by<bv;by++){bA=bx.length;b.find(e,this[by],bx);if(by>0){for(bB=bA;bB<bx.length;bB++){for(bz=0;bz<bA;bz++){if(bx[bz]===bx[bB]){bx.splice(bB--,1);break}}}}}return bx},has:function(bv){var e=b(bv);return this.filter(function(){for(var bx=0,bw=e.length;bx<bw;bx++){if(b.contains(this,e[bx])){return true}}})},not:function(e){return this.pushStack(aG(this,e,false),"not",e)},filter:function(e){return this.pushStack(aG(this,e,true),"filter",e)},is:function(e){return !!e&&(typeof e==="string"?H.test(e)?b(e,this.context).index(this[0])>=0:b.filter(e,this).length>0:this.filter(e).length>0)},closest:function(by,bx){var bv=[],bw,e,bz=this[0];if(b.isArray(by)){var bB=1;while(bz&&bz.ownerDocument&&bz!==bx){for(bw=0;bw<by.length;bw++){if(b(bz).is(by[bw])){bv.push({selector:by[bw],elem:bz,level:bB})}}bz=bz.parentNode;bB++}return bv}var bA=H.test(by)||typeof by!=="string"?b(by,bx||this.context):0;for(bw=0,e=this.length;bw<e;bw++){bz=this[bw];while(bz){if(bA?bA.index(bz)>-1:b.find.matchesSelector(bz,by)){bv.push(bz);break}else{bz=bz.parentNode;if(!bz||!bz.ownerDocument||bz===bx||bz.nodeType===11){break}}}}bv=bv.length>1?b.unique(bv):bv;return this.pushStack(bv,"closest",by)},index:function(e){if(!e){return(this[0]&&this[0].parentNode)?this.prevAll().length:-1}if(typeof e==="string"){return b.inArray(this[0],b(e))}return b.inArray(e.jquery?e[0]:e,this)},add:function(e,bv){var bx=typeof e==="string"?b(e,bv):b.makeArray(e&&e.nodeType?[e]:e),bw=b.merge(this.get(),bx);return this.pushStack(C(bx[0])||C(bw[0])?bw:b.unique(bw))},andSelf:function(){return this.add(this.prevObject)}});function C(e){return !e||!e.parentNode||e.parentNode.nodeType===11}b.each({parent:function(bv){var e=bv.parentNode;return e&&e.nodeType!==11?e:null},parents:function(e){return b.dir(e,"parentNode")},parentsUntil:function(bv,e,bw){return b.dir(bv,"parentNode",bw)},next:function(e){return b.nth(e,2,"nextSibling")},prev:function(e){return b.nth(e,2,"previousSibling")},nextAll:function(e){return b.dir(e,"nextSibling")},prevAll:function(e){return b.dir(e,"previousSibling")},nextUntil:function(bv,e,bw){return b.dir(bv,"nextSibling",bw)},prevUntil:function(bv,e,bw){return b.dir(bv,"previousSibling",bw)},siblings:function(e){return b.sibling(e.parentNode.firstChild,e)},children:function(e){return b.sibling(e.firstChild)},contents:function(e){return b.nodeName(e,"iframe")?e.contentDocument||e.contentWindow.document:b.makeArray(e.childNodes)}},function(e,bv){b.fn[e]=function(by,bw){var bx=b.map(this,bv,by);if(!ab.test(e)){bw=by}if(bw&&typeof bw==="string"){bx=b.filter(bw,bx)}bx=this.length>1&&!ay[e]?b.unique(bx):bx;if((this.length>1||a9.test(bw))&&aq.test(e)){bx=bx.reverse()}return this.pushStack(bx,e,P.call(arguments).join(","))}});b.extend({filter:function(bw,e,bv){if(bv){bw=":not("+bw+")"}return e.length===1?b.find.matchesSelector(e[0],bw)?[e[0]]:[]:b.find.matches(bw,e)},dir:function(bw,bv,by){var e=[],bx=bw[bv];while(bx&&bx.nodeType!==9&&(by===L||bx.nodeType!==1||!b(bx).is(by))){if(bx.nodeType===1){e.push(bx)}bx=bx[bv]}return e},nth:function(by,e,bw,bx){e=e||1;var bv=0;for(;by;by=by[bw]){if(by.nodeType===1&&++bv===e){break}}return by},sibling:function(bw,bv){var e=[];for(;bw;bw=bw.nextSibling){if(bw.nodeType===1&&bw!==bv){e.push(bw)}}return e}});function aG(bx,bw,e){bw=bw||0;if(b.isFunction(bw)){return b.grep(bx,function(bz,by){var bA=!!bw.call(bz,by,bz);return bA===e})}else{if(bw.nodeType){return b.grep(bx,function(bz,by){return(bz===bw)===e})}else{if(typeof bw==="string"){var bv=b.grep(bx,function(by){return by.nodeType===1});if(bp.test(bw)){return b.filter(bw,bv,!e)}else{bw=b.filter(bw,bv)}}}}return b.grep(bx,function(bz,by){return(b.inArray(bz,bw)>=0)===e})}function a(e){var bw=aR.split("|"),bv=e.createDocumentFragment();if(bv.createElement){while(bw.length){bv.createElement(bw.pop())}}return bv}var aR="abbr|article|aside|audio|canvas|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",ag=/ jQuery\d+="(?:\d+|null)"/g,ar=/^\s+/,R=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,d=/<([\w:]+)/,w=/<tbody/i,W=/<|&#?\w+;/,ae=/<(?:script|style)/i,O=/<(?:script|object|embed|option|style)/i,ah=new RegExp("<(?:"+aR+")","i"),o=/checked\s*(?:[^=]|=\s*.checked.)/i,bm=/\/(java|ecma)script/i,aN=/^\s*<!(?:\[CDATA\[|\-\-)/,ax={option:[1,"<select multiple='multiple'>","</select>"],legend:[1,"<fieldset>","</fieldset>"],thead:[1,"<table>","</table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],area:[1,"<map>","</map>"],_default:[0,"",""]},ac=a(av);ax.optgroup=ax.option;ax.tbody=ax.tfoot=ax.colgroup=ax.caption=ax.thead;ax.th=ax.td;if(!b.support.htmlSerialize){ax._default=[1,"div<div>","</div>"]}b.fn.extend({text:function(e){if(b.isFunction(e)){return this.each(function(bw){var bv=b(this);bv.text(e.call(this,bw,bv.text()))})}if(typeof e!=="object"&&e!==L){return this.empty().append((this[0]&&this[0].ownerDocument||av).createTextNode(e))}return b.text(this)},wrapAll:function(e){if(b.isFunction(e)){return this.each(function(bw){b(this).wrapAll(e.call(this,bw))})}if(this[0]){var bv=b(e,this[0].ownerDocument).eq(0).clone(true);if(this[0].parentNode){bv.insertBefore(this[0])}bv.map(function(){var bw=this;while(bw.firstChild&&bw.firstChild.nodeType===1){bw=bw.firstChild}return bw}).append(this)}return this},wrapInner:function(e){if(b.isFunction(e)){return this.each(function(bv){b(this).wrapInner(e.call(this,bv))})}return this.each(function(){var bv=b(this),bw=bv.contents();if(bw.length){bw.wrapAll(e)}else{bv.append(e)}})},wrap:function(e){var bv=b.isFunction(e);return this.each(function(bw){b(this).wrapAll(bv?e.call(this,bw):e)})},unwrap:function(){return this.parent().each(function(){if(!b.nodeName(this,"body")){b(this).replaceWith(this.childNodes)}}).end()},append:function(){return this.domManip(arguments,true,function(e){if(this.nodeType===1){this.appendChild(e)}})},prepend:function(){return this.domManip(arguments,true,function(e){if(this.nodeType===1){this.insertBefore(e,this.firstChild)}})},before:function(){if(this[0]&&this[0].parentNode){return this.domManip(arguments,false,function(bv){this.parentNode.insertBefore(bv,this)})}else{if(arguments.length){var e=b.clean(arguments);e.push.apply(e,this.toArray());return this.pushStack(e,"before",arguments)}}},after:function(){if(this[0]&&this[0].parentNode){return this.domManip(arguments,false,function(bv){this.parentNode.insertBefore(bv,this.nextSibling)})}else{if(arguments.length){var e=this.pushStack(this,"after",arguments);e.push.apply(e,b.clean(arguments));return e}}},remove:function(e,bx){for(var bv=0,bw;(bw=this[bv])!=null;bv++){if(!e||b.filter(e,[bw]).length){if(!bx&&bw.nodeType===1){b.cleanData(bw.getElementsByTagName("*"));b.cleanData([bw])}if(bw.parentNode){bw.parentNode.removeChild(bw)}}}return this},empty:function(){for(var e=0,bv;(bv=this[e])!=null;e++){if(bv.nodeType===1){b.cleanData(bv.getElementsByTagName("*"))}while(bv.firstChild){bv.removeChild(bv.firstChild)}}return this},clone:function(bv,e){bv=bv==null?false:bv;e=e==null?bv:e;return this.map(function(){return b.clone(this,bv,e)})},html:function(bx){if(bx===L){return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(ag,""):null}else{if(typeof bx==="string"&&!ae.test(bx)&&(b.support.leadingWhitespace||!ar.test(bx))&&!ax[(d.exec(bx)||["",""])[1].toLowerCase()]){bx=bx.replace(R,"<$1></$2>");try{for(var bw=0,bv=this.length;bw<bv;bw++){if(this[bw].nodeType===1){b.cleanData(this[bw].getElementsByTagName("*"));this[bw].innerHTML=bx}}}catch(by){this.empty().append(bx)}}else{if(b.isFunction(bx)){this.each(function(bz){var e=b(this);e.html(bx.call(this,bz,e.html()))})}else{this.empty().append(bx)}}}return this},replaceWith:function(e){if(this[0]&&this[0].parentNode){if(b.isFunction(e)){return this.each(function(bx){var bw=b(this),bv=bw.html();bw.replaceWith(e.call(this,bx,bv))})}if(typeof e!=="string"){e=b(e).detach()}return this.each(function(){var bw=this.nextSibling,bv=this.parentNode;b(this).remove();if(bw){b(bw).before(e)}else{b(bv).append(e)}})}else{return this.length?this.pushStack(b(b.isFunction(e)?e():e),"replaceWith",e):this}},detach:function(e){return this.remove(e,true)},domManip:function(bB,bF,bE){var bx,by,bA,bD,bC=bB[0],bv=[];if(!b.support.checkClone&&arguments.length===3&&typeof bC==="string"&&o.test(bC)){return this.each(function(){b(this).domManip(bB,bF,bE,true)})}if(b.isFunction(bC)){return this.each(function(bH){var bG=b(this);bB[0]=bC.call(this,bH,bF?bG.html():L);bG.domManip(bB,bF,bE)})}if(this[0]){bD=bC&&bC.parentNode;if(b.support.parentNode&&bD&&bD.nodeType===11&&bD.childNodes.length===this.length){bx={fragment:bD}}else{bx=b.buildFragment(bB,this,bv)}bA=bx.fragment;if(bA.childNodes.length===1){by=bA=bA.firstChild}else{by=bA.firstChild}if(by){bF=bF&&b.nodeName(by,"tr");for(var bw=0,e=this.length,bz=e-1;bw<e;bw++){bE.call(bF?ba(this[bw],by):this[bw],bx.cacheable||(e>1&&bw<bz)?b.clone(bA,true,true):bA)}}if(bv.length){b.each(bv,bo)}}return this}});function ba(e,bv){return b.nodeName(e,"table")?(e.getElementsByTagName("tbody")[0]||e.appendChild(e.ownerDocument.createElement("tbody"))):e}function t(bB,bv){if(bv.nodeType!==1||!b.hasData(bB)){return}var by,bx,e,bA=b._data(bB),bz=b._data(bv,bA),bw=bA.events;if(bw){delete bz.handle;bz.events={};for(by in bw){for(bx=0,e=bw[by].length;bx<e;bx++){b.event.add(bv,by+(bw[by][bx].namespace?".":"")+bw[by][bx].namespace,bw[by][bx],bw[by][bx].data)}}}if(bz.data){bz.data=b.extend({},bz.data)}}function ai(bv,e){var bw;if(e.nodeType!==1){return}if(e.clearAttributes){e.clearAttributes()}if(e.mergeAttributes){e.mergeAttributes(bv)}bw=e.nodeName.toLowerCase();if(bw==="object"){e.outerHTML=bv.outerHTML}else{if(bw==="input"&&(bv.type==="checkbox"||bv.type==="radio")){if(bv.checked){e.defaultChecked=e.checked=bv.checked}if(e.value!==bv.value){e.value=bv.value}}else{if(bw==="option"){e.selected=bv.defaultSelected}else{if(bw==="input"||bw==="textarea"){e.defaultValue=bv.defaultValue}}}}e.removeAttribute(b.expando)}b.buildFragment=function(bz,bx,bv){var by,e,bw,bA,bB=bz[0];if(bx&&bx[0]){bA=bx[0].ownerDocument||bx[0]}if(!bA.createDocumentFragment){bA=av}if(bz.length===1&&typeof bB==="string"&&bB.length<512&&bA===av&&bB.charAt(0)==="<"&&!O.test(bB)&&(b.support.checkClone||!o.test(bB))&&(b.support.html5Clone||!ah.test(bB))){e=true;bw=b.fragments[bB];if(bw&&bw!==1){by=bw}}if(!by){by=bA.createDocumentFragment();b.clean(bz,bA,by,bv)}if(e){b.fragments[bB]=bw?by:1}return{fragment:by,cacheable:e}};b.fragments={};b.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(e,bv){b.fn[e]=function(bw){var bz=[],bC=b(bw),bB=this.length===1&&this[0].parentNode;if(bB&&bB.nodeType===11&&bB.childNodes.length===1&&bC.length===1){bC[bv](this[0]);return this}else{for(var bA=0,bx=bC.length;bA<bx;bA++){var by=(bA>0?this.clone(true):this).get();b(bC[bA])[bv](by);bz=bz.concat(by)}return this.pushStack(bz,e,bC.selector)}}});function bg(e){if(typeof e.getElementsByTagName!=="undefined"){return e.getElementsByTagName("*")}else{if(typeof e.querySelectorAll!=="undefined"){return e.querySelectorAll("*")}else{return[]}}}function az(e){if(e.type==="checkbox"||e.type==="radio"){e.defaultChecked=e.checked}}function E(e){var bv=(e.nodeName||"").toLowerCase();if(bv==="input"){az(e)}else{if(bv!=="script"&&typeof e.getElementsByTagName!=="undefined"){b.grep(e.getElementsByTagName("input"),az)}}}function al(e){var bv=av.createElement("div");ac.appendChild(bv);bv.innerHTML=e.outerHTML;return bv.firstChild}b.extend({clone:function(by,bA,bw){var e,bv,bx,bz=b.support.html5Clone||!ah.test("<"+by.nodeName)?by.cloneNode(true):al(by);if((!b.support.noCloneEvent||!b.support.noCloneChecked)&&(by.nodeType===1||by.nodeType===11)&&!b.isXMLDoc(by)){ai(by,bz);e=bg(by);bv=bg(bz);for(bx=0;e[bx];++bx){if(bv[bx]){ai(e[bx],bv[bx])}}}if(bA){t(by,bz);if(bw){e=bg(by);bv=bg(bz);for(bx=0;e[bx];++bx){t(e[bx],bv[bx])}}}e=bv=null;return bz},clean:function(bw,by,bH,bA){var bF;by=by||av;if(typeof by.createElement==="undefined"){by=by.ownerDocument||by[0]&&by[0].ownerDocument||av}var bI=[],bB;for(var bE=0,bz;(bz=bw[bE])!=null;bE++){if(typeof bz==="number"){bz+=""}if(!bz){continue}if(typeof bz==="string"){if(!W.test(bz)){bz=by.createTextNode(bz)}else{bz=bz.replace(R,"<$1></$2>");var bK=(d.exec(bz)||["",""])[1].toLowerCase(),bx=ax[bK]||ax._default,bD=bx[0],bv=by.createElement("div");if(by===av){ac.appendChild(bv)}else{a(by).appendChild(bv)}bv.innerHTML=bx[1]+bz+bx[2];while(bD--){bv=bv.lastChild}if(!b.support.tbody){var e=w.test(bz),bC=bK==="table"&&!e?bv.firstChild&&bv.firstChild.childNodes:bx[1]==="<table>"&&!e?bv.childNodes:[];for(bB=bC.length-1;bB>=0;--bB){if(b.nodeName(bC[bB],"tbody")&&!bC[bB].childNodes.length){bC[bB].parentNode.removeChild(bC[bB])}}}if(!b.support.leadingWhitespace&&ar.test(bz)){bv.insertBefore(by.createTextNode(ar.exec(bz)[0]),bv.firstChild)}bz=bv.childNodes}}var bG;if(!b.support.appendChecked){if(bz[0]&&typeof(bG=bz.length)==="number"){for(bB=0;bB<bG;bB++){E(bz[bB])}}else{E(bz)}}if(bz.nodeType){bI.push(bz)}else{bI=b.merge(bI,bz)}}if(bH){bF=function(bL){return !bL.type||bm.test(bL.type)};for(bE=0;bI[bE];bE++){if(bA&&b.nodeName(bI[bE],"script")&&(!bI[bE].type||bI[bE].type.toLowerCase()==="text/javascript")){bA.push(bI[bE].parentNode?bI[bE].parentNode.removeChild(bI[bE]):bI[bE])}else{if(bI[bE].nodeType===1){var bJ=b.grep(bI[bE].getElementsByTagName("script"),bF);bI.splice.apply(bI,[bE+1,0].concat(bJ))}bH.appendChild(bI[bE])}}}return bI},cleanData:function(bv){var by,bw,e=b.cache,bB=b.event.special,bA=b.support.deleteExpando;for(var bz=0,bx;(bx=bv[bz])!=null;bz++){if(bx.nodeName&&b.noData[bx.nodeName.toLowerCase()]){continue}bw=bx[b.expando];if(bw){by=e[bw];if(by&&by.events){for(var bC in by.events){if(bB[bC]){b.event.remove(bx,bC)}else{b.removeEvent(bx,bC,by.handle)}}if(by.handle){by.handle.elem=null}}if(bA){delete bx[b.expando]}else{if(bx.removeAttribute){bx.removeAttribute(b.expando)}}delete e[bw]}}}});function bo(e,bv){if(bv.src){b.ajax({url:bv.src,async:false,dataType:"script"})}else{b.globalEval((bv.text||bv.textContent||bv.innerHTML||"").replace(aN,"/*$0*/"))}if(bv.parentNode){bv.parentNode.removeChild(bv)}}var ak=/alpha\([^)]*\)/i,au=/opacity=([^)]*)/,z=/([A-Z]|^ms)/g,bc=/^-?\d+(?:px)?$/i,bn=/^-?\d/,I=/^([\-+])=([\-+.\de]+)/,a7={position:"absolute",visibility:"hidden",display:"block"},an=["Left","Right"],a1=["Top","Bottom"],Z,aI,aX;b.fn.css=function(e,bv){if(arguments.length===2&&bv===L){return this}return b.access(this,e,bv,true,function(bx,bw,by){return by!==L?b.style(bx,bw,by):b.css(bx,bw)})};b.extend({cssHooks:{opacity:{get:function(bw,bv){if(bv){var e=Z(bw,"opacity","opacity");return e===""?"1":e}else{return bw.style.opacity}}}},cssNumber:{fillOpacity:true,fontWeight:true,lineHeight:true,opacity:true,orphans:true,widows:true,zIndex:true,zoom:true},cssProps:{"float":b.support.cssFloat?"cssFloat":"styleFloat"},style:function(bx,bw,bD,by){if(!bx||bx.nodeType===3||bx.nodeType===8||!bx.style){return}var bB,bC,bz=b.camelCase(bw),bv=bx.style,bE=b.cssHooks[bz];bw=b.cssProps[bz]||bz;if(bD!==L){bC=typeof bD;if(bC==="string"&&(bB=I.exec(bD))){bD=(+(bB[1]+1)*+bB[2])+parseFloat(b.css(bx,bw));bC="number"}if(bD==null||bC==="number"&&isNaN(bD)){return}if(bC==="number"&&!b.cssNumber[bz]){bD+="px"}if(!bE||!("set" in bE)||(bD=bE.set(bx,bD))!==L){try{bv[bw]=bD}catch(bA){}}}else{if(bE&&"get" in bE&&(bB=bE.get(bx,false,by))!==L){return bB}return bv[bw]}},css:function(by,bx,bv){var bw,e;bx=b.camelCase(bx);e=b.cssHooks[bx];bx=b.cssProps[bx]||bx;if(bx==="cssFloat"){bx="float"}if(e&&"get" in e&&(bw=e.get(by,true,bv))!==L){return bw}else{if(Z){return Z(by,bx)}}},swap:function(bx,bw,by){var e={};for(var bv in bw){e[bv]=bx.style[bv];bx.style[bv]=bw[bv]}by.call(bx);for(bv in bw){bx.style[bv]=e[bv]}}});b.curCSS=b.css;b.each(["height","width"],function(bv,e){b.cssHooks[e]={get:function(by,bx,bw){var bz;if(bx){if(by.offsetWidth!==0){return p(by,e,bw)}else{b.swap(by,a7,function(){bz=p(by,e,bw)})}return bz}},set:function(bw,bx){if(bc.test(bx)){bx=parseFloat(bx);if(bx>=0){return bx+"px"}}else{return bx}}}});if(!b.support.opacity){b.cssHooks.opacity={get:function(bv,e){return au.test((e&&bv.currentStyle?bv.currentStyle.filter:bv.style.filter)||"")?(parseFloat(RegExp.$1)/100)+"":e?"1":""},set:function(by,bz){var bx=by.style,bv=by.currentStyle,e=b.isNumeric(bz)?"alpha(opacity="+bz*100+")":"",bw=bv&&bv.filter||bx.filter||"";bx.zoom=1;if(bz>=1&&b.trim(bw.replace(ak,""))===""){bx.removeAttribute("filter");if(bv&&!bv.filter){return}}bx.filter=ak.test(bw)?bw.replace(ak,e):bw+" "+e}}}b(function(){if(!b.support.reliableMarginRight){b.cssHooks.marginRight={get:function(bw,bv){var e;b.swap(bw,{display:"inline-block"},function(){if(bv){e=Z(bw,"margin-right","marginRight")}else{e=bw.style.marginRight}});return e}}}});if(av.defaultView&&av.defaultView.getComputedStyle){aI=function(by,bw){var bv,bx,e;bw=bw.replace(z,"-$1").toLowerCase();if((bx=by.ownerDocument.defaultView)&&(e=bx.getComputedStyle(by,null))){bv=e.getPropertyValue(bw);if(bv===""&&!b.contains(by.ownerDocument.documentElement,by)){bv=b.style(by,bw)}}return bv}}if(av.documentElement.currentStyle){aX=function(bz,bw){var bA,e,by,bv=bz.currentStyle&&bz.currentStyle[bw],bx=bz.style;if(bv===null&&bx&&(by=bx[bw])){bv=by}if(!bc.test(bv)&&bn.test(bv)){bA=bx.left;e=bz.runtimeStyle&&bz.runtimeStyle.left;if(e){bz.runtimeStyle.left=bz.currentStyle.left}bx.left=bw==="fontSize"?"1em":(bv||0);bv=bx.pixelLeft+"px";bx.left=bA;if(e){bz.runtimeStyle.left=e}}return bv===""?"auto":bv}}Z=aI||aX;function p(by,bw,bv){var bA=bw==="width"?by.offsetWidth:by.offsetHeight,bz=bw==="width"?an:a1,bx=0,e=bz.length;if(bA>0){if(bv!=="border"){for(;bx<e;bx++){if(!bv){bA-=parseFloat(b.css(by,"padding"+bz[bx]))||0}if(bv==="margin"){bA+=parseFloat(b.css(by,bv+bz[bx]))||0}else{bA-=parseFloat(b.css(by,"border"+bz[bx]+"Width"))||0}}}return bA+"px"}bA=Z(by,bw,bw);if(bA<0||bA==null){bA=by.style[bw]||0}bA=parseFloat(bA)||0;if(bv){for(;bx<e;bx++){bA+=parseFloat(b.css(by,"padding"+bz[bx]))||0;if(bv!=="padding"){bA+=parseFloat(b.css(by,"border"+bz[bx]+"Width"))||0}if(bv==="margin"){bA+=parseFloat(b.css(by,bv+bz[bx]))||0}}}return bA+"px"}if(b.expr&&b.expr.filters){b.expr.filters.hidden=function(bw){var bv=bw.offsetWidth,e=bw.offsetHeight;return(bv===0&&e===0)||(!b.support.reliableHiddenOffsets&&((bw.style&&bw.style.display)||b.css(bw,"display"))==="none")};b.expr.filters.visible=function(e){return !b.expr.filters.hidden(e)}}var k=/%20/g,ap=/\[\]$/,bs=/\r?\n/g,bq=/#.*$/,aD=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,aZ=/^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,aM=/^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,aQ=/^(?:GET|HEAD)$/,c=/^\/\//,M=/\?/,a6=/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi,q=/^(?:select|textarea)/i,h=/\s+/,br=/([?&])_=[^&]*/,K=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/,A=b.fn.load,aa={},r={},aE,s,aV=["*/"]+["*"];try{aE=bl.href}catch(aw){aE=av.createElement("a");aE.href="";aE=aE.href}s=K.exec(aE.toLowerCase())||[];function f(e){return function(by,bA){if(typeof by!=="string"){bA=by;by="*"}if(b.isFunction(bA)){var bx=by.toLowerCase().split(h),bw=0,bz=bx.length,bv,bB,bC;for(;bw<bz;bw++){bv=bx[bw];bC=/^\+/.test(bv);if(bC){bv=bv.substr(1)||"*"}bB=e[bv]=e[bv]||[];bB[bC?"unshift":"push"](bA)}}}}function aW(bv,bE,bz,bD,bB,bx){bB=bB||bE.dataTypes[0];bx=bx||{};bx[bB]=true;var bA=bv[bB],bw=0,e=bA?bA.length:0,by=(bv===aa),bC;for(;bw<e&&(by||!bC);bw++){bC=bA[bw](bE,bz,bD);if(typeof bC==="string"){if(!by||bx[bC]){bC=L}else{bE.dataTypes.unshift(bC);bC=aW(bv,bE,bz,bD,bC,bx)}}}if((by||!bC)&&!bx["*"]){bC=aW(bv,bE,bz,bD,"*",bx)}return bC}function am(bw,bx){var bv,e,by=b.ajaxSettings.flatOptions||{};for(bv in bx){if(bx[bv]!==L){(by[bv]?bw:(e||(e={})))[bv]=bx[bv]}}if(e){b.extend(true,bw,e)}}b.fn.extend({load:function(bw,bz,bA){if(typeof bw!=="string"&&A){return A.apply(this,arguments)}else{if(!this.length){return this}}var by=bw.indexOf(" ");if(by>=0){var e=bw.slice(by,bw.length);bw=bw.slice(0,by)}var bx="GET";if(bz){if(b.isFunction(bz)){bA=bz;bz=L}else{if(typeof bz==="object"){bz=b.param(bz,b.ajaxSettings.traditional);bx="POST"}}}var bv=this;b.ajax({url:bw,type:bx,dataType:"html",data:bz,complete:function(bC,bB,bD){bD=bC.responseText;if(bC.isResolved()){bC.done(function(bE){bD=bE});bv.html(e?b("<div>").append(bD.replace(a6,"")).find(e):bD)}if(bA){bv.each(bA,[bD,bB,bC])}}});return this},serialize:function(){return b.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?b.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||q.test(this.nodeName)||aZ.test(this.type))}).map(function(e,bv){var bw=b(this).val();return bw==null?null:b.isArray(bw)?b.map(bw,function(by,bx){return{name:bv.name,value:by.replace(bs,"\r\n")}}):{name:bv.name,value:bw.replace(bs,"\r\n")}}).get()}});b.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(e,bv){b.fn[bv]=function(bw){return this.on(bv,bw)}});b.each(["get","post"],function(e,bv){b[bv]=function(bw,by,bz,bx){if(b.isFunction(by)){bx=bx||bz;bz=by;by=L}return b.ajax({type:bv,url:bw,data:by,success:bz,dataType:bx})}});b.extend({getScript:function(e,bv){return b.get(e,L,bv,"script")},getJSON:function(e,bv,bw){return b.get(e,bv,bw,"json")},ajaxSetup:function(bv,e){if(e){am(bv,b.ajaxSettings)}else{e=bv;bv=b.ajaxSettings}am(bv,e);return bv},ajaxSettings:{url:aE,isLocal:aM.test(s[1]),global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":aV},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":bb.String,"text html":true,"text json":b.parseJSON,"text xml":b.parseXML},flatOptions:{context:true,url:true}},ajaxPrefilter:f(aa),ajaxTransport:f(r),ajax:function(bz,bx){if(typeof bz==="object"){bx=bz;bz=L}bx=bx||{};var bD=b.ajaxSetup({},bx),bS=bD.context||bD,bG=bS!==bD&&(bS.nodeType||bS instanceof b)?b(bS):b.event,bR=b.Deferred(),bN=b.Callbacks("once memory"),bB=bD.statusCode||{},bC,bH={},bO={},bQ,by,bL,bE,bI,bA=0,bw,bK,bJ={readyState:0,setRequestHeader:function(bT,bU){if(!bA){var e=bT.toLowerCase();bT=bO[e]=bO[e]||bT;bH[bT]=bU}return this},getAllResponseHeaders:function(){return bA===2?bQ:null},getResponseHeader:function(bT){var e;if(bA===2){if(!by){by={};while((e=aD.exec(bQ))){by[e[1].toLowerCase()]=e[2]}}e=by[bT.toLowerCase()]}return e===L?null:e},overrideMimeType:function(e){if(!bA){bD.mimeType=e}return this},abort:function(e){e=e||"abort";if(bL){bL.abort(e)}bF(0,e);return this}};function bF(bZ,bU,b0,bW){if(bA===2){return}bA=2;if(bE){clearTimeout(bE)}bL=L;bQ=bW||"";bJ.readyState=bZ>0?4:0;var bT,b4,b3,bX=bU,bY=b0?bj(bD,bJ,b0):L,bV,b2;if(bZ>=200&&bZ<300||bZ===304){if(bD.ifModified){if((bV=bJ.getResponseHeader("Last-Modified"))){b.lastModified[bC]=bV}if((b2=bJ.getResponseHeader("Etag"))){b.etag[bC]=b2}}if(bZ===304){bX="notmodified";bT=true}else{try{b4=G(bD,bY);bX="success";bT=true}catch(b1){bX="parsererror";b3=b1}}}else{b3=bX;if(!bX||bZ){bX="error";if(bZ<0){bZ=0}}}bJ.status=bZ;bJ.statusText=""+(bU||bX);if(bT){bR.resolveWith(bS,[b4,bX,bJ])}else{bR.rejectWith(bS,[bJ,bX,b3])}bJ.statusCode(bB);bB=L;if(bw){bG.trigger("ajax"+(bT?"Success":"Error"),[bJ,bD,bT?b4:b3])}bN.fireWith(bS,[bJ,bX]);if(bw){bG.trigger("ajaxComplete",[bJ,bD]);if(!(--b.active)){b.event.trigger("ajaxStop")}}}bR.promise(bJ);bJ.success=bJ.done;bJ.error=bJ.fail;bJ.complete=bN.add;bJ.statusCode=function(bT){if(bT){var e;if(bA<2){for(e in bT){bB[e]=[bB[e],bT[e]]}}else{e=bT[bJ.status];bJ.then(e,e)}}return this};bD.url=((bz||bD.url)+"").replace(bq,"").replace(c,s[1]+"//");bD.dataTypes=b.trim(bD.dataType||"*").toLowerCase().split(h);if(bD.crossDomain==null){bI=K.exec(bD.url.toLowerCase());bD.crossDomain=!!(bI&&(bI[1]!=s[1]||bI[2]!=s[2]||(bI[3]||(bI[1]==="http:"?80:443))!=(s[3]||(s[1]==="http:"?80:443))))}if(bD.data&&bD.processData&&typeof bD.data!=="string"){bD.data=b.param(bD.data,bD.traditional)}aW(aa,bD,bx,bJ);if(bA===2){return false}bw=bD.global;bD.type=bD.type.toUpperCase();bD.hasContent=!aQ.test(bD.type);if(bw&&b.active++===0){b.event.trigger("ajaxStart")}if(!bD.hasContent){if(bD.data){bD.url+=(M.test(bD.url)?"&":"?")+bD.data;delete bD.data}bC=bD.url;if(bD.cache===false){var bv=b.now(),bP=bD.url.replace(br,"$1_="+bv);bD.url=bP+((bP===bD.url)?(M.test(bD.url)?"&":"?")+"_="+bv:"")}}if(bD.data&&bD.hasContent&&bD.contentType!==false||bx.contentType){bJ.setRequestHeader("Content-Type",bD.contentType)}if(bD.ifModified){bC=bC||bD.url;if(b.lastModified[bC]){bJ.setRequestHeader("If-Modified-Since",b.lastModified[bC])}if(b.etag[bC]){bJ.setRequestHeader("If-None-Match",b.etag[bC])}}bJ.setRequestHeader("Accept",bD.dataTypes[0]&&bD.accepts[bD.dataTypes[0]]?bD.accepts[bD.dataTypes[0]]+(bD.dataTypes[0]!=="*"?", "+aV+"; q=0.01":""):bD.accepts["*"]);for(bK in bD.headers){bJ.setRequestHeader(bK,bD.headers[bK])}if(bD.beforeSend&&(bD.beforeSend.call(bS,bJ,bD)===false||bA===2)){bJ.abort();return false}for(bK in {success:1,error:1,complete:1}){bJ[bK](bD[bK])}bL=aW(r,bD,bx,bJ);if(!bL){bF(-1,"No Transport")}else{bJ.readyState=1;if(bw){bG.trigger("ajaxSend",[bJ,bD])}if(bD.async&&bD.timeout>0){bE=setTimeout(function(){bJ.abort("timeout")},bD.timeout)}try{bA=1;bL.send(bH,bF)}catch(bM){if(bA<2){bF(-1,bM)}else{throw bM}}}return bJ},param:function(e,bw){var bv=[],by=function(bz,bA){bA=b.isFunction(bA)?bA():bA;bv[bv.length]=encodeURIComponent(bz)+"="+encodeURIComponent(bA)};if(bw===L){bw=b.ajaxSettings.traditional}if(b.isArray(e)||(e.jquery&&!b.isPlainObject(e))){b.each(e,function(){by(this.name,this.value)})}else{for(var bx in e){v(bx,e[bx],bw,by)}}return bv.join("&").replace(k,"+")}});function v(bw,by,bv,bx){if(b.isArray(by)){b.each(by,function(bA,bz){if(bv||ap.test(bw)){bx(bw,bz)}else{v(bw+"["+(typeof bz==="object"||b.isArray(bz)?bA:"")+"]",bz,bv,bx)}})}else{if(!bv&&by!=null&&typeof by==="object"){for(var e in by){v(bw+"["+e+"]",by[e],bv,bx)}}else{bx(bw,by)}}}b.extend({active:0,lastModified:{},etag:{}});function bj(bD,bC,bz){var bv=bD.contents,bB=bD.dataTypes,bw=bD.responseFields,by,bA,bx,e;for(bA in bw){if(bA in bz){bC[bw[bA]]=bz[bA]}}while(bB[0]==="*"){bB.shift();if(by===L){by=bD.mimeType||bC.getResponseHeader("content-type")}}if(by){for(bA in bv){if(bv[bA]&&bv[bA].test(by)){bB.unshift(bA);break}}}if(bB[0] in bz){bx=bB[0]}else{for(bA in bz){if(!bB[0]||bD.converters[bA+" "+bB[0]]){bx=bA;break}if(!e){e=bA}}bx=bx||e}if(bx){if(bx!==bB[0]){bB.unshift(bx)}return bz[bx]}}function G(bH,bz){if(bH.dataFilter){bz=bH.dataFilter(bz,bH.dataType)}var bD=bH.dataTypes,bG={},bA,bE,bw=bD.length,bB,bC=bD[0],bx,by,bF,bv,e;for(bA=1;bA<bw;bA++){if(bA===1){for(bE in bH.converters){if(typeof bE==="string"){bG[bE.toLowerCase()]=bH.converters[bE]}}}bx=bC;bC=bD[bA];if(bC==="*"){bC=bx}else{if(bx!=="*"&&bx!==bC){by=bx+" "+bC;bF=bG[by]||bG["* "+bC];if(!bF){e=L;for(bv in bG){bB=bv.split(" ");if(bB[0]===bx||bB[0]==="*"){e=bG[bB[1]+" "+bC];if(e){bv=bG[bv];if(bv===true){bF=e}else{if(e===true){bF=bv}}break}}}}if(!(bF||e)){b.error("No conversion from "+by.replace(" "," to "))}if(bF!==true){bz=bF?bF(bz):e(bv(bz))}}}}return bz}var aC=b.now(),u=/(\=)\?(&|$)|\?\?/i;b.ajaxSetup({jsonp:"callback",jsonpCallback:function(){return b.expando+"_"+(aC++)}});b.ajaxPrefilter("json jsonp",function(bD,bA,bC){var bx=bD.contentType==="application/x-www-form-urlencoded"&&(typeof bD.data==="string");if(bD.dataTypes[0]==="jsonp"||bD.jsonp!==false&&(u.test(bD.url)||bx&&u.test(bD.data))){var bB,bw=bD.jsonpCallback=b.isFunction(bD.jsonpCallback)?bD.jsonpCallback():bD.jsonpCallback,bz=bb[bw],e=bD.url,by=bD.data,bv="$1"+bw+"$2";if(bD.jsonp!==false){e=e.replace(u,bv);if(bD.url===e){if(bx){by=by.replace(u,bv)}if(bD.data===by){e+=(/\?/.test(e)?"&":"?")+bD.jsonp+"="+bw}}}bD.url=e;bD.data=by;bb[bw]=function(bE){bB=[bE]};bC.always(function(){bb[bw]=bz;if(bB&&b.isFunction(bz)){bb[bw](bB[0])}});bD.converters["script json"]=function(){if(!bB){b.error(bw+" was not called")}return bB[0]};bD.dataTypes[0]="json";return"script"}});b.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(e){b.globalEval(e);return e}}});b.ajaxPrefilter("script",function(e){if(e.cache===L){e.cache=false}if(e.crossDomain){e.type="GET";e.global=false}});b.ajaxTransport("script",function(bw){if(bw.crossDomain){var e,bv=av.head||av.getElementsByTagName("head")[0]||av.documentElement;return{send:function(bx,by){e=av.createElement("script");e.async="async";if(bw.scriptCharset){e.charset=bw.scriptCharset}e.src=bw.url;e.onload=e.onreadystatechange=function(bA,bz){if(bz||!e.readyState||/loaded|complete/.test(e.readyState)){e.onload=e.onreadystatechange=null;if(bv&&e.parentNode){bv.removeChild(e)}e=L;if(!bz){by(200,"success")}}};bv.insertBefore(e,bv.firstChild)},abort:function(){if(e){e.onload(0,1)}}}}});var B=bb.ActiveXObject?function(){for(var e in N){N[e](0,1)}}:false,y=0,N;function aL(){try{return new bb.XMLHttpRequest()}catch(bv){}}function aj(){try{return new bb.ActiveXObject("Microsoft.XMLHTTP")}catch(bv){}}b.ajaxSettings.xhr=bb.ActiveXObject?function(){return !this.isLocal&&aL()||aj()}:aL;(function(e){b.extend(b.support,{ajax:!!e,cors:!!e&&("withCredentials" in e)})})(b.ajaxSettings.xhr());if(b.support.ajax){b.ajaxTransport(function(e){if(!e.crossDomain||b.support.cors){var bv;return{send:function(bB,bw){var bA=e.xhr(),bz,by;if(e.username){bA.open(e.type,e.url,e.async,e.username,e.password)}else{bA.open(e.type,e.url,e.async)}if(e.xhrFields){for(by in e.xhrFields){bA[by]=e.xhrFields[by]}}if(e.mimeType&&bA.overrideMimeType){bA.overrideMimeType(e.mimeType)}if(!e.crossDomain&&!bB["X-Requested-With"]){bB["X-Requested-With"]="XMLHttpRequest"}try{for(by in bB){bA.setRequestHeader(by,bB[by])}}catch(bx){}bA.send((e.hasContent&&e.data)||null);bv=function(bK,bE){var bF,bD,bC,bI,bH;try{if(bv&&(bE||bA.readyState===4)){bv=L;if(bz){bA.onreadystatechange=b.noop;if(B){delete N[bz]}}if(bE){if(bA.readyState!==4){bA.abort()}}else{bF=bA.status;bC=bA.getAllResponseHeaders();bI={};bH=bA.responseXML;if(bH&&bH.documentElement){bI.xml=bH}bI.text=bA.responseText;try{bD=bA.statusText}catch(bJ){bD=""}if(!bF&&e.isLocal&&!e.crossDomain){bF=bI.text?200:404}else{if(bF===1223){bF=204}}}}}catch(bG){if(!bE){bw(-1,bG)}}if(bI){bw(bF,bD,bI,bC)}};if(!e.async||bA.readyState===4){bv()}else{bz=++y;if(B){if(!N){N={};b(bb).unload(B)}N[bz]=bv}bA.onreadystatechange=bv}},abort:function(){if(bv){bv(0,1)}}}}})}var Q={},a8,m,aB=/^(?:toggle|show|hide)$/,aT=/^([+\-]=)?([\d+.\-]+)([a-z%]*)$/i,a3,aH=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]],a4;b.fn.extend({show:function(bx,bA,bz){var bw,by;if(bx||bx===0){return this.animate(a0("show",3),bx,bA,bz)}else{for(var bv=0,e=this.length;bv<e;bv++){bw=this[bv];if(bw.style){by=bw.style.display;if(!b._data(bw,"olddisplay")&&by==="none"){by=bw.style.display=""}if(by===""&&b.css(bw,"display")==="none"){b._data(bw,"olddisplay",x(bw.nodeName))}}}for(bv=0;bv<e;bv++){bw=this[bv];if(bw.style){by=bw.style.display;if(by===""||by==="none"){bw.style.display=b._data(bw,"olddisplay")||""}}}return this}},hide:function(bx,bA,bz){if(bx||bx===0){return this.animate(a0("hide",3),bx,bA,bz)}else{var bw,by,bv=0,e=this.length;for(;bv<e;bv++){bw=this[bv];if(bw.style){by=b.css(bw,"display");if(by!=="none"&&!b._data(bw,"olddisplay")){b._data(bw,"olddisplay",by)}}}for(bv=0;bv<e;bv++){if(this[bv].style){this[bv].style.display="none"}}return this}},_toggle:b.fn.toggle,toggle:function(bw,bv,bx){var e=typeof bw==="boolean";if(b.isFunction(bw)&&b.isFunction(bv)){this._toggle.apply(this,arguments)}else{if(bw==null||e){this.each(function(){var by=e?bw:b(this).is(":hidden");b(this)[by?"show":"hide"]()})}else{this.animate(a0("toggle",3),bw,bv,bx)}}return this},fadeTo:function(e,bx,bw,bv){return this.filter(":hidden").css("opacity",0).show().end().animate({opacity:bx},e,bw,bv)},animate:function(bz,bw,by,bx){var e=b.speed(bw,by,bx);if(b.isEmptyObject(bz)){return this.each(e.complete,[false])}bz=b.extend({},bz);function bv(){if(e.queue===false){b._mark(this)}var bE=b.extend({},e),bK=this.nodeType===1,bI=bK&&b(this).is(":hidden"),bB,bF,bD,bJ,bH,bC,bG,bL,bA;bE.animatedProperties={};for(bD in bz){bB=b.camelCase(bD);if(bD!==bB){bz[bB]=bz[bD];delete bz[bD]}bF=bz[bB];if(b.isArray(bF)){bE.animatedProperties[bB]=bF[1];bF=bz[bB]=bF[0]}else{bE.animatedProperties[bB]=bE.specialEasing&&bE.specialEasing[bB]||bE.easing||"swing"}if(bF==="hide"&&bI||bF==="show"&&!bI){return bE.complete.call(this)}if(bK&&(bB==="height"||bB==="width")){bE.overflow=[this.style.overflow,this.style.overflowX,this.style.overflowY];if(b.css(this,"display")==="inline"&&b.css(this,"float")==="none"){if(!b.support.inlineBlockNeedsLayout||x(this.nodeName)==="inline"){this.style.display="inline-block"}else{this.style.zoom=1}}}}if(bE.overflow!=null){this.style.overflow="hidden"}for(bD in bz){bJ=new b.fx(this,bE,bD);bF=bz[bD];if(aB.test(bF)){bA=b._data(this,"toggle"+bD)||(bF==="toggle"?bI?"show":"hide":0);if(bA){b._data(this,"toggle"+bD,bA==="show"?"hide":"show");bJ[bA]()}else{bJ[bF]()}}else{bH=aT.exec(bF);bC=bJ.cur();if(bH){bG=parseFloat(bH[2]);bL=bH[3]||(b.cssNumber[bD]?"":"px");if(bL!=="px"){b.style(this,bD,(bG||1)+bL);bC=((bG||1)/bJ.cur())*bC;b.style(this,bD,bC+bL)}if(bH[1]){bG=((bH[1]==="-="?-1:1)*bG)+bC}bJ.custom(bC,bG,bL)}else{bJ.custom(bC,bF,"")}}}return true}return e.queue===false?this.each(bv):this.queue(e.queue,bv)},stop:function(bw,bv,e){if(typeof bw!=="string"){e=bv;bv=bw;bw=L}if(bv&&bw!==false){this.queue(bw||"fx",[])}return this.each(function(){var bx,by=false,bA=b.timers,bz=b._data(this);if(!e){b._unmark(true,this)}function bB(bE,bF,bD){var bC=bF[bD];b.removeData(bE,bD,true);bC.stop(e)}if(bw==null){for(bx in bz){if(bz[bx]&&bz[bx].stop&&bx.indexOf(".run")===bx.length-4){bB(this,bz,bx)}}}else{if(bz[bx=bw+".run"]&&bz[bx].stop){bB(this,bz,bx)}}for(bx=bA.length;bx--;){if(bA[bx].elem===this&&(bw==null||bA[bx].queue===bw)){if(e){bA[bx](true)}else{bA[bx].saveState()}by=true;bA.splice(bx,1)}}if(!(e&&by)){b.dequeue(this,bw)}})}});function bh(){setTimeout(at,0);return(a4=b.now())}function at(){a4=L}function a0(bv,e){var bw={};b.each(aH.concat.apply([],aH.slice(0,e)),function(){bw[this]=bv});return bw}b.each({slideDown:a0("show",1),slideUp:a0("hide",1),slideToggle:a0("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(e,bv){b.fn[e]=function(bw,by,bx){return this.animate(bv,bw,by,bx)}});b.extend({speed:function(bw,bx,bv){var e=bw&&typeof bw==="object"?b.extend({},bw):{complete:bv||!bv&&bx||b.isFunction(bw)&&bw,duration:bw,easing:bv&&bx||bx&&!b.isFunction(bx)&&bx};e.duration=b.fx.off?0:typeof e.duration==="number"?e.duration:e.duration in b.fx.speeds?b.fx.speeds[e.duration]:b.fx.speeds._default;if(e.queue==null||e.queue===true){e.queue="fx"}e.old=e.complete;e.complete=function(by){if(b.isFunction(e.old)){e.old.call(this)}if(e.queue){b.dequeue(this,e.queue)}else{if(by!==false){b._unmark(this)}}};return e},easing:{linear:function(bw,bx,e,bv){return e+bv*bw},swing:function(bw,bx,e,bv){return((-Math.cos(bw*Math.PI)/2)+0.5)*bv+e}},timers:[],fx:function(bv,e,bw){this.options=e;this.elem=bv;this.prop=bw;e.orig=e.orig||{}}});b.fx.prototype={update:function(){if(this.options.step){this.options.step.call(this.elem,this.now,this)}(b.fx.step[this.prop]||b.fx.step._default)(this)},cur:function(){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null)){return this.elem[this.prop]}var e,bv=b.css(this.elem,this.prop);return isNaN(e=parseFloat(bv))?!bv||bv==="auto"?0:bv:e},custom:function(bz,by,bx){var e=this,bw=b.fx;this.startTime=a4||bh();this.end=by;this.now=this.start=bz;this.pos=this.state=0;this.unit=bx||this.unit||(b.cssNumber[this.prop]?"":"px");function bv(bA){return e.step(bA)}bv.queue=this.options.queue;bv.elem=this.elem;bv.saveState=function(){if(e.options.hide&&b._data(e.elem,"fxshow"+e.prop)===L){b._data(e.elem,"fxshow"+e.prop,e.start)}};if(bv()&&b.timers.push(bv)&&!a3){a3=setInterval(bw.tick,bw.interval)}},show:function(){var e=b._data(this.elem,"fxshow"+this.prop);this.options.orig[this.prop]=e||b.style(this.elem,this.prop);this.options.show=true;if(e!==L){this.custom(this.cur(),e)}else{this.custom(this.prop==="width"||this.prop==="height"?1:0,this.cur())}b(this.elem).show()},hide:function(){this.options.orig[this.prop]=b._data(this.elem,"fxshow"+this.prop)||b.style(this.elem,this.prop);this.options.hide=true;this.custom(this.cur(),0)},step:function(by){var bA,bB,bv,bx=a4||bh(),e=true,bz=this.elem,bw=this.options;if(by||bx>=bw.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();bw.animatedProperties[this.prop]=true;for(bA in bw.animatedProperties){if(bw.animatedProperties[bA]!==true){e=false}}if(e){if(bw.overflow!=null&&!b.support.shrinkWrapBlocks){b.each(["","X","Y"],function(bC,bD){bz.style["overflow"+bD]=bw.overflow[bC]})}if(bw.hide){b(bz).hide()}if(bw.hide||bw.show){for(bA in bw.animatedProperties){b.style(bz,bA,bw.orig[bA]);b.removeData(bz,"fxshow"+bA,true);b.removeData(bz,"toggle"+bA,true)}}bv=bw.complete;if(bv){bw.complete=false;bv.call(bz)}}return false}else{if(bw.duration==Infinity){this.now=bx}else{bB=bx-this.startTime;this.state=bB/bw.duration;this.pos=b.easing[bw.animatedProperties[this.prop]](this.state,bB,0,1,bw.duration);this.now=this.start+((this.end-this.start)*this.pos)}this.update()}return true}};b.extend(b.fx,{tick:function(){var bw,bv=b.timers,e=0;for(;e<bv.length;e++){bw=bv[e];if(!bw()&&bv[e]===bw){bv.splice(e--,1)}}if(!bv.length){b.fx.stop()}},interval:13,stop:function(){clearInterval(a3);a3=null},speeds:{slow:600,fast:200,_default:400},step:{opacity:function(e){b.style(e.elem,"opacity",e.now)},_default:function(e){if(e.elem.style&&e.elem.style[e.prop]!=null){e.elem.style[e.prop]=e.now+e.unit}else{e.elem[e.prop]=e.now}}}});b.each(["width","height"],function(e,bv){b.fx.step[bv]=function(bw){b.style(bw.elem,bv,Math.max(0,bw.now)+bw.unit)}});if(b.expr&&b.expr.filters){b.expr.filters.animated=function(e){return b.grep(b.timers,function(bv){return e===bv.elem}).length}}function x(bx){if(!Q[bx]){var e=av.body,bv=b("<"+bx+">").appendTo(e),bw=bv.css("display");bv.remove();if(bw==="none"||bw===""){if(!a8){a8=av.createElement("iframe");a8.frameBorder=a8.width=a8.height=0}e.appendChild(a8);if(!m||!a8.createElement){m=(a8.contentWindow||a8.contentDocument).document;m.write((av.compatMode==="CSS1Compat"?"<!doctype html>":"")+"<html><body>");m.close()}bv=m.createElement(bx);m.body.appendChild(bv);bw=b.css(bv,"display");e.removeChild(a8)}Q[bx]=bw}return Q[bx]}var V=/^t(?:able|d|h)$/i,ad=/^(?:body|html)$/i;if("getBoundingClientRect" in av.documentElement){b.fn.offset=function(bI){var by=this[0],bB;if(bI){return this.each(function(e){b.offset.setOffset(this,bI,e)})}if(!by||!by.ownerDocument){return null}if(by===by.ownerDocument.body){return b.offset.bodyOffset(by)}try{bB=by.getBoundingClientRect()}catch(bF){}var bH=by.ownerDocument,bw=bH.documentElement;if(!bB||!b.contains(bw,by)){return bB?{top:bB.top,left:bB.left}:{top:0,left:0}}var bC=bH.body,bD=aK(bH),bA=bw.clientTop||bC.clientTop||0,bE=bw.clientLeft||bC.clientLeft||0,bv=bD.pageYOffset||b.support.boxModel&&bw.scrollTop||bC.scrollTop,bz=bD.pageXOffset||b.support.boxModel&&bw.scrollLeft||bC.scrollLeft,bG=bB.top+bv-bA,bx=bB.left+bz-bE;return{top:bG,left:bx}}}else{b.fn.offset=function(bF){var bz=this[0];if(bF){return this.each(function(bG){b.offset.setOffset(this,bF,bG)})}if(!bz||!bz.ownerDocument){return null}if(bz===bz.ownerDocument.body){return b.offset.bodyOffset(bz)}var bC,bw=bz.offsetParent,bv=bz,bE=bz.ownerDocument,bx=bE.documentElement,bA=bE.body,bB=bE.defaultView,e=bB?bB.getComputedStyle(bz,null):bz.currentStyle,bD=bz.offsetTop,by=bz.offsetLeft;while((bz=bz.parentNode)&&bz!==bA&&bz!==bx){if(b.support.fixedPosition&&e.position==="fixed"){break}bC=bB?bB.getComputedStyle(bz,null):bz.currentStyle;bD-=bz.scrollTop;by-=bz.scrollLeft;if(bz===bw){bD+=bz.offsetTop;by+=bz.offsetLeft;if(b.support.doesNotAddBorder&&!(b.support.doesAddBorderForTableAndCells&&V.test(bz.nodeName))){bD+=parseFloat(bC.borderTopWidth)||0;by+=parseFloat(bC.borderLeftWidth)||0}bv=bw;bw=bz.offsetParent}if(b.support.subtractsBorderForOverflowNotVisible&&bC.overflow!=="visible"){bD+=parseFloat(bC.borderTopWidth)||0;by+=parseFloat(bC.borderLeftWidth)||0}e=bC}if(e.position==="relative"||e.position==="static"){bD+=bA.offsetTop;by+=bA.offsetLeft}if(b.support.fixedPosition&&e.position==="fixed"){bD+=Math.max(bx.scrollTop,bA.scrollTop);by+=Math.max(bx.scrollLeft,bA.scrollLeft)}return{top:bD,left:by}}}b.offset={bodyOffset:function(e){var bw=e.offsetTop,bv=e.offsetLeft;if(b.support.doesNotIncludeMarginInBodyOffset){bw+=parseFloat(b.css(e,"marginTop"))||0;bv+=parseFloat(b.css(e,"marginLeft"))||0}return{top:bw,left:bv}},setOffset:function(bx,bG,bA){var bB=b.css(bx,"position");if(bB==="static"){bx.style.position="relative"}var bz=b(bx),bv=bz.offset(),e=b.css(bx,"top"),bE=b.css(bx,"left"),bF=(bB==="absolute"||bB==="fixed")&&b.inArray("auto",[e,bE])>-1,bD={},bC={},bw,by;if(bF){bC=bz.position();bw=bC.top;by=bC.left}else{bw=parseFloat(e)||0;by=parseFloat(bE)||0}if(b.isFunction(bG)){bG=bG.call(bx,bA,bv)}if(bG.top!=null){bD.top=(bG.top-bv.top)+bw}if(bG.left!=null){bD.left=(bG.left-bv.left)+by}if("using" in bG){bG.using.call(bx,bD)}else{bz.css(bD)}}};b.fn.extend({position:function(){if(!this[0]){return null}var bw=this[0],bv=this.offsetParent(),bx=this.offset(),e=ad.test(bv[0].nodeName)?{top:0,left:0}:bv.offset();bx.top-=parseFloat(b.css(bw,"marginTop"))||0;bx.left-=parseFloat(b.css(bw,"marginLeft"))||0;e.top+=parseFloat(b.css(bv[0],"borderTopWidth"))||0;e.left+=parseFloat(b.css(bv[0],"borderLeftWidth"))||0;return{top:bx.top-e.top,left:bx.left-e.left}},offsetParent:function(){return this.map(function(){var e=this.offsetParent||av.body;while(e&&(!ad.test(e.nodeName)&&b.css(e,"position")==="static")){e=e.offsetParent}return e})}});b.each(["Left","Top"],function(bv,e){var bw="scroll"+e;b.fn[bw]=function(bz){var bx,by;if(bz===L){bx=this[0];if(!bx){return null}by=aK(bx);return by?("pageXOffset" in by)?by[bv?"pageYOffset":"pageXOffset"]:b.support.boxModel&&by.document.documentElement[bw]||by.document.body[bw]:bx[bw]}return this.each(function(){by=aK(this);if(by){by.scrollTo(!bv?bz:b(by).scrollLeft(),bv?bz:b(by).scrollTop())}else{this[bw]=bz}})}});function aK(e){return b.isWindow(e)?e:e.nodeType===9?e.defaultView||e.parentWindow:false}b.each(["Height","Width"],function(bv,e){var bw=e.toLowerCase();b.fn["inner"+e]=function(){var bx=this[0];return bx?bx.style?parseFloat(b.css(bx,bw,"padding")):this[bw]():null};b.fn["outer"+e]=function(by){var bx=this[0];return bx?bx.style?parseFloat(b.css(bx,bw,by?"margin":"border")):this[bw]():null};b.fn[bw]=function(bz){var bA=this[0];if(!bA){return bz==null?null:this}if(b.isFunction(bz)){return this.each(function(bE){var bD=b(this);bD[bw](bz.call(this,bE,bD[bw]()))})}if(b.isWindow(bA)){var bB=bA.document.documentElement["client"+e],bx=bA.document.body;return bA.document.compatMode==="CSS1Compat"&&bB||bx&&bx["client"+e]||bB}else{if(bA.nodeType===9){return Math.max(bA.documentElement["client"+e],bA.body["scroll"+e],bA.documentElement["scroll"+e],bA.body["offset"+e],bA.documentElement["offset"+e])}else{if(bz===L){var bC=b.css(bA,bw),by=parseFloat(bC);return b.isNumeric(by)?by:bC}else{return this.css(bw,typeof bz==="string"?bz:bz+"px")}}}}});bb.jQuery=bb.$=b;if(typeof define==="function"&&define.amd&&define.amd.jQuery){define("jquery",[],function(){return b})}})(window);/*
+ * jQuery UI 1.8.18
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI
+ */
+(function(a,d){a.ui=a.ui||{};if(a.ui.version){return}a.extend(a.ui,{version:"1.8.18",keyCode:{ALT:18,BACKSPACE:8,CAPS_LOCK:20,COMMA:188,COMMAND:91,COMMAND_LEFT:91,COMMAND_RIGHT:93,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,INSERT:45,LEFT:37,MENU:93,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SHIFT:16,SPACE:32,TAB:9,UP:38,WINDOWS:91}});a.fn.extend({propAttr:a.fn.prop||a.fn.attr,_focus:a.fn.focus,focus:function(e,f){return typeof e==="number"?this.each(function(){var g=this;setTimeout(function(){a(g).focus();if(f){f.call(g)}},e)}):this._focus.apply(this,arguments)},scrollParent:function(){var e;if((a.browser.msie&&(/(static|relative)/).test(this.css("position")))||(/absolute/).test(this.css("position"))){e=this.parents().filter(function(){return(/(relative|absolute|fixed)/).test(a.curCSS(this,"position",1))&&(/(auto|scroll)/).test(a.curCSS(this,"overflow",1)+a.curCSS(this,"overflow-y",1)+a.curCSS(this,"overflow-x",1))}).eq(0)}else{e=this.parents().filter(function(){return(/(auto|scroll)/).test(a.curCSS(this,"overflow",1)+a.curCSS(this,"overflow-y",1)+a.curCSS(this,"overflow-x",1))}).eq(0)}return(/fixed/).test(this.css("position"))||!e.length?a(document):e},zIndex:function(h){if(h!==d){return this.css("zIndex",h)}if(this.length){var f=a(this[0]),e,g;while(f.length&&f[0]!==document){e=f.css("position");if(e==="absolute"||e==="relative"||e==="fixed"){g=parseInt(f.css("zIndex"),10);if(!isNaN(g)&&g!==0){return g}}f=f.parent()}}return 0},disableSelection:function(){return this.bind((a.support.selectstart?"selectstart":"mousedown")+".ui-disableSelection",function(e){e.preventDefault()})},enableSelection:function(){return this.unbind(".ui-disableSelection")}});a.each(["Width","Height"],function(g,e){var f=e==="Width"?["Left","Right"]:["Top","Bottom"],h=e.toLowerCase(),k={innerWidth:a.fn.innerWidth,innerHeight:a.fn.innerHeight,outerWidth:a.fn.outerWidth,outerHeight:a.fn.outerHeight};function j(m,l,i,n){a.each(f,function(){l-=parseFloat(a.curCSS(m,"padding"+this,true))||0;if(i){l-=parseFloat(a.curCSS(m,"border"+this+"Width",true))||0}if(n){l-=parseFloat(a.curCSS(m,"margin"+this,true))||0}});return l}a.fn["inner"+e]=function(i){if(i===d){return k["inner"+e].call(this)}return this.each(function(){a(this).css(h,j(this,i)+"px")})};a.fn["outer"+e]=function(i,l){if(typeof i!=="number"){return k["outer"+e].call(this,i)}return this.each(function(){a(this).css(h,j(this,i,true,l)+"px")})}});function c(g,e){var j=g.nodeName.toLowerCase();if("area"===j){var i=g.parentNode,h=i.name,f;if(!g.href||!h||i.nodeName.toLowerCase()!=="map"){return false}f=a("img[usemap=#"+h+"]")[0];return !!f&&b(f)}return(/input|select|textarea|button|object/.test(j)?!g.disabled:"a"==j?g.href||e:e)&&b(g)}function b(e){return !a(e).parents().andSelf().filter(function(){return a.curCSS(this,"visibility")==="hidden"||a.expr.filters.hidden(this)}).length}a.extend(a.expr[":"],{data:function(g,f,e){return !!a.data(g,e[3])},focusable:function(e){return c(e,!isNaN(a.attr(e,"tabindex")))},tabbable:function(g){var e=a.attr(g,"tabindex"),f=isNaN(e);return(f||e>=0)&&c(g,!f)}});a(function(){var e=document.body,f=e.appendChild(f=document.createElement("div"));f.offsetHeight;a.extend(f.style,{minHeight:"100px",height:"auto",padding:0,borderWidth:0});a.support.minHeight=f.offsetHeight===100;a.support.selectstart="onselectstart" in f;e.removeChild(f).style.display="none"});a.extend(a.ui,{plugin:{add:function(f,g,j){var h=a.ui[f].prototype;for(var e in j){h.plugins[e]=h.plugins[e]||[];h.plugins[e].push([g,j[e]])}},call:function(e,g,f){var j=e.plugins[g];if(!j||!e.element[0].parentNode){return}for(var h=0;h<j.length;h++){if(e.options[j[h][0]]){j[h][1].apply(e.element,f)}}}},contains:function(f,e){return document.compareDocumentPosition?f.compareDocumentPosition(e)&16:f!==e&&f.contains(e)},hasScroll:function(h,f){if(a(h).css("overflow")==="hidden"){return false}var e=(f&&f==="left")?"scrollLeft":"scrollTop",g=false;if(h[e]>0){return true}h[e]=1;g=(h[e]>0);h[e]=0;return g},isOverAxis:function(f,e,g){return(f>e)&&(f<(e+g))},isOver:function(j,f,i,h,e,g){return a.ui.isOverAxis(j,i,e)&&a.ui.isOverAxis(f,h,g)}})})(jQuery);/*
+ * jQuery UI Widget 1.8.18
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Widget
+ */
+(function(b,d){if(b.cleanData){var c=b.cleanData;b.cleanData=function(f){for(var g=0,h;(h=f[g])!=null;g++){try{b(h).triggerHandler("remove")}catch(j){}}c(f)}}else{var a=b.fn.remove;b.fn.remove=function(e,f){return this.each(function(){if(!f){if(!e||b.filter(e,[this]).length){b("*",this).add([this]).each(function(){try{b(this).triggerHandler("remove")}catch(g){}})}}return a.call(b(this),e,f)})}}b.widget=function(f,h,e){var g=f.split(".")[0],j;f=f.split(".")[1];j=g+"-"+f;if(!e){e=h;h=b.Widget}b.expr[":"][j]=function(k){return !!b.data(k,f)};b[g]=b[g]||{};b[g][f]=function(k,l){if(arguments.length){this._createWidget(k,l)}};var i=new h();i.options=b.extend(true,{},i.options);b[g][f].prototype=b.extend(true,i,{namespace:g,widgetName:f,widgetEventPrefix:b[g][f].prototype.widgetEventPrefix||f,widgetBaseClass:j},e);b.widget.bridge(f,b[g][f])};b.widget.bridge=function(f,e){b.fn[f]=function(i){var g=typeof i==="string",h=Array.prototype.slice.call(arguments,1),j=this;i=!g&&h.length?b.extend.apply(null,[true,i].concat(h)):i;if(g&&i.charAt(0)==="_"){return j}if(g){this.each(function(){var k=b.data(this,f),l=k&&b.isFunction(k[i])?k[i].apply(k,h):k;if(l!==k&&l!==d){j=l;return false}})}else{this.each(function(){var k=b.data(this,f);if(k){k.option(i||{})._init()}else{b.data(this,f,new e(i,this))}})}return j}};b.Widget=function(e,f){if(arguments.length){this._createWidget(e,f)}};b.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",options:{disabled:false},_createWidget:function(f,g){b.data(g,this.widgetName,this);this.element=b(g);this.options=b.extend(true,{},this.options,this._getCreateOptions(),f);var e=this;this.element.bind("remove."+this.widgetName,function(){e.destroy()});this._create();this._trigger("create");this._init()},_getCreateOptions:function(){return b.metadata&&b.metadata.get(this.element[0])[this.widgetName]},_create:function(){},_init:function(){},destroy:function(){this.element.unbind("."+this.widgetName).removeData(this.widgetName);this.widget().unbind("."+this.widgetName).removeAttr("aria-disabled").removeClass(this.widgetBaseClass+"-disabled ui-state-disabled")},widget:function(){return this.element},option:function(f,g){var e=f;if(arguments.length===0){return b.extend({},this.options)}if(typeof f==="string"){if(g===d){return this.options[f]}e={};e[f]=g}this._setOptions(e);return this},_setOptions:function(f){var e=this;b.each(f,function(g,h){e._setOption(g,h)});return this},_setOption:function(e,f){this.options[e]=f;if(e==="disabled"){this.widget()[f?"addClass":"removeClass"](this.widgetBaseClass+"-disabled ui-state-disabled").attr("aria-disabled",f)}return this},enable:function(){return this._setOption("disabled",false)},disable:function(){return this._setOption("disabled",true)},_trigger:function(e,f,g){var j,i,h=this.options[e];g=g||{};f=b.Event(f);f.type=(e===this.widgetEventPrefix?e:this.widgetEventPrefix+e).toLowerCase();f.target=this.element[0];i=f.originalEvent;if(i){for(j in i){if(!(j in f)){f[j]=i[j]}}}this.element.trigger(f,g);return !(b.isFunction(h)&&h.call(this.element[0],f,g)===false||f.isDefaultPrevented())}}})(jQuery);/*
+ * jQuery UI Mouse 1.8.18
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Mouse
+ *
+ * Depends:
+ *	jquery.ui.widget.js
+ */
+(function(b,c){var a=false;b(document).mouseup(function(d){a=false});b.widget("ui.mouse",{options:{cancel:":input,option",distance:1,delay:0},_mouseInit:function(){var d=this;this.element.bind("mousedown."+this.widgetName,function(e){return d._mouseDown(e)}).bind("click."+this.widgetName,function(e){if(true===b.data(e.target,d.widgetName+".preventClickEvent")){b.removeData(e.target,d.widgetName+".preventClickEvent");e.stopImmediatePropagation();return false}});this.started=false},_mouseDestroy:function(){this.element.unbind("."+this.widgetName)},_mouseDown:function(f){if(a){return}(this._mouseStarted&&this._mouseUp(f));this._mouseDownEvent=f;var e=this,g=(f.which==1),d=(typeof this.options.cancel=="string"&&f.target.nodeName?b(f.target).closest(this.options.cancel).length:false);if(!g||d||!this._mouseCapture(f)){return true}this.mouseDelayMet=!this.options.delay;if(!this.mouseDelayMet){this._mouseDelayTimer=setTimeout(function(){e.mouseDelayMet=true},this.options.delay)}if(this._mouseDistanceMet(f)&&this._mouseDelayMet(f)){this._mouseStarted=(this._mouseStart(f)!==false);if(!this._mouseStarted){f.preventDefault();return true}}if(true===b.data(f.target,this.widgetName+".preventClickEvent")){b.removeData(f.target,this.widgetName+".preventClickEvent")}this._mouseMoveDelegate=function(h){return e._mouseMove(h)};this._mouseUpDelegate=function(h){return e._mouseUp(h)};b(document).bind("mousemove."+this.widgetName,this._mouseMoveDelegate).bind("mouseup."+this.widgetName,this._mouseUpDelegate);f.preventDefault();a=true;return true},_mouseMove:function(d){if(b.browser.msie&&!(document.documentMode>=9)&&!d.button){return this._mouseUp(d)}if(this._mouseStarted){this._mouseDrag(d);return d.preventDefault()}if(this._mouseDistanceMet(d)&&this._mouseDelayMet(d)){this._mouseStarted=(this._mouseStart(this._mouseDownEvent,d)!==false);(this._mouseStarted?this._mouseDrag(d):this._mouseUp(d))}return !this._mouseStarted},_mouseUp:function(d){b(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate);if(this._mouseStarted){this._mouseStarted=false;if(d.target==this._mouseDownEvent.target){b.data(d.target,this.widgetName+".preventClickEvent",true)}this._mouseStop(d)}return false},_mouseDistanceMet:function(d){return(Math.max(Math.abs(this._mouseDownEvent.pageX-d.pageX),Math.abs(this._mouseDownEvent.pageY-d.pageY))>=this.options.distance)},_mouseDelayMet:function(d){return this.mouseDelayMet},_mouseStart:function(d){},_mouseDrag:function(d){},_mouseStop:function(d){},_mouseCapture:function(d){return true}})})(jQuery);(function(c,d){c.widget("ui.resizable",c.ui.mouse,{widgetEventPrefix:"resize",options:{alsoResize:false,animate:false,animateDuration:"slow",animateEasing:"swing",aspectRatio:false,autoHide:false,containment:false,ghost:false,grid:false,handles:"e,s,se",helper:false,maxHeight:null,maxWidth:null,minHeight:10,minWidth:10,zIndex:1000},_create:function(){var f=this,k=this.options;this.element.addClass("ui-resizable");c.extend(this,{_aspectRatio:!!(k.aspectRatio),aspectRatio:k.aspectRatio,originalElement:this.element,_proportionallyResizeElements:[],_helper:k.helper||k.ghost||k.animate?k.helper||"ui-resizable-helper":null});if(this.element[0].nodeName.match(/canvas|textarea|input|select|button|img/i)){this.element.wrap(c('<div class="ui-wrapper" style="overflow: hidden;"></div>').css({position:this.element.css("position"),width:this.element.outerWidth(),height:this.element.outerHeight(),top:this.element.css("top"),left:this.element.css("left")}));this.element=this.element.parent().data("resizable",this.element.data("resizable"));this.elementIsWrapper=true;this.element.css({marginLeft:this.originalElement.css("marginLeft"),marginTop:this.originalElement.css("marginTop"),marginRight:this.originalElement.css("marginRight"),marginBottom:this.originalElement.css("marginBottom")});this.originalElement.css({marginLeft:0,marginTop:0,marginRight:0,marginBottom:0});this.originalResizeStyle=this.originalElement.css("resize");this.originalElement.css("resize","none");this._proportionallyResizeElements.push(this.originalElement.css({position:"static",zoom:1,display:"block"}));this.originalElement.css({margin:this.originalElement.css("margin")});this._proportionallyResize()}this.handles=k.handles||(!c(".ui-resizable-handle",this.element).length?"e,s,se":{n:".ui-resizable-n",e:".ui-resizable-e",s:".ui-resizable-s",w:".ui-resizable-w",se:".ui-resizable-se",sw:".ui-resizable-sw",ne:".ui-resizable-ne",nw:".ui-resizable-nw"});if(this.handles.constructor==String){if(this.handles=="all"){this.handles="n,e,s,w,se,sw,ne,nw"}var l=this.handles.split(",");this.handles={};for(var g=0;g<l.length;g++){var j=c.trim(l[g]),e="ui-resizable-"+j;var h=c('<div class="ui-resizable-handle '+e+'"></div>');if(/sw|se|ne|nw/.test(j)){h.css({zIndex:++k.zIndex})}if("se"==j){h.addClass("ui-icon ui-icon-gripsmall-diagonal-se")}this.handles[j]=".ui-resizable-"+j;this.element.append(h)}}this._renderAxis=function(q){q=q||this.element;for(var n in this.handles){if(this.handles[n].constructor==String){this.handles[n]=c(this.handles[n],this.element).show()}if(this.elementIsWrapper&&this.originalElement[0].nodeName.match(/textarea|input|select|button/i)){var o=c(this.handles[n],this.element),p=0;p=/sw|ne|nw|se|n|s/.test(n)?o.outerHeight():o.outerWidth();var m=["padding",/ne|nw|n/.test(n)?"Top":/se|sw|s/.test(n)?"Bottom":/^e$/.test(n)?"Right":"Left"].join("");q.css(m,p);this._proportionallyResize()}if(!c(this.handles[n]).length){continue}}};this._renderAxis(this.element);this._handles=c(".ui-resizable-handle",this.element).disableSelection();this._handles.mouseover(function(){if(!f.resizing){if(this.className){var i=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i)}f.axis=i&&i[1]?i[1]:"se"}});if(k.autoHide){this._handles.hide();c(this.element).addClass("ui-resizable-autohide").hover(function(){if(k.disabled){return}c(this).removeClass("ui-resizable-autohide");f._handles.show()},function(){if(k.disabled){return}if(!f.resizing){c(this).addClass("ui-resizable-autohide");f._handles.hide()}})}this._mouseInit()},destroy:function(){this._mouseDestroy();var e=function(g){c(g).removeClass("ui-resizable ui-resizable-disabled ui-resizable-resizing").removeData("resizable").unbind(".resizable").find(".ui-resizable-handle").remove()};if(this.elementIsWrapper){e(this.element);var f=this.element;f.after(this.originalElement.css({position:f.css("position"),width:f.outerWidth(),height:f.outerHeight(),top:f.css("top"),left:f.css("left")})).remove()}this.originalElement.css("resize",this.originalResizeStyle);e(this.originalElement);return this},_mouseCapture:function(f){var g=false;for(var e in this.handles){if(c(this.handles[e])[0]==f.target){g=true}}return !this.options.disabled&&g},_mouseStart:function(g){var j=this.options,f=this.element.position(),e=this.element;this.resizing=true;this.documentScroll={top:c(document).scrollTop(),left:c(document).scrollLeft()};if(e.is(".ui-draggable")||(/absolute/).test(e.css("position"))){e.css({position:"absolute",top:f.top,left:f.left})}this._renderProxy();var k=b(this.helper.css("left")),h=b(this.helper.css("top"));if(j.containment){k+=c(j.containment).scrollLeft()||0;h+=c(j.containment).scrollTop()||0}this.offset=this.helper.offset();this.position={left:k,top:h};this.size=this._helper?{width:e.outerWidth(),height:e.outerHeight()}:{width:e.width(),height:e.height()};this.originalSize=this._helper?{width:e.outerWidth(),height:e.outerHeight()}:{width:e.width(),height:e.height()};this.originalPosition={left:k,top:h};this.sizeDiff={width:e.outerWidth()-e.width(),height:e.outerHeight()-e.height()};this.originalMousePosition={left:g.pageX,top:g.pageY};this.aspectRatio=(typeof j.aspectRatio=="number")?j.aspectRatio:((this.originalSize.width/this.originalSize.height)||1);var i=c(".ui-resizable-"+this.axis).css("cursor");c("body").css("cursor",i=="auto"?this.axis+"-resize":i);e.addClass("ui-resizable-resizing");this._propagate("start",g);return true},_mouseDrag:function(e){var h=this.helper,g=this.options,m={},q=this,j=this.originalMousePosition,n=this.axis;var r=(e.pageX-j.left)||0,p=(e.pageY-j.top)||0;var i=this._change[n];if(!i){return false}var l=i.apply(this,[e,r,p]),k=c.browser.msie&&c.browser.version<7,f=this.sizeDiff;this._updateVirtualBoundaries(e.shiftKey);if(this._aspectRatio||e.shiftKey){l=this._updateRatio(l,e)}l=this._respectSize(l,e);this._propagate("resize",e);h.css({top:this.position.top+"px",left:this.position.left+"px",width:this.size.width+"px",height:this.size.height+"px"});if(!this._helper&&this._proportionallyResizeElements.length){this._proportionallyResize()}this._updateCache(l);this._trigger("resize",e,this.ui());return false},_mouseStop:function(h){this.resizing=false;var i=this.options,m=this;if(this._helper){var g=this._proportionallyResizeElements,e=g.length&&(/textarea/i).test(g[0].nodeName),f=e&&c.ui.hasScroll(g[0],"left")?0:m.sizeDiff.height,k=e?0:m.sizeDiff.width;var n={width:(m.helper.width()-k),height:(m.helper.height()-f)},j=(parseInt(m.element.css("left"),10)+(m.position.left-m.originalPosition.left))||null,l=(parseInt(m.element.css("top"),10)+(m.position.top-m.originalPosition.top))||null;if(!i.animate){this.element.css(c.extend(n,{top:l,left:j}))}m.helper.height(m.size.height);m.helper.width(m.size.width);if(this._helper&&!i.animate){this._proportionallyResize()}}c("body").css("cursor","auto");this.element.removeClass("ui-resizable-resizing");this._propagate("stop",h);if(this._helper){this.helper.remove()}return false},_updateVirtualBoundaries:function(g){var j=this.options,i,h,f,k,e;e={minWidth:a(j.minWidth)?j.minWidth:0,maxWidth:a(j.maxWidth)?j.maxWidth:Infinity,minHeight:a(j.minHeight)?j.minHeight:0,maxHeight:a(j.maxHeight)?j.maxHeight:Infinity};if(this._aspectRatio||g){i=e.minHeight*this.aspectRatio;f=e.minWidth/this.aspectRatio;h=e.maxHeight*this.aspectRatio;k=e.maxWidth/this.aspectRatio;if(i>e.minWidth){e.minWidth=i}if(f>e.minHeight){e.minHeight=f}if(h<e.maxWidth){e.maxWidth=h}if(k<e.maxHeight){e.maxHeight=k}}this._vBoundaries=e},_updateCache:function(e){var f=this.options;this.offset=this.helper.offset();if(a(e.left)){this.position.left=e.left}if(a(e.top)){this.position.top=e.top}if(a(e.height)){this.size.height=e.height}if(a(e.width)){this.size.width=e.width}},_updateRatio:function(h,g){var i=this.options,j=this.position,f=this.size,e=this.axis;if(a(h.height)){h.width=(h.height*this.aspectRatio)}else{if(a(h.width)){h.height=(h.width/this.aspectRatio)}}if(e=="sw"){h.left=j.left+(f.width-h.width);h.top=null}if(e=="nw"){h.top=j.top+(f.height-h.height);h.left=j.left+(f.width-h.width)}return h},_respectSize:function(l,g){var j=this.helper,i=this._vBoundaries,r=this._aspectRatio||g.shiftKey,q=this.axis,t=a(l.width)&&i.maxWidth&&(i.maxWidth<l.width),m=a(l.height)&&i.maxHeight&&(i.maxHeight<l.height),h=a(l.width)&&i.minWidth&&(i.minWidth>l.width),s=a(l.height)&&i.minHeight&&(i.minHeight>l.height);if(h){l.width=i.minWidth}if(s){l.height=i.minHeight}if(t){l.width=i.maxWidth}if(m){l.height=i.maxHeight}var f=this.originalPosition.left+this.originalSize.width,p=this.position.top+this.size.height;var k=/sw|nw|w/.test(q),e=/nw|ne|n/.test(q);if(h&&k){l.left=f-i.minWidth}if(t&&k){l.left=f-i.maxWidth}if(s&&e){l.top=p-i.minHeight}if(m&&e){l.top=p-i.maxHeight}var n=!l.width&&!l.height;if(n&&!l.left&&l.top){l.top=null}else{if(n&&!l.top&&l.left){l.left=null}}return l},_proportionallyResize:function(){var k=this.options;if(!this._proportionallyResizeElements.length){return}var g=this.helper||this.element;for(var f=0;f<this._proportionallyResizeElements.length;f++){var h=this._proportionallyResizeElements[f];if(!this.borderDif){var e=[h.css("borderTopWidth"),h.css("borderRightWidth"),h.css("borderBottomWidth"),h.css("borderLeftWidth")],j=[h.css("paddingTop"),h.css("paddingRight"),h.css("paddingBottom"),h.css("paddingLeft")];this.borderDif=c.map(e,function(l,n){var m=parseInt(l,10)||0,o=parseInt(j[n],10)||0;return m+o})}if(c.browser.msie&&!(!(c(g).is(":hidden")||c(g).parents(":hidden").length))){continue}h.css({height:(g.height()-this.borderDif[0]-this.borderDif[2])||0,width:(g.width()-this.borderDif[1]-this.borderDif[3])||0})}},_renderProxy:function(){var f=this.element,i=this.options;this.elementOffset=f.offset();if(this._helper){this.helper=this.helper||c('<div style="overflow:hidden;"></div>');var e=c.browser.msie&&c.browser.version<7,g=(e?1:0),h=(e?2:-1);this.helper.addClass(this._helper).css({width:this.element.outerWidth()+h,height:this.element.outerHeight()+h,position:"absolute",left:this.elementOffset.left-g+"px",top:this.elementOffset.top-g+"px",zIndex:++i.zIndex});this.helper.appendTo("body").disableSelection()}else{this.helper=this.element}},_change:{e:function(g,f,e){return{width:this.originalSize.width+f}},w:function(h,f,e){var j=this.options,g=this.originalSize,i=this.originalPosition;return{left:i.left+f,width:g.width-f}},n:function(h,f,e){var j=this.options,g=this.originalSize,i=this.originalPosition;return{top:i.top+e,height:g.height-e}},s:function(g,f,e){return{height:this.originalSize.height+e}},se:function(g,f,e){return c.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[g,f,e]))},sw:function(g,f,e){return c.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[g,f,e]))},ne:function(g,f,e){return c.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[g,f,e]))},nw:function(g,f,e){return c.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[g,f,e]))}},_propagate:function(f,e){c.ui.plugin.call(this,f,[e,this.ui()]);(f!="resize"&&this._trigger(f,e,this.ui()))},plugins:{},ui:function(){return{originalElement:this.originalElement,element:this.element,helper:this.helper,position:this.position,size:this.size,originalSize:this.originalSize,originalPosition:this.originalPosition}}});c.extend(c.ui.resizable,{version:"1.8.18"});c.ui.plugin.add("resizable","alsoResize",{start:function(f,g){var e=c(this).data("resizable"),i=e.options;var h=function(j){c(j).each(function(){var k=c(this);k.data("resizable-alsoresize",{width:parseInt(k.width(),10),height:parseInt(k.height(),10),left:parseInt(k.css("left"),10),top:parseInt(k.css("top"),10)})})};if(typeof(i.alsoResize)=="object"&&!i.alsoResize.parentNode){if(i.alsoResize.length){i.alsoResize=i.alsoResize[0];h(i.alsoResize)}else{c.each(i.alsoResize,function(j){h(j)})}}else{h(i.alsoResize)}},resize:function(g,i){var f=c(this).data("resizable"),j=f.options,h=f.originalSize,l=f.originalPosition;var k={height:(f.size.height-h.height)||0,width:(f.size.width-h.width)||0,top:(f.position.top-l.top)||0,left:(f.position.left-l.left)||0},e=function(m,n){c(m).each(function(){var q=c(this),r=c(this).data("resizable-alsoresize"),p={},o=n&&n.length?n:q.parents(i.originalElement[0]).length?["width","height"]:["width","height","top","left"];c.each(o,function(s,u){var t=(r[u]||0)+(k[u]||0);if(t&&t>=0){p[u]=t||null}});q.css(p)})};if(typeof(j.alsoResize)=="object"&&!j.alsoResize.nodeType){c.each(j.alsoResize,function(m,n){e(m,n)})}else{e(j.alsoResize)}},stop:function(e,f){c(this).removeData("resizable-alsoresize")}});c.ui.plugin.add("resizable","animate",{stop:function(i,n){var p=c(this).data("resizable"),j=p.options;var h=p._proportionallyResizeElements,e=h.length&&(/textarea/i).test(h[0].nodeName),f=e&&c.ui.hasScroll(h[0],"left")?0:p.sizeDiff.height,l=e?0:p.sizeDiff.width;var g={width:(p.size.width-l),height:(p.size.height-f)},k=(parseInt(p.element.css("left"),10)+(p.position.left-p.originalPosition.left))||null,m=(parseInt(p.element.css("top"),10)+(p.position.top-p.originalPosition.top))||null;p.element.animate(c.extend(g,m&&k?{top:m,left:k}:{}),{duration:j.animateDuration,easing:j.animateEasing,step:function(){var o={width:parseInt(p.element.css("width"),10),height:parseInt(p.element.css("height"),10),top:parseInt(p.element.css("top"),10),left:parseInt(p.element.css("left"),10)};if(h&&h.length){c(h[0]).css({width:o.width,height:o.height})}p._updateCache(o);p._propagate("resize",i)}})}});c.ui.plugin.add("resizable","containment",{start:function(f,r){var t=c(this).data("resizable"),j=t.options,l=t.element;var g=j.containment,k=(g instanceof c)?g.get(0):(/parent/.test(g))?l.parent().get(0):g;if(!k){return}t.containerElement=c(k);if(/document/.test(g)||g==document){t.containerOffset={left:0,top:0};t.containerPosition={left:0,top:0};t.parentData={element:c(document),left:0,top:0,width:c(document).width(),height:c(document).height()||document.body.parentNode.scrollHeight}}else{var n=c(k),i=[];c(["Top","Right","Left","Bottom"]).each(function(p,o){i[p]=b(n.css("padding"+o))});t.containerOffset=n.offset();t.containerPosition=n.position();t.containerSize={height:(n.innerHeight()-i[3]),width:(n.innerWidth()-i[1])};var q=t.containerOffset,e=t.containerSize.height,m=t.containerSize.width,h=(c.ui.hasScroll(k,"left")?k.scrollWidth:m),s=(c.ui.hasScroll(k)?k.scrollHeight:e);t.parentData={element:k,left:q.left,top:q.top,width:h,height:s}}},resize:function(g,q){var t=c(this).data("resizable"),i=t.options,f=t.containerSize,p=t.containerOffset,m=t.size,n=t.position,r=t._aspectRatio||g.shiftKey,e={top:0,left:0},h=t.containerElement;if(h[0]!=document&&(/static/).test(h.css("position"))){e=p}if(n.left<(t._helper?p.left:0)){t.size.width=t.size.width+(t._helper?(t.position.left-p.left):(t.position.left-e.left));if(r){t.size.height=t.size.width/i.aspectRatio}t.position.left=i.helper?p.left:0}if(n.top<(t._helper?p.top:0)){t.size.height=t.size.height+(t._helper?(t.position.top-p.top):t.position.top);if(r){t.size.width=t.size.height*i.aspectRatio}t.position.top=t._helper?p.top:0}t.offset.left=t.parentData.left+t.position.left;t.offset.top=t.parentData.top+t.position.top;var l=Math.abs((t._helper?t.offset.left-e.left:(t.offset.left-e.left))+t.sizeDiff.width),s=Math.abs((t._helper?t.offset.top-e.top:(t.offset.top-p.top))+t.sizeDiff.height);var k=t.containerElement.get(0)==t.element.parent().get(0),j=/relative|absolute/.test(t.containerElement.css("position"));if(k&&j){l-=t.parentData.left}if(l+t.size.width>=t.parentData.width){t.size.width=t.parentData.width-l;if(r){t.size.height=t.size.width/t.aspectRatio}}if(s+t.size.height>=t.parentData.height){t.size.height=t.parentData.height-s;if(r){t.size.width=t.size.height*t.aspectRatio}}},stop:function(f,n){var q=c(this).data("resizable"),g=q.options,l=q.position,m=q.containerOffset,e=q.containerPosition,i=q.containerElement;var j=c(q.helper),r=j.offset(),p=j.outerWidth()-q.sizeDiff.width,k=j.outerHeight()-q.sizeDiff.height;if(q._helper&&!g.animate&&(/relative/).test(i.css("position"))){c(this).css({left:r.left-e.left-m.left,width:p,height:k})}if(q._helper&&!g.animate&&(/static/).test(i.css("position"))){c(this).css({left:r.left-e.left-m.left,width:p,height:k})}}});c.ui.plugin.add("resizable","ghost",{start:function(g,h){var e=c(this).data("resizable"),i=e.options,f=e.size;e.ghost=e.originalElement.clone();e.ghost.css({opacity:0.25,display:"block",position:"relative",height:f.height,width:f.width,margin:0,left:0,top:0}).addClass("ui-resizable-ghost").addClass(typeof i.ghost=="string"?i.ghost:"");e.ghost.appendTo(e.helper)},resize:function(f,g){var e=c(this).data("resizable"),h=e.options;if(e.ghost){e.ghost.css({position:"relative",height:e.size.height,width:e.size.width})}},stop:function(f,g){var e=c(this).data("resizable"),h=e.options;if(e.ghost&&e.helper){e.helper.get(0).removeChild(e.ghost.get(0))}}});c.ui.plugin.add("resizable","grid",{resize:function(e,m){var p=c(this).data("resizable"),h=p.options,k=p.size,i=p.originalSize,j=p.originalPosition,n=p.axis,l=h._aspectRatio||e.shiftKey;h.grid=typeof h.grid=="number"?[h.grid,h.grid]:h.grid;var g=Math.round((k.width-i.width)/(h.grid[0]||1))*(h.grid[0]||1),f=Math.round((k.height-i.height)/(h.grid[1]||1))*(h.grid[1]||1);if(/^(se|s|e)$/.test(n)){p.size.width=i.width+g;p.size.height=i.height+f}else{if(/^(ne)$/.test(n)){p.size.width=i.width+g;p.size.height=i.height+f;p.position.top=j.top-f}else{if(/^(sw)$/.test(n)){p.size.width=i.width+g;p.size.height=i.height+f;p.position.left=j.left-g}else{p.size.width=i.width+g;p.size.height=i.height+f;p.position.top=j.top-f;p.position.left=j.left-g}}}}});var b=function(e){return parseInt(e,10)||0};var a=function(e){return !isNaN(parseInt(e,10))}})(jQuery);/*
+ * jQuery hashchange event - v1.3 - 7/21/2010
+ * http://benalman.com/projects/jquery-hashchange-plugin/
+ * 
+ * Copyright (c) 2010 "Cowboy" Ben Alman
+ * Dual licensed under the MIT and GPL licenses.
+ * http://benalman.com/about/license/
+ */
+(function($,e,b){var c="hashchange",h=document,f,g=$.event.special,i=h.documentMode,d="on"+c in e&&(i===b||i>7);function a(j){j=j||location.href;return"#"+j.replace(/^[^#]*#?(.*)$/,"$1")}$.fn[c]=function(j){return j?this.bind(c,j):this.trigger(c)};$.fn[c].delay=50;g[c]=$.extend(g[c],{setup:function(){if(d){return false}$(f.start)},teardown:function(){if(d){return false}$(f.stop)}});f=(function(){var j={},p,m=a(),k=function(q){return q},l=k,o=k;j.start=function(){p||n()};j.stop=function(){p&&clearTimeout(p);p=b};function n(){var r=a(),q=o(m);if(r!==m){l(m=r,q);$(e).trigger(c)}else{if(q!==m){location.href=location.href.replace(/#.*/,"")+q}}p=setTimeout(n,$.fn[c].delay)}$.browser.msie&&!d&&(function(){var q,r;j.start=function(){if(!q){r=$.fn[c].src;r=r&&r+a();q=$('<iframe tabindex="-1" title="empty"/>').hide().one("load",function(){r||l(a());n()}).attr("src",r||"javascript:0").insertAfter("body")[0].contentWindow;h.onpropertychange=function(){try{if(event.propertyName==="title"){q.document.title=h.title}}catch(s){}}}};j.stop=k;o=function(){return a(q.location.href)};l=function(v,s){var u=q.document,t=$.fn[c].domain;if(v!==s){u.title=h.title;u.open();t&&u.write('<script>document.domain="'+t+'"<\/script>');u.close();q.location.hash=v}}})();return j})()})(jQuery,this);(function(c){var a=c.scrollTo=function(f,e,d){c(window).scrollTo(f,e,d)};a.defaults={axis:"xy",duration:parseFloat(c.fn.jquery)>=1.3?0:1};a.window=function(d){return c(window)._scrollable()};c.fn._scrollable=function(){return this.map(function(){var e=this,d=!e.nodeName||c.inArray(e.nodeName.toLowerCase(),["iframe","#document","html","body"])!=-1;if(!d){return e}var f=(e.contentWindow||e).document||e.ownerDocument||e;return c.browser.safari||f.compatMode=="BackCompat"?f.body:f.documentElement})};c.fn.scrollTo=function(f,e,d){if(typeof e=="object"){d=e;e=0}if(typeof d=="function"){d={onAfter:d}}if(f=="max"){f=9000000000}d=c.extend({},a.defaults,d);e=e||d.speed||d.duration;d.queue=d.queue&&d.axis.length>1;if(d.queue){e/=2}d.offset=b(d.offset);d.over=b(d.over);return this._scrollable().each(function(){var l=this,j=c(l),k=f,i,g={},m=j.is("html,body");switch(typeof k){case"number":case"string":if(/^([+-]=)?\d+(\.\d+)?(px|%)?$/.test(k)){k=b(k);break}k=c(k,this);case"object":if(k.is||k.style){i=(k=c(k)).offset()}}c.each(d.axis.split(""),function(q,r){var s=r=="x"?"Left":"Top",u=s.toLowerCase(),p="scroll"+s,o=l[p],n=a.max(l,r);if(i){g[p]=i[u]+(m?0:o-j.offset()[u]);if(d.margin){g[p]-=parseInt(k.css("margin"+s))||0;g[p]-=parseInt(k.css("border"+s+"Width"))||0}g[p]+=d.offset[u]||0;if(d.over[u]){g[p]+=k[r=="x"?"width":"height"]()*d.over[u]}}else{var t=k[u];g[p]=t.slice&&t.slice(-1)=="%"?parseFloat(t)/100*n:t}if(/^\d+$/.test(g[p])){g[p]=g[p]<=0?0:Math.min(g[p],n)}if(!q&&d.queue){if(o!=g[p]){h(d.onAfterFirst)}delete g[p]}});h(d.onAfter);function h(n){j.animate(g,e,d.easing,n&&function(){n.call(this,f,d)})}}).end()};a.max=function(j,i){var h=i=="x"?"Width":"Height",e="scroll"+h;if(!c(j).is("html,body")){return j[e]-c(j)[h.toLowerCase()]()}var g="client"+h,f=j.ownerDocument.documentElement,d=j.ownerDocument.body;return Math.max(f[e],d[e])-Math.min(f[g],d[g])};function b(d){return typeof d=="object"?d:{top:d,left:d}}})(jQuery);/*
+ PowerTip - v1.2.0 - 2013-04-03
+ http://stevenbenner.github.com/jquery-powertip/
+ Copyright (c) 2013 Steven Benner (http://stevenbenner.com/).
+ Released under MIT license.
+ https://raw.github.com/stevenbenner/jquery-powertip/master/LICENSE.txt
+*/
+(function(a){if(typeof define==="function"&&define.amd){define(["jquery"],a)}else{a(jQuery)}}(function(k){var A=k(document),s=k(window),w=k("body");var n="displayController",e="hasActiveHover",d="forcedOpen",u="hasMouseMove",f="mouseOnToPopup",g="originalTitle",y="powertip",o="powertipjq",l="powertiptarget",E=180/Math.PI;var c={isTipOpen:false,isFixedTipOpen:false,isClosing:false,tipOpenImminent:false,activeHover:null,currentX:0,currentY:0,previousX:0,previousY:0,desyncTimeout:null,mouseTrackingActive:false,delayInProgress:false,windowWidth:0,windowHeight:0,scrollTop:0,scrollLeft:0};var p={none:0,top:1,bottom:2,left:4,right:8};k.fn.powerTip=function(F,N){if(!this.length){return this}if(k.type(F)==="string"&&k.powerTip[F]){return k.powerTip[F].call(this,this,N)}var O=k.extend({},k.fn.powerTip.defaults,F),G=new x(O);h();this.each(function M(){var R=k(this),Q=R.data(y),P=R.data(o),T=R.data(l),S;if(R.data(n)){k.powerTip.destroy(R)}S=R.attr("title");if(!Q&&!T&&!P&&S){R.data(y,S);R.data(g,S);R.removeAttr("title")}R.data(n,new t(R,O,G))});if(!O.manual){this.on({"mouseenter.powertip":function J(P){k.powerTip.show(this,P)},"mouseleave.powertip":function L(){k.powerTip.hide(this)},"focus.powertip":function K(){k.powerTip.show(this)},"blur.powertip":function H(){k.powerTip.hide(this,true)},"keydown.powertip":function I(P){if(P.keyCode===27){k.powerTip.hide(this,true)}}})}return this};k.fn.powerTip.defaults={fadeInTime:200,fadeOutTime:100,followMouse:false,popupId:"powerTip",intentSensitivity:7,intentPollInterval:100,closeDelay:100,placement:"n",smartPlacement:false,offset:10,mouseOnToPopup:false,manual:false};k.fn.powerTip.smartPlacementLists={n:["n","ne","nw","s"],e:["e","ne","se","w","nw","sw","n","s","e"],s:["s","se","sw","n"],w:["w","nw","sw","e","ne","se","n","s","w"],nw:["nw","w","sw","n","s","se","nw"],ne:["ne","e","se","n","s","sw","ne"],sw:["sw","w","nw","s","n","ne","sw"],se:["se","e","ne","s","n","nw","se"],"nw-alt":["nw-alt","n","ne-alt","sw-alt","s","se-alt","w","e"],"ne-alt":["ne-alt","n","nw-alt","se-alt","s","sw-alt","e","w"],"sw-alt":["sw-alt","s","se-alt","nw-alt","n","ne-alt","w","e"],"se-alt":["se-alt","s","sw-alt","ne-alt","n","nw-alt","e","w"]};k.powerTip={show:function z(F,G){if(G){i(G);c.previousX=G.pageX;c.previousY=G.pageY;k(F).data(n).show()}else{k(F).first().data(n).show(true,true)}return F},reposition:function r(F){k(F).first().data(n).resetPosition();return F},hide:function D(G,F){if(G){k(G).first().data(n).hide(F)}else{if(c.activeHover){c.activeHover.data(n).hide(true)}}return G},destroy:function C(G){k(G).off(".powertip").each(function F(){var I=k(this),H=[g,n,e,d];if(I.data(g)){I.attr("title",I.data(g));H.push(y)}I.removeData(H)});return G}};k.powerTip.showTip=k.powerTip.show;k.powerTip.closeTip=k.powerTip.hide;function b(){var F=this;F.top="auto";F.left="auto";F.right="auto";F.bottom="auto";F.set=function(H,G){if(k.isNumeric(G)){F[H]=Math.round(G)}}}function t(K,N,F){var J=null;function L(P,Q){M();if(!K.data(e)){if(!P){c.tipOpenImminent=true;J=setTimeout(function O(){J=null;I()},N.intentPollInterval)}else{if(Q){K.data(d,true)}F.showTip(K)}}}function G(P){M();c.tipOpenImminent=false;if(K.data(e)){K.data(d,false);if(!P){c.delayInProgress=true;J=setTimeout(function O(){J=null;F.hideTip(K);c.delayInProgress=false},N.closeDelay)}else{F.hideTip(K)}}}function I(){var Q=Math.abs(c.previousX-c.currentX),O=Math.abs(c.previousY-c.currentY),P=Q+O;if(P<N.intentSensitivity){F.showTip(K)}else{c.previousX=c.currentX;c.previousY=c.currentY;L()}}function M(){J=clearTimeout(J);c.delayInProgress=false}function H(){F.resetPosition(K)}this.show=L;this.hide=G;this.cancel=M;this.resetPosition=H}function j(){function G(M,L,J,O,P){var K=L.split("-")[0],N=new b(),I;if(q(M)){I=H(M,K)}else{I=F(M,K)}switch(L){case"n":N.set("left",I.left-(J/2));N.set("bottom",c.windowHeight-I.top+P);break;case"e":N.set("left",I.left+P);N.set("top",I.top-(O/2));break;case"s":N.set("left",I.left-(J/2));N.set("top",I.top+P);break;case"w":N.set("top",I.top-(O/2));N.set("right",c.windowWidth-I.left+P);break;case"nw":N.set("bottom",c.windowHeight-I.top+P);N.set("right",c.windowWidth-I.left-20);break;case"nw-alt":N.set("left",I.left);N.set("bottom",c.windowHeight-I.top+P);break;case"ne":N.set("left",I.left-20);N.set("bottom",c.windowHeight-I.top+P);break;case"ne-alt":N.set("bottom",c.windowHeight-I.top+P);N.set("right",c.windowWidth-I.left);break;case"sw":N.set("top",I.top+P);N.set("right",c.windowWidth-I.left-20);break;case"sw-alt":N.set("left",I.left);N.set("top",I.top+P);break;case"se":N.set("left",I.left-20);N.set("top",I.top+P);break;case"se-alt":N.set("top",I.top+P);N.set("right",c.windowWidth-I.left);break}return N}function F(K,J){var O=K.offset(),N=K.outerWidth(),I=K.outerHeight(),M,L;switch(J){case"n":M=O.left+N/2;L=O.top;break;case"e":M=O.left+N;L=O.top+I/2;break;case"s":M=O.left+N/2;L=O.top+I;break;case"w":M=O.left;L=O.top+I/2;break;case"nw":M=O.left;L=O.top;break;case"ne":M=O.left+N;L=O.top;break;case"sw":M=O.left;L=O.top+I;break;case"se":M=O.left+N;L=O.top+I;break}return{top:L,left:M}}function H(O,K){var S=O.closest("svg")[0],N=O[0],W=S.createSVGPoint(),L=N.getBBox(),V=N.getScreenCTM(),M=L.width/2,Q=L.height/2,P=[],I=["nw","n","ne","e","se","s","sw","w"],U,X,R,T;function J(){P.push(W.matrixTransform(V))}W.x=L.x;W.y=L.y;J();W.x+=M;J();W.x+=M;J();W.y+=Q;J();W.y+=Q;J();W.x-=M;J();W.x-=M;J();W.y-=Q;J();if(P[0].y!==P[1].y||P[0].x!==P[7].x){X=Math.atan2(V.b,V.a)*E;R=Math.ceil(((X%360)-22.5)/45);if(R<1){R+=8}while(R--){I.push(I.shift())}}for(T=0;T<P.length;T++){if(I[T]===K){U=P[T];break}}return{top:U.y+c.scrollTop,left:U.x+c.scrollLeft}}this.compute=G}function x(Q){var P=new j(),O=k("#"+Q.popupId);if(O.length===0){O=k("<div/>",{id:Q.popupId});if(w.length===0){w=k("body")}w.append(O)}if(Q.followMouse){if(!O.data(u)){A.on("mousemove",M);s.on("scroll",M);O.data(u,true)}}if(Q.mouseOnToPopup){O.on({mouseenter:function L(){if(O.data(f)){if(c.activeHover){c.activeHover.data(n).cancel()}}},mouseleave:function N(){if(c.activeHover){c.activeHover.data(n).hide()}}})}function I(S){S.data(e,true);O.queue(function R(T){H(S);T()})}function H(S){var U;if(!S.data(e)){return}if(c.isTipOpen){if(!c.isClosing){K(c.activeHover)}O.delay(100).queue(function R(V){H(S);V()});return}S.trigger("powerTipPreRender");U=B(S);if(U){O.empty().append(U)}else{return}S.trigger("powerTipRender");c.activeHover=S;c.isTipOpen=true;O.data(f,Q.mouseOnToPopup);if(!Q.followMouse){G(S);c.isFixedTipOpen=true}else{M()}O.fadeIn(Q.fadeInTime,function T(){if(!c.desyncTimeout){c.desyncTimeout=setInterval(J,500)}S.trigger("powerTipOpen")})}function K(R){c.isClosing=true;c.activeHover=null;c.isTipOpen=false;c.desyncTimeout=clearInterval(c.desyncTimeout);R.data(e,false);R.data(d,false);O.fadeOut(Q.fadeOutTime,function S(){var T=new b();c.isClosing=false;c.isFixedTipOpen=false;O.removeClass();T.set("top",c.currentY+Q.offset);T.set("left",c.currentX+Q.offset);O.css(T);R.trigger("powerTipClose")})}function M(){if(!c.isFixedTipOpen&&(c.isTipOpen||(c.tipOpenImminent&&O.data(u)))){var R=O.outerWidth(),V=O.outerHeight(),U=new b(),S,T;U.set("top",c.currentY+Q.offset);U.set("left",c.currentX+Q.offset);S=m(U,R,V);if(S!==p.none){T=a(S);if(T===1){if(S===p.right){U.set("left",c.windowWidth-R)}else{if(S===p.bottom){U.set("top",c.scrollTop+c.windowHeight-V)}}}else{U.set("left",c.currentX-R-Q.offset);U.set("top",c.currentY-V-Q.offset)}}O.css(U)}}function G(S){var R,T;if(Q.smartPlacement){R=k.fn.powerTip.smartPlacementLists[Q.placement];k.each(R,function(U,W){var V=m(F(S,W),O.outerWidth(),O.outerHeight());T=W;if(V===p.none){return false}})}else{F(S,Q.placement);T=Q.placement}O.addClass(T)}function F(U,T){var R=0,S,W,V=new b();V.set("top",0);V.set("left",0);O.css(V);do{S=O.outerWidth();W=O.outerHeight();V=P.compute(U,T,S,W,Q.offset);O.css(V)}while(++R<=5&&(S!==O.outerWidth()||W!==O.outerHeight()));return V}function J(){var R=false;if(c.isTipOpen&&!c.isClosing&&!c.delayInProgress){if(c.activeHover.data(e)===false||c.activeHover.is(":disabled")){R=true}else{if(!v(c.activeHover)&&!c.activeHover.is(":focus")&&!c.activeHover.data(d)){if(O.data(f)){if(!v(O)){R=true}}else{R=true}}}if(R){K(c.activeHover)}}}this.showTip=I;this.hideTip=K;this.resetPosition=G}function q(F){return window.SVGElement&&F[0] instanceof SVGElement}function h(){if(!c.mouseTrackingActive){c.mouseTrackingActive=true;k(function H(){c.scrollLeft=s.scrollLeft();c.scrollTop=s.scrollTop();c.windowWidth=s.width();c.windowHeight=s.height()});A.on("mousemove",i);s.on({resize:function G(){c.windowWidth=s.width();c.windowHeight=s.height()},scroll:function F(){var I=s.scrollLeft(),J=s.scrollTop();if(I!==c.scrollLeft){c.currentX+=I-c.scrollLeft;c.scrollLeft=I}if(J!==c.scrollTop){c.currentY+=J-c.scrollTop;c.scrollTop=J}}})}}function i(F){c.currentX=F.pageX;c.currentY=F.pageY}function v(F){var H=F.offset(),J=F[0].getBoundingClientRect(),I=J.right-J.left,G=J.bottom-J.top;return c.currentX>=H.left&&c.currentX<=H.left+I&&c.currentY>=H.top&&c.currentY<=H.top+G}function B(I){var G=I.data(y),F=I.data(o),K=I.data(l),H,J;if(G){if(k.isFunction(G)){G=G.call(I[0])}J=G}else{if(F){if(k.isFunction(F)){F=F.call(I[0])}if(F.length>0){J=F.clone(true,true)}}else{if(K){H=k("#"+K);if(H.length>0){J=H.html()}}}}return J}function m(M,L,K){var G=c.scrollTop,J=c.scrollLeft,I=G+c.windowHeight,F=J+c.windowWidth,H=p.none;if(M.top<G||Math.abs(M.bottom-c.windowHeight)-K<G){H|=p.top}if(M.top+K>I||Math.abs(M.bottom-c.windowHeight)>I){H|=p.bottom}if(M.left<J||M.right+L>F){H|=p.left}if(M.left+L>F||M.right<J){H|=p.right}return H}function a(G){var F=0;while(G){G&=G-1;F++}return F}}));
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/kudu__export_8h_source.html b/releases/1.4.0/cpp-client-api/kudu__export_8h_source.html
new file mode 100644
index 0000000..5ee2d49
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/kudu__export_8h_source.html
@@ -0,0 +1,101 @@
+<!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.11"/>
+<title>Kudu C++ client API: include/kudu/util/kudu_export.h Source File</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="files.html"><span>File&#160;List</span></a></li>
+      <li><a href="globals.html"><span>File&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_58b01e52e53886b8d78ab5060a2cd2bd.html">kudu</a></li><li class="navelem"><a class="el" href="dir_e8a2e446cf73a5a1ae0ad6a5a21b6d03.html">util</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">kudu_export.h</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div><div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="preprocessor">#ifndef KUDU_EXPORT_H</span></div><div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="preprocessor">#define KUDU_EXPORT_H</span></div><div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;</div><div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#ifdef KUDU_STATIC_DEFINE</span></div><div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#  define KUDU_EXPORT</span></div><div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="preprocessor">#  define KUDU_NO_EXPORT</span></div><div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="preprocessor">#  ifndef KUDU_EXPORT</span></div><div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="preprocessor">#    ifdef kudu_client_exported_EXPORTS</span></div><div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;        <span class="comment">/* We are building this library */</span></div><div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="preprocessor">#      define KUDU_EXPORT __attribute__((visibility(&quot;default&quot;)))</span></div><div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="preprocessor">#    else</span></div><div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;        <span class="comment">/* We are using this library */</span></div><div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="preprocessor">#      define KUDU_EXPORT __attribute__((visibility(&quot;default&quot;)))</span></div><div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="preprocessor">#    endif</span></div><div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="preprocessor">#  endif</span></div><div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;</div><div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#  ifndef KUDU_NO_EXPORT</span></div><div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#    define KUDU_NO_EXPORT __attribute__((visibility(&quot;hidden&quot;)))</span></div><div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#  endif</span></div><div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;</div><div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#ifndef KUDU_DEPRECATED</span></div><div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="preprocessor">#  define KUDU_DEPRECATED __attribute__ ((__deprecated__))</span></div><div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="preprocessor">#endif</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">#ifndef KUDU_DEPRECATED_EXPORT</span></div><div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;<span class="preprocessor">#  define KUDU_DEPRECATED_EXPORT KUDU_EXPORT KUDU_DEPRECATED</span></div><div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;<span class="preprocessor">#endif</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">#ifndef KUDU_DEPRECATED_NO_EXPORT</span></div><div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;<span class="preprocessor">#  define KUDU_DEPRECATED_NO_EXPORT KUDU_NO_EXPORT KUDU_DEPRECATED</span></div><div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;</div><div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;<span class="preprocessor">#if 0 </span><span class="comment">/* DEFINE_NO_DEPRECATED */</span><span class="preprocessor"></span></div><div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;<span class="preprocessor">#  ifndef KUDU_NO_DEPRECATED</span></div><div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;<span class="preprocessor">#    define KUDU_NO_DEPRECATED</span></div><div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;<span class="preprocessor">#  endif</span></div><div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;</div><div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;<span class="preprocessor">#endif</span></div></div><!-- fragment --></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:02 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/monotime_8h_source.html b/releases/1.4.0/cpp-client-api/monotime_8h_source.html
new file mode 100644
index 0000000..00183ff
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/monotime_8h_source.html
@@ -0,0 +1,104 @@
+<!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.11"/>
+<title>Kudu C++ client API: include/kudu/util/monotime.h Source File</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="files.html"><span>File&#160;List</span></a></li>
+      <li><a href="globals.html"><span>File&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_58b01e52e53886b8d78ab5060a2cd2bd.html">kudu</a></li><li class="navelem"><a class="el" href="dir_e8a2e446cf73a5a1ae0ad6a5a21b6d03.html">util</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">monotime.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&quot;); 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;<span class="preprocessor">#ifndef KUDU_UTIL_MONOTIME_H</span></div><div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#define KUDU_UTIL_MONOTIME_H</span></div><div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;</div><div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#include &lt;stdint.h&gt;</span></div><div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#include &lt;string&gt;</span></div><div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;</div><div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#ifdef KUDU_HEADERS_NO_STUBS</span></div><div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#include &lt;gtest/gtest_prod.h&gt;</span></div><div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="comment">// This is a poor module interdependency, but the stubs are header-only and</span></div><div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="comment">// it&#39;s only for exported header builds, so we&#39;ll make an exception.</span></div><div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;<span class="preprocessor">#include &quot;kudu/client/stubs.h&quot;</span></div><div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;</div><div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;<span class="preprocessor">#include &quot;kudu/util/kudu_export.h&quot;</span></div><div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;</div><div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;<span class="keyword">struct </span>timeval;</div><div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;<span class="keyword">struct </span>timespec;</div><div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;</div><div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;<span class="keyword">namespace </span><a class="code" href="namespacekudu.html">kudu</a> {</div><div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;<span class="keyword">class </span>MonoTime;</div><div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;</div><div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="classkudu_1_1MonoDelta.html">   43</a></span>&#160;<span class="keyword">class </span>KUDU_EXPORT <a class="code" href="classkudu_1_1MonoDelta.html">MonoDelta</a> {</div><div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1MonoDelta.html">MonoDelta</a> FromSeconds(<span class="keywordtype">double</span> seconds);</div><div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1MonoDelta.html">MonoDelta</a> FromMilliseconds(int64_t ms);</div><div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1MonoDelta.html">MonoDelta</a> FromMicroseconds(int64_t us);</div><div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1MonoDelta.html">MonoDelta</a> FromNanoseconds(int64_t ns);</div><div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;</div><div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;  <a class="code" href="classkudu_1_1MonoDelta.html">MonoDelta</a>();</div><div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;</div><div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;  <span class="keywordtype">bool</span> Initialized() <span class="keyword">const</span>;</div><div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;</div><div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;  <span class="keywordtype">bool</span> LessThan(<span class="keyword">const</span> <a class="code" href="classkudu_1_1MonoDelta.html">MonoDelta</a> &amp;rhs) <span class="keyword">const</span>;</div><div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;</div><div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;  <span class="keywordtype">bool</span> MoreThan(<span class="keyword">const</span> <a class="code" href="classkudu_1_1MonoDelta.html">MonoDelta</a> &amp;rhs) <span class="keyword">const</span>;</div><div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;</div><div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;  <span class="keywordtype">bool</span> Equals(<span class="keyword">const</span> <a class="code" href="classkudu_1_1MonoDelta.html">MonoDelta</a> &amp;rhs) <span class="keyword">const</span>;</div><div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;</div><div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;  std::string ToString() <span class="keyword">const</span>;</div><div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;</div><div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;  <span class="keywordtype">double</span> ToSeconds() <span class="keyword">const</span>;</div><div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;  int64_t ToMilliseconds() <span class="keyword">const</span>;</div><div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;  int64_t ToMicroseconds() <span class="keyword">const</span>;</div><div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;  int64_t ToNanoseconds() <span class="keyword">const</span>;</div><div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;</div><div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;  <span class="keywordtype">void</span> ToTimeVal(<span class="keyword">struct</span> timeval *tv) <span class="keyword">const</span>;</div><div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;</div><div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;  <span class="keywordtype">void</span> ToTimeSpec(<span class="keyword">struct</span> timespec *ts) <span class="keyword">const</span>;</div><div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;</div><div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;  <span class="keyword">static</span> <span class="keywordtype">void</span> NanosToTimeSpec(int64_t nanos, <span class="keyword">struct</span> timespec* ts);</div><div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;</div><div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;  <span class="keyword">static</span> <span class="keyword">const</span> int64_t kUninitialized;</div><div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;</div><div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classkudu_1_1MonoTime.html">MonoTime</a>;</div><div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;  FRIEND_TEST(TestMonoTime, TestDeltaConversions);</div><div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;</div><div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;  <span class="keyword">explicit</span> <a class="code" href="classkudu_1_1MonoDelta.html">MonoDelta</a>(int64_t delta);</div><div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;  int64_t nano_delta_;</div><div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;};</div><div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;</div><div class="line"><a name="l00146"></a><span class="lineno"><a class="line" href="classkudu_1_1MonoTime.html">  146</a></span>&#160;<span class="keyword">class </span>KUDU_EXPORT <a class="code" href="classkudu_1_1MonoTime.html">MonoTime</a> {</div><div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;  <span class="keyword">static</span> <span class="keyword">const</span> int64_t kNanosecondsPerSecond = 1000000000L;</div><div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;  <span class="keyword">static</span> <span class="keyword">const</span> int64_t kNanosecondsPerMillisecond = 1000000L;</div><div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;  <span class="keyword">static</span> <span class="keyword">const</span> int64_t kNanosecondsPerMicrosecond = 1000L;</div><div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;</div><div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;  <span class="keyword">static</span> <span class="keyword">const</span> int64_t kMicrosecondsPerSecond = 1000000L;</div><div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;</div><div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1MonoTime.html">MonoTime</a> Now();</div><div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;</div><div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1MonoTime.html">MonoTime</a> Max();</div><div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;</div><div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1MonoTime.html">MonoTime</a> Min();</div><div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;</div><div class="line"><a name="l00176"></a><span class="lineno">  176</span>&#160;  <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="classkudu_1_1MonoTime.html">MonoTime</a>&amp; Earliest(<span class="keyword">const</span> <a class="code" href="classkudu_1_1MonoTime.html">MonoTime</a>&amp; a, <span class="keyword">const</span> <a class="code" href="classkudu_1_1MonoTime.html">MonoTime</a>&amp; b);</div><div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160;</div><div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;  <a class="code" href="classkudu_1_1MonoTime.html">MonoTime</a>();</div><div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;</div><div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160;  <span class="keywordtype">bool</span> Initialized() <span class="keyword">const</span>;</div><div class="line"><a name="l00184"></a><span class="lineno">  184</span>&#160;</div><div class="line"><a name="l00192"></a><span class="lineno">  192</span>&#160;  <a class="code" href="classkudu_1_1MonoDelta.html">MonoDelta</a> GetDeltaSince(<span class="keyword">const</span> <a class="code" href="classkudu_1_1MonoTime.html">MonoTime</a> &amp;rhs) <span class="keyword">const</span>;</div><div class="line"><a name="l00193"></a><span class="lineno">  193</span>&#160;</div><div class="line"><a name="l00198"></a><span class="lineno">  198</span>&#160;  <span class="keywordtype">void</span> AddDelta(<span class="keyword">const</span> <a class="code" href="classkudu_1_1MonoDelta.html">MonoDelta</a> &amp;delta);</div><div class="line"><a name="l00199"></a><span class="lineno">  199</span>&#160;</div><div class="line"><a name="l00207"></a><span class="lineno">  207</span>&#160;  <span class="keywordtype">bool</span> ComesBefore(<span class="keyword">const</span> <a class="code" href="classkudu_1_1MonoTime.html">MonoTime</a> &amp;rhs) <span class="keyword">const</span>;</div><div class="line"><a name="l00208"></a><span class="lineno">  208</span>&#160;</div><div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;  std::string ToString() <span class="keyword">const</span>;</div><div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160;</div><div class="line"><a name="l00218"></a><span class="lineno">  218</span>&#160;  <span class="keywordtype">bool</span> Equals(<span class="keyword">const</span> <a class="code" href="classkudu_1_1MonoTime.html">MonoTime</a>&amp; other) <span class="keyword">const</span>;</div><div class="line"><a name="l00219"></a><span class="lineno">  219</span>&#160;</div><div class="line"><a name="l00228"></a><span class="lineno">  228</span>&#160;  <a class="code" href="classkudu_1_1MonoTime.html">MonoTime</a>&amp; operator+=(<span class="keyword">const</span> <a class="code" href="classkudu_1_1MonoDelta.html">MonoDelta</a>&amp; delta);</div><div class="line"><a name="l00229"></a><span class="lineno">  229</span>&#160;</div><div class="line"><a name="l00235"></a><span class="lineno">  235</span>&#160;  <a class="code" href="classkudu_1_1MonoTime.html">MonoTime</a>&amp; operator-=(<span class="keyword">const</span> <a class="code" href="classkudu_1_1MonoDelta.html">MonoDelta</a>&amp; delta);</div><div class="line"><a name="l00237"></a><span class="lineno">  237</span>&#160;</div><div class="line"><a name="l00238"></a><span class="lineno">  238</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classkudu_1_1MonoDelta.html">MonoDelta</a>;</div><div class="line"><a name="l00240"></a><span class="lineno">  240</span>&#160;  FRIEND_TEST(TestMonoTime, TestTimeSpec);</div><div class="line"><a name="l00241"></a><span class="lineno">  241</span>&#160;  FRIEND_TEST(TestMonoTime, TestDeltaConversions);</div><div class="line"><a name="l00242"></a><span class="lineno">  242</span>&#160;</div><div class="line"><a name="l00243"></a><span class="lineno">  243</span>&#160;  <span class="keyword">explicit</span> <a class="code" href="classkudu_1_1MonoTime.html">MonoTime</a>(<span class="keyword">const</span> <span class="keyword">struct</span> timespec &amp;ts);</div><div class="line"><a name="l00244"></a><span class="lineno">  244</span>&#160;  <span class="keyword">explicit</span> <a class="code" href="classkudu_1_1MonoTime.html">MonoTime</a>(int64_t nanos);</div><div class="line"><a name="l00245"></a><span class="lineno">  245</span>&#160;  <span class="keywordtype">double</span> ToSeconds() <span class="keyword">const</span>;</div><div class="line"><a name="l00246"></a><span class="lineno">  246</span>&#160;  int64_t nanos_;</div><div class="line"><a name="l00247"></a><span class="lineno">  247</span>&#160;};</div><div class="line"><a name="l00248"></a><span class="lineno">  248</span>&#160;</div><div class="line"><a name="l00259"></a><span class="lineno">  259</span>&#160;<span class="keywordtype">void</span> KUDU_EXPORT SleepFor(<span class="keyword">const</span> <a class="code" href="classkudu_1_1MonoDelta.html">MonoDelta</a>&amp; delta);</div><div class="line"><a name="l00260"></a><span class="lineno">  260</span>&#160;</div><div class="line"><a name="l00270"></a><span class="lineno">  270</span>&#160;<span class="keywordtype">bool</span> KUDU_EXPORT operator==(<span class="keyword">const</span> <a class="code" href="classkudu_1_1MonoDelta.html">MonoDelta</a> &amp;lhs, <span class="keyword">const</span> <a class="code" href="classkudu_1_1MonoDelta.html">MonoDelta</a> &amp;rhs);</div><div class="line"><a name="l00271"></a><span class="lineno">  271</span>&#160;</div><div class="line"><a name="l00278"></a><span class="lineno">  278</span>&#160;<span class="keywordtype">bool</span> KUDU_EXPORT operator!=(<span class="keyword">const</span> <a class="code" href="classkudu_1_1MonoDelta.html">MonoDelta</a> &amp;lhs, <span class="keyword">const</span> <a class="code" href="classkudu_1_1MonoDelta.html">MonoDelta</a> &amp;rhs);</div><div class="line"><a name="l00279"></a><span class="lineno">  279</span>&#160;</div><div class="line"><a name="l00286"></a><span class="lineno">  286</span>&#160;<span class="keywordtype">bool</span> KUDU_EXPORT operator&lt;(<span class="keyword">const</span> <a class="code" href="classkudu_1_1MonoDelta.html">MonoDelta</a> &amp;lhs, <span class="keyword">const</span> <a class="code" href="classkudu_1_1MonoDelta.html">MonoDelta</a> &amp;rhs);</div><div class="line"><a name="l00287"></a><span class="lineno">  287</span>&#160;</div><div class="line"><a name="l00294"></a><span class="lineno">  294</span>&#160;<span class="keywordtype">bool</span> KUDU_EXPORT operator&lt;=(<span class="keyword">const</span> <a class="code" href="classkudu_1_1MonoDelta.html">MonoDelta</a> &amp;lhs, <span class="keyword">const</span> <a class="code" href="classkudu_1_1MonoDelta.html">MonoDelta</a> &amp;rhs);</div><div class="line"><a name="l00295"></a><span class="lineno">  295</span>&#160;</div><div class="line"><a name="l00302"></a><span class="lineno">  302</span>&#160;<span class="keywordtype">bool</span> KUDU_EXPORT operator&gt;(<span class="keyword">const</span> <a class="code" href="classkudu_1_1MonoDelta.html">MonoDelta</a> &amp;lhs, <span class="keyword">const</span> <a class="code" href="classkudu_1_1MonoDelta.html">MonoDelta</a> &amp;rhs);</div><div class="line"><a name="l00303"></a><span class="lineno">  303</span>&#160;</div><div class="line"><a name="l00310"></a><span class="lineno">  310</span>&#160;<span class="keywordtype">bool</span> KUDU_EXPORT operator&gt;=(<span class="keyword">const</span> <a class="code" href="classkudu_1_1MonoDelta.html">MonoDelta</a> &amp;lhs, <span class="keyword">const</span> <a class="code" href="classkudu_1_1MonoDelta.html">MonoDelta</a> &amp;rhs);</div><div class="line"><a name="l00312"></a><span class="lineno">  312</span>&#160;</div><div class="line"><a name="l00326"></a><span class="lineno">  326</span>&#160;<span class="keywordtype">bool</span> KUDU_EXPORT operator==(<span class="keyword">const</span> <a class="code" href="classkudu_1_1MonoTime.html">MonoTime</a>&amp; lhs, <span class="keyword">const</span> <a class="code" href="classkudu_1_1MonoTime.html">MonoTime</a>&amp; rhs);</div><div class="line"><a name="l00327"></a><span class="lineno">  327</span>&#160;</div><div class="line"><a name="l00339"></a><span class="lineno">  339</span>&#160;<span class="keywordtype">bool</span> KUDU_EXPORT operator!=(<span class="keyword">const</span> <a class="code" href="classkudu_1_1MonoTime.html">MonoTime</a>&amp; lhs, <span class="keyword">const</span> <a class="code" href="classkudu_1_1MonoTime.html">MonoTime</a>&amp; rhs);</div><div class="line"><a name="l00340"></a><span class="lineno">  340</span>&#160;</div><div class="line"><a name="l00347"></a><span class="lineno">  347</span>&#160;<span class="keywordtype">bool</span> KUDU_EXPORT operator&lt;(<span class="keyword">const</span> <a class="code" href="classkudu_1_1MonoTime.html">MonoTime</a>&amp; lhs, <span class="keyword">const</span> <a class="code" href="classkudu_1_1MonoTime.html">MonoTime</a>&amp; rhs);</div><div class="line"><a name="l00348"></a><span class="lineno">  348</span>&#160;</div><div class="line"><a name="l00355"></a><span class="lineno">  355</span>&#160;<span class="keywordtype">bool</span> KUDU_EXPORT operator&lt;=(<span class="keyword">const</span> <a class="code" href="classkudu_1_1MonoTime.html">MonoTime</a>&amp; lhs, <span class="keyword">const</span> <a class="code" href="classkudu_1_1MonoTime.html">MonoTime</a>&amp; rhs);</div><div class="line"><a name="l00356"></a><span class="lineno">  356</span>&#160;</div><div class="line"><a name="l00363"></a><span class="lineno">  363</span>&#160;<span class="keywordtype">bool</span> KUDU_EXPORT operator&gt;(<span class="keyword">const</span> <a class="code" href="classkudu_1_1MonoTime.html">MonoTime</a>&amp; lhs, <span class="keyword">const</span> <a class="code" href="classkudu_1_1MonoTime.html">MonoTime</a>&amp; rhs);</div><div class="line"><a name="l00364"></a><span class="lineno">  364</span>&#160;</div><div class="line"><a name="l00371"></a><span class="lineno">  371</span>&#160;<span class="keywordtype">bool</span> KUDU_EXPORT operator&gt;=(<span class="keyword">const</span> <a class="code" href="classkudu_1_1MonoTime.html">MonoTime</a>&amp; lhs, <span class="keyword">const</span> <a class="code" href="classkudu_1_1MonoTime.html">MonoTime</a>&amp; rhs);</div><div class="line"><a name="l00373"></a><span class="lineno">  373</span>&#160;</div><div class="line"><a name="l00384"></a><span class="lineno">  384</span>&#160;<a class="code" href="classkudu_1_1MonoTime.html">MonoTime</a> KUDU_EXPORT operator+(<span class="keyword">const</span> <a class="code" href="classkudu_1_1MonoTime.html">MonoTime</a>&amp; t, <span class="keyword">const</span> <a class="code" href="classkudu_1_1MonoDelta.html">MonoDelta</a>&amp; delta);</div><div class="line"><a name="l00385"></a><span class="lineno">  385</span>&#160;</div><div class="line"><a name="l00393"></a><span class="lineno">  393</span>&#160;<a class="code" href="classkudu_1_1MonoTime.html">MonoTime</a> KUDU_EXPORT operator-(<span class="keyword">const</span> <a class="code" href="classkudu_1_1MonoTime.html">MonoTime</a>&amp; t, <span class="keyword">const</span> <a class="code" href="classkudu_1_1MonoDelta.html">MonoDelta</a>&amp; delta);</div><div class="line"><a name="l00394"></a><span class="lineno">  394</span>&#160;</div><div class="line"><a name="l00407"></a><span class="lineno">  407</span>&#160;<a class="code" href="classkudu_1_1MonoDelta.html">MonoDelta</a> KUDU_EXPORT operator-(<span class="keyword">const</span> <a class="code" href="classkudu_1_1MonoTime.html">MonoTime</a>&amp; t_end, <span class="keyword">const</span> <a class="code" href="classkudu_1_1MonoTime.html">MonoTime</a>&amp; t_begin);</div><div class="line"><a name="l00409"></a><span class="lineno">  409</span>&#160;</div><div class="line"><a name="l00410"></a><span class="lineno">  410</span>&#160;} <span class="comment">// namespace kudu</span></div><div class="line"><a name="l00411"></a><span class="lineno">  411</span>&#160;</div><div class="line"><a name="l00412"></a><span class="lineno">  412</span>&#160;<span class="preprocessor">#endif</span></div><div class="ttc" id="namespacekudu_html"><div class="ttname"><a href="namespacekudu.html">kudu</a></div><div class="ttdef"><b>Definition:</b> callbacks.h:28</div></div>
+<div class="ttc" id="classkudu_1_1MonoTime_html"><div class="ttname"><a href="classkudu_1_1MonoTime.html">kudu::MonoTime</a></div><div class="ttdoc">Representation of a particular point in time. </div><div class="ttdef"><b>Definition:</b> monotime.h:146</div></div>
+<div class="ttc" id="classkudu_1_1MonoDelta_html"><div class="ttname"><a href="classkudu_1_1MonoDelta.html">kudu::MonoDelta</a></div><div class="ttdoc">A representation of a time interval. </div><div class="ttdef"><b>Definition:</b> monotime.h:43</div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:02 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/nav_f.png b/releases/1.4.0/cpp-client-api/nav_f.png
new file mode 100644
index 0000000..72a58a5
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/nav_f.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/nav_g.png b/releases/1.4.0/cpp-client-api/nav_g.png
new file mode 100644
index 0000000..2093a23
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/nav_g.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/nav_h.png b/releases/1.4.0/cpp-client-api/nav_h.png
new file mode 100644
index 0000000..33389b1
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/nav_h.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/open.png b/releases/1.4.0/cpp-client-api/open.png
new file mode 100644
index 0000000..30f75c7
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/open.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/pages.html b/releases/1.4.0/cpp-client-api/pages.html
new file mode 100644
index 0000000..909d010
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/pages.html
@@ -0,0 +1,97 @@
+<!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.11"/>
+<title>Kudu C++ client API: Related Pages</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li class="current"><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+</div><!-- top -->
+<!-- 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 class="header">
+  <div class="headertitle">
+<div class="title">Related Pages</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock">Here is a list of all related documentation pages:</div><div class="directory">
+<table class="directory">
+<tr id="row_0_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a class="el" href="todo.html" target="_self">Todo List</a></td><td class="desc"></td></tr>
+<tr id="row_1_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a class="el" href="deprecated.html" target="_self">Deprecated List</a></td><td class="desc"></td></tr>
+</table>
+</div><!-- directory -->
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/partial__row_8h_source.html b/releases/1.4.0/cpp-client-api/partial__row_8h_source.html
new file mode 100644
index 0000000..e55b82f
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/partial__row_8h_source.html
@@ -0,0 +1,104 @@
+<!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.11"/>
+<title>Kudu C++ client API: include/kudu/common/partial_row.h Source File</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="files.html"><span>File&#160;List</span></a></li>
+      <li><a href="globals.html"><span>File&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_58b01e52e53886b8d78ab5060a2cd2bd.html">kudu</a></li><li class="navelem"><a class="el" href="dir_a7d8e458a72ff63c89f2ceb44d9dd2f6.html">common</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">partial_row.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&quot;); 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;<span class="preprocessor">#ifndef KUDU_COMMON_PARTIAL_ROW_H</span></div><div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#define KUDU_COMMON_PARTIAL_ROW_H</span></div><div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;</div><div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#include &lt;stdint.h&gt;</span></div><div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#include &lt;string&gt;</span></div><div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#include &lt;vector&gt;</span></div><div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;</div><div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#ifdef KUDU_HEADERS_NO_STUBS</span></div><div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="preprocessor">#include &quot;kudu/gutil/macros.h&quot;</span></div><div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="preprocessor">#include &quot;kudu/gutil/port.h&quot;</span></div><div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="preprocessor">#include &lt;gtest/gtest_prod.h&gt;</span></div><div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;<span class="comment">// This is a poor module interdependency, but the stubs are header-only and</span></div><div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;<span class="comment">// it&#39;s only for exported header builds, so we&#39;ll make an exception.</span></div><div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;<span class="preprocessor">#include &quot;kudu/client/stubs.h&quot;</span></div><div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;</div><div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;<span class="preprocessor">#include &quot;kudu/util/kudu_export.h&quot;</span></div><div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;<span class="preprocessor">#include &quot;kudu/util/slice.h&quot;</span></div><div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;</div><div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;<span class="keyword">namespace </span><a class="code" href="namespacekudu.html">kudu</a> {</div><div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;<span class="keyword">class </span>ColumnSchema;</div><div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;<span class="keyword">namespace </span>client {</div><div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;<span class="keyword">class </span>KuduWriteOperation;</div><div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">typename</span> KeyTypeWrapper&gt; <span class="keyword">struct </span>SliceKeysTestSetup;</div><div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">typename</span> KeyTypeWrapper&gt; <span class="keyword">struct </span>IntKeysTestSetup;</div><div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;} <span class="comment">// namespace client</span></div><div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;</div><div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;<span class="keyword">namespace </span>tablet {</div><div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;  <span class="keyword">template</span>&lt;<span class="keyword">typename</span> KeyTypeWrapper&gt; <span class="keyword">struct </span>SliceTypeRowOps;</div><div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;  <span class="keyword">template</span>&lt;<span class="keyword">typename</span> KeyTypeWrapper&gt; <span class="keyword">struct </span>NumTypeRowOps;</div><div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;} <span class="comment">// namespace tablet</span></div><div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;</div><div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;</div><div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;<span class="keyword">class </span>Schema;</div><div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;<span class="keyword">class </span>PartialRowPB;</div><div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;</div><div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="classKuduPartialRow.html">   61</a></span>&#160;<span class="keyword">class </span>KUDU_EXPORT <a class="code" href="classKuduPartialRow.html">KuduPartialRow</a> {</div><div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;  <span class="keyword">explicit</span> <a class="code" href="classKuduPartialRow.html">KuduPartialRow</a>(<span class="keyword">const</span> Schema* schema);</div><div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;</div><div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;  <span class="keyword">virtual</span> ~<a class="code" href="classKuduPartialRow.html">KuduPartialRow</a>();</div><div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;</div><div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;  <a class="code" href="classKuduPartialRow.html">KuduPartialRow</a>(<span class="keyword">const</span> <a class="code" href="classKuduPartialRow.html">KuduPartialRow</a>&amp; other);</div><div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;</div><div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;  <a class="code" href="classKuduPartialRow.html">KuduPartialRow</a>&amp; operator=(<a class="code" href="classKuduPartialRow.html">KuduPartialRow</a> other);</div><div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;</div><div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;  Status SetBool(<span class="keyword">const</span> Slice&amp; col_name, <span class="keywordtype">bool</span> val) WARN_UNUSED_RESULT;</div><div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;</div><div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;  Status SetInt8(<span class="keyword">const</span> Slice&amp; col_name, int8_t val) WARN_UNUSED_RESULT;</div><div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;  Status SetInt16(<span class="keyword">const</span> Slice&amp; col_name, int16_t val) WARN_UNUSED_RESULT;</div><div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;  Status SetInt32(<span class="keyword">const</span> Slice&amp; col_name, int32_t val) WARN_UNUSED_RESULT;</div><div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;  Status SetInt64(<span class="keyword">const</span> Slice&amp; col_name, int64_t val) WARN_UNUSED_RESULT;</div><div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;  Status SetUnixTimeMicros(<span class="keyword">const</span> Slice&amp; col_name,</div><div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;                           int64_t micros_since_utc_epoch) WARN_UNUSED_RESULT;</div><div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;</div><div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;  Status SetFloat(<span class="keyword">const</span> Slice&amp; col_name, <span class="keywordtype">float</span> val) WARN_UNUSED_RESULT;</div><div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;  Status SetDouble(<span class="keyword">const</span> Slice&amp; col_name, <span class="keywordtype">double</span> val) WARN_UNUSED_RESULT;</div><div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;</div><div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;  Status SetBool(<span class="keywordtype">int</span> col_idx, <span class="keywordtype">bool</span> val) WARN_UNUSED_RESULT;</div><div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;</div><div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;  Status SetInt8(<span class="keywordtype">int</span> col_idx, int8_t val) WARN_UNUSED_RESULT;</div><div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;  Status SetInt16(<span class="keywordtype">int</span> col_idx, int16_t val) WARN_UNUSED_RESULT;</div><div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;  Status SetInt32(<span class="keywordtype">int</span> col_idx, int32_t val) WARN_UNUSED_RESULT;</div><div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;  Status SetInt64(<span class="keywordtype">int</span> col_idx, int64_t val) WARN_UNUSED_RESULT;</div><div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;  Status SetUnixTimeMicros(<span class="keywordtype">int</span> col_idx, int64_t micros_since_utc_epoch) WARN_UNUSED_RESULT;</div><div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;</div><div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;  Status SetFloat(<span class="keywordtype">int</span> col_idx, <span class="keywordtype">float</span> val) WARN_UNUSED_RESULT;</div><div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;  Status SetDouble(<span class="keywordtype">int</span> col_idx, <span class="keywordtype">double</span> val) WARN_UNUSED_RESULT;</div><div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;</div><div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;  Status SetBinary(<span class="keyword">const</span> Slice&amp; col_name, <span class="keyword">const</span> Slice&amp; val) WARN_UNUSED_RESULT;</div><div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;  Status SetString(<span class="keyword">const</span> Slice&amp; col_name, <span class="keyword">const</span> Slice&amp; val) WARN_UNUSED_RESULT;</div><div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;</div><div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;  Status SetBinary(<span class="keywordtype">int</span> col_idx, <span class="keyword">const</span> Slice&amp; val) WARN_UNUSED_RESULT;</div><div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160;  Status SetString(<span class="keywordtype">int</span> col_idx, <span class="keyword">const</span> Slice&amp; val) WARN_UNUSED_RESULT;</div><div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;</div><div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160;  Status SetBinaryCopy(<span class="keyword">const</span> Slice&amp; col_name, <span class="keyword">const</span> Slice&amp; val) WARN_UNUSED_RESULT;</div><div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160;  Status SetStringCopy(<span class="keyword">const</span> Slice&amp; col_name, <span class="keyword">const</span> Slice&amp; val) WARN_UNUSED_RESULT;</div><div class="line"><a name="l00197"></a><span class="lineno">  197</span>&#160;</div><div class="line"><a name="l00215"></a><span class="lineno">  215</span>&#160;  Status SetStringCopy(<span class="keywordtype">int</span> col_idx, <span class="keyword">const</span> Slice&amp; val) WARN_UNUSED_RESULT;</div><div class="line"><a name="l00216"></a><span class="lineno">  216</span>&#160;  Status SetBinaryCopy(<span class="keywordtype">int</span> col_idx, <span class="keyword">const</span> Slice&amp; val) WARN_UNUSED_RESULT;</div><div class="line"><a name="l00218"></a><span class="lineno">  218</span>&#160;</div><div class="line"><a name="l00236"></a><span class="lineno">  236</span>&#160;  Status SetBinaryNoCopy(<span class="keyword">const</span> Slice&amp; col_name, <span class="keyword">const</span> Slice&amp; val) WARN_UNUSED_RESULT;</div><div class="line"><a name="l00237"></a><span class="lineno">  237</span>&#160;  Status SetStringNoCopy(<span class="keyword">const</span> Slice&amp; col_name, <span class="keyword">const</span> Slice&amp; val) WARN_UNUSED_RESULT;</div><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;</div><div class="line"><a name="l00262"></a><span class="lineno">  262</span>&#160;  Status SetBinaryNoCopy(<span class="keywordtype">int</span> col_idx, <span class="keyword">const</span> Slice&amp; val) WARN_UNUSED_RESULT;</div><div class="line"><a name="l00263"></a><span class="lineno">  263</span>&#160;  Status SetStringNoCopy(<span class="keywordtype">int</span> col_idx, <span class="keyword">const</span> Slice&amp; val) WARN_UNUSED_RESULT;</div><div class="line"><a name="l00265"></a><span class="lineno">  265</span>&#160;</div><div class="line"><a name="l00274"></a><span class="lineno">  274</span>&#160;  Status SetNull(<span class="keyword">const</span> Slice&amp; col_name) WARN_UNUSED_RESULT;</div><div class="line"><a name="l00275"></a><span class="lineno">  275</span>&#160;</div><div class="line"><a name="l00284"></a><span class="lineno">  284</span>&#160;  Status SetNull(<span class="keywordtype">int</span> col_idx) WARN_UNUSED_RESULT;</div><div class="line"><a name="l00285"></a><span class="lineno">  285</span>&#160;</div><div class="line"><a name="l00293"></a><span class="lineno">  293</span>&#160;  Status Unset(<span class="keyword">const</span> Slice&amp; col_name) WARN_UNUSED_RESULT;</div><div class="line"><a name="l00294"></a><span class="lineno">  294</span>&#160;</div><div class="line"><a name="l00302"></a><span class="lineno">  302</span>&#160;  Status Unset(<span class="keywordtype">int</span> col_idx) WARN_UNUSED_RESULT;</div><div class="line"><a name="l00303"></a><span class="lineno">  303</span>&#160;</div><div class="line"><a name="l00309"></a><span class="lineno">  309</span>&#160;  <span class="keywordtype">bool</span> IsColumnSet(<span class="keyword">const</span> Slice&amp; col_name) <span class="keyword">const</span>;</div><div class="line"><a name="l00310"></a><span class="lineno">  310</span>&#160;</div><div class="line"><a name="l00316"></a><span class="lineno">  316</span>&#160;  <span class="keywordtype">bool</span> IsColumnSet(<span class="keywordtype">int</span> col_idx) <span class="keyword">const</span>;</div><div class="line"><a name="l00317"></a><span class="lineno">  317</span>&#160;</div><div class="line"><a name="l00323"></a><span class="lineno">  323</span>&#160;  <span class="keywordtype">bool</span> IsNull(<span class="keyword">const</span> Slice&amp; col_name) <span class="keyword">const</span>;</div><div class="line"><a name="l00324"></a><span class="lineno">  324</span>&#160;</div><div class="line"><a name="l00330"></a><span class="lineno">  330</span>&#160;  <span class="keywordtype">bool</span> IsNull(<span class="keywordtype">int</span> col_idx) <span class="keyword">const</span>;</div><div class="line"><a name="l00331"></a><span class="lineno">  331</span>&#160;</div><div class="line"><a name="l00343"></a><span class="lineno">  343</span>&#160;  Status GetBool(<span class="keyword">const</span> Slice&amp; col_name, <span class="keywordtype">bool</span>* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00344"></a><span class="lineno">  344</span>&#160;</div><div class="line"><a name="l00345"></a><span class="lineno">  345</span>&#160;  Status GetInt8(<span class="keyword">const</span> Slice&amp; col_name, int8_t* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00346"></a><span class="lineno">  346</span>&#160;  Status GetInt16(<span class="keyword">const</span> Slice&amp; col_name, int16_t* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00347"></a><span class="lineno">  347</span>&#160;  Status GetInt32(<span class="keyword">const</span> Slice&amp; col_name, int32_t* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00348"></a><span class="lineno">  348</span>&#160;  Status GetInt64(<span class="keyword">const</span> Slice&amp; col_name, int64_t* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00349"></a><span class="lineno">  349</span>&#160;  Status GetUnixTimeMicros(<span class="keyword">const</span> Slice&amp; col_name,</div><div class="line"><a name="l00350"></a><span class="lineno">  350</span>&#160;                      int64_t* micros_since_utc_epoch) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00351"></a><span class="lineno">  351</span>&#160;</div><div class="line"><a name="l00352"></a><span class="lineno">  352</span>&#160;  Status GetFloat(<span class="keyword">const</span> Slice&amp; col_name, <span class="keywordtype">float</span>* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00353"></a><span class="lineno">  353</span>&#160;  Status GetDouble(<span class="keyword">const</span> Slice&amp; col_name, <span class="keywordtype">double</span>* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00355"></a><span class="lineno">  355</span>&#160;</div><div class="line"><a name="l00374"></a><span class="lineno">  374</span>&#160;  Status GetBool(<span class="keywordtype">int</span> col_idx, <span class="keywordtype">bool</span>* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00375"></a><span class="lineno">  375</span>&#160;</div><div class="line"><a name="l00376"></a><span class="lineno">  376</span>&#160;  Status GetInt8(<span class="keywordtype">int</span> col_idx, int8_t* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00377"></a><span class="lineno">  377</span>&#160;  Status GetInt16(<span class="keywordtype">int</span> col_idx, int16_t* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00378"></a><span class="lineno">  378</span>&#160;  Status GetInt32(<span class="keywordtype">int</span> col_idx, int32_t* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00379"></a><span class="lineno">  379</span>&#160;  Status GetInt64(<span class="keywordtype">int</span> col_idx, int64_t* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00380"></a><span class="lineno">  380</span>&#160;  Status GetUnixTimeMicros(<span class="keywordtype">int</span> col_idx, int64_t* micros_since_utc_epoch) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00381"></a><span class="lineno">  381</span>&#160;</div><div class="line"><a name="l00382"></a><span class="lineno">  382</span>&#160;  Status GetFloat(<span class="keywordtype">int</span> col_idx, <span class="keywordtype">float</span>* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00383"></a><span class="lineno">  383</span>&#160;  Status GetDouble(<span class="keywordtype">int</span> col_idx, <span class="keywordtype">double</span>* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00385"></a><span class="lineno">  385</span>&#160;</div><div class="line"><a name="l00403"></a><span class="lineno">  403</span>&#160;  Status GetString(<span class="keyword">const</span> Slice&amp; col_name, Slice* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00404"></a><span class="lineno">  404</span>&#160;  Status GetBinary(<span class="keyword">const</span> Slice&amp; col_name, Slice* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00406"></a><span class="lineno">  406</span>&#160;</div><div class="line"><a name="l00428"></a><span class="lineno">  428</span>&#160;  Status GetString(<span class="keywordtype">int</span> col_idx, Slice* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00429"></a><span class="lineno">  429</span>&#160;  Status GetBinary(<span class="keywordtype">int</span> col_idx, Slice* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00431"></a><span class="lineno">  431</span>&#160;</div><div class="line"><a name="l00432"></a><span class="lineno">  432</span>&#160;  <span class="comment">//------------------------------------------------------------</span></div><div class="line"><a name="l00433"></a><span class="lineno">  433</span>&#160;  <span class="comment">// Key-encoding related functions</span></div><div class="line"><a name="l00434"></a><span class="lineno">  434</span>&#160;  <span class="comment">//------------------------------------------------------------</span></div><div class="line"><a name="l00435"></a><span class="lineno">  435</span>&#160;</div><div class="line"><a name="l00447"></a><span class="lineno">  447</span>&#160;  Status EncodeRowKey(std::string* encoded_key) <span class="keyword">const</span>;</div><div class="line"><a name="l00448"></a><span class="lineno">  448</span>&#160;</div><div class="line"><a name="l00455"></a><span class="lineno">  455</span>&#160;  std::string ToEncodedRowKeyOrDie() <span class="keyword">const</span>;</div><div class="line"><a name="l00456"></a><span class="lineno">  456</span>&#160;</div><div class="line"><a name="l00457"></a><span class="lineno">  457</span>&#160;  <span class="comment">//------------------------------------------------------------</span></div><div class="line"><a name="l00458"></a><span class="lineno">  458</span>&#160;  <span class="comment">// Utility code</span></div><div class="line"><a name="l00459"></a><span class="lineno">  459</span>&#160;  <span class="comment">//------------------------------------------------------------</span></div><div class="line"><a name="l00460"></a><span class="lineno">  460</span>&#160;</div><div class="line"><a name="l00463"></a><span class="lineno">  463</span>&#160;  <span class="keywordtype">bool</span> IsKeySet() <span class="keyword">const</span>;</div><div class="line"><a name="l00464"></a><span class="lineno">  464</span>&#160;</div><div class="line"><a name="l00466"></a><span class="lineno">  466</span>&#160;  <span class="keywordtype">bool</span> AllColumnsSet() <span class="keyword">const</span>;</div><div class="line"><a name="l00467"></a><span class="lineno">  467</span>&#160;</div><div class="line"><a name="l00473"></a><span class="lineno">  473</span>&#160;  std::string ToString() <span class="keyword">const</span>;</div><div class="line"><a name="l00474"></a><span class="lineno">  474</span>&#160;</div><div class="line"><a name="l00476"></a><span class="lineno"><a class="line" href="classKuduPartialRow.html#a33abfa2504b7e6323cdbba22ad346023">  476</a></span>&#160;  <span class="keyword">const</span> Schema* <a class="code" href="classKuduPartialRow.html#a33abfa2504b7e6323cdbba22ad346023">schema</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> schema_; }</div><div class="line"><a name="l00477"></a><span class="lineno">  477</span>&#160;</div><div class="line"><a name="l00478"></a><span class="lineno">  478</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00479"></a><span class="lineno">  479</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>client::KuduWriteOperation;   <span class="comment">// for row_data_.</span></div><div class="line"><a name="l00480"></a><span class="lineno">  480</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>KeyUtilTest;</div><div class="line"><a name="l00481"></a><span class="lineno">  481</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>PartitionSchema;</div><div class="line"><a name="l00482"></a><span class="lineno">  482</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>RowOperationsPBDecoder;</div><div class="line"><a name="l00483"></a><span class="lineno">  483</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>RowOperationsPBEncoder;</div><div class="line"><a name="l00484"></a><span class="lineno">  484</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>TestScanSpec;</div><div class="line"><a name="l00485"></a><span class="lineno">  485</span>&#160;  <span class="keyword">template</span>&lt;<span class="keyword">typename</span> KeyTypeWrapper&gt; <span class="keyword">friend</span> <span class="keyword">struct </span>client::SliceKeysTestSetup;</div><div class="line"><a name="l00486"></a><span class="lineno">  486</span>&#160;  <span class="keyword">template</span>&lt;<span class="keyword">typename</span> KeyTypeWrapper&gt; <span class="keyword">friend</span> <span class="keyword">struct </span>client::IntKeysTestSetup;</div><div class="line"><a name="l00487"></a><span class="lineno">  487</span>&#160;  <span class="keyword">template</span>&lt;<span class="keyword">typename</span> KeyTypeWrapper&gt; <span class="keyword">friend</span> <span class="keyword">struct </span>tablet::SliceTypeRowOps;</div><div class="line"><a name="l00488"></a><span class="lineno">  488</span>&#160;  <span class="keyword">template</span>&lt;<span class="keyword">typename</span> KeyTypeWrapper&gt; <span class="keyword">friend</span> <span class="keyword">struct </span>tablet::NumTypeRowOps;</div><div class="line"><a name="l00489"></a><span class="lineno">  489</span>&#160;  FRIEND_TEST(PartitionPrunerTest, TestPrimaryKeyRangePruning);</div><div class="line"><a name="l00490"></a><span class="lineno">  490</span>&#160;  FRIEND_TEST(PartitionPrunerTest, TestPartialPrimaryKeyRangePruning);</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;  <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div><div class="line"><a name="l00493"></a><span class="lineno">  493</span>&#160;  Status Set(<span class="keyword">const</span> Slice&amp; col_name, <span class="keyword">const</span> <span class="keyword">typename</span> T::cpp_type&amp; val,</div><div class="line"><a name="l00494"></a><span class="lineno">  494</span>&#160;             <span class="keywordtype">bool</span> owned = <span class="keyword">false</span>);</div><div class="line"><a name="l00495"></a><span class="lineno">  495</span>&#160;</div><div class="line"><a name="l00496"></a><span class="lineno">  496</span>&#160;  <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div><div class="line"><a name="l00497"></a><span class="lineno">  497</span>&#160;  Status Set(<span class="keywordtype">int</span> col_idx, <span class="keyword">const</span> <span class="keyword">typename</span> T::cpp_type&amp; val,</div><div class="line"><a name="l00498"></a><span class="lineno">  498</span>&#160;             <span class="keywordtype">bool</span> owned = <span class="keyword">false</span>);</div><div class="line"><a name="l00499"></a><span class="lineno">  499</span>&#160;</div><div class="line"><a name="l00500"></a><span class="lineno">  500</span>&#160;  <span class="comment">// Runtime version of the generic setter.</span></div><div class="line"><a name="l00501"></a><span class="lineno">  501</span>&#160;  Status Set(int32_t column_idx, <span class="keyword">const</span> uint8_t* val);</div><div class="line"><a name="l00502"></a><span class="lineno">  502</span>&#160;</div><div class="line"><a name="l00503"></a><span class="lineno">  503</span>&#160;  <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div><div class="line"><a name="l00504"></a><span class="lineno">  504</span>&#160;  Status Get(<span class="keyword">const</span> Slice&amp; col_name, <span class="keyword">typename</span> T::cpp_type* val) <span class="keyword">const</span>;</div><div class="line"><a name="l00505"></a><span class="lineno">  505</span>&#160;</div><div class="line"><a name="l00506"></a><span class="lineno">  506</span>&#160;  <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div><div class="line"><a name="l00507"></a><span class="lineno">  507</span>&#160;  Status Get(<span class="keywordtype">int</span> col_idx, <span class="keyword">typename</span> T::cpp_type* val) <span class="keyword">const</span>;</div><div class="line"><a name="l00508"></a><span class="lineno">  508</span>&#160;</div><div class="line"><a name="l00509"></a><span class="lineno">  509</span>&#160;  <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div><div class="line"><a name="l00510"></a><span class="lineno">  510</span>&#160;  Status SetSliceCopy(<span class="keyword">const</span> Slice&amp; col_name, <span class="keyword">const</span> Slice&amp; val);</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">template</span>&lt;<span class="keyword">typename</span> T&gt;</div><div class="line"><a name="l00513"></a><span class="lineno">  513</span>&#160;  Status SetSliceCopy(<span class="keywordtype">int</span> col_idx, <span class="keyword">const</span> Slice&amp; val);</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="comment">// If the given column is a variable length column whose memory is owned by this instance,</span></div><div class="line"><a name="l00516"></a><span class="lineno">  516</span>&#160;  <span class="comment">// deallocates the value.</span></div><div class="line"><a name="l00517"></a><span class="lineno">  517</span>&#160;  <span class="comment">// NOTE: Does not mutate the isset bitmap.</span></div><div class="line"><a name="l00518"></a><span class="lineno">  518</span>&#160;  <span class="comment">// REQUIRES: col_idx must be a variable length column.</span></div><div class="line"><a name="l00519"></a><span class="lineno">  519</span>&#160;  <span class="keywordtype">void</span> DeallocateStringIfSet(<span class="keywordtype">int</span> col_idx, <span class="keyword">const</span> ColumnSchema&amp; col);</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">// Deallocate any string/binary values whose memory is managed by this object.</span></div><div class="line"><a name="l00522"></a><span class="lineno">  522</span>&#160;  <span class="keywordtype">void</span> DeallocateOwnedStrings();</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;  <span class="keyword">const</span> Schema* schema_;</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;  <span class="comment">// 1-bit set for any field which has been explicitly set. This is distinct</span></div><div class="line"><a name="l00527"></a><span class="lineno">  527</span>&#160;  <span class="comment">// from NULL -- an &quot;unset&quot; field will take the server-side default on insert,</span></div><div class="line"><a name="l00528"></a><span class="lineno">  528</span>&#160;  <span class="comment">// whereas a field explicitly set to NULL will override the default.</span></div><div class="line"><a name="l00529"></a><span class="lineno">  529</span>&#160;  uint8_t* isset_bitmap_;</div><div class="line"><a name="l00530"></a><span class="lineno">  530</span>&#160;</div><div class="line"><a name="l00531"></a><span class="lineno">  531</span>&#160;  <span class="comment">// 1-bit set for any variable length columns whose memory is managed by this instance.</span></div><div class="line"><a name="l00532"></a><span class="lineno">  532</span>&#160;  <span class="comment">// These strings need to be deallocated whenever the value is reset,</span></div><div class="line"><a name="l00533"></a><span class="lineno">  533</span>&#160;  <span class="comment">// or when the instance is destructed.</span></div><div class="line"><a name="l00534"></a><span class="lineno">  534</span>&#160;  uint8_t* owned_strings_bitmap_;</div><div class="line"><a name="l00535"></a><span class="lineno">  535</span>&#160;</div><div class="line"><a name="l00536"></a><span class="lineno">  536</span>&#160;  <span class="comment">// The normal &quot;contiguous row&quot; format row data. Any column whose data is unset</span></div><div class="line"><a name="l00537"></a><span class="lineno">  537</span>&#160;  <span class="comment">// or NULL can have undefined bytes.</span></div><div class="line"><a name="l00538"></a><span class="lineno">  538</span>&#160;  uint8_t* row_data_;</div><div class="line"><a name="l00539"></a><span class="lineno">  539</span>&#160;};</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="comment">// namespace kudu</span></div><div class="line"><a name="l00542"></a><span class="lineno">  542</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* KUDU_COMMON_PARTIAL_ROW_H */</span><span class="preprocessor"></span></div><div class="ttc" id="namespacekudu_html"><div class="ttname"><a href="namespacekudu.html">kudu</a></div><div class="ttdef"><b>Definition:</b> callbacks.h:28</div></div>
+<div class="ttc" id="classKuduPartialRow_html_a33abfa2504b7e6323cdbba22ad346023"><div class="ttname"><a href="classKuduPartialRow.html#a33abfa2504b7e6323cdbba22ad346023">KuduPartialRow::schema</a></div><div class="ttdeci">const Schema * schema() const </div><div class="ttdef"><b>Definition:</b> partial_row.h:476</div></div>
+<div class="ttc" id="classKuduPartialRow_html"><div class="ttname"><a href="classKuduPartialRow.html">KuduPartialRow</a></div><div class="ttdoc">A row which may only contain values for a subset of the columns. </div><div class="ttdef"><b>Definition:</b> partial_row.h:61</div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:02 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/resource__metrics_8h_source.html b/releases/1.4.0/cpp-client-api/resource__metrics_8h_source.html
new file mode 100644
index 0000000..a539a96
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/resource__metrics_8h_source.html
@@ -0,0 +1,103 @@
+<!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.11"/>
+<title>Kudu C++ client API: include/kudu/client/resource_metrics.h Source File</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="files.html"><span>File&#160;List</span></a></li>
+      <li><a href="globals.html"><span>File&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_58b01e52e53886b8d78ab5060a2cd2bd.html">kudu</a></li><li class="navelem"><a class="el" href="dir_4eb331d85bb84eae27db9d0af49f6f99.html">client</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">resource_metrics.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&quot;); 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;<span class="preprocessor">#ifndef KUDU_CLIENT_RESOURCE_METRICS_H</span></div><div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#define KUDU_CLIENT_RESOURCE_METRICS_H</span></div><div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;</div><div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#include &lt;map&gt;</span></div><div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#include &lt;stdint.h&gt;</span></div><div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#include &lt;string&gt;</span></div><div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;</div><div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#include &quot;kudu/util/kudu_export.h&quot;</span></div><div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;</div><div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="keyword">namespace </span><a class="code" href="namespacekudu.html">kudu</a> {</div><div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="keyword">namespace </span>client {</div><div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;</div><div class="line"><a name="l00030"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1ResourceMetrics.html">   30</a></span>&#160;<span class="keyword">class </span>KUDU_EXPORT <a class="code" href="classkudu_1_1client_1_1ResourceMetrics.html">ResourceMetrics</a> {</div><div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;  <a class="code" href="classkudu_1_1client_1_1ResourceMetrics.html">ResourceMetrics</a>();</div><div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;</div><div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;  ~<a class="code" href="classkudu_1_1client_1_1ResourceMetrics.html">ResourceMetrics</a>();</div><div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;</div><div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;  std::map&lt;std::string, int64_t&gt; Get() <span class="keyword">const</span>;</div><div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;</div><div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;  <span class="keywordtype">void</span> Increment(<span class="keyword">const</span> std::string&amp; name, int64_t amount);</div><div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;</div><div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;  int64_t GetMetric(<span class="keyword">const</span> std::string&amp; name) <span class="keyword">const</span>;</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">private</span>:</div><div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;  <span class="keyword">class </span>KUDU_NO_EXPORT Data;</div><div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;  Data* data_;</div><div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;};</div><div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;</div><div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;} <span class="comment">// namespace client</span></div><div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;} <span class="comment">// namespace kudu</span></div><div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;</div><div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;<span class="preprocessor">#endif</span></div><div class="ttc" id="namespacekudu_html"><div class="ttname"><a href="namespacekudu.html">kudu</a></div><div class="ttdef"><b>Definition:</b> callbacks.h:28</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1ResourceMetrics_html"><div class="ttname"><a href="classkudu_1_1client_1_1ResourceMetrics.html">kudu::client::ResourceMetrics</a></div><div class="ttdoc">A generic catalog of simple metrics. </div><div class="ttdef"><b>Definition:</b> resource_metrics.h:30</div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:02 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/row__result_8h_source.html b/releases/1.4.0/cpp-client-api/row__result_8h_source.html
new file mode 100644
index 0000000..b962040
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/row__result_8h_source.html
@@ -0,0 +1,103 @@
+<!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.11"/>
+<title>Kudu C++ client API: include/kudu/client/row_result.h Source File</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="files.html"><span>File&#160;List</span></a></li>
+      <li><a href="globals.html"><span>File&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_58b01e52e53886b8d78ab5060a2cd2bd.html">kudu</a></li><li class="navelem"><a class="el" href="dir_4eb331d85bb84eae27db9d0af49f6f99.html">client</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">row_result.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&quot;); 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;<span class="preprocessor">#ifndef KUDU_CLIENT_ROW_RESULT_H</span></div><div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#define KUDU_CLIENT_ROW_RESULT_H</span></div><div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;</div><div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#include &quot;kudu/client/scan_batch.h&quot;</span></div><div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;</div><div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="keyword">namespace </span><a class="code" href="namespacekudu.html">kudu</a> {</div><div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="keyword">namespace </span>client {</div><div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;</div><div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;<span class="keyword">typedef</span> <a class="code" href="classkudu_1_1client_1_1KuduScanBatch.html#a92bbfa48e9b503181c2dfb5f11f14e4e">KuduScanBatch::RowPtr</a> KuduRowResult;</div><div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;</div><div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;} <span class="comment">// namespace client</span></div><div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;} <span class="comment">// namespace kudu</span></div><div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;</div><div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;<span class="preprocessor">#endif</span></div><div class="ttc" id="namespacekudu_html"><div class="ttname"><a href="namespacekudu.html">kudu</a></div><div class="ttdef"><b>Definition:</b> callbacks.h:28</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduScanBatch_html_a92bbfa48e9b503181c2dfb5f11f14e4e"><div class="ttname"><a href="classkudu_1_1client_1_1KuduScanBatch.html#a92bbfa48e9b503181c2dfb5f11f14e4e">kudu::client::KuduScanBatch::RowPtr</a></div><div class="ttdeci">RowPtr()</div><div class="ttdef"><b>Definition:</b> scan_batch.h:154</div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:02 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/scan__batch_8h_source.html b/releases/1.4.0/cpp-client-api/scan__batch_8h_source.html
new file mode 100644
index 0000000..4966075
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/scan__batch_8h_source.html
@@ -0,0 +1,114 @@
+<!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.11"/>
+<title>Kudu C++ client API: include/kudu/client/scan_batch.h Source File</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="files.html"><span>File&#160;List</span></a></li>
+      <li><a href="globals.html"><span>File&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_58b01e52e53886b8d78ab5060a2cd2bd.html">kudu</a></li><li class="navelem"><a class="el" href="dir_4eb331d85bb84eae27db9d0af49f6f99.html">client</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">scan_batch.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&quot;); 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;<span class="preprocessor">#ifndef KUDU_CLIENT_SCAN_BATCH_H</span></div><div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#define KUDU_CLIENT_SCAN_BATCH_H</span></div><div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;</div><div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#include &lt;string&gt;</span></div><div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;</div><div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#ifdef KUDU_HEADERS_NO_STUBS</span></div><div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#include &quot;kudu/gutil/macros.h&quot;</span></div><div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#include &quot;kudu/gutil/port.h&quot;</span></div><div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="preprocessor">#include &quot;kudu/client/stubs.h&quot;</span></div><div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;</div><div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;<span class="preprocessor">#include &quot;kudu/util/kudu_export.h&quot;</span></div><div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;<span class="preprocessor">#include &quot;kudu/util/slice.h&quot;</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="keyword">namespace </span><a class="code" href="namespacekudu.html">kudu</a> {</div><div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;<span class="keyword">class </span>Schema;</div><div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;</div><div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;<span class="keyword">namespace </span>tools {</div><div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;<span class="keyword">class </span>ReplicaDumper;</div><div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;} <span class="comment">// namespace tools</span></div><div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;</div><div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;<span class="keyword">namespace </span>client {</div><div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;<span class="keyword">class </span>KuduSchema;</div><div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;</div><div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanBatch.html">   75</a></span>&#160;<span class="keyword">class </span>KUDU_EXPORT <a class="code" href="classkudu_1_1client_1_1KuduScanBatch.html">KuduScanBatch</a> {</div><div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;  <span class="keyword">class </span>RowPtr;</div><div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;</div><div class="line"><a name="l00089"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanBatch.html#ae1a827120c84eeedb703451bd5782467">   89</a></span>&#160;  <span class="keyword">class </span>const_iterator;</div><div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;</div><div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;  <span class="keyword">typedef</span> RowPtr <a class="code" href="classkudu_1_1client_1_1KuduScanBatch.html#ae1a827120c84eeedb703451bd5782467">value_type</a>;</div><div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;</div><div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduScanBatch.html">KuduScanBatch</a>();</div><div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;  ~<a class="code" href="classkudu_1_1client_1_1KuduScanBatch.html">KuduScanBatch</a>();</div><div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;</div><div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;  <span class="keywordtype">int</span> NumRows() <span class="keyword">const</span>;</div><div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;</div><div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;  KuduScanBatch::RowPtr Row(<span class="keywordtype">int</span> idx) <span class="keyword">const</span>;</div><div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;</div><div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;  const_iterator begin() <span class="keyword">const</span>;</div><div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;  const_iterator end() <span class="keyword">const</span>;</div><div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;</div><div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;  <span class="keyword">const</span> <a class="code" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a>* projection_schema() <span class="keyword">const</span>;</div><div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;</div><div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;  <span class="comment">//</span></div><div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;<span class="comment"></span>  <a class="code" href="classkudu_1_1Slice.html">Slice</a> direct_data() <span class="keyword">const</span>;</div><div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;</div><div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;  <a class="code" href="classkudu_1_1Slice.html">Slice</a> indirect_data() <span class="keyword">const</span>;</div><div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;</div><div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;  <span class="keyword">class </span>KUDU_NO_EXPORT Data;</div><div class="line"><a name="l00143"></a><span class="lineno">  143</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="l00144"></a><span class="lineno">  144</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>tools::ReplicaDumper;</div><div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;</div><div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;  Data* data_;</div><div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;  DISALLOW_COPY_AND_ASSIGN(<a class="code" href="classkudu_1_1client_1_1KuduScanBatch.html">KuduScanBatch</a>);</div><div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;};</div><div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;</div><div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;<span class="keyword">class </span>KUDU_EXPORT <a class="code" href="classkudu_1_1client_1_1KuduScanBatch.html">KuduScanBatch</a>::RowPtr {</div><div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00154"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanBatch.html#a92bbfa48e9b503181c2dfb5f11f14e4e">  154</a></span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduScanBatch.html#a92bbfa48e9b503181c2dfb5f11f14e4e">RowPtr</a>() : schema_(NULL), row_data_(NULL) {}</div><div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;</div><div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;  <span class="keywordtype">bool</span> IsNull(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; col_name) <span class="keyword">const</span>;</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;  <span class="keywordtype">bool</span> IsNull(<span class="keywordtype">int</span> col_idx) <span class="keyword">const</span>;</div><div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;</div><div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> GetBool(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; col_name, <span class="keywordtype">bool</span>* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;</div><div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> GetInt8(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; col_name, int8_t* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> GetInt16(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; col_name, int16_t* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> GetInt32(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; col_name, int32_t* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00184"></a><span class="lineno">  184</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> GetInt64(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; col_name, int64_t* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00185"></a><span class="lineno">  185</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> GetUnixTimeMicros(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; col_name, int64_t* micros_since_utc_epoch)</div><div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160;    <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160;</div><div class="line"><a name="l00188"></a><span class="lineno">  188</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> GetFloat(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; col_name, <span class="keywordtype">float</span>* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> GetDouble(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; col_name, <span class="keywordtype">double</span>* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00191"></a><span class="lineno">  191</span>&#160;</div><div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> GetBool(<span class="keywordtype">int</span> col_idx, <span class="keywordtype">bool</span>* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160;</div><div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> GetInt8(<span class="keywordtype">int</span> col_idx, int8_t* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00213"></a><span class="lineno">  213</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> GetInt16(<span class="keywordtype">int</span> col_idx, int16_t* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00214"></a><span class="lineno">  214</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> GetInt32(<span class="keywordtype">int</span> col_idx, int32_t* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00215"></a><span class="lineno">  215</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> GetInt64(<span class="keywordtype">int</span> col_idx, int64_t* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00216"></a><span class="lineno">  216</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> GetUnixTimeMicros(<span class="keywordtype">int</span> col_idx, int64_t* micros_since_utc_epoch) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00217"></a><span class="lineno">  217</span>&#160;</div><div class="line"><a name="l00218"></a><span class="lineno">  218</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> GetFloat(<span class="keywordtype">int</span> col_idx, <span class="keywordtype">float</span>* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00219"></a><span class="lineno">  219</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> GetDouble(<span class="keywordtype">int</span> col_idx, <span class="keywordtype">double</span>* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00221"></a><span class="lineno">  221</span>&#160;</div><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> GetString(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; col_name, <a class="code" href="classkudu_1_1Slice.html">Slice</a>* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00240"></a><span class="lineno">  240</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> GetBinary(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; col_name, <a class="code" href="classkudu_1_1Slice.html">Slice</a>* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00242"></a><span class="lineno">  242</span>&#160;</div><div class="line"><a name="l00264"></a><span class="lineno">  264</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> GetString(<span class="keywordtype">int</span> col_idx, <a class="code" href="classkudu_1_1Slice.html">Slice</a>* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00265"></a><span class="lineno">  265</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> GetBinary(<span class="keywordtype">int</span> col_idx, <a class="code" href="classkudu_1_1Slice.html">Slice</a>* val) <span class="keyword">const</span> WARN_UNUSED_RESULT;</div><div class="line"><a name="l00267"></a><span class="lineno">  267</span>&#160;</div><div class="line"><a name="l00274"></a><span class="lineno">  274</span>&#160;  <span class="keyword">const</span> <span class="keywordtype">void</span>* cell(<span class="keywordtype">int</span> col_idx) <span class="keyword">const</span>;</div><div class="line"><a name="l00275"></a><span class="lineno">  275</span>&#160;</div><div class="line"><a name="l00277"></a><span class="lineno">  277</span>&#160;  std::string ToString() <span class="keyword">const</span>;</div><div class="line"><a name="l00278"></a><span class="lineno">  278</span>&#160;</div><div class="line"><a name="l00279"></a><span class="lineno">  279</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00280"></a><span class="lineno">  280</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classkudu_1_1client_1_1KuduScanBatch.html">KuduScanBatch</a>;</div><div class="line"><a name="l00281"></a><span class="lineno">  281</span>&#160;  <span class="keyword">template</span>&lt;<span class="keyword">typename</span> KeyTypeWrapper&gt; <span class="keyword">friend</span> <span class="keyword">struct </span>SliceKeysTestSetup;</div><div class="line"><a name="l00282"></a><span class="lineno">  282</span>&#160;  <span class="keyword">template</span>&lt;<span class="keyword">typename</span> KeyTypeWrapper&gt; <span class="keyword">friend</span> <span class="keyword">struct </span>IntKeysTestSetup;</div><div class="line"><a name="l00283"></a><span class="lineno">  283</span>&#160;</div><div class="line"><a name="l00284"></a><span class="lineno">  284</span>&#160;  <span class="comment">// Only invoked by KuduScanner.</span></div><div class="line"><a name="l00285"></a><span class="lineno">  285</span>&#160;  RowPtr(<span class="keyword">const</span> Schema* schema,</div><div class="line"><a name="l00286"></a><span class="lineno">  286</span>&#160;         <span class="keyword">const</span> uint8_t* row_data)</div><div class="line"><a name="l00287"></a><span class="lineno">  287</span>&#160;      : schema_(schema),</div><div class="line"><a name="l00288"></a><span class="lineno">  288</span>&#160;        row_data_(row_data) {</div><div class="line"><a name="l00289"></a><span class="lineno">  289</span>&#160;  }</div><div class="line"><a name="l00290"></a><span class="lineno">  290</span>&#160;</div><div class="line"><a name="l00291"></a><span class="lineno">  291</span>&#160;  <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div><div class="line"><a name="l00292"></a><span class="lineno">  292</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> Get(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; col_name, <span class="keyword">typename</span> T::cpp_type* val) <span class="keyword">const</span>;</div><div class="line"><a name="l00293"></a><span class="lineno">  293</span>&#160;</div><div class="line"><a name="l00294"></a><span class="lineno">  294</span>&#160;  <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div><div class="line"><a name="l00295"></a><span class="lineno">  295</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> Get(<span class="keywordtype">int</span> col_idx, <span class="keyword">typename</span> T::cpp_type* val) <span class="keyword">const</span>;</div><div class="line"><a name="l00296"></a><span class="lineno">  296</span>&#160;</div><div class="line"><a name="l00297"></a><span class="lineno">  297</span>&#160;  <span class="keyword">const</span> Schema* schema_;</div><div class="line"><a name="l00298"></a><span class="lineno">  298</span>&#160;  <span class="keyword">const</span> uint8_t* row_data_;</div><div class="line"><a name="l00299"></a><span class="lineno">  299</span>&#160;};</div><div class="line"><a name="l00300"></a><span class="lineno">  300</span>&#160;</div><div class="line"><a name="l00301"></a><span class="lineno">  301</span>&#160;<span class="keyword">class </span>KUDU_EXPORT KuduScanBatch::const_iterator</div><div class="line"><a name="l00302"></a><span class="lineno">  302</span>&#160;    : <span class="keyword">public</span> std::iterator&lt;std::forward_iterator_tag, KuduScanBatch::RowPtr&gt; {</div><div class="line"><a name="l00303"></a><span class="lineno">  303</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00304"></a><span class="lineno">  304</span>&#160;  ~const_iterator() {}</div><div class="line"><a name="l00305"></a><span class="lineno">  305</span>&#160;</div><div class="line"><a name="l00307"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanBatch.html#ab057b7b1bfb713a7e8f216e3b288cb10">  307</a></span>&#160;  KuduScanBatch::RowPtr <a class="code" href="classkudu_1_1client_1_1KuduScanBatch.html#ab057b7b1bfb713a7e8f216e3b288cb10">operator*</a>()<span class="keyword"> const </span>{</div><div class="line"><a name="l00308"></a><span class="lineno">  308</span>&#160;    <span class="keywordflow">return</span> batch_-&gt;Row(idx_);</div><div class="line"><a name="l00309"></a><span class="lineno">  309</span>&#160;  }</div><div class="line"><a name="l00310"></a><span class="lineno">  310</span>&#160;</div><div class="line"><a name="l00314"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanBatch.html#ad5df483ed3172caab5a8d6a72abfad0c">  314</a></span>&#160;  const_iterator&amp; <a class="code" href="classkudu_1_1client_1_1KuduScanBatch.html#ad5df483ed3172caab5a8d6a72abfad0c">operator++</a>() {</div><div class="line"><a name="l00315"></a><span class="lineno">  315</span>&#160;    ++idx_;</div><div class="line"><a name="l00316"></a><span class="lineno">  316</span>&#160;    <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div><div class="line"><a name="l00317"></a><span class="lineno">  317</span>&#160;  }</div><div class="line"><a name="l00318"></a><span class="lineno">  318</span>&#160;</div><div class="line"><a name="l00322"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanBatch.html#a4b1ad47fd7d429859b6181825a063c48">  322</a></span>&#160;  const_iterator <a class="code" href="classkudu_1_1client_1_1KuduScanBatch.html#a4b1ad47fd7d429859b6181825a063c48">operator++</a>(<span class="keywordtype">int</span>) {</div><div class="line"><a name="l00323"></a><span class="lineno">  323</span>&#160;    const_iterator tmp(batch_, idx_);</div><div class="line"><a name="l00324"></a><span class="lineno">  324</span>&#160;    ++idx_;</div><div class="line"><a name="l00325"></a><span class="lineno">  325</span>&#160;    <span class="keywordflow">return</span> tmp;</div><div class="line"><a name="l00326"></a><span class="lineno">  326</span>&#160;  }</div><div class="line"><a name="l00327"></a><span class="lineno">  327</span>&#160;</div><div class="line"><a name="l00334"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanBatch.html#a378a5844a4b4774056b26f0003c15048">  334</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classkudu_1_1client_1_1KuduScanBatch.html#a378a5844a4b4774056b26f0003c15048">operator==</a>(<span class="keyword">const</span> const_iterator&amp; other)<span class="keyword"> const </span>{</div><div class="line"><a name="l00335"></a><span class="lineno">  335</span>&#160;    <span class="keywordflow">return</span> (idx_ == other.idx_) &amp;&amp; (batch_ == other.batch_);</div><div class="line"><a name="l00336"></a><span class="lineno">  336</span>&#160;  }</div><div class="line"><a name="l00337"></a><span class="lineno">  337</span>&#160;</div><div class="line"><a name="l00345"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanBatch.html#afd2b2c4cb038cbd366c2af8cf09a3a68">  345</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classkudu_1_1client_1_1KuduScanBatch.html#afd2b2c4cb038cbd366c2af8cf09a3a68">operator!=</a>(<span class="keyword">const</span> const_iterator&amp; other)<span class="keyword"> const </span>{</div><div class="line"><a name="l00346"></a><span class="lineno">  346</span>&#160;    <span class="keywordflow">return</span> !(*<span class="keyword">this</span> == other);</div><div class="line"><a name="l00347"></a><span class="lineno">  347</span>&#160;  }</div><div class="line"><a name="l00348"></a><span class="lineno">  348</span>&#160;</div><div class="line"><a name="l00349"></a><span class="lineno">  349</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00350"></a><span class="lineno">  350</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>KuduScanBatch;</div><div class="line"><a name="l00351"></a><span class="lineno">  351</span>&#160;  const_iterator(<span class="keyword">const</span> KuduScanBatch* b, <span class="keywordtype">int</span> idx)</div><div class="line"><a name="l00352"></a><span class="lineno">  352</span>&#160;      : batch_(b),</div><div class="line"><a name="l00353"></a><span class="lineno">  353</span>&#160;        idx_(idx) {</div><div class="line"><a name="l00354"></a><span class="lineno">  354</span>&#160;  }</div><div class="line"><a name="l00355"></a><span class="lineno">  355</span>&#160;</div><div class="line"><a name="l00356"></a><span class="lineno">  356</span>&#160;  <span class="keyword">const</span> KuduScanBatch* <span class="keyword">const</span> batch_;</div><div class="line"><a name="l00357"></a><span class="lineno">  357</span>&#160;  <span class="keywordtype">int</span> idx_;</div><div class="line"><a name="l00358"></a><span class="lineno">  358</span>&#160;};</div><div class="line"><a name="l00359"></a><span class="lineno">  359</span>&#160;</div><div class="line"><a name="l00360"></a><span class="lineno">  360</span>&#160;</div><div class="line"><a name="l00361"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanBatch.html#a30f55cf8f3c9d6fcb47537e586d82e9f">  361</a></span>&#160;<span class="keyword">inline</span> KuduScanBatch::const_iterator KuduScanBatch::begin()<span class="keyword"> const </span>{</div><div class="line"><a name="l00362"></a><span class="lineno">  362</span>&#160;  <span class="keywordflow">return</span> const_iterator(<span class="keyword">this</span>, 0);</div><div class="line"><a name="l00363"></a><span class="lineno">  363</span>&#160;}</div><div class="line"><a name="l00364"></a><span class="lineno">  364</span>&#160;</div><div class="line"><a name="l00365"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduScanBatch.html#ad30dcfafb276b5347842882cf68cb522">  365</a></span>&#160;<span class="keyword">inline</span> KuduScanBatch::const_iterator KuduScanBatch::end()<span class="keyword"> const </span>{</div><div class="line"><a name="l00366"></a><span class="lineno">  366</span>&#160;  <span class="keywordflow">return</span> const_iterator(<span class="keyword">this</span>, NumRows());</div><div class="line"><a name="l00367"></a><span class="lineno">  367</span>&#160;}</div><div class="line"><a name="l00368"></a><span class="lineno">  368</span>&#160;</div><div class="line"><a name="l00369"></a><span class="lineno">  369</span>&#160;} <span class="comment">// namespace client</span></div><div class="line"><a name="l00370"></a><span class="lineno">  370</span>&#160;} <span class="comment">// namespace kudu</span></div><div class="line"><a name="l00371"></a><span class="lineno">  371</span>&#160;</div><div class="line"><a name="l00372"></a><span class="lineno">  372</span>&#160;<span class="preprocessor">#endif</span></div><div class="ttc" id="classkudu_1_1client_1_1KuduSchema_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></div><div class="ttdoc">A representation of a table&amp;#39;s schema. </div><div class="ttdef"><b>Definition:</b> schema.h:423</div></div>
+<div class="ttc" id="classkudu_1_1Status_html"><div class="ttname"><a href="classkudu_1_1Status.html">kudu::Status</a></div><div class="ttdoc">A representation of an operation&amp;#39;s outcome. </div><div class="ttdef"><b>Definition:</b> status.h:130</div></div>
+<div class="ttc" id="namespacekudu_html"><div class="ttname"><a href="namespacekudu.html">kudu</a></div><div class="ttdef"><b>Definition:</b> callbacks.h:28</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduScanBatch_html_ae1a827120c84eeedb703451bd5782467"><div class="ttname"><a href="classkudu_1_1client_1_1KuduScanBatch.html#ae1a827120c84eeedb703451bd5782467">kudu::client::KuduScanBatch::value_type</a></div><div class="ttdeci">RowPtr value_type</div><div class="ttdoc">A handy typedef for the RowPtr. </div><div class="ttdef"><b>Definition:</b> scan_batch.h:89</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduScanBatch_html_a92bbfa48e9b503181c2dfb5f11f14e4e"><div class="ttname"><a href="classkudu_1_1client_1_1KuduScanBatch.html#a92bbfa48e9b503181c2dfb5f11f14e4e">kudu::client::KuduScanBatch::RowPtr</a></div><div class="ttdeci">RowPtr()</div><div class="ttdef"><b>Definition:</b> scan_batch.h:154</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduScanBatch_html_ab057b7b1bfb713a7e8f216e3b288cb10"><div class="ttname"><a href="classkudu_1_1client_1_1KuduScanBatch.html#ab057b7b1bfb713a7e8f216e3b288cb10">kudu::client::KuduScanBatch::operator*</a></div><div class="ttdeci">KuduScanBatch::RowPtr operator*() const </div><div class="ttdef"><b>Definition:</b> scan_batch.h:307</div></div>
+<div class="ttc" id="classkudu_1_1Slice_html"><div class="ttname"><a href="classkudu_1_1Slice.html">kudu::Slice</a></div><div class="ttdoc">A wrapper around externally allocated data. </div><div class="ttdef"><b>Definition:</b> slice.h:43</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduScanner_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></div><div class="ttdoc">This class is a representation of a single scan. </div><div class="ttdef"><b>Definition:</b> client.h:1695</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduScanBatch_html_a378a5844a4b4774056b26f0003c15048"><div class="ttname"><a href="classkudu_1_1client_1_1KuduScanBatch.html#a378a5844a4b4774056b26f0003c15048">kudu::client::KuduScanBatch::operator==</a></div><div class="ttdeci">bool operator==(const const_iterator &amp;other) const </div><div class="ttdef"><b>Definition:</b> scan_batch.h:334</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduScanBatch_html_a4b1ad47fd7d429859b6181825a063c48"><div class="ttname"><a href="classkudu_1_1client_1_1KuduScanBatch.html#a4b1ad47fd7d429859b6181825a063c48">kudu::client::KuduScanBatch::operator++</a></div><div class="ttdeci">const_iterator operator++(int)</div><div class="ttdef"><b>Definition:</b> scan_batch.h:322</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduScanBatch_html_afd2b2c4cb038cbd366c2af8cf09a3a68"><div class="ttname"><a href="classkudu_1_1client_1_1KuduScanBatch.html#afd2b2c4cb038cbd366c2af8cf09a3a68">kudu::client::KuduScanBatch::operator!=</a></div><div class="ttdeci">bool operator!=(const const_iterator &amp;other) const </div><div class="ttdef"><b>Definition:</b> scan_batch.h:345</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduScanBatch_html_ad5df483ed3172caab5a8d6a72abfad0c"><div class="ttname"><a href="classkudu_1_1client_1_1KuduScanBatch.html#ad5df483ed3172caab5a8d6a72abfad0c">kudu::client::KuduScanBatch::operator++</a></div><div class="ttdeci">const_iterator &amp; operator++()</div><div class="ttdef"><b>Definition:</b> scan_batch.h:314</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduScanBatch_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduScanBatch.html">kudu::client::KuduScanBatch</a></div><div class="ttdoc">A batch of zero or more rows returned by a scan operation. </div><div class="ttdef"><b>Definition:</b> scan_batch.h:75</div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:02 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/scan__predicate_8h_source.html b/releases/1.4.0/cpp-client-api/scan__predicate_8h_source.html
new file mode 100644
index 0000000..52bb47f
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/scan__predicate_8h_source.html
@@ -0,0 +1,105 @@
+<!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.11"/>
+<title>Kudu C++ client API: include/kudu/client/scan_predicate.h Source File</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="files.html"><span>File&#160;List</span></a></li>
+      <li><a href="globals.html"><span>File&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_58b01e52e53886b8d78ab5060a2cd2bd.html">kudu</a></li><li class="navelem"><a class="el" href="dir_4eb331d85bb84eae27db9d0af49f6f99.html">client</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">scan_predicate.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&quot;); 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;<span class="preprocessor">#ifndef KUDU_CLIENT_SCAN_PREDICATE_H</span></div><div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#define KUDU_CLIENT_SCAN_PREDICATE_H</span></div><div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;</div><div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#ifdef KUDU_HEADERS_NO_STUBS</span></div><div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#include &quot;kudu/gutil/macros.h&quot;</span></div><div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#include &quot;kudu/gutil/port.h&quot;</span></div><div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#include &quot;kudu/client/stubs.h&quot;</span></div><div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;</div><div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="preprocessor">#include &quot;kudu/client/schema.h&quot;</span></div><div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;<span class="preprocessor">#include &quot;kudu/util/kudu_export.h&quot;</span></div><div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;</div><div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;<span class="keyword">namespace </span><a class="code" href="namespacekudu.html">kudu</a> {</div><div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;<span class="keyword">namespace </span>client {</div><div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;</div><div class="line"><a name="l00036"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduPredicate.html">   36</a></span>&#160;<span class="keyword">class </span>KUDU_EXPORT <a class="code" href="classkudu_1_1client_1_1KuduPredicate.html">KuduPredicate</a> {</div><div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00039"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduPredicate.html#ad58e80ced596d7738f99b5b83ba24eb4">   39</a></span>&#160;  <span class="keyword">enum</span> <a class="code" href="classkudu_1_1client_1_1KuduPredicate.html#ad58e80ced596d7738f99b5b83ba24eb4">ComparisonOp</a> {</div><div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;    LESS_EQUAL,</div><div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;    GREATER_EQUAL,</div><div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;    EQUAL,</div><div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;    LESS,</div><div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;    GREATER,</div><div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;  };</div><div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;</div><div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;  ~<a class="code" href="classkudu_1_1client_1_1KuduPredicate.html">KuduPredicate</a>();</div><div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;</div><div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduPredicate.html">KuduPredicate</a>* Clone() <span class="keyword">const</span>;</div><div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;</div><div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduPredicate.html#ae8643ced562f7c8a4625a58a4e39abb0">   56</a></span>&#160;  <span class="keyword">class </span>KUDU_NO_EXPORT Data;</div><div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>ComparisonPredicateData;</div><div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>ErrorPredicateData;</div><div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>InListPredicateData;</div><div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>IsNotNullPredicateData;</div><div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>IsNullPredicateData;</div><div class="line"><a name="l00063"></a><span class="lineno">   63</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="l00064"></a><span class="lineno">   64</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>ScanConfiguration;</div><div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;</div><div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;  <span class="keyword">explicit</span> <a class="code" href="classkudu_1_1client_1_1KuduPredicate.html">KuduPredicate</a>(Data* d);</div><div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;</div><div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;  Data* data_;</div><div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;  DISALLOW_COPY_AND_ASSIGN(<a class="code" href="classkudu_1_1client_1_1KuduPredicate.html">KuduPredicate</a>);</div><div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;};</div><div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;</div><div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;} <span class="comment">// namespace client</span></div><div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;} <span class="comment">// namespace kudu</span></div><div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;<span class="preprocessor">#endif // KUDU_CLIENT_SCAN_PREDICATE_H</span></div><div class="ttc" id="namespacekudu_html"><div class="ttname"><a href="namespacekudu.html">kudu</a></div><div class="ttdef"><b>Definition:</b> callbacks.h:28</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduPredicate_html_ad58e80ced596d7738f99b5b83ba24eb4"><div class="ttname"><a href="classkudu_1_1client_1_1KuduPredicate.html#ad58e80ced596d7738f99b5b83ba24eb4">kudu::client::KuduPredicate::ComparisonOp</a></div><div class="ttdeci">ComparisonOp</div><div class="ttdoc">Supported comparison operators. </div><div class="ttdef"><b>Definition:</b> scan_predicate.h:39</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduPredicate_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduPredicate.html">kudu::client::KuduPredicate</a></div><div class="ttdoc">A representation of comparison predicate for Kudu queries. </div><div class="ttdef"><b>Definition:</b> scan_predicate.h:36</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduTable_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a></div><div class="ttdoc">A representation of a table on a particular cluster. </div><div class="ttdef"><b>Definition:</b> client.h:862</div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:02 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/schema_8h_source.html b/releases/1.4.0/cpp-client-api/schema_8h_source.html
new file mode 100644
index 0000000..14afd23
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/schema_8h_source.html
@@ -0,0 +1,125 @@
+<!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.11"/>
+<title>Kudu C++ client API: include/kudu/client/schema.h Source File</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="files.html"><span>File&#160;List</span></a></li>
+      <li><a href="globals.html"><span>File&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_58b01e52e53886b8d78ab5060a2cd2bd.html">kudu</a></li><li class="navelem"><a class="el" href="dir_4eb331d85bb84eae27db9d0af49f6f99.html">client</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">schema.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">//</span></div><div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="comment">// Licensed to the Apache Software Foundation (ASF) under one</span></div><div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="comment">// or more contributor license agreements.  See the NOTICE file</span></div><div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="comment">// distributed with this work for additional information</span></div><div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="comment">// regarding copyright ownership.  The ASF licenses this file</span></div><div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="comment">// to you under the Apache License, Version 2.0 (the</span></div><div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="comment">// &quot;License&quot;); you may not use this file except in compliance</span></div><div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="comment">// with the License.  You may obtain a copy of the License at</span></div><div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="comment">//</span></div><div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="comment">//   http://www.apache.org/licenses/LICENSE-2.0</span></div><div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="comment">//</span></div><div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="comment">// Unless required by applicable law or agreed to in writing,</span></div><div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="comment">// software distributed under the License is distributed on an</span></div><div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="comment">// &quot;AS IS&quot; BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY</span></div><div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="comment">// KIND, either express or implied.  See the License for the</span></div><div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="comment">// specific language governing permissions and limitations</span></div><div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="comment">// under the License.</span></div><div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#ifndef KUDU_CLIENT_SCHEMA_H</span></div><div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#define KUDU_CLIENT_SCHEMA_H</span></div><div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;</div><div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#include &lt;string&gt;</span></div><div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#include &lt;vector&gt;</span></div><div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;</div><div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#include &quot;kudu/client/value.h&quot;</span></div><div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="preprocessor">#include &quot;kudu/util/kudu_export.h&quot;</span></div><div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;</div><div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="keyword">namespace </span><a class="code" href="namespacekudu.html">kudu</a> {</div><div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;</div><div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;<span class="keyword">class </span>ColumnSchema;</div><div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;<span class="keyword">struct </span>ColumnSchemaDelta;</div><div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;<span class="keyword">class </span><a class="code" href="classKuduPartialRow.html">KuduPartialRow</a>;</div><div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;<span class="keyword">class </span>Schema;</div><div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;<span class="keyword">class </span>TestWorkload;</div><div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;</div><div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;<span class="keyword">namespace </span>tools {</div><div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;<span class="keyword">class </span>RemoteKsckMaster;</div><div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;<span class="keyword">class </span>ReplicaDumper;</div><div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;}</div><div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;</div><div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;<span class="keyword">namespace </span>client {</div><div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;<span class="keyword">class </span>ClientTest;</div><div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;</div><div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;<span class="keyword">namespace </span>internal {</div><div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;<span class="keyword">class </span>GetTableSchemaRpc;</div><div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;<span class="keyword">class </span>LookupRpc;</div><div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;<span class="keyword">class </span>MetaCacheEntry;</div><div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;<span class="keyword">class </span>WriteRpc;</div><div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;} <span class="comment">// namespace internal</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">class </span>KuduClient;</div><div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;<span class="keyword">class </span>KuduSchema;</div><div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;<span class="keyword">class </span>KuduSchemaBuilder;</div><div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;<span class="keyword">class </span>KuduWriteOperation;</div><div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;</div><div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html">   56</a></span>&#160;<span class="keyword">class </span>KUDU_EXPORT <a class="code" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html">KuduColumnStorageAttributes</a> {</div><div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#aeb835a12e6f40b1a619afa8abd773b6d">   59</a></span>&#160;  <span class="keyword">enum</span> <a class="code" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#aeb835a12e6f40b1a619afa8abd773b6d">EncodingType</a> {</div><div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;    AUTO_ENCODING = 0,</div><div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;    PLAIN_ENCODING = 1,</div><div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;    PREFIX_ENCODING = 2,</div><div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;    RLE = 4,</div><div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;    DICT_ENCODING = 5,</div><div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;    BIT_SHUFFLE = 6,</div><div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;</div><div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#aeb835a12e6f40b1a619afa8abd773b6da28c1ed31be30579070232164c24b4b82">   69</a></span>&#160;    GROUP_VARINT = 3</div><div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;  };</div><div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;</div><div class="line"><a name="l00073"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#af579406931a40daa5cb9e10603341a78">   73</a></span>&#160;  <span class="keyword">enum</span> <a class="code" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#af579406931a40daa5cb9e10603341a78">CompressionType</a> {</div><div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;    DEFAULT_COMPRESSION = 0,</div><div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;    NO_COMPRESSION = 1,</div><div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;    SNAPPY = 2,</div><div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;    LZ4 = 3,</div><div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;    ZLIB = 4,</div><div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;  };</div><div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;</div><div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;</div><div class="line"><a name="l00093"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#a2d6e5bec50a7305b3b4d75d21d000fab">   93</a></span>&#160;  <span class="keyword">explicit</span> <a class="code" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#a2d6e5bec50a7305b3b4d75d21d000fab">KuduColumnStorageAttributes</a>(</div><div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;      <a class="code" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#aeb835a12e6f40b1a619afa8abd773b6d">EncodingType</a> encoding = AUTO_ENCODING,</div><div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;      <a class="code" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#af579406931a40daa5cb9e10603341a78">CompressionType</a> compression = DEFAULT_COMPRESSION,</div><div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;      int32_t block_size = 0)</div><div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;      ATTRIBUTE_DEPRECATED(&quot;this constructor will be private in a future release&quot;)</div><div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;      : encoding_(encoding),</div><div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;        compression_(compression),</div><div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;        block_size_(block_size) {</div><div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;  }</div><div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;</div><div class="line"><a name="l00104"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#acd93d52b48be7d87a0d3fd4500048f2e">  104</a></span>&#160;  <span class="keyword">const</span> <a class="code" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#aeb835a12e6f40b1a619afa8abd773b6d">EncodingType</a> <a class="code" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#acd93d52b48be7d87a0d3fd4500048f2e">encoding</a>()<span class="keyword"> const </span>{</div><div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;    <span class="keywordflow">return</span> encoding_;</div><div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;  }</div><div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;</div><div class="line"><a name="l00109"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#a00ef1e67c5fdd537d35f102748b1ad9d">  109</a></span>&#160;  <span class="keyword">const</span> <a class="code" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#af579406931a40daa5cb9e10603341a78">CompressionType</a> <a class="code" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#a00ef1e67c5fdd537d35f102748b1ad9d">compression</a>()<span class="keyword"> const </span>{</div><div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;    <span class="keywordflow">return</span> compression_;</div><div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;  }</div><div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;</div><div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;  std::string ToString() <span class="keyword">const</span>;</div><div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;</div><div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#aeb835a12e6f40b1a619afa8abd773b6d">EncodingType</a> encoding_;</div><div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#af579406931a40daa5cb9e10603341a78">CompressionType</a> compression_;</div><div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;  int32_t block_size_;</div><div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;};</div><div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;</div><div class="line"><a name="l00123"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduColumnSchema.html">  123</a></span>&#160;<span class="keyword">class </span>KUDU_EXPORT <a class="code" href="classkudu_1_1client_1_1KuduColumnSchema.html">KuduColumnSchema</a> {</div><div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00126"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduColumnSchema.html#aba69238e70af5c887a4fb11fa2a120c5">  126</a></span>&#160;  <span class="keyword">enum</span> <a class="code" href="classkudu_1_1client_1_1KuduColumnSchema.html#aba69238e70af5c887a4fb11fa2a120c5">DataType</a> {</div><div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;    INT8 = 0,</div><div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;    INT16 = 1,</div><div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;    INT32 = 2,</div><div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;    INT64 = 3,</div><div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;    STRING = 4,</div><div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;    BOOL = 5,</div><div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;    FLOAT = 6,</div><div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;    DOUBLE = 7,</div><div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;    BINARY = 8,</div><div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;    UNIXTIME_MICROS = 9,</div><div class="line"><a name="l00137"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduColumnSchema.html#aba69238e70af5c887a4fb11fa2a120c5a27d1b7aca7cf9a01d9258a41bbe3b505">  137</a></span>&#160;    TIMESTAMP = UNIXTIME_MICROS </div><div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;  };</div><div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;</div><div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;  <span class="keyword">static</span> std::string DataTypeToString(<a class="code" href="classkudu_1_1client_1_1KuduColumnSchema.html#aba69238e70af5c887a4fb11fa2a120c5">DataType</a> type);</div><div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;</div><div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduColumnSchema.html">KuduColumnSchema</a>(<span class="keyword">const</span> std::string &amp;name,</div><div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;                   <a class="code" href="classkudu_1_1client_1_1KuduColumnSchema.html#aba69238e70af5c887a4fb11fa2a120c5">DataType</a> type,</div><div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;                   <span class="keywordtype">bool</span> is_nullable = <span class="keyword">false</span>,</div><div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;                   <span class="keyword">const</span> <span class="keywordtype">void</span>* default_value = NULL,</div><div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;                   <a class="code" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html">KuduColumnStorageAttributes</a> attributes = <a class="code" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html">KuduColumnStorageAttributes</a>())</div><div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;      ATTRIBUTE_DEPRECATED(&quot;use <a class="code" href="classkudu_1_1client_1_1KuduSchemaBuilder.html">KuduSchemaBuilder</a> instead&quot;);</div><div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;</div><div class="line"><a name="l00172"></a><span class="lineno">  172</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduColumnSchema.html">KuduColumnSchema</a>(const <a class="code" href="classkudu_1_1client_1_1KuduColumnSchema.html">KuduColumnSchema</a>&amp; other);</div><div class="line"><a name="l00173"></a><span class="lineno">  173</span>&#160;  ~<a class="code" href="classkudu_1_1client_1_1KuduColumnSchema.html">KuduColumnSchema</a>();</div><div class="line"><a name="l00174"></a><span class="lineno">  174</span>&#160;</div><div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduColumnSchema.html">KuduColumnSchema</a>&amp; operator=(const <a class="code" href="classkudu_1_1client_1_1KuduColumnSchema.html">KuduColumnSchema</a>&amp; other);</div><div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;</div><div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160;  <span class="keywordtype">void</span> CopyFrom(const <a class="code" href="classkudu_1_1client_1_1KuduColumnSchema.html">KuduColumnSchema</a>&amp; other);</div><div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160;</div><div class="line"><a name="l00193"></a><span class="lineno">  193</span>&#160;  <span class="keywordtype">bool</span> Equals(const <a class="code" href="classkudu_1_1client_1_1KuduColumnSchema.html">KuduColumnSchema</a>&amp; other) const;</div><div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160;</div><div class="line"><a name="l00201"></a><span class="lineno">  201</span>&#160;  const std::<span class="keywordtype">string</span>&amp; name() const;</div><div class="line"><a name="l00202"></a><span class="lineno">  202</span>&#160;</div><div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduColumnSchema.html#aba69238e70af5c887a4fb11fa2a120c5">DataType</a> type() const;</div><div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160;</div><div class="line"><a name="l00207"></a><span class="lineno">  207</span>&#160;  <span class="keywordtype">bool</span> is_nullable() const;</div><div class="line"><a name="l00209"></a><span class="lineno">  209</span>&#160;</div><div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160; private:</div><div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160;  friend class <a class="code" href="classkudu_1_1client_1_1KuduColumnSpec.html">KuduColumnSpec</a>;</div><div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160;  friend class <a class="code" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a>;</div><div class="line"><a name="l00213"></a><span class="lineno">  213</span>&#160;  friend class <a class="code" href="classkudu_1_1client_1_1KuduSchemaBuilder.html">KuduSchemaBuilder</a>;</div><div class="line"><a name="l00214"></a><span class="lineno">  214</span>&#160;  <span class="comment">// KuduTableAlterer::Data needs to be a friend. Friending the parent class</span></div><div class="line"><a name="l00215"></a><span class="lineno">  215</span>&#160;  <span class="comment">// is transitive to nested classes. See http://tiny.cloudera.com/jwtui</span></div><div class="line"><a name="l00216"></a><span class="lineno">  216</span>&#160;  friend class <a class="code" href="classkudu_1_1client_1_1KuduTableAlterer.html">KuduTableAlterer</a>;</div><div class="line"><a name="l00217"></a><span class="lineno">  217</span>&#160;</div><div class="line"><a name="l00218"></a><span class="lineno">  218</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduColumnSchema.html">KuduColumnSchema</a>();</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;  <span class="comment">// Owned.</span></div><div class="line"><a name="l00221"></a><span class="lineno">  221</span>&#160;  ColumnSchema* col_;</div><div class="line"><a name="l00222"></a><span class="lineno">  222</span>&#160;};</div><div class="line"><a name="l00223"></a><span class="lineno">  223</span>&#160;</div><div class="line"><a name="l00232"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduColumnSpec.html">  232</a></span>&#160;class KUDU_EXPORT KuduColumnSpec {</div><div class="line"><a name="l00233"></a><span class="lineno">  233</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00245"></a><span class="lineno">  245</span>&#160;  KuduColumnSpec* Default(<a class="code" href="classkudu_1_1client_1_1KuduValue.html">KuduValue</a>* value);</div><div class="line"><a name="l00246"></a><span class="lineno">  246</span>&#160;</div><div class="line"><a name="l00252"></a><span class="lineno">  252</span>&#160;  KuduColumnSpec* Compression(<a class="code" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#af579406931a40daa5cb9e10603341a78">KuduColumnStorageAttributes::CompressionType</a> compression);</div><div class="line"><a name="l00253"></a><span class="lineno">  253</span>&#160;</div><div class="line"><a name="l00261"></a><span class="lineno">  261</span>&#160;  KuduColumnSpec* Encoding(<a class="code" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#aeb835a12e6f40b1a619afa8abd773b6d">KuduColumnStorageAttributes::EncodingType</a> encoding);</div><div class="line"><a name="l00262"></a><span class="lineno">  262</span>&#160;</div><div class="line"><a name="l00282"></a><span class="lineno">  282</span>&#160;  KuduColumnSpec* BlockSize(int32_t block_size);</div><div class="line"><a name="l00283"></a><span class="lineno">  283</span>&#160;</div><div class="line"><a name="l00296"></a><span class="lineno">  296</span>&#160;  KuduColumnSpec* PrimaryKey();</div><div class="line"><a name="l00297"></a><span class="lineno">  297</span>&#160;</div><div class="line"><a name="l00303"></a><span class="lineno">  303</span>&#160;  KuduColumnSpec* NotNull();</div><div class="line"><a name="l00304"></a><span class="lineno">  304</span>&#160;</div><div class="line"><a name="l00310"></a><span class="lineno">  310</span>&#160;  KuduColumnSpec* Nullable();</div><div class="line"><a name="l00311"></a><span class="lineno">  311</span>&#160;</div><div class="line"><a name="l00319"></a><span class="lineno">  319</span>&#160;  KuduColumnSpec* Type(<a class="code" href="classkudu_1_1client_1_1KuduColumnSchema.html#aba69238e70af5c887a4fb11fa2a120c5">KuduColumnSchema::DataType</a> type);</div><div class="line"><a name="l00321"></a><span class="lineno">  321</span>&#160;</div><div class="line"><a name="l00331"></a><span class="lineno">  331</span>&#160;  KuduColumnSpec* RemoveDefault();</div><div class="line"><a name="l00332"></a><span class="lineno">  332</span>&#160;</div><div class="line"><a name="l00338"></a><span class="lineno">  338</span>&#160;  KuduColumnSpec* RenameTo(<span class="keyword">const</span> std::string&amp; new_name);</div><div class="line"><a name="l00340"></a><span class="lineno">  340</span>&#160;</div><div class="line"><a name="l00341"></a><span class="lineno">  341</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00342"></a><span class="lineno">  342</span>&#160;  <span class="keyword">class </span>KUDU_NO_EXPORT Data;</div><div class="line"><a name="l00343"></a><span class="lineno">  343</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>KuduSchemaBuilder;</div><div class="line"><a name="l00344"></a><span class="lineno">  344</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>KuduTableAlterer;</div><div class="line"><a name="l00345"></a><span class="lineno">  345</span>&#160;</div><div class="line"><a name="l00346"></a><span class="lineno">  346</span>&#160;  <span class="comment">// This class should always be owned and deleted by one of its friends,</span></div><div class="line"><a name="l00347"></a><span class="lineno">  347</span>&#160;  <span class="comment">// not the user.</span></div><div class="line"><a name="l00348"></a><span class="lineno">  348</span>&#160;  ~KuduColumnSpec();</div><div class="line"><a name="l00349"></a><span class="lineno">  349</span>&#160;</div><div class="line"><a name="l00350"></a><span class="lineno">  350</span>&#160;  <span class="keyword">explicit</span> KuduColumnSpec(<span class="keyword">const</span> std::string&amp; col_name);</div><div class="line"><a name="l00351"></a><span class="lineno">  351</span>&#160;</div><div class="line"><a name="l00352"></a><span class="lineno">  352</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> ToColumnSchema(<a class="code" href="classkudu_1_1client_1_1KuduColumnSchema.html">KuduColumnSchema</a>* col) <span class="keyword">const</span>;</div><div class="line"><a name="l00353"></a><span class="lineno">  353</span>&#160;</div><div class="line"><a name="l00354"></a><span class="lineno">  354</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> ToColumnSchemaDelta(ColumnSchemaDelta* col_delta) <span class="keyword">const</span>;</div><div class="line"><a name="l00355"></a><span class="lineno">  355</span>&#160;</div><div class="line"><a name="l00356"></a><span class="lineno">  356</span>&#160;  <a class="code" href="classkudu_1_1Slice.html">Slice</a> DefaultValueAsSlice() <span class="keyword">const</span>;</div><div class="line"><a name="l00357"></a><span class="lineno">  357</span>&#160;</div><div class="line"><a name="l00358"></a><span class="lineno">  358</span>&#160;  <span class="comment">// Owned.</span></div><div class="line"><a name="l00359"></a><span class="lineno">  359</span>&#160;  Data* data_;</div><div class="line"><a name="l00360"></a><span class="lineno">  360</span>&#160;};</div><div class="line"><a name="l00361"></a><span class="lineno">  361</span>&#160;</div><div class="line"><a name="l00383"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduSchemaBuilder.html">  383</a></span>&#160;<span class="keyword">class </span>KUDU_EXPORT <a class="code" href="classkudu_1_1client_1_1KuduSchemaBuilder.html">KuduSchemaBuilder</a> {</div><div class="line"><a name="l00384"></a><span class="lineno">  384</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00385"></a><span class="lineno">  385</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduSchemaBuilder.html">KuduSchemaBuilder</a>();</div><div class="line"><a name="l00386"></a><span class="lineno">  386</span>&#160;  ~<a class="code" href="classkudu_1_1client_1_1KuduSchemaBuilder.html">KuduSchemaBuilder</a>();</div><div class="line"><a name="l00387"></a><span class="lineno">  387</span>&#160;</div><div class="line"><a name="l00394"></a><span class="lineno">  394</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="l00395"></a><span class="lineno">  395</span>&#160;</div><div class="line"><a name="l00403"></a><span class="lineno">  403</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduSchemaBuilder.html">KuduSchemaBuilder</a>* SetPrimaryKey(<span class="keyword">const</span> std::vector&lt;std::string&gt;&amp; key_col_names);</div><div class="line"><a name="l00404"></a><span class="lineno">  404</span>&#160;</div><div class="line"><a name="l00414"></a><span class="lineno">  414</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> Build(<a class="code" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a>* schema);</div><div class="line"><a name="l00415"></a><span class="lineno">  415</span>&#160;</div><div class="line"><a name="l00416"></a><span class="lineno">  416</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00417"></a><span class="lineno">  417</span>&#160;  <span class="keyword">class </span>KUDU_NO_EXPORT Data;</div><div class="line"><a name="l00418"></a><span class="lineno">  418</span>&#160;  <span class="comment">// Owned.</span></div><div class="line"><a name="l00419"></a><span class="lineno">  419</span>&#160;  Data* data_;</div><div class="line"><a name="l00420"></a><span class="lineno">  420</span>&#160;};</div><div class="line"><a name="l00421"></a><span class="lineno">  421</span>&#160;</div><div class="line"><a name="l00423"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduSchema.html">  423</a></span>&#160;<span class="keyword">class </span>KUDU_EXPORT <a class="code" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a> {</div><div class="line"><a name="l00424"></a><span class="lineno">  424</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00425"></a><span class="lineno">  425</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a>();</div><div class="line"><a name="l00426"></a><span class="lineno">  426</span>&#160;</div><div class="line"><a name="l00431"></a><span class="lineno">  431</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a>(<span class="keyword">const</span> <a class="code" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a>&amp; other);</div><div class="line"><a name="l00432"></a><span class="lineno">  432</span>&#160;  ~<a class="code" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a>();</div><div class="line"><a name="l00433"></a><span class="lineno">  433</span>&#160;</div><div class="line"><a name="l00440"></a><span class="lineno">  440</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a>&amp; operator=(<span class="keyword">const</span> <a class="code" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a>&amp; other);</div><div class="line"><a name="l00441"></a><span class="lineno">  441</span>&#160;  <span class="keywordtype">void</span> CopyFrom(<span class="keyword">const</span> <a class="code" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a>&amp; other);</div><div class="line"><a name="l00443"></a><span class="lineno">  443</span>&#160;</div><div class="line"><a name="l00453"></a><span class="lineno">  453</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> Reset(<span class="keyword">const</span> std::vector&lt;KuduColumnSchema&gt;&amp; columns, <span class="keywordtype">int</span> key_columns)</div><div class="line"><a name="l00454"></a><span class="lineno">  454</span>&#160;      ATTRIBUTE_DEPRECATED(<span class="stringliteral">&quot;this method will be removed in a future release&quot;</span>)</div><div class="line"><a name="l00455"></a><span class="lineno">  455</span>&#160;      WARN_UNUSED_RESULT;</div><div class="line"><a name="l00456"></a><span class="lineno">  456</span>&#160;</div><div class="line"><a name="l00463"></a><span class="lineno">  463</span>&#160;  <span class="keywordtype">bool</span> Equals(<span class="keyword">const</span> <a class="code" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a>&amp; other) <span class="keyword">const</span>;</div><div class="line"><a name="l00464"></a><span class="lineno">  464</span>&#160;</div><div class="line"><a name="l00468"></a><span class="lineno">  468</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduColumnSchema.html">KuduColumnSchema</a> Column(<span class="keywordtype">size_t</span> idx) <span class="keyword">const</span>;</div><div class="line"><a name="l00469"></a><span class="lineno">  469</span>&#160;</div><div class="line"><a name="l00471"></a><span class="lineno">  471</span>&#160;  <span class="keywordtype">size_t</span> num_columns() <span class="keyword">const</span>;</div><div class="line"><a name="l00472"></a><span class="lineno">  472</span>&#160;</div><div class="line"><a name="l00481"></a><span class="lineno">  481</span>&#160;  <span class="keywordtype">void</span> GetPrimaryKeyColumnIndexes(std::vector&lt;int&gt;* indexes) <span class="keyword">const</span>;</div><div class="line"><a name="l00482"></a><span class="lineno">  482</span>&#160;</div><div class="line"><a name="l00490"></a><span class="lineno">  490</span>&#160;  <a class="code" href="classKuduPartialRow.html">KuduPartialRow</a>* NewRow() <span class="keyword">const</span>;</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; <span class="keyword">private</span>:</div><div class="line"><a name="l00493"></a><span class="lineno">  493</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>ClientTest;</div><div class="line"><a name="l00494"></a><span class="lineno">  494</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="l00495"></a><span class="lineno">  495</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="l00496"></a><span class="lineno">  496</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="l00497"></a><span class="lineno">  497</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="l00498"></a><span class="lineno">  498</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classkudu_1_1client_1_1KuduSchemaBuilder.html">KuduSchemaBuilder</a>;</div><div class="line"><a name="l00499"></a><span class="lineno">  499</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="l00500"></a><span class="lineno">  500</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="l00501"></a><span class="lineno">  501</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classkudu_1_1client_1_1KuduWriteOperation.html">KuduWriteOperation</a>;</div><div class="line"><a name="l00502"></a><span class="lineno">  502</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>ScanConfiguration;</div><div class="line"><a name="l00503"></a><span class="lineno">  503</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>internal::GetTableSchemaRpc;</div><div class="line"><a name="l00504"></a><span class="lineno">  504</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>internal::LookupRpc;</div><div class="line"><a name="l00505"></a><span class="lineno">  505</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>internal::MetaCacheEntry;</div><div class="line"><a name="l00506"></a><span class="lineno">  506</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>internal::WriteRpc;</div><div class="line"><a name="l00507"></a><span class="lineno">  507</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>tools::RemoteKsckMaster;</div><div class="line"><a name="l00508"></a><span class="lineno">  508</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>tools::ReplicaDumper;</div><div class="line"><a name="l00509"></a><span class="lineno">  509</span>&#160;</div><div class="line"><a name="l00510"></a><span class="lineno">  510</span>&#160;  <span class="keyword">friend</span> <a class="code" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a> KuduSchemaFromSchema(<span class="keyword">const</span> Schema&amp; schema);</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;</div><div class="line"><a name="l00513"></a><span class="lineno">  513</span>&#160;  <span class="comment">// For use by kudu tests.</span></div><div class="line"><a name="l00514"></a><span class="lineno">  514</span>&#160;  <span class="keyword">explicit</span> <a class="code" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a>(<span class="keyword">const</span> Schema&amp; schema);</div><div class="line"><a name="l00515"></a><span class="lineno">  515</span>&#160;</div><div class="line"><a name="l00516"></a><span class="lineno">  516</span>&#160;  <span class="comment">// Private since we don&#39;t want users to rely on the first N columns</span></div><div class="line"><a name="l00517"></a><span class="lineno">  517</span>&#160;  <span class="comment">// being the keys.</span></div><div class="line"><a name="l00518"></a><span class="lineno">  518</span>&#160;  <span class="keywordtype">size_t</span> num_key_columns() <span class="keyword">const</span>;</div><div class="line"><a name="l00519"></a><span class="lineno">  519</span>&#160;</div><div class="line"><a name="l00520"></a><span class="lineno">  520</span>&#160;  <span class="comment">// Owned.</span></div><div class="line"><a name="l00521"></a><span class="lineno">  521</span>&#160;  Schema* schema_;</div><div class="line"><a name="l00522"></a><span class="lineno">  522</span>&#160;};</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;} <span class="comment">// namespace client</span></div><div class="line"><a name="l00525"></a><span class="lineno">  525</span>&#160;} <span class="comment">// namespace kudu</span></div><div class="line"><a name="l00526"></a><span class="lineno">  526</span>&#160;<span class="preprocessor">#endif // KUDU_CLIENT_SCHEMA_H</span></div><div class="ttc" id="classkudu_1_1client_1_1KuduSchema_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduSchema.html">kudu::client::KuduSchema</a></div><div class="ttdoc">A representation of a table&amp;#39;s schema. </div><div class="ttdef"><b>Definition:</b> schema.h:423</div></div>
+<div class="ttc" id="classkudu_1_1Status_html"><div class="ttname"><a href="classkudu_1_1Status.html">kudu::Status</a></div><div class="ttdoc">A representation of an operation&amp;#39;s outcome. </div><div class="ttdef"><b>Definition:</b> status.h:130</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduValue_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduValue.html">kudu::client::KuduValue</a></div><div class="ttdoc">A constant cell value with a specific type. </div><div class="ttdef"><b>Definition:</b> value.h:33</div></div>
+<div class="ttc" id="namespacekudu_html"><div class="ttname"><a href="namespacekudu.html">kudu</a></div><div class="ttdef"><b>Definition:</b> callbacks.h:28</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduColumnStorageAttributes_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html">kudu::client::KuduColumnStorageAttributes</a></div><div class="ttdoc">Representation of column storage attributes. </div><div class="ttdef"><b>Definition:</b> schema.h:56</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduColumnSpec_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduColumnSpec.html">kudu::client::KuduColumnSpec</a></div><div class="ttdoc">Builder API for specifying or altering a column within a table schema. </div><div class="ttdef"><b>Definition:</b> schema.h:232</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduColumnSchema_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduColumnSchema.html">kudu::client::KuduColumnSchema</a></div><div class="ttdoc">Representation of the column schema. </div><div class="ttdef"><b>Definition:</b> schema.h:123</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduColumnStorageAttributes_html_acd93d52b48be7d87a0d3fd4500048f2e"><div class="ttname"><a href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#acd93d52b48be7d87a0d3fd4500048f2e">kudu::client::KuduColumnStorageAttributes::encoding</a></div><div class="ttdeci">const EncodingType encoding() const </div><div class="ttdef"><b>Definition:</b> schema.h:104</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduScanTokenBuilder_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduScanTokenBuilder.html">kudu::client::KuduScanTokenBuilder</a></div><div class="ttdoc">Builds scan tokens for a table. </div><div class="ttdef"><b>Definition:</b> client.h:2173</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduTableAlterer_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduTableAlterer.html">kudu::client::KuduTableAlterer</a></div><div class="ttdoc">Alters an existing table based on the provided steps. </div><div class="ttdef"><b>Definition:</b> client.h:1018</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduColumnStorageAttributes_html_a2d6e5bec50a7305b3b4d75d21d000fab"><div class="ttname"><a href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#a2d6e5bec50a7305b3b4d75d21d000fab">kudu::client::KuduColumnStorageAttributes::KuduColumnStorageAttributes</a></div><div class="ttdeci">KuduColumnStorageAttributes(EncodingType encoding=AUTO_ENCODING, CompressionType compression=DEFAULT_COMPRESSION, int32_t block_size=0) ATTRIBUTE_DEPRECATED(&quot;this const ructor will be private in a future release&quot;)</div><div class="ttdef"><b>Definition:</b> schema.h:93</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduClient_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a></div><div class="ttdoc">A handle for a connection to a cluster. </div><div class="ttdef"><b>Definition:</b> client.h:289</div></div>
+<div class="ttc" id="classkudu_1_1Slice_html"><div class="ttname"><a href="classkudu_1_1Slice.html">kudu::Slice</a></div><div class="ttdoc">A wrapper around externally allocated data. </div><div class="ttdef"><b>Definition:</b> slice.h:43</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduTable_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a></div><div class="ttdoc">A representation of a table on a particular cluster. </div><div class="ttdef"><b>Definition:</b> client.h:862</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduScanner_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduScanner.html">kudu::client::KuduScanner</a></div><div class="ttdoc">This class is a representation of a single scan. </div><div class="ttdef"><b>Definition:</b> client.h:1695</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduWriteOperation_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a></div><div class="ttdoc">A single-row write operation to be sent to a Kudu table. </div><div class="ttdef"><b>Definition:</b> write_op.h:56</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduColumnStorageAttributes_html_af579406931a40daa5cb9e10603341a78"><div class="ttname"><a href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#af579406931a40daa5cb9e10603341a78">kudu::client::KuduColumnStorageAttributes::CompressionType</a></div><div class="ttdeci">CompressionType</div><div class="ttdoc">Column compression types. </div><div class="ttdef"><b>Definition:</b> schema.h:73</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduSchemaBuilder_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduSchemaBuilder.html">kudu::client::KuduSchemaBuilder</a></div><div class="ttdoc">Builder API for constructing a KuduSchema object. </div><div class="ttdef"><b>Definition:</b> schema.h:383</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduColumnSchema_html_aba69238e70af5c887a4fb11fa2a120c5"><div class="ttname"><a href="classkudu_1_1client_1_1KuduColumnSchema.html#aba69238e70af5c887a4fb11fa2a120c5">kudu::client::KuduColumnSchema::DataType</a></div><div class="ttdeci">DataType</div><div class="ttdoc">Supported data types for columns. </div><div class="ttdef"><b>Definition:</b> schema.h:126</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduScanToken_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduScanToken.html">kudu::client::KuduScanToken</a></div><div class="ttdoc">A scan descriptor limited to a single physical contiguous location. </div><div class="ttdef"><b>Definition:</b> client.h:2113</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduTableCreator_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduTableCreator.html">kudu::client::KuduTableCreator</a></div><div class="ttdoc">A helper class to create a new table with the desired options. </div><div class="ttdef"><b>Definition:</b> client.h:646</div></div>
+<div class="ttc" id="classKuduPartialRow_html"><div class="ttname"><a href="classKuduPartialRow.html">KuduPartialRow</a></div><div class="ttdoc">A row which may only contain values for a subset of the columns. </div><div class="ttdef"><b>Definition:</b> partial_row.h:61</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduColumnStorageAttributes_html_a00ef1e67c5fdd537d35f102748b1ad9d"><div class="ttname"><a href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#a00ef1e67c5fdd537d35f102748b1ad9d">kudu::client::KuduColumnStorageAttributes::compression</a></div><div class="ttdeci">const CompressionType compression() const </div><div class="ttdef"><b>Definition:</b> schema.h:109</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduColumnStorageAttributes_html_aeb835a12e6f40b1a619afa8abd773b6d"><div class="ttname"><a href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html#aeb835a12e6f40b1a619afa8abd773b6d">kudu::client::KuduColumnStorageAttributes::EncodingType</a></div><div class="ttdeci">EncodingType</div><div class="ttdoc">Column encoding types. </div><div class="ttdef"><b>Definition:</b> schema.h:59</div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:02 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/all_0.html b/releases/1.4.0/cpp-client-api/search/all_0.html
new file mode 100644
index 0000000..d54e0bd
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/all_0.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_0.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/all_0.js b/releases/1.4.0/cpp-client-api/search/all_0.js
new file mode 100644
index 0000000..0264d8e
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/all_0.js
@@ -0,0 +1,24 @@
+var searchData=
+[
+  ['add_5fhash_5fpartitions',['add_hash_partitions',['../classkudu_1_1client_1_1KuduTableCreator.html#a989ccdb9b6f4186d3227d3811048538e',1,'kudu::client::KuduTableCreator::add_hash_partitions(const std::vector&lt; std::string &gt; &amp;columns, int32_t num_buckets)'],['../classkudu_1_1client_1_1KuduTableCreator.html#a9cdcee398f94af53d721e3d085929d24',1,'kudu::client::KuduTableCreator::add_hash_partitions(const std::vector&lt; std::string &gt; &amp;columns, int32_t num_buckets, int32_t seed)']]],
+  ['add_5fmaster_5fserver_5faddr',['add_master_server_addr',['../classkudu_1_1client_1_1KuduClientBuilder.html#add149f1c1c2d3653e6a6cae4f44fa90c',1,'kudu::client::KuduClientBuilder']]],
+  ['add_5frange_5fpartition',['add_range_partition',['../classkudu_1_1client_1_1KuduTableCreator.html#aac3d941bf3b381c08f64ed919680984a',1,'kudu::client::KuduTableCreator']]],
+  ['add_5frange_5fpartition_5fsplit',['add_range_partition_split',['../classkudu_1_1client_1_1KuduTableCreator.html#adbdd2208d9ede696704fbecea15bea1f',1,'kudu::client::KuduTableCreator']]],
+  ['addcolumn',['AddColumn',['../classkudu_1_1client_1_1KuduTableAlterer.html#acb9406a6a254997dd584ce6c2cf51cd0',1,'kudu::client::KuduTableAlterer::AddColumn()'],['../classkudu_1_1client_1_1KuduSchemaBuilder.html#a0fdf28d49cc05ba4f3182f7398ddf600',1,'kudu::client::KuduSchemaBuilder::AddColumn()']]],
+  ['addconjunctpredicate',['AddConjunctPredicate',['../classkudu_1_1client_1_1KuduScanner.html#a47b0fcd30f8002cb4fdcf69351896b74',1,'kudu::client::KuduScanner::AddConjunctPredicate()'],['../classkudu_1_1client_1_1KuduScanTokenBuilder.html#ac40487d17b8e4dcca7ca08efeb5f195e',1,'kudu::client::KuduScanTokenBuilder::AddConjunctPredicate()']]],
+  ['adddelta',['AddDelta',['../classkudu_1_1MonoTime.html#a17dd3af0b55e8d19dc986101ba998de1',1,'kudu::MonoTime']]],
+  ['addexclusiveupperbound',['AddExclusiveUpperBound',['../classkudu_1_1client_1_1KuduScanner.html#a551fd38d48a686f2662727a82e79bd3d',1,'kudu::client::KuduScanner']]],
+  ['addexclusiveupperboundpartitionkeyraw',['AddExclusiveUpperBoundPartitionKeyRaw',['../classkudu_1_1client_1_1KuduScanner.html#aa951a6ec3aeb82c82afe35d8e3ba18a9',1,'kudu::client::KuduScanner']]],
+  ['addexclusiveupperboundraw',['AddExclusiveUpperBoundRaw',['../classkudu_1_1client_1_1KuduScanner.html#aefb6badecb950d5089b2f9d29d1f2ffe',1,'kudu::client::KuduScanner']]],
+  ['addlowerbound',['AddLowerBound',['../classkudu_1_1client_1_1KuduScanner.html#a67691944fc112f43c565ab4486514b86',1,'kudu::client::KuduScanner::AddLowerBound()'],['../classkudu_1_1client_1_1KuduScanTokenBuilder.html#ae11ca3d00d15138e957a2c2e89b05fcf',1,'kudu::client::KuduScanTokenBuilder::AddLowerBound()']]],
+  ['addlowerboundpartitionkeyraw',['AddLowerBoundPartitionKeyRaw',['../classkudu_1_1client_1_1KuduScanner.html#ab53b88307028a50f66bcffe5e78c6d6e',1,'kudu::client::KuduScanner']]],
+  ['addlowerboundraw',['AddLowerBoundRaw',['../classkudu_1_1client_1_1KuduScanner.html#a3e51a978f3e54237fa60f7447ef3436e',1,'kudu::client::KuduScanner']]],
+  ['addrangepartition',['AddRangePartition',['../classkudu_1_1client_1_1KuduTableAlterer.html#a521a968f4db133a10629f76c75dde793',1,'kudu::client::KuduTableAlterer']]],
+  ['addupperbound',['AddUpperBound',['../classkudu_1_1client_1_1KuduScanTokenBuilder.html#ac4d0fa934e4c705ac76c424a5431566a',1,'kudu::client::KuduScanTokenBuilder']]],
+  ['allcolumnsset',['AllColumnsSet',['../classKuduPartialRow.html#a2d373a8c8682ab6ebdb27137c041be18',1,'KuduPartialRow']]],
+  ['alter',['Alter',['../classkudu_1_1client_1_1KuduTableAlterer.html#a14768f28048355d997e0ed4fa82e218c',1,'kudu::client::KuduTableAlterer']]],
+  ['altercolumn',['AlterColumn',['../classkudu_1_1client_1_1KuduTableAlterer.html#a6d62bfbcfab6b99dcb057e7f7a4cf742',1,'kudu::client::KuduTableAlterer']]],
+  ['apply',['Apply',['../classkudu_1_1client_1_1KuduSession.html#ad3f7324b27fca298c5ca3d07b4741943',1,'kudu::client::KuduSession']]],
+  ['auto_5fflush_5fbackground',['AUTO_FLUSH_BACKGROUND',['../classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19a520b8eef7ef0fd149b2757faf43972b1',1,'kudu::client::KuduSession']]],
+  ['auto_5fflush_5fsync',['AUTO_FLUSH_SYNC',['../classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19ad74b76e407e62ca951d369521636df2b',1,'kudu::client::KuduSession']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/all_1.html b/releases/1.4.0/cpp-client-api/search/all_1.html
new file mode 100644
index 0000000..8cc6a1d
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/all_1.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_1.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/all_1.js b/releases/1.4.0/cpp-client-api/search/all_1.js
new file mode 100644
index 0000000..477ae88
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/all_1.js
@@ -0,0 +1,6 @@
+var searchData=
+[
+  ['begin',['begin',['../classkudu_1_1client_1_1KuduScanBatch.html#a30f55cf8f3c9d6fcb47537e586d82e9f',1,'kudu::client::KuduScanBatch']]],
+  ['blocksize',['BlockSize',['../classkudu_1_1client_1_1KuduColumnSpec.html#a8502dd68c6743c7c66b2b6a02d41a4e6',1,'kudu::client::KuduColumnSpec']]],
+  ['build',['Build',['../classkudu_1_1client_1_1KuduClientBuilder.html#a1585dd6eff82519fe81088d1cfd35b77',1,'kudu::client::KuduClientBuilder::Build()'],['../classkudu_1_1client_1_1KuduScanTokenBuilder.html#acbc00b42db998f3342fa0ca7ab55dfdb',1,'kudu::client::KuduScanTokenBuilder::Build()'],['../classkudu_1_1client_1_1KuduPartitionerBuilder.html#aa8859050484de2d367781ce6ec41d0ba',1,'kudu::client::KuduPartitionerBuilder::Build()'],['../classkudu_1_1client_1_1KuduSchemaBuilder.html#af117e347a7d0910dda2695997859db15',1,'kudu::client::KuduSchemaBuilder::Build()']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/all_10.html b/releases/1.4.0/cpp-client-api/search/all_10.html
new file mode 100644
index 0000000..c25484f
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/all_10.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_10.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/all_10.js b/releases/1.4.0/cpp-client-api/search/all_10.js
new file mode 100644
index 0000000..a6848cb
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/all_10.js
@@ -0,0 +1,40 @@
+var searchData=
+[
+  ['schema',['schema',['../classkudu_1_1client_1_1KuduTableCreator.html#a38a83cf0e856ebaf4a5afe8c4a1d06f7',1,'kudu::client::KuduTableCreator::schema()'],['../classkudu_1_1client_1_1KuduTable.html#a4482e54a05c5b61b2bddc8c5297973fd',1,'kudu::client::KuduTable::schema()'],['../classKuduPartialRow.html#a33abfa2504b7e6323cdbba22ad346023',1,'KuduPartialRow::schema()']]],
+  ['serialize',['Serialize',['../classkudu_1_1client_1_1KuduScanToken.html#a6eb749ddf0a1434596d86df88341a008',1,'kudu::client::KuduScanToken']]],
+  ['set_5frange_5fpartition_5fcolumns',['set_range_partition_columns',['../classkudu_1_1client_1_1KuduTableCreator.html#a482701285b7a071dd56f04df480bc7c3',1,'kudu::client::KuduTableCreator']]],
+  ['setbatchsizebytes',['SetBatchSizeBytes',['../classkudu_1_1client_1_1KuduScanner.html#af82c4ccb442c222033841dd65cf5a67c',1,'kudu::client::KuduScanner::SetBatchSizeBytes()'],['../classkudu_1_1client_1_1KuduScanTokenBuilder.html#a36523ca7f2f9a2b4e3c096cf6167643c',1,'kudu::client::KuduScanTokenBuilder::SetBatchSizeBytes()']]],
+  ['setbuildtimeout',['SetBuildTimeout',['../classkudu_1_1client_1_1KuduPartitionerBuilder.html#a11e28b7ad87a53a92d2ad5494f2c5f14',1,'kudu::client::KuduPartitionerBuilder']]],
+  ['setcacheblocks',['SetCacheBlocks',['../classkudu_1_1client_1_1KuduScanner.html#a4a4a2e354b3113561758b9bf4095d310',1,'kudu::client::KuduScanner::SetCacheBlocks()'],['../classkudu_1_1client_1_1KuduScanTokenBuilder.html#a7ab7c9c1c4f4d3bbbc18b2b35d7d5475',1,'kudu::client::KuduScanTokenBuilder::SetCacheBlocks()']]],
+  ['seterrorbufferspace',['SetErrorBufferSpace',['../classkudu_1_1client_1_1KuduSession.html#af1c5e5e8faba286cddc266057e9a82d5',1,'kudu::client::KuduSession']]],
+  ['setexternalconsistencymode',['SetExternalConsistencyMode',['../classkudu_1_1client_1_1KuduSession.html#a56d1c7f47dfcaf5121b15a4435a8eeca',1,'kudu::client::KuduSession']]],
+  ['setfaulttolerant',['SetFaultTolerant',['../classkudu_1_1client_1_1KuduScanner.html#a107a8a682c0977272e0ae47746d39e6f',1,'kudu::client::KuduScanner::SetFaultTolerant()'],['../classkudu_1_1client_1_1KuduScanTokenBuilder.html#a4a17f27950ccd59bcb3430fb28b61dbe',1,'kudu::client::KuduScanTokenBuilder::SetFaultTolerant()']]],
+  ['setflushmode',['SetFlushMode',['../classkudu_1_1client_1_1KuduSession.html#a83555781b5a037f87c215e565ecf1a8f',1,'kudu::client::KuduSession']]],
+  ['setlatestobservedtimestamp',['SetLatestObservedTimestamp',['../classkudu_1_1client_1_1KuduClient.html#a0809b055eda76fd68988462f2a9791dd',1,'kudu::client::KuduClient']]],
+  ['setmutationbufferflushinterval',['SetMutationBufferFlushInterval',['../classkudu_1_1client_1_1KuduSession.html#aabe75f0688f992dbdb2694a50d07f941',1,'kudu::client::KuduSession']]],
+  ['setmutationbufferflushwatermark',['SetMutationBufferFlushWatermark',['../classkudu_1_1client_1_1KuduSession.html#a7311344cec37b3847217197c35467cdf',1,'kudu::client::KuduSession']]],
+  ['setmutationbuffermaxnum',['SetMutationBufferMaxNum',['../classkudu_1_1client_1_1KuduSession.html#ac9a96017f86bfb6348fca9bfa0b8b5a4',1,'kudu::client::KuduSession']]],
+  ['setmutationbufferspace',['SetMutationBufferSpace',['../classkudu_1_1client_1_1KuduSession.html#aefa9bbc51c27104ce103b9ecda3b8abf',1,'kudu::client::KuduSession']]],
+  ['setnull',['SetNull',['../classKuduPartialRow.html#aedbcf22d41791c5ae28e978eb9054cc5',1,'KuduPartialRow::SetNull(const Slice &amp;col_name) WARN_UNUSED_RESULT'],['../classKuduPartialRow.html#abeaa8d438650b7796e30e9865bb83d2f',1,'KuduPartialRow::SetNull(int col_idx) WARN_UNUSED_RESULT']]],
+  ['setordermode',['SetOrderMode',['../classkudu_1_1client_1_1KuduScanner.html#a93a87740ea75c9b6524dc229576b69fc',1,'kudu::client::KuduScanner']]],
+  ['setprimarykey',['SetPrimaryKey',['../classkudu_1_1client_1_1KuduSchemaBuilder.html#ad4c1619445fea575a775f23752b6bfb9',1,'kudu::client::KuduSchemaBuilder']]],
+  ['setprojectedcolumnindexes',['SetProjectedColumnIndexes',['../classkudu_1_1client_1_1KuduScanner.html#a8d938c6efc1b36d456c91b5af0b1578d',1,'kudu::client::KuduScanner::SetProjectedColumnIndexes()'],['../classkudu_1_1client_1_1KuduScanTokenBuilder.html#a01d990e024632c7749cca96b4f857be8',1,'kudu::client::KuduScanTokenBuilder::SetProjectedColumnIndexes()']]],
+  ['setprojectedcolumnnames',['SetProjectedColumnNames',['../classkudu_1_1client_1_1KuduScanner.html#abb10b26056757bf81c410d3d5e6bcc01',1,'kudu::client::KuduScanner::SetProjectedColumnNames()'],['../classkudu_1_1client_1_1KuduScanTokenBuilder.html#a0dbb58301fc0e48ce44f41215d32f0ad',1,'kudu::client::KuduScanTokenBuilder::SetProjectedColumnNames()']]],
+  ['setprojectedcolumns',['SetProjectedColumns',['../classkudu_1_1client_1_1KuduScanner.html#a68e2115cde71e113674e7a8b4df399ad',1,'kudu::client::KuduScanner']]],
+  ['setreadmode',['SetReadMode',['../classkudu_1_1client_1_1KuduScanner.html#a248e0a05e7bfdc31b5b8d363a937e81e',1,'kudu::client::KuduScanner::SetReadMode()'],['../classkudu_1_1client_1_1KuduScanTokenBuilder.html#adb34f01a9bc52a9e23ce49124bab3892',1,'kudu::client::KuduScanTokenBuilder::SetReadMode()']]],
+  ['setrowformatflags',['SetRowFormatFlags',['../classkudu_1_1client_1_1KuduScanner.html#a3dbaf4c2db6a37517a242dcb8ee64c11',1,'kudu::client::KuduScanner']]],
+  ['setselection',['SetSelection',['../classkudu_1_1client_1_1KuduScanner.html#af1db3f372fe3d0f30cd0b6a36b783cc8',1,'kudu::client::KuduScanner::SetSelection()'],['../classkudu_1_1client_1_1KuduScanTokenBuilder.html#a168bfed43dcd754a17d4c82293dade88',1,'kudu::client::KuduScanTokenBuilder::SetSelection()']]],
+  ['setsnapshotmicros',['SetSnapshotMicros',['../classkudu_1_1client_1_1KuduScanner.html#a5b36a405daf09399438d5501b25b9f9f',1,'kudu::client::KuduScanner::SetSnapshotMicros()'],['../classkudu_1_1client_1_1KuduScanTokenBuilder.html#aa4c1cfa570edfaab818831a2330eece5',1,'kudu::client::KuduScanTokenBuilder::SetSnapshotMicros()']]],
+  ['setsnapshotraw',['SetSnapshotRaw',['../classkudu_1_1client_1_1KuduScanner.html#ab13dbb301197b411dec4cd6870801bae',1,'kudu::client::KuduScanner::SetSnapshotRaw()'],['../classkudu_1_1client_1_1KuduScanTokenBuilder.html#a313e345dc6c1f9ccdad65df5af2cf4b7',1,'kudu::client::KuduScanTokenBuilder::SetSnapshotRaw()']]],
+  ['settimeoutmillis',['SetTimeoutMillis',['../classkudu_1_1client_1_1KuduSession.html#a25b22362650d7120f59cc1025e40bd79',1,'kudu::client::KuduSession::SetTimeoutMillis()'],['../classkudu_1_1client_1_1KuduScanner.html#a97c9f5e6a1056484c88ced411e19bee6',1,'kudu::client::KuduScanner::SetTimeoutMillis()'],['../classkudu_1_1client_1_1KuduScanTokenBuilder.html#a0f0e58d5d6fb3867ff0a03f7fc633445',1,'kudu::client::KuduScanTokenBuilder::SetTimeoutMillis()']]],
+  ['shared_5fptr_2eh',['shared_ptr.h',['../shared__ptr_8h.html',1,'']]],
+  ['size',['size',['../classkudu_1_1Slice.html#a141b4a1fc0555d57f192e574e427c146',1,'kudu::Slice']]],
+  ['slice',['Slice',['../classkudu_1_1Slice.html#aaee66c59ee434349680679bdf0462b66',1,'kudu::Slice::Slice()'],['../classkudu_1_1Slice.html#a904b8732b247676c52cbd9147b34c54c',1,'kudu::Slice::Slice(const uint8_t *d, size_t n)'],['../classkudu_1_1Slice.html#a9cb396203dd2c589e7d4f10bd80461d5',1,'kudu::Slice::Slice(const char *d, size_t n)'],['../classkudu_1_1Slice.html#a13838e07b6dcea1895a774ab1ba62bdd',1,'kudu::Slice::Slice(const std::string &amp;s)'],['../classkudu_1_1Slice.html#ae8c6057eea15f8136e62255fd766e345',1,'kudu::Slice::Slice(const char *s)']]],
+  ['slice',['Slice',['../classkudu_1_1Slice.html',1,'kudu']]],
+  ['slicemap',['SliceMap',['../structkudu_1_1SliceMap.html',1,'kudu']]],
+  ['split_5frows',['split_rows',['../classkudu_1_1client_1_1KuduTableCreator.html#ae12cc7c72da40f25b079273a6169faf9',1,'kudu::client::KuduTableCreator']]],
+  ['starts_5fwith',['starts_with',['../classkudu_1_1Slice.html#a3ad7697d76b8205099d43ca552c12b8d',1,'kudu::Slice']]],
+  ['status',['Status',['../classkudu_1_1Status.html',1,'kudu']]],
+  ['status',['status',['../classkudu_1_1client_1_1KuduError.html#abd5c5cd46255c8587a5562aec197077c',1,'kudu::client::KuduError::status()'],['../classkudu_1_1Status.html#ad14eb530b3449967ee976aaa1c0bcde0',1,'kudu::Status::Status()'],['../classkudu_1_1Status.html#affca5639a3341212bb23ae7f5c701803',1,'kudu::Status::Status(const Status &amp;s)']]],
+  ['status_2eh',['status.h',['../status_8h.html',1,'']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/all_11.html b/releases/1.4.0/cpp-client-api/search/all_11.html
new file mode 100644
index 0000000..3615c28
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/all_11.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_11.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/all_11.js b/releases/1.4.0/cpp-client-api/search/all_11.js
new file mode 100644
index 0000000..d31a51f
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/all_11.js
@@ -0,0 +1,17 @@
+var searchData=
+[
+  ['table_5fname',['table_name',['../classkudu_1_1client_1_1KuduTableCreator.html#a15126b62437fc1741b41249080376f93',1,'kudu::client::KuduTableCreator']]],
+  ['tableexists',['TableExists',['../classkudu_1_1client_1_1KuduClient.html#a96e9a6c0a16a8825c291528ac27af818',1,'kudu::client::KuduClient']]],
+  ['tablet',['tablet',['../classkudu_1_1client_1_1KuduScanToken.html#a6513d5a02c745177d63d807de54aa301',1,'kudu::client::KuduScanToken']]],
+  ['timeout',['timeout',['../classkudu_1_1client_1_1KuduTableCreator.html#a52855857927fe1a08fbd4c81e746c235',1,'kudu::client::KuduTableCreator::timeout()'],['../classkudu_1_1client_1_1KuduTableAlterer.html#add2961a41c37a6b0fd869e0f553a04a1',1,'kudu::client::KuduTableAlterer::timeout()']]],
+  ['timestamp',['TIMESTAMP',['../classkudu_1_1client_1_1KuduColumnSchema.html#aba69238e70af5c887a4fb11fa2a120c5a27d1b7aca7cf9a01d9258a41bbe3b505',1,'kudu::client::KuduColumnSchema']]],
+  ['todebugstring',['ToDebugString',['../classkudu_1_1Slice.html#a412d632121ba52444d891c7a4f31dd42',1,'kudu::Slice']]],
+  ['todo_20list',['Todo List',['../todo.html',1,'']]],
+  ['toencodedrowkeyordie',['ToEncodedRowKeyOrDie',['../classKuduPartialRow.html#ae76fac9268c7baa2cbcb8ccd2b22f49a',1,'KuduPartialRow']]],
+  ['tostring',['ToString',['../classkudu_1_1client_1_1KuduScanner.html#aea36ffb783be3ffdf370cd7399f232d3',1,'kudu::client::KuduScanner::ToString()'],['../classkudu_1_1client_1_1KuduScanBatch.html#a57ebd850adefa8af87f815540d890a34',1,'kudu::client::KuduScanBatch::ToString()'],['../classkudu_1_1client_1_1KuduColumnStorageAttributes.html#ac41bdd2fadff633e94b514ad1465fa44',1,'kudu::client::KuduColumnStorageAttributes::ToString()'],['../classkudu_1_1client_1_1KuduWriteOperation.html#a50b5405c4dfc7af038daa4780aea6e19',1,'kudu::client::KuduWriteOperation::ToString()'],['../classkudu_1_1client_1_1KuduInsert.html#a7c0fb45a5bfa96574b6328be392ba240',1,'kudu::client::KuduInsert::ToString()'],['../classkudu_1_1client_1_1KuduUpsert.html#a0608280ef5b4eb2a53c0b303db7401c8',1,'kudu::client::KuduUpsert::ToString()'],['../classkudu_1_1client_1_1KuduUpdate.html#af05d202ea529554b6d033d51ec942718',1,'kudu::client::KuduUpdate::ToString()'],['../classkudu_1_1client_1_1KuduDelete.html#a586dc46e1d10118465e3b834ac578de0',1,'kudu::client::KuduDelete::ToString()'],['../classKuduPartialRow.html#a998461fed88b566d159c2a3062353aa9',1,'KuduPartialRow::ToString()'],['../classkudu_1_1MonoDelta.html#a85141ae2fb1820cef6c7ab0f0305e1af',1,'kudu::MonoDelta::ToString()'],['../classkudu_1_1MonoTime.html#a47cd514149a06d1fbf2d10d08ef29957',1,'kudu::MonoTime::ToString()'],['../classkudu_1_1Slice.html#a730a4e2cdf7d40818fa95c164a18d381',1,'kudu::Slice::ToString()'],['../classkudu_1_1Status.html#ab10872bd6ee01ee1b93a351fd0c1b104',1,'kudu::Status::ToString()']]],
+  ['totimespec',['ToTimeSpec',['../classkudu_1_1MonoDelta.html#af72679c7dcec94a486b91e92aa3cb4b4',1,'kudu::MonoDelta']]],
+  ['totimeval',['ToTimeVal',['../classkudu_1_1MonoDelta.html#af154577344dbba2afa5438872fc3ebd6',1,'kudu::MonoDelta']]],
+  ['truncate',['truncate',['../classkudu_1_1Slice.html#a20f1c8e91ff0209e5c8f86766ef63d44',1,'kudu::Slice']]],
+  ['ts',['ts',['../classkudu_1_1client_1_1KuduReplica.html#ad7081012fda917ece3e149a20318288a',1,'kudu::client::KuduReplica']]],
+  ['type',['type',['../structkudu_1_1SliceMap.html#ac97e49d0aa50ae49f34ab3bbd95ea5e6',1,'kudu::SliceMap::type()'],['../classkudu_1_1client_1_1KuduColumnSchema.html#a138fb61c6f39afbd2696642216486e56',1,'kudu::client::KuduColumnSchema::type()'],['../classkudu_1_1client_1_1KuduWriteOperation.html#a87d94ee5801a6b16fc6d1f44ee2e4357',1,'kudu::client::KuduWriteOperation::Type()'],['../classkudu_1_1client_1_1KuduColumnSpec.html#a67e794a08387e17ba430d6942419a2c2',1,'kudu::client::KuduColumnSpec::Type()']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/all_12.html b/releases/1.4.0/cpp-client-api/search/all_12.html
new file mode 100644
index 0000000..abd082a
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/all_12.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_12.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/all_12.js b/releases/1.4.0/cpp-client-api/search/all_12.js
new file mode 100644
index 0000000..834f542
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/all_12.js
@@ -0,0 +1,6 @@
+var searchData=
+[
+  ['unordered',['UNORDERED',['../classkudu_1_1client_1_1KuduScanner.html#a3d6c79325c9da9741d0accf1b43bf7f9adfeea547de613f36a0aff9f585671ec3',1,'kudu::client::KuduScanner']]],
+  ['unset',['Unset',['../classKuduPartialRow.html#adccabf294832ba33fce80a72992f6e23',1,'KuduPartialRow::Unset(const Slice &amp;col_name) WARN_UNUSED_RESULT'],['../classKuduPartialRow.html#a8f65b552d35d23e6fc494cb1f6dcd394',1,'KuduPartialRow::Unset(int col_idx) WARN_UNUSED_RESULT']]],
+  ['uuid',['uuid',['../classkudu_1_1client_1_1KuduTabletServer.html#aacee61a6644f332b466718df00903137',1,'kudu::client::KuduTabletServer']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/all_13.html b/releases/1.4.0/cpp-client-api/search/all_13.html
new file mode 100644
index 0000000..88fa653
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/all_13.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_13.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/all_13.js b/releases/1.4.0/cpp-client-api/search/all_13.js
new file mode 100644
index 0000000..a766741
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/all_13.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['value_5ftype',['value_type',['../classkudu_1_1client_1_1KuduScanBatch.html#ae1a827120c84eeedb703451bd5782467',1,'kudu::client::KuduScanBatch']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/all_14.html b/releases/1.4.0/cpp-client-api/search/all_14.html
new file mode 100644
index 0000000..518db1d
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/all_14.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_14.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/all_14.js b/releases/1.4.0/cpp-client-api/search/all_14.js
new file mode 100644
index 0000000..39b0e8a
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/all_14.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+  ['wait',['wait',['../classkudu_1_1client_1_1KuduTableCreator.html#a48f9e977356c37666106f303100198d9',1,'kudu::client::KuduTableCreator::wait()'],['../classkudu_1_1client_1_1KuduTableAlterer.html#a86e6d55d0888d4bc99789b1dcd0e5646',1,'kudu::client::KuduTableAlterer::wait()']]],
+  ['was_5fpossibly_5fsuccessful',['was_possibly_successful',['../classkudu_1_1client_1_1KuduError.html#a178b3cee942e4fbbe21fef859c8da3aa',1,'kudu::client::KuduError']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/all_2.html b/releases/1.4.0/cpp-client-api/search/all_2.html
new file mode 100644
index 0000000..d15ac65
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/all_2.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_2.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/all_2.js b/releases/1.4.0/cpp-client-api/search/all_2.js
new file mode 100644
index 0000000..c3b88e4
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/all_2.js
@@ -0,0 +1,30 @@
+var searchData=
+[
+  ['cell',['cell',['../classkudu_1_1client_1_1KuduScanBatch.html#ae07d3fd8616c5c69cc0a4ef3d247bf2c',1,'kudu::client::KuduScanBatch']]],
+  ['cerrlog',['CerrLog',['../classkudu_1_1internal__logging_1_1CerrLog.html#ac3773ad2825d82f91ea65109f2def713',1,'kudu::internal_logging::CerrLog']]],
+  ['cerrlog',['CerrLog',['../classkudu_1_1internal__logging_1_1CerrLog.html',1,'kudu::internal_logging']]],
+  ['check_5fsize',['check_size',['../classkudu_1_1Slice.html#a069b48816f49b29abbd291a09dd21f4e',1,'kudu::Slice']]],
+  ['clear',['clear',['../classkudu_1_1Slice.html#afb914c0769f019a7c2f28b755cba5eb5',1,'kudu::Slice']]],
+  ['clear_5fmaster_5fserver_5faddrs',['clear_master_server_addrs',['../classkudu_1_1client_1_1KuduClientBuilder.html#a08f4d2bf7053c6336e625ee2e6eeddd1',1,'kudu::client::KuduClientBuilder']]],
+  ['client',['client',['../classkudu_1_1client_1_1KuduTable.html#a08836bfb79f6f91e7f235712ea271d35',1,'kudu::client::KuduTable::client()'],['../classkudu_1_1client_1_1KuduSession.html#a4ed0bac1edcbba612d7de41e8c8adfd5',1,'kudu::client::KuduSession::client()']]],
+  ['client_5fpropagated',['CLIENT_PROPAGATED',['../classkudu_1_1client_1_1KuduSession.html#aabd55109ba3b086bbe33b277cdd40d22ae978fab7451faebf4399830b603c855c',1,'kudu::client::KuduSession']]],
+  ['clone',['Clone',['../classkudu_1_1client_1_1KuduPredicate.html#a48eae317f4365f10cdf32bcde560da7c',1,'kudu::client::KuduPredicate::Clone()'],['../classkudu_1_1client_1_1KuduValue.html#a9925b62808b608aa367ac44d2552c6a3',1,'kudu::client::KuduValue::Clone()']]],
+  ['cloneandappend',['CloneAndAppend',['../classkudu_1_1Status.html#a67d1309561f0064e1bda0fbd0d1aaabb',1,'kudu::Status']]],
+  ['cloneandprepend',['CloneAndPrepend',['../classkudu_1_1Status.html#acb46c72bc79ef8178696b83a01014b9e',1,'kudu::Status']]],
+  ['close',['Close',['../classkudu_1_1client_1_1KuduSession.html#aa5204844e361ecc3068fbc4e02fd4436',1,'kudu::client::KuduSession::Close()'],['../classkudu_1_1client_1_1KuduScanner.html#ac673dd15cb038e75787af7e74087e874',1,'kudu::client::KuduScanner::Close()']]],
+  ['closest_5freplica',['CLOSEST_REPLICA',['../classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11aa801886067da41dacd0c9c2b8091f08d8',1,'kudu::client::KuduClient']]],
+  ['codeasstring',['CodeAsString',['../classkudu_1_1Status.html#aa5bc607c51a4e9e3c461aad27db409c3',1,'kudu::Status']]],
+  ['column',['Column',['../classkudu_1_1client_1_1KuduSchema.html#afe784e7c95d85391246a9b4745fed00b',1,'kudu::client::KuduSchema']]],
+  ['comesbefore',['ComesBefore',['../classkudu_1_1MonoTime.html#a20b322e3ce700c15445943ec02255623',1,'kudu::MonoTime']]],
+  ['commit_5fwait',['COMMIT_WAIT',['../classkudu_1_1client_1_1KuduSession.html#aabd55109ba3b086bbe33b277cdd40d22a70010f3ef1f70b99b02328c024c436c9',1,'kudu::client::KuduSession']]],
+  ['comparator',['Comparator',['../structkudu_1_1Slice_1_1Comparator.html',1,'kudu::Slice']]],
+  ['compare',['compare',['../classkudu_1_1Slice.html#a0ecc8d893b73a664c69396ad30b14d98',1,'kudu::Slice']]],
+  ['comparisonop',['ComparisonOp',['../classkudu_1_1client_1_1KuduPredicate.html#ad58e80ced596d7738f99b5b83ba24eb4',1,'kudu::client::KuduPredicate']]],
+  ['compression',['compression',['../classkudu_1_1client_1_1KuduColumnStorageAttributes.html#a00ef1e67c5fdd537d35f102748b1ad9d',1,'kudu::client::KuduColumnStorageAttributes::compression()'],['../classkudu_1_1client_1_1KuduColumnSpec.html#ad9ed2e008ee926ee50c23e664d854e8b',1,'kudu::client::KuduColumnSpec::Compression()']]],
+  ['compressiontype',['CompressionType',['../classkudu_1_1client_1_1KuduColumnStorageAttributes.html#af579406931a40daa5cb9e10603341a78',1,'kudu::client::KuduColumnStorageAttributes']]],
+  ['copyfrom',['CopyFrom',['../classkudu_1_1client_1_1KuduColumnSchema.html#a11234db43eb8b758a65ba1b08f6b65b0',1,'kudu::client::KuduColumnSchema']]],
+  ['copystring',['CopyString',['../classkudu_1_1client_1_1KuduValue.html#a886211bbe237e0009fb9b89c146f4bfe',1,'kudu::client::KuduValue']]],
+  ['countbufferedoperations',['CountBufferedOperations',['../classkudu_1_1client_1_1KuduSession.html#af6249cf3bbad8e2e11e54edf40a7bc1d',1,'kudu::client::KuduSession']]],
+  ['countpendingerrors',['CountPendingErrors',['../classkudu_1_1client_1_1KuduSession.html#a277c213a68679c6b0d5c432919eb9198',1,'kudu::client::KuduSession']]],
+  ['create',['Create',['../classkudu_1_1client_1_1KuduTableCreator.html#a30efad5c256dae0af7bb43599403b1cc',1,'kudu::client::KuduTableCreator']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/all_3.html b/releases/1.4.0/cpp-client-api/search/all_3.html
new file mode 100644
index 0000000..9f526c6
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/all_3.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_3.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/all_3.js b/releases/1.4.0/cpp-client-api/search/all_3.js
new file mode 100644
index 0000000..461af4e
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/all_3.js
@@ -0,0 +1,15 @@
+var searchData=
+[
+  ['data',['Data',['../classkudu_1_1client_1_1KuduPredicate.html#ae8643ced562f7c8a4625a58a4e39abb0',1,'kudu::client::KuduPredicate::Data()'],['../classkudu_1_1Slice.html#a2d90a4590b995fb55229d25effb0c5bb',1,'kudu::Slice::data()']]],
+  ['datatype',['DataType',['../classkudu_1_1client_1_1KuduColumnSchema.html#aba69238e70af5c887a4fb11fa2a120c5',1,'kudu::client::KuduColumnSchema']]],
+  ['datatypetostring',['DataTypeToString',['../classkudu_1_1client_1_1KuduColumnSchema.html#af362af4f9c937c2b7fa90ef284cfbd1c',1,'kudu::client::KuduColumnSchema']]],
+  ['default',['Default',['../classkudu_1_1client_1_1KuduColumnSpec.html#a92c63c0e1872c03fcabeac19d802f6c7',1,'kudu::client::KuduColumnSpec']]],
+  ['default_5fadmin_5foperation_5ftimeout',['default_admin_operation_timeout',['../classkudu_1_1client_1_1KuduClientBuilder.html#a6114bb56e4d9d1231df0ef73c9aec752',1,'kudu::client::KuduClientBuilder::default_admin_operation_timeout()'],['../classkudu_1_1client_1_1KuduClient.html#aacfcd61c7cc1bf7817d1aa0bb738414f',1,'kudu::client::KuduClient::default_admin_operation_timeout()']]],
+  ['default_5frpc_5ftimeout',['default_rpc_timeout',['../classkudu_1_1client_1_1KuduClientBuilder.html#a1813e8c8d24e92a0a710724000e2b3df',1,'kudu::client::KuduClientBuilder::default_rpc_timeout()'],['../classkudu_1_1client_1_1KuduClient.html#a2d0e8397e979e651a23eb240513a5556',1,'kudu::client::KuduClient::default_rpc_timeout()']]],
+  ['deletetable',['DeleteTable',['../classkudu_1_1client_1_1KuduClient.html#a9d7cbad036bc74c71873a428abce5c1d',1,'kudu::client::KuduClient']]],
+  ['deprecated_20list',['Deprecated List',['../deprecated.html',1,'']]],
+  ['deserializeintoscanner',['DeserializeIntoScanner',['../classkudu_1_1client_1_1KuduScanToken.html#ae90d9422476cf6eee5c33afb41d1f867',1,'kudu::client::KuduScanToken']]],
+  ['direct_5fdata',['direct_data',['../classkudu_1_1client_1_1KuduScanBatch.html#a1073a0c6517b126690d99527556dba51',1,'kudu::client::KuduScanBatch']]],
+  ['dropcolumn',['DropColumn',['../classkudu_1_1client_1_1KuduTableAlterer.html#ac5a4ec376ec53ba912b85ea0057d10a7',1,'kudu::client::KuduTableAlterer']]],
+  ['droprangepartition',['DropRangePartition',['../classkudu_1_1client_1_1KuduTableAlterer.html#ab0f8abf78d35725198876aaa04b737a7',1,'kudu::client::KuduTableAlterer']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/all_4.html b/releases/1.4.0/cpp-client-api/search/all_4.html
new file mode 100644
index 0000000..7b814aa
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/all_4.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_4.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/all_4.js b/releases/1.4.0/cpp-client-api/search/all_4.js
new file mode 100644
index 0000000..993ce44
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/all_4.js
@@ -0,0 +1,13 @@
+var searchData=
+[
+  ['earliest',['Earliest',['../classkudu_1_1MonoTime.html#aa553eb3e11cae70a9ee8839a39fc7a14',1,'kudu::MonoTime']]],
+  ['empty',['empty',['../classkudu_1_1Slice.html#a79e41b882b0a85259be89f5698e27372',1,'kudu::Slice']]],
+  ['encoderowkey',['EncodeRowKey',['../classKuduPartialRow.html#a2721dc18b29237db90a1cda779942533',1,'KuduPartialRow']]],
+  ['encoding',['encoding',['../classkudu_1_1client_1_1KuduColumnStorageAttributes.html#acd93d52b48be7d87a0d3fd4500048f2e',1,'kudu::client::KuduColumnStorageAttributes::encoding()'],['../classkudu_1_1client_1_1KuduColumnSpec.html#ae0ceeb41ac1427c2472a2f28778b6e97',1,'kudu::client::KuduColumnSpec::Encoding()']]],
+  ['encodingtype',['EncodingType',['../classkudu_1_1client_1_1KuduColumnStorageAttributes.html#aeb835a12e6f40b1a619afa8abd773b6d',1,'kudu::client::KuduColumnStorageAttributes']]],
+  ['end',['end',['../classkudu_1_1client_1_1KuduScanBatch.html#ad30dcfafb276b5347842882cf68cb522',1,'kudu::client::KuduScanBatch']]],
+  ['equals',['Equals',['../classkudu_1_1client_1_1KuduColumnSchema.html#a9f0b1346b66394d7372e401c8eb5458a',1,'kudu::client::KuduColumnSchema::Equals()'],['../classkudu_1_1client_1_1KuduSchema.html#a3d9bc062492e472a2055841461b2a87f',1,'kudu::client::KuduSchema::Equals()'],['../classkudu_1_1MonoDelta.html#a3d139854a8baaa7c59b3e5d59aba95bc',1,'kudu::MonoDelta::Equals()'],['../classkudu_1_1MonoTime.html#a25f2816574ca7f424b79644e30774818',1,'kudu::MonoTime::Equals()']]],
+  ['exclusive_5fbound',['EXCLUSIVE_BOUND',['../classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343baa117961e0003fd28663861833d23e601',1,'kudu::client::KuduTableCreator']]],
+  ['exportauthenticationcredentials',['ExportAuthenticationCredentials',['../classkudu_1_1client_1_1KuduClient.html#a974b491e5d0864f4aa3f60347fa1b62e',1,'kudu::client::KuduClient']]],
+  ['externalconsistencymode',['ExternalConsistencyMode',['../classkudu_1_1client_1_1KuduSession.html#aabd55109ba3b086bbe33b277cdd40d22',1,'kudu::client::KuduSession']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/all_5.html b/releases/1.4.0/cpp-client-api/search/all_5.html
new file mode 100644
index 0000000..d8de556
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/all_5.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_5.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/all_5.js b/releases/1.4.0/cpp-client-api/search/all_5.js
new file mode 100644
index 0000000..2e440fb
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/all_5.js
@@ -0,0 +1,9 @@
+var searchData=
+[
+  ['failed_5fop',['failed_op',['../classkudu_1_1client_1_1KuduError.html#aaa1558d1db19ae85cf8ce1979b3e538a',1,'kudu::client::KuduError']]],
+  ['first_5freplica',['FIRST_REPLICA',['../classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11aaa060fb6126a3e3fa80079f885dc7d48f',1,'kudu::client::KuduClient']]],
+  ['flush',['Flush',['../classkudu_1_1client_1_1KuduSession.html#a64955abb5f5cc821b6e56354f733ce84',1,'kudu::client::KuduSession']]],
+  ['flushasync',['FlushAsync',['../classkudu_1_1client_1_1KuduSession.html#ad8c68570479e95b325d8a5437eef8731',1,'kudu::client::KuduSession']]],
+  ['flushmode',['FlushMode',['../classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19',1,'kudu::client::KuduSession']]],
+  ['functiontype',['FunctionType',['../classkudu_1_1client_1_1KuduLoggingFunctionCallback.html#a609838f5c92d8f4612d195c161cf4003',1,'kudu::client::KuduLoggingFunctionCallback::FunctionType()'],['../classkudu_1_1client_1_1KuduStatusFunctionCallback.html#a20c231ae32873ea7f462b8f3ea05d910',1,'kudu::client::KuduStatusFunctionCallback::FunctionType()']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/all_6.html b/releases/1.4.0/cpp-client-api/search/all_6.html
new file mode 100644
index 0000000..9ba0cc2
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/all_6.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_6.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/all_6.js b/releases/1.4.0/cpp-client-api/search/all_6.js
new file mode 100644
index 0000000..0d2065e
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/all_6.js
@@ -0,0 +1,14 @@
+var searchData=
+[
+  ['get',['Get',['../classkudu_1_1client_1_1ResourceMetrics.html#a1161841400ff4fcee5f2a278813e2db2',1,'kudu::client::ResourceMetrics']]],
+  ['getcurrentserver',['GetCurrentServer',['../classkudu_1_1client_1_1KuduScanner.html#ac2bce7bd17627a3aa46f7d7fdb4c0c10',1,'kudu::client::KuduScanner']]],
+  ['getdeltasince',['GetDeltaSince',['../classkudu_1_1MonoTime.html#ae1a49263c54563ea72ea10033ab8ccdb',1,'kudu::MonoTime']]],
+  ['getlatestobservedtimestamp',['GetLatestObservedTimestamp',['../classkudu_1_1client_1_1KuduClient.html#a3a671b3540c74ef7c358bb98e95031e0',1,'kudu::client::KuduClient']]],
+  ['getmetric',['GetMetric',['../classkudu_1_1client_1_1ResourceMetrics.html#a21818e1e42dcc0f7abcdc80c5487b1da',1,'kudu::client::ResourceMetrics']]],
+  ['getpendingerrors',['GetPendingErrors',['../classkudu_1_1client_1_1KuduSession.html#ad5e3521623338de49cfd62914bdcb2f7',1,'kudu::client::KuduSession']]],
+  ['getprimarykeycolumnindexes',['GetPrimaryKeyColumnIndexes',['../classkudu_1_1client_1_1KuduSchema.html#a192b707f348178b698070d3a88a4d156',1,'kudu::client::KuduSchema']]],
+  ['getprojectionschema',['GetProjectionSchema',['../classkudu_1_1client_1_1KuduScanner.html#a7fad1430b8e1d4caf0614f690fa2666f',1,'kudu::client::KuduScanner']]],
+  ['getresourcemetrics',['GetResourceMetrics',['../classkudu_1_1client_1_1KuduScanner.html#a640d0d9de62587b29afbec22b7c6b628',1,'kudu::client::KuduScanner']]],
+  ['gettableschema',['GetTableSchema',['../classkudu_1_1client_1_1KuduClient.html#a2aa649e05e0cfb0e10ebce98fb4d7a65',1,'kudu::client::KuduClient']]],
+  ['group_5fvarint',['GROUP_VARINT',['../classkudu_1_1client_1_1KuduColumnStorageAttributes.html#aeb835a12e6f40b1a619afa8abd773b6da28c1ed31be30579070232164c24b4b82',1,'kudu::client::KuduColumnStorageAttributes']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/all_7.html b/releases/1.4.0/cpp-client-api/search/all_7.html
new file mode 100644
index 0000000..9384ec9
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/all_7.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_7.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/all_7.js b/releases/1.4.0/cpp-client-api/search/all_7.js
new file mode 100644
index 0000000..247d77d
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/all_7.js
@@ -0,0 +1,6 @@
+var searchData=
+[
+  ['hasmorerows',['HasMoreRows',['../classkudu_1_1client_1_1KuduScanner.html#ab04c2012970498590d2d2034d6a44d34',1,'kudu::client::KuduScanner']]],
+  ['haspendingoperations',['HasPendingOperations',['../classkudu_1_1client_1_1KuduSession.html#a3f224e9b95f86da7e1f2ea6fcf327756',1,'kudu::client::KuduSession']]],
+  ['hostname',['hostname',['../classkudu_1_1client_1_1KuduTabletServer.html#a24267a240220ed35ffe2b830899edb14',1,'kudu::client::KuduTabletServer']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/all_8.html b/releases/1.4.0/cpp-client-api/search/all_8.html
new file mode 100644
index 0000000..37566c5
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/all_8.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_8.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/all_8.js b/releases/1.4.0/cpp-client-api/search/all_8.js
new file mode 100644
index 0000000..7cd3456
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/all_8.js
@@ -0,0 +1,36 @@
+var searchData=
+[
+  ['id',['id',['../classkudu_1_1client_1_1KuduTablet.html#ae1fc886aa1c72ba64e6ecd05e04a0e31',1,'kudu::client::KuduTablet::id()'],['../classkudu_1_1client_1_1KuduTable.html#a185ff8f18b9bea6b41d6f4cf8dfa1377',1,'kudu::client::KuduTable::id()']]],
+  ['import_5fauthentication_5fcredentials',['import_authentication_credentials',['../classkudu_1_1client_1_1KuduClientBuilder.html#a5c411bc4638cbf77e5d318f5049b0b7e',1,'kudu::client::KuduClientBuilder']]],
+  ['inclusive_5fbound',['INCLUSIVE_BOUND',['../classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343ba0f4899cc63fba167455e05b525f0b950',1,'kudu::client::KuduTableCreator']]],
+  ['increment',['Increment',['../classkudu_1_1client_1_1ResourceMetrics.html#ae7b5f6021f63c25bbd087ba2cf48dc8a',1,'kudu::client::ResourceMetrics']]],
+  ['indirect_5fdata',['indirect_data',['../classkudu_1_1client_1_1KuduScanBatch.html#af41b26a5f137122454d6341a5b5c1a43',1,'kudu::client::KuduScanBatch']]],
+  ['initialized',['Initialized',['../classkudu_1_1MonoDelta.html#aad3a0f1a1fc2e504ff137e55cfe068a3',1,'kudu::MonoDelta::Initialized()'],['../classkudu_1_1MonoTime.html#a4ba08bf71a2496672338522952301926',1,'kudu::MonoTime::Initialized()']]],
+  ['intokuduscanner',['IntoKuduScanner',['../classkudu_1_1client_1_1KuduScanToken.html#adb95c9538bb1fc4c83963557ce487292',1,'kudu::client::KuduScanToken']]],
+  ['is_5fleader',['is_leader',['../classkudu_1_1client_1_1KuduReplica.html#a5e380e1e7f2154b61269737d65dd2649',1,'kudu::client::KuduReplica']]],
+  ['is_5fnullable',['is_nullable',['../classkudu_1_1client_1_1KuduColumnSchema.html#a45ea4feefa1c69b1ec6bc5f0316ed7ec',1,'kudu::client::KuduColumnSchema']]],
+  ['isaborted',['IsAborted',['../classkudu_1_1Status.html#ad4fe06882fdfb2a040e4d7d10363ca0a',1,'kudu::Status']]],
+  ['isalreadypresent',['IsAlreadyPresent',['../classkudu_1_1Status.html#ab9e4ddf4c48889f365c6d359ae560e1c',1,'kudu::Status']]],
+  ['isaltertableinprogress',['IsAlterTableInProgress',['../classkudu_1_1client_1_1KuduClient.html#a7a331e528759296089837b4611c01809',1,'kudu::client::KuduClient']]],
+  ['iscolumnset',['IsColumnSet',['../classKuduPartialRow.html#a592d2ee5fb13a710fcd675cc675f2193',1,'KuduPartialRow::IsColumnSet(const Slice &amp;col_name) const '],['../classKuduPartialRow.html#aa53b99d14bb61a010c4857cad17bb8ff',1,'KuduPartialRow::IsColumnSet(int col_idx) const ']]],
+  ['isconfigurationerror',['IsConfigurationError',['../classkudu_1_1Status.html#a8d31d26943101023125666bbbea002e3',1,'kudu::Status']]],
+  ['iscorruption',['IsCorruption',['../classkudu_1_1Status.html#a36fa7d6fc0cd9ab1f9ad48e4a7614bc9',1,'kudu::Status']]],
+  ['iscreatetableinprogress',['IsCreateTableInProgress',['../classkudu_1_1client_1_1KuduClient.html#a2f0323b439d8658b2ac31fde7f46de63',1,'kudu::client::KuduClient']]],
+  ['isendoffile',['IsEndOfFile',['../classkudu_1_1Status.html#adead843ea27f50252f561c995c97b2e6',1,'kudu::Status']]],
+  ['isillegalstate',['IsIllegalState',['../classkudu_1_1Status.html#a75e5cf90718eea9654c7e58546ea1aa2',1,'kudu::Status']]],
+  ['isincomplete',['IsIncomplete',['../classkudu_1_1Status.html#af68a02f8069b1a8670fcc1b7acd869b9',1,'kudu::Status']]],
+  ['isinvalidargument',['IsInvalidArgument',['../classkudu_1_1Status.html#a56e991c78f5a4aed32b97fbeccf13c2c',1,'kudu::Status']]],
+  ['isioerror',['IsIOError',['../classkudu_1_1Status.html#a991a91d7c07ffa41e6802a12f34d1acf',1,'kudu::Status']]],
+  ['iskeyset',['IsKeySet',['../classKuduPartialRow.html#a8e51d3b848636aabe561e3e66b9470e8',1,'KuduPartialRow']]],
+  ['ismultimaster',['IsMultiMaster',['../classkudu_1_1client_1_1KuduClient.html#a6f52dff0717d6e96863aff068bfb3795',1,'kudu::client::KuduClient']]],
+  ['isnetworkerror',['IsNetworkError',['../classkudu_1_1Status.html#a70c83ddb5b234e814db84dfbbb751d0c',1,'kudu::Status']]],
+  ['isnotauthorized',['IsNotAuthorized',['../classkudu_1_1Status.html#aef9c22bc13669be3e2289844ec916244',1,'kudu::Status']]],
+  ['isnotfound',['IsNotFound',['../classkudu_1_1Status.html#a38e1a8eb7b23092569cb61983ebb671d',1,'kudu::Status']]],
+  ['isnotsupported',['IsNotSupported',['../classkudu_1_1Status.html#a2b1672aba7ec84133cd086186b27821b',1,'kudu::Status']]],
+  ['isnull',['IsNull',['../classkudu_1_1client_1_1KuduScanBatch.html#af37f56c4ef55f2e140fcea2a07340054',1,'kudu::client::KuduScanBatch::IsNull(const Slice &amp;col_name) const '],['../classkudu_1_1client_1_1KuduScanBatch.html#a1b0b04656fec608919b7b6ac7c99451e',1,'kudu::client::KuduScanBatch::IsNull(int col_idx) const '],['../classKuduPartialRow.html#acaff842dad3af9546b2ed936613e59ab',1,'KuduPartialRow::IsNull(const Slice &amp;col_name) const '],['../classKuduPartialRow.html#a0b0a0103eea4cc39fbc89df0a9403a26',1,'KuduPartialRow::IsNull(int col_idx) const ']]],
+  ['isremoteerror',['IsRemoteError',['../classkudu_1_1Status.html#a96a35401df4ecd6420c86c65bc3e05f9',1,'kudu::Status']]],
+  ['isruntimeerror',['IsRuntimeError',['../classkudu_1_1Status.html#abc68e44f825df4e221e9fcce419a90cf',1,'kudu::Status']]],
+  ['isserviceunavailable',['IsServiceUnavailable',['../classkudu_1_1Status.html#a7bce15fc7b4d95b0bdffce963972cce8',1,'kudu::Status']]],
+  ['istimedout',['IsTimedOut',['../classkudu_1_1Status.html#a80fe0286d8e3ac011a611afbac4edb11',1,'kudu::Status']]],
+  ['isuninitialized',['IsUninitialized',['../classkudu_1_1Status.html#a325666f396d7f9900403765cecbaecbf',1,'kudu::Status']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/all_9.html b/releases/1.4.0/cpp-client-api/search/all_9.html
new file mode 100644
index 0000000..c8c5102
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/all_9.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_9.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/all_9.js b/releases/1.4.0/cpp-client-api/search/all_9.js
new file mode 100644
index 0000000..e61ff93
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/all_9.js
@@ -0,0 +1,61 @@
+var searchData=
+[
+  ['kudu_20c_2b_2b_20client_20api_20documentation',['Kudu C++ client API documentation',['../index.html',1,'']]],
+  ['keepalive',['KeepAlive',['../classkudu_1_1client_1_1KuduScanner.html#aa4a0caf7142880255d7aac1d75f33d21',1,'kudu::client::KuduScanner']]],
+  ['knotimestamp',['kNoTimestamp',['../classkudu_1_1client_1_1KuduClient.html#a196f1a18c000cdca309d05161caaddaa',1,'kudu::client::KuduClient']]],
+  ['kudu_5fcheck_5fok',['KUDU_CHECK_OK',['../status_8h.html#ac503ba85e942147294cdc82087da60f6',1,'status.h']]],
+  ['kudu_5fcheck_5fok_5fprepend',['KUDU_CHECK_OK_PREPEND',['../status_8h.html#a706c9f6ef1715b8f7a9185fb3c247d3f',1,'status.h']]],
+  ['kudu_5fdcheck_5fok',['KUDU_DCHECK_OK',['../status_8h.html#a99332afa18f00de3c7fcf3e76949df9d',1,'status.h']]],
+  ['kudu_5fdcheck_5fok_5fprepend',['KUDU_DCHECK_OK_PREPEND',['../status_8h.html#a2b360b53025724bb97d1dc21e25e26cc',1,'status.h']]],
+  ['kudu_5flog_5fand_5freturn',['KUDU_LOG_AND_RETURN',['../status_8h.html#abbd85cc2c5535627091bb06a21918150',1,'status.h']]],
+  ['kudu_5freturn_5fnot_5fok',['KUDU_RETURN_NOT_OK',['../status_8h.html#a0de56a3f0e9d83b8ffdd63eac83c54ab',1,'status.h']]],
+  ['kudu_5freturn_5fnot_5fok_5flog',['KUDU_RETURN_NOT_OK_LOG',['../status_8h.html#af09a6a2eca53c9424d74c7fd9f39c5ce',1,'status.h']]],
+  ['kudu_5freturn_5fnot_5fok_5fprepend',['KUDU_RETURN_NOT_OK_PREPEND',['../status_8h.html#af66b8458f1d3f1264c1da86744e29e46',1,'status.h']]],
+  ['kudu_5freturn_5fnot_5fok_5fret',['KUDU_RETURN_NOT_OK_RET',['../status_8h.html#a58d31c81bf1101a3ead737e9a4a4f223',1,'status.h']]],
+  ['kudu_5fwarn_5fnot_5fok',['KUDU_WARN_NOT_OK',['../status_8h.html#a1e64fec5ef85c0c738f6ac3f398f607e',1,'status.h']]],
+  ['kuduclient',['KuduClient',['../classkudu_1_1client_1_1KuduClient.html',1,'kudu::client']]],
+  ['kuduclientbuilder',['KuduClientBuilder',['../classkudu_1_1client_1_1KuduClientBuilder.html',1,'kudu::client']]],
+  ['kuducolumnschema',['KuduColumnSchema',['../classkudu_1_1client_1_1KuduColumnSchema.html#aaa771e9d224978f735b3aabb04bc129a',1,'kudu::client::KuduColumnSchema::KuduColumnSchema(const std::string &amp;name, DataType type, bool is_nullable=false, const void *default_value=NULL, KuduColumnStorageAttributes attributes=KuduColumnStorageAttributes()) ATTRIBUTE_DEPRECATED(&quot;use KuduSchemaBuilder instead&quot;)'],['../classkudu_1_1client_1_1KuduColumnSchema.html#afc82e98af83ba61079ba5d30401b5872',1,'kudu::client::KuduColumnSchema::KuduColumnSchema(const KuduColumnSchema &amp;other)']]],
+  ['kuducolumnschema',['KuduColumnSchema',['../classkudu_1_1client_1_1KuduColumnSchema.html',1,'kudu::client']]],
+  ['kuducolumnspec',['KuduColumnSpec',['../classkudu_1_1client_1_1KuduColumnSpec.html',1,'kudu::client']]],
+  ['kuducolumnstorageattributes',['KuduColumnStorageAttributes',['../classkudu_1_1client_1_1KuduColumnStorageAttributes.html#a2d6e5bec50a7305b3b4d75d21d000fab',1,'kudu::client::KuduColumnStorageAttributes']]],
+  ['kuducolumnstorageattributes',['KuduColumnStorageAttributes',['../classkudu_1_1client_1_1KuduColumnStorageAttributes.html',1,'kudu::client']]],
+  ['kududelete',['KuduDelete',['../classkudu_1_1client_1_1KuduDelete.html',1,'kudu::client']]],
+  ['kuduerror',['KuduError',['../classkudu_1_1client_1_1KuduError.html',1,'kudu::client']]],
+  ['kuduinsert',['KuduInsert',['../classkudu_1_1client_1_1KuduInsert.html',1,'kudu::client']]],
+  ['kuduloggingcallback',['KuduLoggingCallback',['../classkudu_1_1client_1_1KuduLoggingCallback.html',1,'kudu::client']]],
+  ['kuduloggingfunctioncallback',['KuduLoggingFunctionCallback',['../classkudu_1_1client_1_1KuduLoggingFunctionCallback.html',1,'kudu::client']]],
+  ['kuduloggingfunctioncallback',['KuduLoggingFunctionCallback',['../classkudu_1_1client_1_1KuduLoggingFunctionCallback.html#a4263c504b21e0e5827f47a902e908a2c',1,'kudu::client::KuduLoggingFunctionCallback']]],
+  ['kuduloggingmembercallback',['KuduLoggingMemberCallback',['../classkudu_1_1client_1_1KuduLoggingMemberCallback.html#aeda4119b1288db0d055c9800e3485fd8',1,'kudu::client::KuduLoggingMemberCallback']]],
+  ['kuduloggingmembercallback',['KuduLoggingMemberCallback',['../classkudu_1_1client_1_1KuduLoggingMemberCallback.html',1,'kudu::client']]],
+  ['kudupartialrow',['KuduPartialRow',['../classKuduPartialRow.html',1,'KuduPartialRow'],['../classKuduPartialRow.html#a9eb1cbd1b216f6313a03c82ab67112e4',1,'KuduPartialRow::KuduPartialRow(const Schema *schema)'],['../classKuduPartialRow.html#ab4ebb399982edbb3e877e38a74c700f1',1,'KuduPartialRow::KuduPartialRow(const KuduPartialRow &amp;other)']]],
+  ['kudupartitioner',['KuduPartitioner',['../classkudu_1_1client_1_1KuduPartitioner.html',1,'kudu::client']]],
+  ['kudupartitionerbuilder',['KuduPartitionerBuilder',['../classkudu_1_1client_1_1KuduPartitionerBuilder.html',1,'kudu::client']]],
+  ['kudupartitionerbuilder',['KuduPartitionerBuilder',['../classkudu_1_1client_1_1KuduPartitionerBuilder.html#a27d130235be1c2691779e1d97732a4ba',1,'kudu::client::KuduPartitionerBuilder']]],
+  ['kudupredicate',['KuduPredicate',['../classkudu_1_1client_1_1KuduPredicate.html',1,'kudu::client']]],
+  ['kudureplica',['KuduReplica',['../classkudu_1_1client_1_1KuduReplica.html',1,'kudu::client']]],
+  ['kuduscanbatch',['KuduScanBatch',['../classkudu_1_1client_1_1KuduScanBatch.html',1,'kudu::client']]],
+  ['kuduscanner',['KuduScanner',['../classkudu_1_1client_1_1KuduScanner.html',1,'kudu::client']]],
+  ['kuduscanner',['KuduScanner',['../classkudu_1_1client_1_1KuduScanner.html#a2c621f778072a02f4092e96a0baf8180',1,'kudu::client::KuduScanner']]],
+  ['kuduscantoken',['KuduScanToken',['../classkudu_1_1client_1_1KuduScanToken.html',1,'kudu::client']]],
+  ['kuduscantokenbuilder',['KuduScanTokenBuilder',['../classkudu_1_1client_1_1KuduScanTokenBuilder.html#aa8d300b560d419030abd503b66812484',1,'kudu::client::KuduScanTokenBuilder']]],
+  ['kuduscantokenbuilder',['KuduScanTokenBuilder',['../classkudu_1_1client_1_1KuduScanTokenBuilder.html',1,'kudu::client']]],
+  ['kuduschema',['KuduSchema',['../classkudu_1_1client_1_1KuduSchema.html',1,'kudu::client']]],
+  ['kuduschema',['KuduSchema',['../classkudu_1_1client_1_1KuduSchema.html#a41a683f3d93357fe68531bf71df39d02',1,'kudu::client::KuduSchema']]],
+  ['kuduschemabuilder',['KuduSchemaBuilder',['../classkudu_1_1client_1_1KuduSchemaBuilder.html',1,'kudu::client']]],
+  ['kudusession',['KuduSession',['../classkudu_1_1client_1_1KuduSession.html',1,'kudu::client']]],
+  ['kudustatuscallback',['KuduStatusCallback',['../classkudu_1_1client_1_1KuduStatusCallback.html',1,'kudu::client']]],
+  ['kudustatusfunctioncallback',['KuduStatusFunctionCallback',['../classkudu_1_1client_1_1KuduStatusFunctionCallback.html#aca289bbf6ad9720bd74a90550f6c9b3b',1,'kudu::client::KuduStatusFunctionCallback']]],
+  ['kudustatusfunctioncallback',['KuduStatusFunctionCallback',['../classkudu_1_1client_1_1KuduStatusFunctionCallback.html',1,'kudu::client']]],
+  ['kudustatusmembercallback',['KuduStatusMemberCallback',['../classkudu_1_1client_1_1KuduStatusMemberCallback.html#acdb02b9798adf2c80b39cfb024f199aa',1,'kudu::client::KuduStatusMemberCallback']]],
+  ['kudustatusmembercallback',['KuduStatusMemberCallback',['../classkudu_1_1client_1_1KuduStatusMemberCallback.html',1,'kudu::client']]],
+  ['kudutable',['KuduTable',['../classkudu_1_1client_1_1KuduTable.html',1,'kudu::client']]],
+  ['kudutablealterer',['KuduTableAlterer',['../classkudu_1_1client_1_1KuduTableAlterer.html',1,'kudu::client']]],
+  ['kudutablecreator',['KuduTableCreator',['../classkudu_1_1client_1_1KuduTableCreator.html',1,'kudu::client']]],
+  ['kudutablet',['KuduTablet',['../classkudu_1_1client_1_1KuduTablet.html',1,'kudu::client']]],
+  ['kudutabletserver',['KuduTabletServer',['../classkudu_1_1client_1_1KuduTabletServer.html',1,'kudu::client']]],
+  ['kuduupdate',['KuduUpdate',['../classkudu_1_1client_1_1KuduUpdate.html',1,'kudu::client']]],
+  ['kuduupsert',['KuduUpsert',['../classkudu_1_1client_1_1KuduUpsert.html',1,'kudu::client']]],
+  ['kuduvalue',['KuduValue',['../classkudu_1_1client_1_1KuduValue.html',1,'kudu::client']]],
+  ['kuduwriteoperation',['KuduWriteOperation',['../classkudu_1_1client_1_1KuduWriteOperation.html',1,'kudu::client']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/all_a.html b/releases/1.4.0/cpp-client-api/search/all_a.html
new file mode 100644
index 0000000..4cb31f0
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/all_a.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_a.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/all_a.js b/releases/1.4.0/cpp-client-api/search/all_a.js
new file mode 100644
index 0000000..723bd32
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/all_a.js
@@ -0,0 +1,7 @@
+var searchData=
+[
+  ['leader_5fonly',['LEADER_ONLY',['../classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11aafb912836db348061379d0e0a9055e239',1,'kudu::client::KuduClient']]],
+  ['lessthan',['LessThan',['../classkudu_1_1MonoDelta.html#a8f4ae8075a1ff013115a558d97e1ad4c',1,'kudu::MonoDelta']]],
+  ['listtables',['ListTables',['../classkudu_1_1client_1_1KuduClient.html#a3ab09f69753b8c99ac7b2eeed03faa1d',1,'kudu::client::KuduClient']]],
+  ['listtabletservers',['ListTabletServers',['../classkudu_1_1client_1_1KuduClient.html#ae283a49551a081524b41f5d8e51e68d9',1,'kudu::client::KuduClient']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/all_b.html b/releases/1.4.0/cpp-client-api/search/all_b.html
new file mode 100644
index 0000000..d34a612
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/all_b.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_b.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/all_b.js b/releases/1.4.0/cpp-client-api/search/all_b.js
new file mode 100644
index 0000000..6809258
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/all_b.js
@@ -0,0 +1,18 @@
+var searchData=
+[
+  ['manual_5fflush',['MANUAL_FLUSH',['../classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19a1db3efc2094da09aae45bb68475cdb4a',1,'kudu::client::KuduSession']]],
+  ['master_5fserver_5faddrs',['master_server_addrs',['../classkudu_1_1client_1_1KuduClientBuilder.html#a0c1b92afad7a6e21c5ea781fb7d42114',1,'kudu::client::KuduClientBuilder']]],
+  ['max',['Max',['../classkudu_1_1MonoTime.html#a28d08092b30ccefc5e45a6e228034ef9',1,'kudu::MonoTime']]],
+  ['membertype',['MemberType',['../classkudu_1_1client_1_1KuduLoggingMemberCallback.html#a379dffd7e67238b37b9a4e4ad8e2a3ec',1,'kudu::client::KuduLoggingMemberCallback::MemberType()'],['../classkudu_1_1client_1_1KuduStatusMemberCallback.html#a1ad9e466506c3453cdd8429d5744f17a',1,'kudu::client::KuduStatusMemberCallback::MemberType()']]],
+  ['memory_5ffootprint_5fexcluding_5fthis',['memory_footprint_excluding_this',['../classkudu_1_1Status.html#a6dd1852c4c78a3c6d8ace5155546db93',1,'kudu::Status']]],
+  ['memory_5ffootprint_5fincluding_5fthis',['memory_footprint_including_this',['../classkudu_1_1Status.html#a7a2d4eb7636a485b5b2cc42f0b8ad627',1,'kudu::Status']]],
+  ['message',['message',['../classkudu_1_1Status.html#a3547012ea31cc504141f2222eec38857',1,'kudu::Status']]],
+  ['min',['Min',['../classkudu_1_1MonoTime.html#acf4fc0351fe9245431932e481e002b99',1,'kudu::MonoTime']]],
+  ['monodelta',['MonoDelta',['../classkudu_1_1MonoDelta.html#ad0646900f0927ad9be6302fcda8bfe5f',1,'kudu::MonoDelta']]],
+  ['monodelta',['MonoDelta',['../classkudu_1_1MonoDelta.html',1,'kudu']]],
+  ['monotime',['MonoTime',['../classkudu_1_1MonoTime.html',1,'kudu']]],
+  ['monotime',['MonoTime',['../classkudu_1_1MonoTime.html#a8f49b7fd2e217b5541d4ce45bda63bd4',1,'kudu::MonoTime']]],
+  ['morethan',['MoreThan',['../classkudu_1_1MonoDelta.html#a218cc5fcd3ce70365210b7c5587aa6ff',1,'kudu::MonoDelta']]],
+  ['mutable_5fdata',['mutable_data',['../classkudu_1_1Slice.html#a2771156d34daa166067b8d319ad7d164',1,'kudu::Slice']]],
+  ['mutable_5frow',['mutable_row',['../classkudu_1_1client_1_1KuduWriteOperation.html#a8889770ce62e2ca0ce5d55c9c90af6bc',1,'kudu::client::KuduWriteOperation']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/all_c.html b/releases/1.4.0/cpp-client-api/search/all_c.html
new file mode 100644
index 0000000..c1ae2ca
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/all_c.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_c.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/all_c.js b/releases/1.4.0/cpp-client-api/search/all_c.js
new file mode 100644
index 0000000..c1f2616
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/all_c.js
@@ -0,0 +1,27 @@
+var searchData=
+[
+  ['name',['name',['../classkudu_1_1client_1_1KuduTable.html#aa0f8b6d63c800727c3a827945512555e',1,'kudu::client::KuduTable']]],
+  ['nanostotimespec',['NanosToTimeSpec',['../classkudu_1_1MonoDelta.html#a4854924550c571f8af548270da52ac22',1,'kudu::MonoDelta']]],
+  ['newcomparisonpredicate',['NewComparisonPredicate',['../classkudu_1_1client_1_1KuduTable.html#aed6c3571aff35270a3e6cd66770f1cea',1,'kudu::client::KuduTable']]],
+  ['newdelete',['NewDelete',['../classkudu_1_1client_1_1KuduTable.html#ad873078bdbcafe015d359a65c370a89a',1,'kudu::client::KuduTable']]],
+  ['newinlistpredicate',['NewInListPredicate',['../classkudu_1_1client_1_1KuduTable.html#a453ffb83cf7c12541caba5ea182fadd9',1,'kudu::client::KuduTable']]],
+  ['newinsert',['NewInsert',['../classkudu_1_1client_1_1KuduTable.html#a0c78f86c5d0fbf53437c2c9db26f92b6',1,'kudu::client::KuduTable']]],
+  ['newisnotnullpredicate',['NewIsNotNullPredicate',['../classkudu_1_1client_1_1KuduTable.html#af6e70f115cf3c0359b1c170533a2d523',1,'kudu::client::KuduTable']]],
+  ['newisnullpredicate',['NewIsNullPredicate',['../classkudu_1_1client_1_1KuduTable.html#a5f453909cdeda167ad15506358470466',1,'kudu::client::KuduTable']]],
+  ['newrow',['NewRow',['../classkudu_1_1client_1_1KuduSchema.html#aafaa50819a283b014ae03373e53489a1',1,'kudu::client::KuduSchema']]],
+  ['newsession',['NewSession',['../classkudu_1_1client_1_1KuduClient.html#a1f5b9bf8767b44f03f4d3220dfd5f925',1,'kudu::client::KuduClient']]],
+  ['newtablealterer',['NewTableAlterer',['../classkudu_1_1client_1_1KuduClient.html#a116bbcf13dc0991ad2a3129630075aea',1,'kudu::client::KuduClient']]],
+  ['newtablecreator',['NewTableCreator',['../classkudu_1_1client_1_1KuduClient.html#a003f13604b4fb378f61e133a9b49d153',1,'kudu::client::KuduClient']]],
+  ['newupdate',['NewUpdate',['../classkudu_1_1client_1_1KuduTable.html#a7e95271452d608fc2b563f7b46ddcda8',1,'kudu::client::KuduTable']]],
+  ['newupsert',['NewUpsert',['../classkudu_1_1client_1_1KuduTable.html#a19e92dbaeeff86c5d707b15b2a7051fc',1,'kudu::client::KuduTable']]],
+  ['nextbatch',['NextBatch',['../classkudu_1_1client_1_1KuduScanner.html#af365f1d3b3b34aeb7d016727a9019067',1,'kudu::client::KuduScanner::NextBatch(std::vector&lt; KuduRowResult &gt; *rows) ATTRIBUTE_DEPRECATED(&quot;use NextBatch(KuduScanBatch*) instead&quot;)'],['../classkudu_1_1client_1_1KuduScanner.html#af1475d9a0667839c1ed9c3714b47d487',1,'kudu::client::KuduScanner::NextBatch(KuduScanBatch *batch)']]],
+  ['no_5fflags',['NO_FLAGS',['../classkudu_1_1client_1_1KuduScanner.html#a68345956f3f4c7fd5e1665fd292f6a85',1,'kudu::client::KuduScanner']]],
+  ['notnull',['NotNull',['../classkudu_1_1client_1_1KuduColumnSpec.html#af8c64c5a8a7a93ec644d481f23d91cca',1,'kudu::client::KuduColumnSpec']]],
+  ['now',['Now',['../classkudu_1_1MonoTime.html#a6c83d5c31e6ea5a869a655646f924783',1,'kudu::MonoTime']]],
+  ['nullable',['Nullable',['../classkudu_1_1client_1_1KuduColumnSpec.html#aab05d7d45f4cd2dadb8e0c715d87e841',1,'kudu::client::KuduColumnSpec']]],
+  ['nulllog',['NullLog',['../classkudu_1_1internal__logging_1_1NullLog.html',1,'kudu::internal_logging']]],
+  ['num_5fcolumns',['num_columns',['../classkudu_1_1client_1_1KuduSchema.html#ac9e9f590006bd7ccfa44b87dec1b3c7a',1,'kudu::client::KuduSchema']]],
+  ['num_5freplicas',['num_replicas',['../classkudu_1_1client_1_1KuduTableCreator.html#a9dd4673755ba242eab3f06b19182d139',1,'kudu::client::KuduTableCreator::num_replicas()'],['../classkudu_1_1client_1_1KuduTable.html#a147bdffbd798161916471b721d63128f',1,'kudu::client::KuduTable::num_replicas()']]],
+  ['numpartitions',['NumPartitions',['../classkudu_1_1client_1_1KuduPartitioner.html#af692612faaccb259bf3d15f2bf5b246d',1,'kudu::client::KuduPartitioner']]],
+  ['numrows',['NumRows',['../classkudu_1_1client_1_1KuduScanBatch.html#a16e45694c5932eb3decc2184c3834157',1,'kudu::client::KuduScanBatch']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/all_d.html b/releases/1.4.0/cpp-client-api/search/all_d.html
new file mode 100644
index 0000000..712223c
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/all_d.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_d.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/all_d.js b/releases/1.4.0/cpp-client-api/search/all_d.js
new file mode 100644
index 0000000..3ba77eb
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/all_d.js
@@ -0,0 +1,17 @@
+var searchData=
+[
+  ['ok',['OK',['../classkudu_1_1Status.html#adaff3248b2f66041d0a7dd59f118b7ac',1,'kudu::Status::OK()'],['../classkudu_1_1Status.html#abf6454dcb72bfa92189a0595b5a858a7',1,'kudu::Status::ok() const ']]],
+  ['open',['Open',['../classkudu_1_1client_1_1KuduScanner.html#aa1ff3c11d9ac9f8183189ea5ac1ed9f1',1,'kudu::client::KuduScanner']]],
+  ['opentable',['OpenTable',['../classkudu_1_1client_1_1KuduClient.html#aa82a09718ffe68d3255195e736aec8d7',1,'kudu::client::KuduClient']]],
+  ['operator_21_3d',['operator!=',['../classkudu_1_1client_1_1KuduScanBatch.html#afd2b2c4cb038cbd366c2af8cf09a3a68',1,'kudu::client::KuduScanBatch']]],
+  ['operator_28_29',['operator()',['../structkudu_1_1Slice_1_1Comparator.html#a2f33c829e2febd880f9cbcbebb08fa6a',1,'kudu::Slice::Comparator']]],
+  ['operator_2a',['operator*',['../classkudu_1_1client_1_1KuduScanBatch.html#ab057b7b1bfb713a7e8f216e3b288cb10',1,'kudu::client::KuduScanBatch']]],
+  ['operator_2b_2b',['operator++',['../classkudu_1_1client_1_1KuduScanBatch.html#ad5df483ed3172caab5a8d6a72abfad0c',1,'kudu::client::KuduScanBatch::operator++()'],['../classkudu_1_1client_1_1KuduScanBatch.html#a4b1ad47fd7d429859b6181825a063c48',1,'kudu::client::KuduScanBatch::operator++(int)']]],
+  ['operator_2d_3d',['operator-=',['../classkudu_1_1MonoTime.html#a2264cf528d0a346e60e0921022333bf8',1,'kudu::MonoTime']]],
+  ['operator_3c_3c',['operator&lt;&lt;',['../classkudu_1_1internal__logging_1_1NullLog.html#abe50abde8e4af12413c99f437094dc8a',1,'kudu::internal_logging::NullLog::operator&lt;&lt;()'],['../classkudu_1_1internal__logging_1_1CerrLog.html#a9febb74005a76f9b203e9718275ab724',1,'kudu::internal_logging::CerrLog::operator&lt;&lt;()']]],
+  ['operator_3d',['operator=',['../classkudu_1_1client_1_1KuduColumnSchema.html#a4b58da787c8e7dc14987aa74a54f199e',1,'kudu::client::KuduColumnSchema::operator=()'],['../classKuduPartialRow.html#a03cab3e1aa0bef19c14f94181934181f',1,'KuduPartialRow::operator=()'],['../classkudu_1_1Status.html#aa387797d8a80892563d56244a2351a88',1,'kudu::Status::operator=()']]],
+  ['operator_3d_3d',['operator==',['../classkudu_1_1client_1_1KuduScanBatch.html#a378a5844a4b4774056b26f0003c15048',1,'kudu::client::KuduScanBatch::operator==()'],['../classkudu_1_1Slice.html#a1323493265790d022203af0d8b31fd9c',1,'kudu::Slice::operator==()']]],
+  ['operator_5b_5d',['operator[]',['../classkudu_1_1Slice.html#a5ff06bc0fd9734536a464e604ec226f2',1,'kudu::Slice']]],
+  ['ordered',['ORDERED',['../classkudu_1_1client_1_1KuduScanner.html#a3d6c79325c9da9741d0accf1b43bf7f9a4395ad2ec57ce53e30d8b5748fa2c63a',1,'kudu::client::KuduScanner']]],
+  ['ordermode',['OrderMode',['../classkudu_1_1client_1_1KuduScanner.html#a3d6c79325c9da9741d0accf1b43bf7f9',1,'kudu::client::KuduScanner']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/all_e.html b/releases/1.4.0/cpp-client-api/search/all_e.html
new file mode 100644
index 0000000..d553ffa
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/all_e.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_e.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/all_e.js b/releases/1.4.0/cpp-client-api/search/all_e.js
new file mode 100644
index 0000000..399ceaf
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/all_e.js
@@ -0,0 +1,9 @@
+var searchData=
+[
+  ['pad_5funixtime_5fmicros_5fto_5f16_5fbytes',['PAD_UNIXTIME_MICROS_TO_16_BYTES',['../classkudu_1_1client_1_1KuduScanner.html#a63cd270f3bc72f4197d2581ec8f8fc44',1,'kudu::client::KuduScanner']]],
+  ['partition_5fschema',['partition_schema',['../classkudu_1_1client_1_1KuduTable.html#af1125879ce34fa6c994a70fe1803a808',1,'kudu::client::KuduTable']]],
+  ['partitionrow',['PartitionRow',['../classkudu_1_1client_1_1KuduPartitioner.html#a05d816ba08d85d5c0c95025e12d2e369',1,'kudu::client::KuduPartitioner']]],
+  ['port',['port',['../classkudu_1_1client_1_1KuduTabletServer.html#ab4715d71c64dad1059698f2bb9ef192d',1,'kudu::client::KuduTabletServer']]],
+  ['posix_5fcode',['posix_code',['../classkudu_1_1Status.html#a20d5b34e3507a5dd326029a87df641dc',1,'kudu::Status']]],
+  ['projection_5fschema',['projection_schema',['../classkudu_1_1client_1_1KuduScanBatch.html#a3b58e77f53beea357fbb8bcddaab3137',1,'kudu::client::KuduScanBatch']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/all_f.html b/releases/1.4.0/cpp-client-api/search/all_f.html
new file mode 100644
index 0000000..c77391a
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/all_f.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_f.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/all_f.js b/releases/1.4.0/cpp-client-api/search/all_f.js
new file mode 100644
index 0000000..be64085
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/all_f.js
@@ -0,0 +1,18 @@
+var searchData=
+[
+  ['rangepartitionbound',['RangePartitionBound',['../classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343b',1,'kudu::client::KuduTableCreator']]],
+  ['read_5fat_5fsnapshot',['READ_AT_SNAPSHOT',['../classkudu_1_1client_1_1KuduScanner.html#a36fdb59d6488618363331269d3f58348a380798cc81589d865b7b2549e186b2e2',1,'kudu::client::KuduScanner']]],
+  ['read_5flatest',['READ_LATEST',['../classkudu_1_1client_1_1KuduScanner.html#a36fdb59d6488618363331269d3f58348a8694cef688d819806fa9a85b002231a8',1,'kudu::client::KuduScanner']]],
+  ['readmode',['ReadMode',['../classkudu_1_1client_1_1KuduScanner.html#a36fdb59d6488618363331269d3f58348',1,'kudu::client::KuduScanner']]],
+  ['release_5ffailed_5fop',['release_failed_op',['../classkudu_1_1client_1_1KuduError.html#ae1a49bd16eeff4d2ab88fa70e1dc3c6a',1,'kudu::client::KuduError']]],
+  ['relocate',['relocate',['../classkudu_1_1Slice.html#a4bb1c9fe13873623b5a5a118830b1806',1,'kudu::Slice']]],
+  ['remove_5fprefix',['remove_prefix',['../classkudu_1_1Slice.html#a00f5d310f9ebf17c198cf3feb69c3842',1,'kudu::Slice']]],
+  ['renameto',['RenameTo',['../classkudu_1_1client_1_1KuduTableAlterer.html#aca8ea8d7b65e6952c76fd97f12d5b324',1,'kudu::client::KuduTableAlterer::RenameTo()'],['../classkudu_1_1client_1_1KuduColumnSpec.html#abeb2cbbaa01253165202574db03872f4',1,'kudu::client::KuduColumnSpec::RenameTo()']]],
+  ['replicas',['replicas',['../classkudu_1_1client_1_1KuduTablet.html#a7816ea063549347b676fc18dfa297619',1,'kudu::client::KuduTablet']]],
+  ['replicaselection',['ReplicaSelection',['../classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11a',1,'kudu::client::KuduClient']]],
+  ['reset',['Reset',['../classkudu_1_1client_1_1KuduSchema.html#a3f51ccf1a7e6f4a4fe4958073305dbab',1,'kudu::client::KuduSchema']]],
+  ['resourcemetrics',['ResourceMetrics',['../classkudu_1_1client_1_1ResourceMetrics.html',1,'kudu::client']]],
+  ['row',['row',['../classkudu_1_1client_1_1KuduWriteOperation.html#a973b342ced786b23754b57fd83b34aa3',1,'kudu::client::KuduWriteOperation::row()'],['../classkudu_1_1client_1_1KuduScanBatch.html#a93c2f0914140dd405a51d57e2f75014a',1,'kudu::client::KuduScanBatch::Row()']]],
+  ['rowptr',['RowPtr',['../classkudu_1_1client_1_1KuduScanBatch.html#a92bbfa48e9b503181c2dfb5f11f14e4e',1,'kudu::client::KuduScanBatch']]],
+  ['run',['Run',['../classkudu_1_1client_1_1KuduLoggingCallback.html#ad9d5ac9b45246c5a4304d53ee86102eb',1,'kudu::client::KuduLoggingCallback::Run()'],['../classkudu_1_1client_1_1KuduLoggingMemberCallback.html#a3d75e43bb4af846af66735fabe642a88',1,'kudu::client::KuduLoggingMemberCallback::Run()'],['../classkudu_1_1client_1_1KuduLoggingFunctionCallback.html#ab5119cbc60675f3ca77e08c1e87ec215',1,'kudu::client::KuduLoggingFunctionCallback::Run()'],['../classkudu_1_1client_1_1KuduStatusCallback.html#a2333beedb1d0c08a8c127b4552fbeb07',1,'kudu::client::KuduStatusCallback::Run()'],['../classkudu_1_1client_1_1KuduStatusMemberCallback.html#a94bde1bdcb3cde6f78b11d822be19232',1,'kudu::client::KuduStatusMemberCallback::Run()'],['../classkudu_1_1client_1_1KuduStatusFunctionCallback.html#af4c3e7fbd4fed52bcba220f95a27f70a',1,'kudu::client::KuduStatusFunctionCallback::Run()']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/classes_0.html b/releases/1.4.0/cpp-client-api/search/classes_0.html
new file mode 100644
index 0000000..025587a
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/classes_0.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="classes_0.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/classes_0.js b/releases/1.4.0/cpp-client-api/search/classes_0.js
new file mode 100644
index 0000000..590eb44
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/classes_0.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+  ['cerrlog',['CerrLog',['../classkudu_1_1internal__logging_1_1CerrLog.html',1,'kudu::internal_logging']]],
+  ['comparator',['Comparator',['../structkudu_1_1Slice_1_1Comparator.html',1,'kudu::Slice']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/classes_1.html b/releases/1.4.0/cpp-client-api/search/classes_1.html
new file mode 100644
index 0000000..86dc4ff
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/classes_1.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="classes_1.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/classes_1.js b/releases/1.4.0/cpp-client-api/search/classes_1.js
new file mode 100644
index 0000000..d7eacc2
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/classes_1.js
@@ -0,0 +1,38 @@
+var searchData=
+[
+  ['kuduclient',['KuduClient',['../classkudu_1_1client_1_1KuduClient.html',1,'kudu::client']]],
+  ['kuduclientbuilder',['KuduClientBuilder',['../classkudu_1_1client_1_1KuduClientBuilder.html',1,'kudu::client']]],
+  ['kuducolumnschema',['KuduColumnSchema',['../classkudu_1_1client_1_1KuduColumnSchema.html',1,'kudu::client']]],
+  ['kuducolumnspec',['KuduColumnSpec',['../classkudu_1_1client_1_1KuduColumnSpec.html',1,'kudu::client']]],
+  ['kuducolumnstorageattributes',['KuduColumnStorageAttributes',['../classkudu_1_1client_1_1KuduColumnStorageAttributes.html',1,'kudu::client']]],
+  ['kududelete',['KuduDelete',['../classkudu_1_1client_1_1KuduDelete.html',1,'kudu::client']]],
+  ['kuduerror',['KuduError',['../classkudu_1_1client_1_1KuduError.html',1,'kudu::client']]],
+  ['kuduinsert',['KuduInsert',['../classkudu_1_1client_1_1KuduInsert.html',1,'kudu::client']]],
+  ['kuduloggingcallback',['KuduLoggingCallback',['../classkudu_1_1client_1_1KuduLoggingCallback.html',1,'kudu::client']]],
+  ['kuduloggingfunctioncallback',['KuduLoggingFunctionCallback',['../classkudu_1_1client_1_1KuduLoggingFunctionCallback.html',1,'kudu::client']]],
+  ['kuduloggingmembercallback',['KuduLoggingMemberCallback',['../classkudu_1_1client_1_1KuduLoggingMemberCallback.html',1,'kudu::client']]],
+  ['kudupartialrow',['KuduPartialRow',['../classKuduPartialRow.html',1,'']]],
+  ['kudupartitioner',['KuduPartitioner',['../classkudu_1_1client_1_1KuduPartitioner.html',1,'kudu::client']]],
+  ['kudupartitionerbuilder',['KuduPartitionerBuilder',['../classkudu_1_1client_1_1KuduPartitionerBuilder.html',1,'kudu::client']]],
+  ['kudupredicate',['KuduPredicate',['../classkudu_1_1client_1_1KuduPredicate.html',1,'kudu::client']]],
+  ['kudureplica',['KuduReplica',['../classkudu_1_1client_1_1KuduReplica.html',1,'kudu::client']]],
+  ['kuduscanbatch',['KuduScanBatch',['../classkudu_1_1client_1_1KuduScanBatch.html',1,'kudu::client']]],
+  ['kuduscanner',['KuduScanner',['../classkudu_1_1client_1_1KuduScanner.html',1,'kudu::client']]],
+  ['kuduscantoken',['KuduScanToken',['../classkudu_1_1client_1_1KuduScanToken.html',1,'kudu::client']]],
+  ['kuduscantokenbuilder',['KuduScanTokenBuilder',['../classkudu_1_1client_1_1KuduScanTokenBuilder.html',1,'kudu::client']]],
+  ['kuduschema',['KuduSchema',['../classkudu_1_1client_1_1KuduSchema.html',1,'kudu::client']]],
+  ['kuduschemabuilder',['KuduSchemaBuilder',['../classkudu_1_1client_1_1KuduSchemaBuilder.html',1,'kudu::client']]],
+  ['kudusession',['KuduSession',['../classkudu_1_1client_1_1KuduSession.html',1,'kudu::client']]],
+  ['kudustatuscallback',['KuduStatusCallback',['../classkudu_1_1client_1_1KuduStatusCallback.html',1,'kudu::client']]],
+  ['kudustatusfunctioncallback',['KuduStatusFunctionCallback',['../classkudu_1_1client_1_1KuduStatusFunctionCallback.html',1,'kudu::client']]],
+  ['kudustatusmembercallback',['KuduStatusMemberCallback',['../classkudu_1_1client_1_1KuduStatusMemberCallback.html',1,'kudu::client']]],
+  ['kudutable',['KuduTable',['../classkudu_1_1client_1_1KuduTable.html',1,'kudu::client']]],
+  ['kudutablealterer',['KuduTableAlterer',['../classkudu_1_1client_1_1KuduTableAlterer.html',1,'kudu::client']]],
+  ['kudutablecreator',['KuduTableCreator',['../classkudu_1_1client_1_1KuduTableCreator.html',1,'kudu::client']]],
+  ['kudutablet',['KuduTablet',['../classkudu_1_1client_1_1KuduTablet.html',1,'kudu::client']]],
+  ['kudutabletserver',['KuduTabletServer',['../classkudu_1_1client_1_1KuduTabletServer.html',1,'kudu::client']]],
+  ['kuduupdate',['KuduUpdate',['../classkudu_1_1client_1_1KuduUpdate.html',1,'kudu::client']]],
+  ['kuduupsert',['KuduUpsert',['../classkudu_1_1client_1_1KuduUpsert.html',1,'kudu::client']]],
+  ['kuduvalue',['KuduValue',['../classkudu_1_1client_1_1KuduValue.html',1,'kudu::client']]],
+  ['kuduwriteoperation',['KuduWriteOperation',['../classkudu_1_1client_1_1KuduWriteOperation.html',1,'kudu::client']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/classes_2.html b/releases/1.4.0/cpp-client-api/search/classes_2.html
new file mode 100644
index 0000000..014caf8
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/classes_2.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="classes_2.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/classes_2.js b/releases/1.4.0/cpp-client-api/search/classes_2.js
new file mode 100644
index 0000000..a02d355
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/classes_2.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+  ['monodelta',['MonoDelta',['../classkudu_1_1MonoDelta.html',1,'kudu']]],
+  ['monotime',['MonoTime',['../classkudu_1_1MonoTime.html',1,'kudu']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/classes_3.html b/releases/1.4.0/cpp-client-api/search/classes_3.html
new file mode 100644
index 0000000..2e97201
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/classes_3.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="classes_3.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/classes_3.js b/releases/1.4.0/cpp-client-api/search/classes_3.js
new file mode 100644
index 0000000..7a02923
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/classes_3.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['nulllog',['NullLog',['../classkudu_1_1internal__logging_1_1NullLog.html',1,'kudu::internal_logging']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/classes_4.html b/releases/1.4.0/cpp-client-api/search/classes_4.html
new file mode 100644
index 0000000..776fee3
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/classes_4.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="classes_4.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/classes_4.js b/releases/1.4.0/cpp-client-api/search/classes_4.js
new file mode 100644
index 0000000..a88141d
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/classes_4.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['resourcemetrics',['ResourceMetrics',['../classkudu_1_1client_1_1ResourceMetrics.html',1,'kudu::client']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/classes_5.html b/releases/1.4.0/cpp-client-api/search/classes_5.html
new file mode 100644
index 0000000..69bbcc8
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/classes_5.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="classes_5.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/classes_5.js b/releases/1.4.0/cpp-client-api/search/classes_5.js
new file mode 100644
index 0000000..3ab0fd8
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/classes_5.js
@@ -0,0 +1,6 @@
+var searchData=
+[
+  ['slice',['Slice',['../classkudu_1_1Slice.html',1,'kudu']]],
+  ['slicemap',['SliceMap',['../structkudu_1_1SliceMap.html',1,'kudu']]],
+  ['status',['Status',['../classkudu_1_1Status.html',1,'kudu']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/close.png b/releases/1.4.0/cpp-client-api/search/close.png
new file mode 100644
index 0000000..9342d3d
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/close.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/search/defines_0.html b/releases/1.4.0/cpp-client-api/search/defines_0.html
new file mode 100644
index 0000000..17cfaa2
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/defines_0.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="defines_0.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/defines_0.js b/releases/1.4.0/cpp-client-api/search/defines_0.js
new file mode 100644
index 0000000..3939c07
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/defines_0.js
@@ -0,0 +1,13 @@
+var searchData=
+[
+  ['kudu_5fcheck_5fok',['KUDU_CHECK_OK',['../status_8h.html#ac503ba85e942147294cdc82087da60f6',1,'status.h']]],
+  ['kudu_5fcheck_5fok_5fprepend',['KUDU_CHECK_OK_PREPEND',['../status_8h.html#a706c9f6ef1715b8f7a9185fb3c247d3f',1,'status.h']]],
+  ['kudu_5fdcheck_5fok',['KUDU_DCHECK_OK',['../status_8h.html#a99332afa18f00de3c7fcf3e76949df9d',1,'status.h']]],
+  ['kudu_5fdcheck_5fok_5fprepend',['KUDU_DCHECK_OK_PREPEND',['../status_8h.html#a2b360b53025724bb97d1dc21e25e26cc',1,'status.h']]],
+  ['kudu_5flog_5fand_5freturn',['KUDU_LOG_AND_RETURN',['../status_8h.html#abbd85cc2c5535627091bb06a21918150',1,'status.h']]],
+  ['kudu_5freturn_5fnot_5fok',['KUDU_RETURN_NOT_OK',['../status_8h.html#a0de56a3f0e9d83b8ffdd63eac83c54ab',1,'status.h']]],
+  ['kudu_5freturn_5fnot_5fok_5flog',['KUDU_RETURN_NOT_OK_LOG',['../status_8h.html#af09a6a2eca53c9424d74c7fd9f39c5ce',1,'status.h']]],
+  ['kudu_5freturn_5fnot_5fok_5fprepend',['KUDU_RETURN_NOT_OK_PREPEND',['../status_8h.html#af66b8458f1d3f1264c1da86744e29e46',1,'status.h']]],
+  ['kudu_5freturn_5fnot_5fok_5fret',['KUDU_RETURN_NOT_OK_RET',['../status_8h.html#a58d31c81bf1101a3ead737e9a4a4f223',1,'status.h']]],
+  ['kudu_5fwarn_5fnot_5fok',['KUDU_WARN_NOT_OK',['../status_8h.html#a1e64fec5ef85c0c738f6ac3f398f607e',1,'status.h']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/enums_0.html b/releases/1.4.0/cpp-client-api/search/enums_0.html
new file mode 100644
index 0000000..aba8d79
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/enums_0.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enums_0.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/enums_0.js b/releases/1.4.0/cpp-client-api/search/enums_0.js
new file mode 100644
index 0000000..d30c879
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/enums_0.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+  ['comparisonop',['ComparisonOp',['../classkudu_1_1client_1_1KuduPredicate.html#ad58e80ced596d7738f99b5b83ba24eb4',1,'kudu::client::KuduPredicate']]],
+  ['compressiontype',['CompressionType',['../classkudu_1_1client_1_1KuduColumnStorageAttributes.html#af579406931a40daa5cb9e10603341a78',1,'kudu::client::KuduColumnStorageAttributes']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/enums_1.html b/releases/1.4.0/cpp-client-api/search/enums_1.html
new file mode 100644
index 0000000..a8d3843
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/enums_1.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enums_1.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/enums_1.js b/releases/1.4.0/cpp-client-api/search/enums_1.js
new file mode 100644
index 0000000..4aa6bef
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/enums_1.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['datatype',['DataType',['../classkudu_1_1client_1_1KuduColumnSchema.html#aba69238e70af5c887a4fb11fa2a120c5',1,'kudu::client::KuduColumnSchema']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/enums_2.html b/releases/1.4.0/cpp-client-api/search/enums_2.html
new file mode 100644
index 0000000..ef7d632
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/enums_2.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enums_2.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/enums_2.js b/releases/1.4.0/cpp-client-api/search/enums_2.js
new file mode 100644
index 0000000..4a73728
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/enums_2.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+  ['encodingtype',['EncodingType',['../classkudu_1_1client_1_1KuduColumnStorageAttributes.html#aeb835a12e6f40b1a619afa8abd773b6d',1,'kudu::client::KuduColumnStorageAttributes']]],
+  ['externalconsistencymode',['ExternalConsistencyMode',['../classkudu_1_1client_1_1KuduSession.html#aabd55109ba3b086bbe33b277cdd40d22',1,'kudu::client::KuduSession']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/enums_3.html b/releases/1.4.0/cpp-client-api/search/enums_3.html
new file mode 100644
index 0000000..57bac2e
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/enums_3.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enums_3.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/enums_3.js b/releases/1.4.0/cpp-client-api/search/enums_3.js
new file mode 100644
index 0000000..c6b2003
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/enums_3.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['flushmode',['FlushMode',['../classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19',1,'kudu::client::KuduSession']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/enums_4.html b/releases/1.4.0/cpp-client-api/search/enums_4.html
new file mode 100644
index 0000000..f35d7a7
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/enums_4.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enums_4.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/enums_4.js b/releases/1.4.0/cpp-client-api/search/enums_4.js
new file mode 100644
index 0000000..2c74814
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/enums_4.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['ordermode',['OrderMode',['../classkudu_1_1client_1_1KuduScanner.html#a3d6c79325c9da9741d0accf1b43bf7f9',1,'kudu::client::KuduScanner']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/enums_5.html b/releases/1.4.0/cpp-client-api/search/enums_5.html
new file mode 100644
index 0000000..b579463
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/enums_5.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enums_5.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/enums_5.js b/releases/1.4.0/cpp-client-api/search/enums_5.js
new file mode 100644
index 0000000..0638078
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/enums_5.js
@@ -0,0 +1,6 @@
+var searchData=
+[
+  ['rangepartitionbound',['RangePartitionBound',['../classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343b',1,'kudu::client::KuduTableCreator']]],
+  ['readmode',['ReadMode',['../classkudu_1_1client_1_1KuduScanner.html#a36fdb59d6488618363331269d3f58348',1,'kudu::client::KuduScanner']]],
+  ['replicaselection',['ReplicaSelection',['../classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11a',1,'kudu::client::KuduClient']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/enums_6.html b/releases/1.4.0/cpp-client-api/search/enums_6.html
new file mode 100644
index 0000000..b21542b
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/enums_6.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enums_6.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/enums_6.js b/releases/1.4.0/cpp-client-api/search/enums_6.js
new file mode 100644
index 0000000..e5127ec
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/enums_6.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['type',['Type',['../classkudu_1_1client_1_1KuduWriteOperation.html#a87d94ee5801a6b16fc6d1f44ee2e4357',1,'kudu::client::KuduWriteOperation']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/enumvalues_0.html b/releases/1.4.0/cpp-client-api/search/enumvalues_0.html
new file mode 100644
index 0000000..83192d3
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/enumvalues_0.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enumvalues_0.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/enumvalues_0.js b/releases/1.4.0/cpp-client-api/search/enumvalues_0.js
new file mode 100644
index 0000000..0917b20
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/enumvalues_0.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+  ['auto_5fflush_5fbackground',['AUTO_FLUSH_BACKGROUND',['../classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19a520b8eef7ef0fd149b2757faf43972b1',1,'kudu::client::KuduSession']]],
+  ['auto_5fflush_5fsync',['AUTO_FLUSH_SYNC',['../classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19ad74b76e407e62ca951d369521636df2b',1,'kudu::client::KuduSession']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/enumvalues_1.html b/releases/1.4.0/cpp-client-api/search/enumvalues_1.html
new file mode 100644
index 0000000..0715ef5
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/enumvalues_1.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enumvalues_1.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/enumvalues_1.js b/releases/1.4.0/cpp-client-api/search/enumvalues_1.js
new file mode 100644
index 0000000..8a6400a
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/enumvalues_1.js
@@ -0,0 +1,6 @@
+var searchData=
+[
+  ['client_5fpropagated',['CLIENT_PROPAGATED',['../classkudu_1_1client_1_1KuduSession.html#aabd55109ba3b086bbe33b277cdd40d22ae978fab7451faebf4399830b603c855c',1,'kudu::client::KuduSession']]],
+  ['closest_5freplica',['CLOSEST_REPLICA',['../classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11aa801886067da41dacd0c9c2b8091f08d8',1,'kudu::client::KuduClient']]],
+  ['commit_5fwait',['COMMIT_WAIT',['../classkudu_1_1client_1_1KuduSession.html#aabd55109ba3b086bbe33b277cdd40d22a70010f3ef1f70b99b02328c024c436c9',1,'kudu::client::KuduSession']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/enumvalues_2.html b/releases/1.4.0/cpp-client-api/search/enumvalues_2.html
new file mode 100644
index 0000000..0f9b5e9
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/enumvalues_2.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enumvalues_2.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/enumvalues_2.js b/releases/1.4.0/cpp-client-api/search/enumvalues_2.js
new file mode 100644
index 0000000..b53c36e
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/enumvalues_2.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['exclusive_5fbound',['EXCLUSIVE_BOUND',['../classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343baa117961e0003fd28663861833d23e601',1,'kudu::client::KuduTableCreator']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/enumvalues_3.html b/releases/1.4.0/cpp-client-api/search/enumvalues_3.html
new file mode 100644
index 0000000..9ebb356
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/enumvalues_3.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enumvalues_3.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/enumvalues_3.js b/releases/1.4.0/cpp-client-api/search/enumvalues_3.js
new file mode 100644
index 0000000..ab2324e
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/enumvalues_3.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['first_5freplica',['FIRST_REPLICA',['../classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11aaa060fb6126a3e3fa80079f885dc7d48f',1,'kudu::client::KuduClient']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/enumvalues_4.html b/releases/1.4.0/cpp-client-api/search/enumvalues_4.html
new file mode 100644
index 0000000..daa496d
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/enumvalues_4.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enumvalues_4.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/enumvalues_4.js b/releases/1.4.0/cpp-client-api/search/enumvalues_4.js
new file mode 100644
index 0000000..3ebc1e3
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/enumvalues_4.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['group_5fvarint',['GROUP_VARINT',['../classkudu_1_1client_1_1KuduColumnStorageAttributes.html#aeb835a12e6f40b1a619afa8abd773b6da28c1ed31be30579070232164c24b4b82',1,'kudu::client::KuduColumnStorageAttributes']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/enumvalues_5.html b/releases/1.4.0/cpp-client-api/search/enumvalues_5.html
new file mode 100644
index 0000000..bd37793
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/enumvalues_5.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enumvalues_5.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/enumvalues_5.js b/releases/1.4.0/cpp-client-api/search/enumvalues_5.js
new file mode 100644
index 0000000..6fe3111
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/enumvalues_5.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['inclusive_5fbound',['INCLUSIVE_BOUND',['../classkudu_1_1client_1_1KuduTableCreator.html#a0a63fdc58e8062e505f4fa71d6f2343ba0f4899cc63fba167455e05b525f0b950',1,'kudu::client::KuduTableCreator']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/enumvalues_6.html b/releases/1.4.0/cpp-client-api/search/enumvalues_6.html
new file mode 100644
index 0000000..656e478
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/enumvalues_6.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enumvalues_6.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/enumvalues_6.js b/releases/1.4.0/cpp-client-api/search/enumvalues_6.js
new file mode 100644
index 0000000..230821d
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/enumvalues_6.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['leader_5fonly',['LEADER_ONLY',['../classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11aafb912836db348061379d0e0a9055e239',1,'kudu::client::KuduClient']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/enumvalues_7.html b/releases/1.4.0/cpp-client-api/search/enumvalues_7.html
new file mode 100644
index 0000000..2c3a1c9
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/enumvalues_7.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enumvalues_7.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/enumvalues_7.js b/releases/1.4.0/cpp-client-api/search/enumvalues_7.js
new file mode 100644
index 0000000..8f0c486
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/enumvalues_7.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['manual_5fflush',['MANUAL_FLUSH',['../classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19a1db3efc2094da09aae45bb68475cdb4a',1,'kudu::client::KuduSession']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/enumvalues_8.html b/releases/1.4.0/cpp-client-api/search/enumvalues_8.html
new file mode 100644
index 0000000..983dccb
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/enumvalues_8.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enumvalues_8.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/enumvalues_8.js b/releases/1.4.0/cpp-client-api/search/enumvalues_8.js
new file mode 100644
index 0000000..c09b7fb
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/enumvalues_8.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['ordered',['ORDERED',['../classkudu_1_1client_1_1KuduScanner.html#a3d6c79325c9da9741d0accf1b43bf7f9a4395ad2ec57ce53e30d8b5748fa2c63a',1,'kudu::client::KuduScanner']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/enumvalues_9.html b/releases/1.4.0/cpp-client-api/search/enumvalues_9.html
new file mode 100644
index 0000000..a8b553f
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/enumvalues_9.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enumvalues_9.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/enumvalues_9.js b/releases/1.4.0/cpp-client-api/search/enumvalues_9.js
new file mode 100644
index 0000000..8f8c4a2
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/enumvalues_9.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+  ['read_5fat_5fsnapshot',['READ_AT_SNAPSHOT',['../classkudu_1_1client_1_1KuduScanner.html#a36fdb59d6488618363331269d3f58348a380798cc81589d865b7b2549e186b2e2',1,'kudu::client::KuduScanner']]],
+  ['read_5flatest',['READ_LATEST',['../classkudu_1_1client_1_1KuduScanner.html#a36fdb59d6488618363331269d3f58348a8694cef688d819806fa9a85b002231a8',1,'kudu::client::KuduScanner']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/enumvalues_a.html b/releases/1.4.0/cpp-client-api/search/enumvalues_a.html
new file mode 100644
index 0000000..5d9b2d6
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/enumvalues_a.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enumvalues_a.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/enumvalues_a.js b/releases/1.4.0/cpp-client-api/search/enumvalues_a.js
new file mode 100644
index 0000000..9c6fc2d
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/enumvalues_a.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['timestamp',['TIMESTAMP',['../classkudu_1_1client_1_1KuduColumnSchema.html#aba69238e70af5c887a4fb11fa2a120c5a27d1b7aca7cf9a01d9258a41bbe3b505',1,'kudu::client::KuduColumnSchema']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/enumvalues_b.html b/releases/1.4.0/cpp-client-api/search/enumvalues_b.html
new file mode 100644
index 0000000..e947a47
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/enumvalues_b.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enumvalues_b.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/enumvalues_b.js b/releases/1.4.0/cpp-client-api/search/enumvalues_b.js
new file mode 100644
index 0000000..84d78a2
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/enumvalues_b.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['unordered',['UNORDERED',['../classkudu_1_1client_1_1KuduScanner.html#a3d6c79325c9da9741d0accf1b43bf7f9adfeea547de613f36a0aff9f585671ec3',1,'kudu::client::KuduScanner']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/files_0.html b/releases/1.4.0/cpp-client-api/search/files_0.html
new file mode 100644
index 0000000..0b637cf
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/files_0.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_0.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/files_0.js b/releases/1.4.0/cpp-client-api/search/files_0.js
new file mode 100644
index 0000000..935833f
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/files_0.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+  ['shared_5fptr_2eh',['shared_ptr.h',['../shared__ptr_8h.html',1,'']]],
+  ['status_2eh',['status.h',['../status_8h.html',1,'']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/functions_0.html b/releases/1.4.0/cpp-client-api/search/functions_0.html
new file mode 100644
index 0000000..6bc52b6
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/functions_0.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_0.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/functions_0.js b/releases/1.4.0/cpp-client-api/search/functions_0.js
new file mode 100644
index 0000000..b9cdc2e
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/functions_0.js
@@ -0,0 +1,22 @@
+var searchData=
+[
+  ['add_5fhash_5fpartitions',['add_hash_partitions',['../classkudu_1_1client_1_1KuduTableCreator.html#a989ccdb9b6f4186d3227d3811048538e',1,'kudu::client::KuduTableCreator::add_hash_partitions(const std::vector&lt; std::string &gt; &amp;columns, int32_t num_buckets)'],['../classkudu_1_1client_1_1KuduTableCreator.html#a9cdcee398f94af53d721e3d085929d24',1,'kudu::client::KuduTableCreator::add_hash_partitions(const std::vector&lt; std::string &gt; &amp;columns, int32_t num_buckets, int32_t seed)']]],
+  ['add_5fmaster_5fserver_5faddr',['add_master_server_addr',['../classkudu_1_1client_1_1KuduClientBuilder.html#add149f1c1c2d3653e6a6cae4f44fa90c',1,'kudu::client::KuduClientBuilder']]],
+  ['add_5frange_5fpartition',['add_range_partition',['../classkudu_1_1client_1_1KuduTableCreator.html#aac3d941bf3b381c08f64ed919680984a',1,'kudu::client::KuduTableCreator']]],
+  ['add_5frange_5fpartition_5fsplit',['add_range_partition_split',['../classkudu_1_1client_1_1KuduTableCreator.html#adbdd2208d9ede696704fbecea15bea1f',1,'kudu::client::KuduTableCreator']]],
+  ['addcolumn',['AddColumn',['../classkudu_1_1client_1_1KuduTableAlterer.html#acb9406a6a254997dd584ce6c2cf51cd0',1,'kudu::client::KuduTableAlterer::AddColumn()'],['../classkudu_1_1client_1_1KuduSchemaBuilder.html#a0fdf28d49cc05ba4f3182f7398ddf600',1,'kudu::client::KuduSchemaBuilder::AddColumn()']]],
+  ['addconjunctpredicate',['AddConjunctPredicate',['../classkudu_1_1client_1_1KuduScanner.html#a47b0fcd30f8002cb4fdcf69351896b74',1,'kudu::client::KuduScanner::AddConjunctPredicate()'],['../classkudu_1_1client_1_1KuduScanTokenBuilder.html#ac40487d17b8e4dcca7ca08efeb5f195e',1,'kudu::client::KuduScanTokenBuilder::AddConjunctPredicate()']]],
+  ['adddelta',['AddDelta',['../classkudu_1_1MonoTime.html#a17dd3af0b55e8d19dc986101ba998de1',1,'kudu::MonoTime']]],
+  ['addexclusiveupperbound',['AddExclusiveUpperBound',['../classkudu_1_1client_1_1KuduScanner.html#a551fd38d48a686f2662727a82e79bd3d',1,'kudu::client::KuduScanner']]],
+  ['addexclusiveupperboundpartitionkeyraw',['AddExclusiveUpperBoundPartitionKeyRaw',['../classkudu_1_1client_1_1KuduScanner.html#aa951a6ec3aeb82c82afe35d8e3ba18a9',1,'kudu::client::KuduScanner']]],
+  ['addexclusiveupperboundraw',['AddExclusiveUpperBoundRaw',['../classkudu_1_1client_1_1KuduScanner.html#aefb6badecb950d5089b2f9d29d1f2ffe',1,'kudu::client::KuduScanner']]],
+  ['addlowerbound',['AddLowerBound',['../classkudu_1_1client_1_1KuduScanner.html#a67691944fc112f43c565ab4486514b86',1,'kudu::client::KuduScanner::AddLowerBound()'],['../classkudu_1_1client_1_1KuduScanTokenBuilder.html#ae11ca3d00d15138e957a2c2e89b05fcf',1,'kudu::client::KuduScanTokenBuilder::AddLowerBound()']]],
+  ['addlowerboundpartitionkeyraw',['AddLowerBoundPartitionKeyRaw',['../classkudu_1_1client_1_1KuduScanner.html#ab53b88307028a50f66bcffe5e78c6d6e',1,'kudu::client::KuduScanner']]],
+  ['addlowerboundraw',['AddLowerBoundRaw',['../classkudu_1_1client_1_1KuduScanner.html#a3e51a978f3e54237fa60f7447ef3436e',1,'kudu::client::KuduScanner']]],
+  ['addrangepartition',['AddRangePartition',['../classkudu_1_1client_1_1KuduTableAlterer.html#a521a968f4db133a10629f76c75dde793',1,'kudu::client::KuduTableAlterer']]],
+  ['addupperbound',['AddUpperBound',['../classkudu_1_1client_1_1KuduScanTokenBuilder.html#ac4d0fa934e4c705ac76c424a5431566a',1,'kudu::client::KuduScanTokenBuilder']]],
+  ['allcolumnsset',['AllColumnsSet',['../classKuduPartialRow.html#a2d373a8c8682ab6ebdb27137c041be18',1,'KuduPartialRow']]],
+  ['alter',['Alter',['../classkudu_1_1client_1_1KuduTableAlterer.html#a14768f28048355d997e0ed4fa82e218c',1,'kudu::client::KuduTableAlterer']]],
+  ['altercolumn',['AlterColumn',['../classkudu_1_1client_1_1KuduTableAlterer.html#a6d62bfbcfab6b99dcb057e7f7a4cf742',1,'kudu::client::KuduTableAlterer']]],
+  ['apply',['Apply',['../classkudu_1_1client_1_1KuduSession.html#ad3f7324b27fca298c5ca3d07b4741943',1,'kudu::client::KuduSession']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/functions_1.html b/releases/1.4.0/cpp-client-api/search/functions_1.html
new file mode 100644
index 0000000..648831f
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/functions_1.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_1.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/functions_1.js b/releases/1.4.0/cpp-client-api/search/functions_1.js
new file mode 100644
index 0000000..477ae88
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/functions_1.js
@@ -0,0 +1,6 @@
+var searchData=
+[
+  ['begin',['begin',['../classkudu_1_1client_1_1KuduScanBatch.html#a30f55cf8f3c9d6fcb47537e586d82e9f',1,'kudu::client::KuduScanBatch']]],
+  ['blocksize',['BlockSize',['../classkudu_1_1client_1_1KuduColumnSpec.html#a8502dd68c6743c7c66b2b6a02d41a4e6',1,'kudu::client::KuduColumnSpec']]],
+  ['build',['Build',['../classkudu_1_1client_1_1KuduClientBuilder.html#a1585dd6eff82519fe81088d1cfd35b77',1,'kudu::client::KuduClientBuilder::Build()'],['../classkudu_1_1client_1_1KuduScanTokenBuilder.html#acbc00b42db998f3342fa0ca7ab55dfdb',1,'kudu::client::KuduScanTokenBuilder::Build()'],['../classkudu_1_1client_1_1KuduPartitionerBuilder.html#aa8859050484de2d367781ce6ec41d0ba',1,'kudu::client::KuduPartitionerBuilder::Build()'],['../classkudu_1_1client_1_1KuduSchemaBuilder.html#af117e347a7d0910dda2695997859db15',1,'kudu::client::KuduSchemaBuilder::Build()']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/functions_10.html b/releases/1.4.0/cpp-client-api/search/functions_10.html
new file mode 100644
index 0000000..8bc4de4
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/functions_10.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_10.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/functions_10.js b/releases/1.4.0/cpp-client-api/search/functions_10.js
new file mode 100644
index 0000000..1be0e26
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/functions_10.js
@@ -0,0 +1,35 @@
+var searchData=
+[
+  ['schema',['schema',['../classkudu_1_1client_1_1KuduTableCreator.html#a38a83cf0e856ebaf4a5afe8c4a1d06f7',1,'kudu::client::KuduTableCreator::schema()'],['../classkudu_1_1client_1_1KuduTable.html#a4482e54a05c5b61b2bddc8c5297973fd',1,'kudu::client::KuduTable::schema()'],['../classKuduPartialRow.html#a33abfa2504b7e6323cdbba22ad346023',1,'KuduPartialRow::schema()']]],
+  ['serialize',['Serialize',['../classkudu_1_1client_1_1KuduScanToken.html#a6eb749ddf0a1434596d86df88341a008',1,'kudu::client::KuduScanToken']]],
+  ['set_5frange_5fpartition_5fcolumns',['set_range_partition_columns',['../classkudu_1_1client_1_1KuduTableCreator.html#a482701285b7a071dd56f04df480bc7c3',1,'kudu::client::KuduTableCreator']]],
+  ['setbatchsizebytes',['SetBatchSizeBytes',['../classkudu_1_1client_1_1KuduScanner.html#af82c4ccb442c222033841dd65cf5a67c',1,'kudu::client::KuduScanner::SetBatchSizeBytes()'],['../classkudu_1_1client_1_1KuduScanTokenBuilder.html#a36523ca7f2f9a2b4e3c096cf6167643c',1,'kudu::client::KuduScanTokenBuilder::SetBatchSizeBytes()']]],
+  ['setbuildtimeout',['SetBuildTimeout',['../classkudu_1_1client_1_1KuduPartitionerBuilder.html#a11e28b7ad87a53a92d2ad5494f2c5f14',1,'kudu::client::KuduPartitionerBuilder']]],
+  ['setcacheblocks',['SetCacheBlocks',['../classkudu_1_1client_1_1KuduScanner.html#a4a4a2e354b3113561758b9bf4095d310',1,'kudu::client::KuduScanner::SetCacheBlocks()'],['../classkudu_1_1client_1_1KuduScanTokenBuilder.html#a7ab7c9c1c4f4d3bbbc18b2b35d7d5475',1,'kudu::client::KuduScanTokenBuilder::SetCacheBlocks()']]],
+  ['seterrorbufferspace',['SetErrorBufferSpace',['../classkudu_1_1client_1_1KuduSession.html#af1c5e5e8faba286cddc266057e9a82d5',1,'kudu::client::KuduSession']]],
+  ['setexternalconsistencymode',['SetExternalConsistencyMode',['../classkudu_1_1client_1_1KuduSession.html#a56d1c7f47dfcaf5121b15a4435a8eeca',1,'kudu::client::KuduSession']]],
+  ['setfaulttolerant',['SetFaultTolerant',['../classkudu_1_1client_1_1KuduScanner.html#a107a8a682c0977272e0ae47746d39e6f',1,'kudu::client::KuduScanner::SetFaultTolerant()'],['../classkudu_1_1client_1_1KuduScanTokenBuilder.html#a4a17f27950ccd59bcb3430fb28b61dbe',1,'kudu::client::KuduScanTokenBuilder::SetFaultTolerant()']]],
+  ['setflushmode',['SetFlushMode',['../classkudu_1_1client_1_1KuduSession.html#a83555781b5a037f87c215e565ecf1a8f',1,'kudu::client::KuduSession']]],
+  ['setlatestobservedtimestamp',['SetLatestObservedTimestamp',['../classkudu_1_1client_1_1KuduClient.html#a0809b055eda76fd68988462f2a9791dd',1,'kudu::client::KuduClient']]],
+  ['setmutationbufferflushinterval',['SetMutationBufferFlushInterval',['../classkudu_1_1client_1_1KuduSession.html#aabe75f0688f992dbdb2694a50d07f941',1,'kudu::client::KuduSession']]],
+  ['setmutationbufferflushwatermark',['SetMutationBufferFlushWatermark',['../classkudu_1_1client_1_1KuduSession.html#a7311344cec37b3847217197c35467cdf',1,'kudu::client::KuduSession']]],
+  ['setmutationbuffermaxnum',['SetMutationBufferMaxNum',['../classkudu_1_1client_1_1KuduSession.html#ac9a96017f86bfb6348fca9bfa0b8b5a4',1,'kudu::client::KuduSession']]],
+  ['setmutationbufferspace',['SetMutationBufferSpace',['../classkudu_1_1client_1_1KuduSession.html#aefa9bbc51c27104ce103b9ecda3b8abf',1,'kudu::client::KuduSession']]],
+  ['setnull',['SetNull',['../classKuduPartialRow.html#aedbcf22d41791c5ae28e978eb9054cc5',1,'KuduPartialRow::SetNull(const Slice &amp;col_name) WARN_UNUSED_RESULT'],['../classKuduPartialRow.html#abeaa8d438650b7796e30e9865bb83d2f',1,'KuduPartialRow::SetNull(int col_idx) WARN_UNUSED_RESULT']]],
+  ['setordermode',['SetOrderMode',['../classkudu_1_1client_1_1KuduScanner.html#a93a87740ea75c9b6524dc229576b69fc',1,'kudu::client::KuduScanner']]],
+  ['setprimarykey',['SetPrimaryKey',['../classkudu_1_1client_1_1KuduSchemaBuilder.html#ad4c1619445fea575a775f23752b6bfb9',1,'kudu::client::KuduSchemaBuilder']]],
+  ['setprojectedcolumnindexes',['SetProjectedColumnIndexes',['../classkudu_1_1client_1_1KuduScanner.html#a8d938c6efc1b36d456c91b5af0b1578d',1,'kudu::client::KuduScanner::SetProjectedColumnIndexes()'],['../classkudu_1_1client_1_1KuduScanTokenBuilder.html#a01d990e024632c7749cca96b4f857be8',1,'kudu::client::KuduScanTokenBuilder::SetProjectedColumnIndexes()']]],
+  ['setprojectedcolumnnames',['SetProjectedColumnNames',['../classkudu_1_1client_1_1KuduScanner.html#abb10b26056757bf81c410d3d5e6bcc01',1,'kudu::client::KuduScanner::SetProjectedColumnNames()'],['../classkudu_1_1client_1_1KuduScanTokenBuilder.html#a0dbb58301fc0e48ce44f41215d32f0ad',1,'kudu::client::KuduScanTokenBuilder::SetProjectedColumnNames()']]],
+  ['setprojectedcolumns',['SetProjectedColumns',['../classkudu_1_1client_1_1KuduScanner.html#a68e2115cde71e113674e7a8b4df399ad',1,'kudu::client::KuduScanner']]],
+  ['setreadmode',['SetReadMode',['../classkudu_1_1client_1_1KuduScanner.html#a248e0a05e7bfdc31b5b8d363a937e81e',1,'kudu::client::KuduScanner::SetReadMode()'],['../classkudu_1_1client_1_1KuduScanTokenBuilder.html#adb34f01a9bc52a9e23ce49124bab3892',1,'kudu::client::KuduScanTokenBuilder::SetReadMode()']]],
+  ['setrowformatflags',['SetRowFormatFlags',['../classkudu_1_1client_1_1KuduScanner.html#a3dbaf4c2db6a37517a242dcb8ee64c11',1,'kudu::client::KuduScanner']]],
+  ['setselection',['SetSelection',['../classkudu_1_1client_1_1KuduScanner.html#af1db3f372fe3d0f30cd0b6a36b783cc8',1,'kudu::client::KuduScanner::SetSelection()'],['../classkudu_1_1client_1_1KuduScanTokenBuilder.html#a168bfed43dcd754a17d4c82293dade88',1,'kudu::client::KuduScanTokenBuilder::SetSelection()']]],
+  ['setsnapshotmicros',['SetSnapshotMicros',['../classkudu_1_1client_1_1KuduScanner.html#a5b36a405daf09399438d5501b25b9f9f',1,'kudu::client::KuduScanner::SetSnapshotMicros()'],['../classkudu_1_1client_1_1KuduScanTokenBuilder.html#aa4c1cfa570edfaab818831a2330eece5',1,'kudu::client::KuduScanTokenBuilder::SetSnapshotMicros()']]],
+  ['setsnapshotraw',['SetSnapshotRaw',['../classkudu_1_1client_1_1KuduScanner.html#ab13dbb301197b411dec4cd6870801bae',1,'kudu::client::KuduScanner::SetSnapshotRaw()'],['../classkudu_1_1client_1_1KuduScanTokenBuilder.html#a313e345dc6c1f9ccdad65df5af2cf4b7',1,'kudu::client::KuduScanTokenBuilder::SetSnapshotRaw()']]],
+  ['settimeoutmillis',['SetTimeoutMillis',['../classkudu_1_1client_1_1KuduSession.html#a25b22362650d7120f59cc1025e40bd79',1,'kudu::client::KuduSession::SetTimeoutMillis()'],['../classkudu_1_1client_1_1KuduScanner.html#a97c9f5e6a1056484c88ced411e19bee6',1,'kudu::client::KuduScanner::SetTimeoutMillis()'],['../classkudu_1_1client_1_1KuduScanTokenBuilder.html#a0f0e58d5d6fb3867ff0a03f7fc633445',1,'kudu::client::KuduScanTokenBuilder::SetTimeoutMillis()']]],
+  ['size',['size',['../classkudu_1_1Slice.html#a141b4a1fc0555d57f192e574e427c146',1,'kudu::Slice']]],
+  ['slice',['Slice',['../classkudu_1_1Slice.html#aaee66c59ee434349680679bdf0462b66',1,'kudu::Slice::Slice()'],['../classkudu_1_1Slice.html#a904b8732b247676c52cbd9147b34c54c',1,'kudu::Slice::Slice(const uint8_t *d, size_t n)'],['../classkudu_1_1Slice.html#a9cb396203dd2c589e7d4f10bd80461d5',1,'kudu::Slice::Slice(const char *d, size_t n)'],['../classkudu_1_1Slice.html#a13838e07b6dcea1895a774ab1ba62bdd',1,'kudu::Slice::Slice(const std::string &amp;s)'],['../classkudu_1_1Slice.html#ae8c6057eea15f8136e62255fd766e345',1,'kudu::Slice::Slice(const char *s)']]],
+  ['split_5frows',['split_rows',['../classkudu_1_1client_1_1KuduTableCreator.html#ae12cc7c72da40f25b079273a6169faf9',1,'kudu::client::KuduTableCreator']]],
+  ['starts_5fwith',['starts_with',['../classkudu_1_1Slice.html#a3ad7697d76b8205099d43ca552c12b8d',1,'kudu::Slice']]],
+  ['status',['status',['../classkudu_1_1client_1_1KuduError.html#abd5c5cd46255c8587a5562aec197077c',1,'kudu::client::KuduError::status()'],['../classkudu_1_1Status.html#ad14eb530b3449967ee976aaa1c0bcde0',1,'kudu::Status::Status()'],['../classkudu_1_1Status.html#affca5639a3341212bb23ae7f5c701803',1,'kudu::Status::Status(const Status &amp;s)']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/functions_11.html b/releases/1.4.0/cpp-client-api/search/functions_11.html
new file mode 100644
index 0000000..e1e427c
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/functions_11.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_11.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/functions_11.js b/releases/1.4.0/cpp-client-api/search/functions_11.js
new file mode 100644
index 0000000..cff5ec1
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/functions_11.js
@@ -0,0 +1,15 @@
+var searchData=
+[
+  ['table_5fname',['table_name',['../classkudu_1_1client_1_1KuduTableCreator.html#a15126b62437fc1741b41249080376f93',1,'kudu::client::KuduTableCreator']]],
+  ['tableexists',['TableExists',['../classkudu_1_1client_1_1KuduClient.html#a96e9a6c0a16a8825c291528ac27af818',1,'kudu::client::KuduClient']]],
+  ['tablet',['tablet',['../classkudu_1_1client_1_1KuduScanToken.html#a6513d5a02c745177d63d807de54aa301',1,'kudu::client::KuduScanToken']]],
+  ['timeout',['timeout',['../classkudu_1_1client_1_1KuduTableCreator.html#a52855857927fe1a08fbd4c81e746c235',1,'kudu::client::KuduTableCreator::timeout()'],['../classkudu_1_1client_1_1KuduTableAlterer.html#add2961a41c37a6b0fd869e0f553a04a1',1,'kudu::client::KuduTableAlterer::timeout()']]],
+  ['todebugstring',['ToDebugString',['../classkudu_1_1Slice.html#a412d632121ba52444d891c7a4f31dd42',1,'kudu::Slice']]],
+  ['toencodedrowkeyordie',['ToEncodedRowKeyOrDie',['../classKuduPartialRow.html#ae76fac9268c7baa2cbcb8ccd2b22f49a',1,'KuduPartialRow']]],
+  ['tostring',['ToString',['../classkudu_1_1client_1_1KuduScanner.html#aea36ffb783be3ffdf370cd7399f232d3',1,'kudu::client::KuduScanner::ToString()'],['../classkudu_1_1client_1_1KuduScanBatch.html#a57ebd850adefa8af87f815540d890a34',1,'kudu::client::KuduScanBatch::ToString()'],['../classkudu_1_1client_1_1KuduColumnStorageAttributes.html#ac41bdd2fadff633e94b514ad1465fa44',1,'kudu::client::KuduColumnStorageAttributes::ToString()'],['../classkudu_1_1client_1_1KuduWriteOperation.html#a50b5405c4dfc7af038daa4780aea6e19',1,'kudu::client::KuduWriteOperation::ToString()'],['../classkudu_1_1client_1_1KuduInsert.html#a7c0fb45a5bfa96574b6328be392ba240',1,'kudu::client::KuduInsert::ToString()'],['../classkudu_1_1client_1_1KuduUpsert.html#a0608280ef5b4eb2a53c0b303db7401c8',1,'kudu::client::KuduUpsert::ToString()'],['../classkudu_1_1client_1_1KuduUpdate.html#af05d202ea529554b6d033d51ec942718',1,'kudu::client::KuduUpdate::ToString()'],['../classkudu_1_1client_1_1KuduDelete.html#a586dc46e1d10118465e3b834ac578de0',1,'kudu::client::KuduDelete::ToString()'],['../classKuduPartialRow.html#a998461fed88b566d159c2a3062353aa9',1,'KuduPartialRow::ToString()'],['../classkudu_1_1MonoDelta.html#a85141ae2fb1820cef6c7ab0f0305e1af',1,'kudu::MonoDelta::ToString()'],['../classkudu_1_1MonoTime.html#a47cd514149a06d1fbf2d10d08ef29957',1,'kudu::MonoTime::ToString()'],['../classkudu_1_1Slice.html#a730a4e2cdf7d40818fa95c164a18d381',1,'kudu::Slice::ToString()'],['../classkudu_1_1Status.html#ab10872bd6ee01ee1b93a351fd0c1b104',1,'kudu::Status::ToString()']]],
+  ['totimespec',['ToTimeSpec',['../classkudu_1_1MonoDelta.html#af72679c7dcec94a486b91e92aa3cb4b4',1,'kudu::MonoDelta']]],
+  ['totimeval',['ToTimeVal',['../classkudu_1_1MonoDelta.html#af154577344dbba2afa5438872fc3ebd6',1,'kudu::MonoDelta']]],
+  ['truncate',['truncate',['../classkudu_1_1Slice.html#a20f1c8e91ff0209e5c8f86766ef63d44',1,'kudu::Slice']]],
+  ['ts',['ts',['../classkudu_1_1client_1_1KuduReplica.html#ad7081012fda917ece3e149a20318288a',1,'kudu::client::KuduReplica']]],
+  ['type',['type',['../classkudu_1_1client_1_1KuduColumnSchema.html#a138fb61c6f39afbd2696642216486e56',1,'kudu::client::KuduColumnSchema::type()'],['../classkudu_1_1client_1_1KuduColumnSpec.html#a67e794a08387e17ba430d6942419a2c2',1,'kudu::client::KuduColumnSpec::Type()']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/functions_12.html b/releases/1.4.0/cpp-client-api/search/functions_12.html
new file mode 100644
index 0000000..8dac9d2
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/functions_12.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_12.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/functions_12.js b/releases/1.4.0/cpp-client-api/search/functions_12.js
new file mode 100644
index 0000000..3afffcd
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/functions_12.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+  ['unset',['Unset',['../classKuduPartialRow.html#adccabf294832ba33fce80a72992f6e23',1,'KuduPartialRow::Unset(const Slice &amp;col_name) WARN_UNUSED_RESULT'],['../classKuduPartialRow.html#a8f65b552d35d23e6fc494cb1f6dcd394',1,'KuduPartialRow::Unset(int col_idx) WARN_UNUSED_RESULT']]],
+  ['uuid',['uuid',['../classkudu_1_1client_1_1KuduTabletServer.html#aacee61a6644f332b466718df00903137',1,'kudu::client::KuduTabletServer']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/functions_13.html b/releases/1.4.0/cpp-client-api/search/functions_13.html
new file mode 100644
index 0000000..5422011
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/functions_13.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_13.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/functions_13.js b/releases/1.4.0/cpp-client-api/search/functions_13.js
new file mode 100644
index 0000000..39b0e8a
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/functions_13.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+  ['wait',['wait',['../classkudu_1_1client_1_1KuduTableCreator.html#a48f9e977356c37666106f303100198d9',1,'kudu::client::KuduTableCreator::wait()'],['../classkudu_1_1client_1_1KuduTableAlterer.html#a86e6d55d0888d4bc99789b1dcd0e5646',1,'kudu::client::KuduTableAlterer::wait()']]],
+  ['was_5fpossibly_5fsuccessful',['was_possibly_successful',['../classkudu_1_1client_1_1KuduError.html#a178b3cee942e4fbbe21fef859c8da3aa',1,'kudu::client::KuduError']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/functions_2.html b/releases/1.4.0/cpp-client-api/search/functions_2.html
new file mode 100644
index 0000000..c93d089
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/functions_2.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_2.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/functions_2.js b/releases/1.4.0/cpp-client-api/search/functions_2.js
new file mode 100644
index 0000000..7d2c160
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/functions_2.js
@@ -0,0 +1,23 @@
+var searchData=
+[
+  ['cell',['cell',['../classkudu_1_1client_1_1KuduScanBatch.html#ae07d3fd8616c5c69cc0a4ef3d247bf2c',1,'kudu::client::KuduScanBatch']]],
+  ['cerrlog',['CerrLog',['../classkudu_1_1internal__logging_1_1CerrLog.html#ac3773ad2825d82f91ea65109f2def713',1,'kudu::internal_logging::CerrLog']]],
+  ['check_5fsize',['check_size',['../classkudu_1_1Slice.html#a069b48816f49b29abbd291a09dd21f4e',1,'kudu::Slice']]],
+  ['clear',['clear',['../classkudu_1_1Slice.html#afb914c0769f019a7c2f28b755cba5eb5',1,'kudu::Slice']]],
+  ['clear_5fmaster_5fserver_5faddrs',['clear_master_server_addrs',['../classkudu_1_1client_1_1KuduClientBuilder.html#a08f4d2bf7053c6336e625ee2e6eeddd1',1,'kudu::client::KuduClientBuilder']]],
+  ['client',['client',['../classkudu_1_1client_1_1KuduTable.html#a08836bfb79f6f91e7f235712ea271d35',1,'kudu::client::KuduTable::client()'],['../classkudu_1_1client_1_1KuduSession.html#a4ed0bac1edcbba612d7de41e8c8adfd5',1,'kudu::client::KuduSession::client()']]],
+  ['clone',['Clone',['../classkudu_1_1client_1_1KuduPredicate.html#a48eae317f4365f10cdf32bcde560da7c',1,'kudu::client::KuduPredicate::Clone()'],['../classkudu_1_1client_1_1KuduValue.html#a9925b62808b608aa367ac44d2552c6a3',1,'kudu::client::KuduValue::Clone()']]],
+  ['cloneandappend',['CloneAndAppend',['../classkudu_1_1Status.html#a67d1309561f0064e1bda0fbd0d1aaabb',1,'kudu::Status']]],
+  ['cloneandprepend',['CloneAndPrepend',['../classkudu_1_1Status.html#acb46c72bc79ef8178696b83a01014b9e',1,'kudu::Status']]],
+  ['close',['Close',['../classkudu_1_1client_1_1KuduSession.html#aa5204844e361ecc3068fbc4e02fd4436',1,'kudu::client::KuduSession::Close()'],['../classkudu_1_1client_1_1KuduScanner.html#ac673dd15cb038e75787af7e74087e874',1,'kudu::client::KuduScanner::Close()']]],
+  ['codeasstring',['CodeAsString',['../classkudu_1_1Status.html#aa5bc607c51a4e9e3c461aad27db409c3',1,'kudu::Status']]],
+  ['column',['Column',['../classkudu_1_1client_1_1KuduSchema.html#afe784e7c95d85391246a9b4745fed00b',1,'kudu::client::KuduSchema']]],
+  ['comesbefore',['ComesBefore',['../classkudu_1_1MonoTime.html#a20b322e3ce700c15445943ec02255623',1,'kudu::MonoTime']]],
+  ['compare',['compare',['../classkudu_1_1Slice.html#a0ecc8d893b73a664c69396ad30b14d98',1,'kudu::Slice']]],
+  ['compression',['compression',['../classkudu_1_1client_1_1KuduColumnStorageAttributes.html#a00ef1e67c5fdd537d35f102748b1ad9d',1,'kudu::client::KuduColumnStorageAttributes::compression()'],['../classkudu_1_1client_1_1KuduColumnSpec.html#ad9ed2e008ee926ee50c23e664d854e8b',1,'kudu::client::KuduColumnSpec::Compression()']]],
+  ['copyfrom',['CopyFrom',['../classkudu_1_1client_1_1KuduColumnSchema.html#a11234db43eb8b758a65ba1b08f6b65b0',1,'kudu::client::KuduColumnSchema']]],
+  ['copystring',['CopyString',['../classkudu_1_1client_1_1KuduValue.html#a886211bbe237e0009fb9b89c146f4bfe',1,'kudu::client::KuduValue']]],
+  ['countbufferedoperations',['CountBufferedOperations',['../classkudu_1_1client_1_1KuduSession.html#af6249cf3bbad8e2e11e54edf40a7bc1d',1,'kudu::client::KuduSession']]],
+  ['countpendingerrors',['CountPendingErrors',['../classkudu_1_1client_1_1KuduSession.html#a277c213a68679c6b0d5c432919eb9198',1,'kudu::client::KuduSession']]],
+  ['create',['Create',['../classkudu_1_1client_1_1KuduTableCreator.html#a30efad5c256dae0af7bb43599403b1cc',1,'kudu::client::KuduTableCreator']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/functions_3.html b/releases/1.4.0/cpp-client-api/search/functions_3.html
new file mode 100644
index 0000000..caa48ea
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/functions_3.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_3.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/functions_3.js b/releases/1.4.0/cpp-client-api/search/functions_3.js
new file mode 100644
index 0000000..233927c
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/functions_3.js
@@ -0,0 +1,13 @@
+var searchData=
+[
+  ['data',['data',['../classkudu_1_1Slice.html#a2d90a4590b995fb55229d25effb0c5bb',1,'kudu::Slice']]],
+  ['datatypetostring',['DataTypeToString',['../classkudu_1_1client_1_1KuduColumnSchema.html#af362af4f9c937c2b7fa90ef284cfbd1c',1,'kudu::client::KuduColumnSchema']]],
+  ['default',['Default',['../classkudu_1_1client_1_1KuduColumnSpec.html#a92c63c0e1872c03fcabeac19d802f6c7',1,'kudu::client::KuduColumnSpec']]],
+  ['default_5fadmin_5foperation_5ftimeout',['default_admin_operation_timeout',['../classkudu_1_1client_1_1KuduClientBuilder.html#a6114bb56e4d9d1231df0ef73c9aec752',1,'kudu::client::KuduClientBuilder::default_admin_operation_timeout()'],['../classkudu_1_1client_1_1KuduClient.html#aacfcd61c7cc1bf7817d1aa0bb738414f',1,'kudu::client::KuduClient::default_admin_operation_timeout()']]],
+  ['default_5frpc_5ftimeout',['default_rpc_timeout',['../classkudu_1_1client_1_1KuduClientBuilder.html#a1813e8c8d24e92a0a710724000e2b3df',1,'kudu::client::KuduClientBuilder::default_rpc_timeout()'],['../classkudu_1_1client_1_1KuduClient.html#a2d0e8397e979e651a23eb240513a5556',1,'kudu::client::KuduClient::default_rpc_timeout()']]],
+  ['deletetable',['DeleteTable',['../classkudu_1_1client_1_1KuduClient.html#a9d7cbad036bc74c71873a428abce5c1d',1,'kudu::client::KuduClient']]],
+  ['deserializeintoscanner',['DeserializeIntoScanner',['../classkudu_1_1client_1_1KuduScanToken.html#ae90d9422476cf6eee5c33afb41d1f867',1,'kudu::client::KuduScanToken']]],
+  ['direct_5fdata',['direct_data',['../classkudu_1_1client_1_1KuduScanBatch.html#a1073a0c6517b126690d99527556dba51',1,'kudu::client::KuduScanBatch']]],
+  ['dropcolumn',['DropColumn',['../classkudu_1_1client_1_1KuduTableAlterer.html#ac5a4ec376ec53ba912b85ea0057d10a7',1,'kudu::client::KuduTableAlterer']]],
+  ['droprangepartition',['DropRangePartition',['../classkudu_1_1client_1_1KuduTableAlterer.html#ab0f8abf78d35725198876aaa04b737a7',1,'kudu::client::KuduTableAlterer']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/functions_4.html b/releases/1.4.0/cpp-client-api/search/functions_4.html
new file mode 100644
index 0000000..a9c64ad
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/functions_4.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_4.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/functions_4.js b/releases/1.4.0/cpp-client-api/search/functions_4.js
new file mode 100644
index 0000000..fc936d5
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/functions_4.js
@@ -0,0 +1,10 @@
+var searchData=
+[
+  ['earliest',['Earliest',['../classkudu_1_1MonoTime.html#aa553eb3e11cae70a9ee8839a39fc7a14',1,'kudu::MonoTime']]],
+  ['empty',['empty',['../classkudu_1_1Slice.html#a79e41b882b0a85259be89f5698e27372',1,'kudu::Slice']]],
+  ['encoderowkey',['EncodeRowKey',['../classKuduPartialRow.html#a2721dc18b29237db90a1cda779942533',1,'KuduPartialRow']]],
+  ['encoding',['encoding',['../classkudu_1_1client_1_1KuduColumnStorageAttributes.html#acd93d52b48be7d87a0d3fd4500048f2e',1,'kudu::client::KuduColumnStorageAttributes::encoding()'],['../classkudu_1_1client_1_1KuduColumnSpec.html#ae0ceeb41ac1427c2472a2f28778b6e97',1,'kudu::client::KuduColumnSpec::Encoding()']]],
+  ['end',['end',['../classkudu_1_1client_1_1KuduScanBatch.html#ad30dcfafb276b5347842882cf68cb522',1,'kudu::client::KuduScanBatch']]],
+  ['equals',['Equals',['../classkudu_1_1client_1_1KuduColumnSchema.html#a9f0b1346b66394d7372e401c8eb5458a',1,'kudu::client::KuduColumnSchema::Equals()'],['../classkudu_1_1client_1_1KuduSchema.html#a3d9bc062492e472a2055841461b2a87f',1,'kudu::client::KuduSchema::Equals()'],['../classkudu_1_1MonoDelta.html#a3d139854a8baaa7c59b3e5d59aba95bc',1,'kudu::MonoDelta::Equals()'],['../classkudu_1_1MonoTime.html#a25f2816574ca7f424b79644e30774818',1,'kudu::MonoTime::Equals()']]],
+  ['exportauthenticationcredentials',['ExportAuthenticationCredentials',['../classkudu_1_1client_1_1KuduClient.html#a974b491e5d0864f4aa3f60347fa1b62e',1,'kudu::client::KuduClient']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/functions_5.html b/releases/1.4.0/cpp-client-api/search/functions_5.html
new file mode 100644
index 0000000..9d135fa
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/functions_5.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_5.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/functions_5.js b/releases/1.4.0/cpp-client-api/search/functions_5.js
new file mode 100644
index 0000000..e415212
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/functions_5.js
@@ -0,0 +1,6 @@
+var searchData=
+[
+  ['failed_5fop',['failed_op',['../classkudu_1_1client_1_1KuduError.html#aaa1558d1db19ae85cf8ce1979b3e538a',1,'kudu::client::KuduError']]],
+  ['flush',['Flush',['../classkudu_1_1client_1_1KuduSession.html#a64955abb5f5cc821b6e56354f733ce84',1,'kudu::client::KuduSession']]],
+  ['flushasync',['FlushAsync',['../classkudu_1_1client_1_1KuduSession.html#ad8c68570479e95b325d8a5437eef8731',1,'kudu::client::KuduSession']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/functions_6.html b/releases/1.4.0/cpp-client-api/search/functions_6.html
new file mode 100644
index 0000000..5fca897
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/functions_6.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_6.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/functions_6.js b/releases/1.4.0/cpp-client-api/search/functions_6.js
new file mode 100644
index 0000000..36fd199
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/functions_6.js
@@ -0,0 +1,13 @@
+var searchData=
+[
+  ['get',['Get',['../classkudu_1_1client_1_1ResourceMetrics.html#a1161841400ff4fcee5f2a278813e2db2',1,'kudu::client::ResourceMetrics']]],
+  ['getcurrentserver',['GetCurrentServer',['../classkudu_1_1client_1_1KuduScanner.html#ac2bce7bd17627a3aa46f7d7fdb4c0c10',1,'kudu::client::KuduScanner']]],
+  ['getdeltasince',['GetDeltaSince',['../classkudu_1_1MonoTime.html#ae1a49263c54563ea72ea10033ab8ccdb',1,'kudu::MonoTime']]],
+  ['getlatestobservedtimestamp',['GetLatestObservedTimestamp',['../classkudu_1_1client_1_1KuduClient.html#a3a671b3540c74ef7c358bb98e95031e0',1,'kudu::client::KuduClient']]],
+  ['getmetric',['GetMetric',['../classkudu_1_1client_1_1ResourceMetrics.html#a21818e1e42dcc0f7abcdc80c5487b1da',1,'kudu::client::ResourceMetrics']]],
+  ['getpendingerrors',['GetPendingErrors',['../classkudu_1_1client_1_1KuduSession.html#ad5e3521623338de49cfd62914bdcb2f7',1,'kudu::client::KuduSession']]],
+  ['getprimarykeycolumnindexes',['GetPrimaryKeyColumnIndexes',['../classkudu_1_1client_1_1KuduSchema.html#a192b707f348178b698070d3a88a4d156',1,'kudu::client::KuduSchema']]],
+  ['getprojectionschema',['GetProjectionSchema',['../classkudu_1_1client_1_1KuduScanner.html#a7fad1430b8e1d4caf0614f690fa2666f',1,'kudu::client::KuduScanner']]],
+  ['getresourcemetrics',['GetResourceMetrics',['../classkudu_1_1client_1_1KuduScanner.html#a640d0d9de62587b29afbec22b7c6b628',1,'kudu::client::KuduScanner']]],
+  ['gettableschema',['GetTableSchema',['../classkudu_1_1client_1_1KuduClient.html#a2aa649e05e0cfb0e10ebce98fb4d7a65',1,'kudu::client::KuduClient']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/functions_7.html b/releases/1.4.0/cpp-client-api/search/functions_7.html
new file mode 100644
index 0000000..02631a3
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/functions_7.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_7.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/functions_7.js b/releases/1.4.0/cpp-client-api/search/functions_7.js
new file mode 100644
index 0000000..247d77d
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/functions_7.js
@@ -0,0 +1,6 @@
+var searchData=
+[
+  ['hasmorerows',['HasMoreRows',['../classkudu_1_1client_1_1KuduScanner.html#ab04c2012970498590d2d2034d6a44d34',1,'kudu::client::KuduScanner']]],
+  ['haspendingoperations',['HasPendingOperations',['../classkudu_1_1client_1_1KuduSession.html#a3f224e9b95f86da7e1f2ea6fcf327756',1,'kudu::client::KuduSession']]],
+  ['hostname',['hostname',['../classkudu_1_1client_1_1KuduTabletServer.html#a24267a240220ed35ffe2b830899edb14',1,'kudu::client::KuduTabletServer']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/functions_8.html b/releases/1.4.0/cpp-client-api/search/functions_8.html
new file mode 100644
index 0000000..ff37095
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/functions_8.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_8.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/functions_8.js b/releases/1.4.0/cpp-client-api/search/functions_8.js
new file mode 100644
index 0000000..5462f1a
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/functions_8.js
@@ -0,0 +1,35 @@
+var searchData=
+[
+  ['id',['id',['../classkudu_1_1client_1_1KuduTablet.html#ae1fc886aa1c72ba64e6ecd05e04a0e31',1,'kudu::client::KuduTablet::id()'],['../classkudu_1_1client_1_1KuduTable.html#a185ff8f18b9bea6b41d6f4cf8dfa1377',1,'kudu::client::KuduTable::id()']]],
+  ['import_5fauthentication_5fcredentials',['import_authentication_credentials',['../classkudu_1_1client_1_1KuduClientBuilder.html#a5c411bc4638cbf77e5d318f5049b0b7e',1,'kudu::client::KuduClientBuilder']]],
+  ['increment',['Increment',['../classkudu_1_1client_1_1ResourceMetrics.html#ae7b5f6021f63c25bbd087ba2cf48dc8a',1,'kudu::client::ResourceMetrics']]],
+  ['indirect_5fdata',['indirect_data',['../classkudu_1_1client_1_1KuduScanBatch.html#af41b26a5f137122454d6341a5b5c1a43',1,'kudu::client::KuduScanBatch']]],
+  ['initialized',['Initialized',['../classkudu_1_1MonoDelta.html#aad3a0f1a1fc2e504ff137e55cfe068a3',1,'kudu::MonoDelta::Initialized()'],['../classkudu_1_1MonoTime.html#a4ba08bf71a2496672338522952301926',1,'kudu::MonoTime::Initialized()']]],
+  ['intokuduscanner',['IntoKuduScanner',['../classkudu_1_1client_1_1KuduScanToken.html#adb95c9538bb1fc4c83963557ce487292',1,'kudu::client::KuduScanToken']]],
+  ['is_5fleader',['is_leader',['../classkudu_1_1client_1_1KuduReplica.html#a5e380e1e7f2154b61269737d65dd2649',1,'kudu::client::KuduReplica']]],
+  ['is_5fnullable',['is_nullable',['../classkudu_1_1client_1_1KuduColumnSchema.html#a45ea4feefa1c69b1ec6bc5f0316ed7ec',1,'kudu::client::KuduColumnSchema']]],
+  ['isaborted',['IsAborted',['../classkudu_1_1Status.html#ad4fe06882fdfb2a040e4d7d10363ca0a',1,'kudu::Status']]],
+  ['isalreadypresent',['IsAlreadyPresent',['../classkudu_1_1Status.html#ab9e4ddf4c48889f365c6d359ae560e1c',1,'kudu::Status']]],
+  ['isaltertableinprogress',['IsAlterTableInProgress',['../classkudu_1_1client_1_1KuduClient.html#a7a331e528759296089837b4611c01809',1,'kudu::client::KuduClient']]],
+  ['iscolumnset',['IsColumnSet',['../classKuduPartialRow.html#a592d2ee5fb13a710fcd675cc675f2193',1,'KuduPartialRow::IsColumnSet(const Slice &amp;col_name) const '],['../classKuduPartialRow.html#aa53b99d14bb61a010c4857cad17bb8ff',1,'KuduPartialRow::IsColumnSet(int col_idx) const ']]],
+  ['isconfigurationerror',['IsConfigurationError',['../classkudu_1_1Status.html#a8d31d26943101023125666bbbea002e3',1,'kudu::Status']]],
+  ['iscorruption',['IsCorruption',['../classkudu_1_1Status.html#a36fa7d6fc0cd9ab1f9ad48e4a7614bc9',1,'kudu::Status']]],
+  ['iscreatetableinprogress',['IsCreateTableInProgress',['../classkudu_1_1client_1_1KuduClient.html#a2f0323b439d8658b2ac31fde7f46de63',1,'kudu::client::KuduClient']]],
+  ['isendoffile',['IsEndOfFile',['../classkudu_1_1Status.html#adead843ea27f50252f561c995c97b2e6',1,'kudu::Status']]],
+  ['isillegalstate',['IsIllegalState',['../classkudu_1_1Status.html#a75e5cf90718eea9654c7e58546ea1aa2',1,'kudu::Status']]],
+  ['isincomplete',['IsIncomplete',['../classkudu_1_1Status.html#af68a02f8069b1a8670fcc1b7acd869b9',1,'kudu::Status']]],
+  ['isinvalidargument',['IsInvalidArgument',['../classkudu_1_1Status.html#a56e991c78f5a4aed32b97fbeccf13c2c',1,'kudu::Status']]],
+  ['isioerror',['IsIOError',['../classkudu_1_1Status.html#a991a91d7c07ffa41e6802a12f34d1acf',1,'kudu::Status']]],
+  ['iskeyset',['IsKeySet',['../classKuduPartialRow.html#a8e51d3b848636aabe561e3e66b9470e8',1,'KuduPartialRow']]],
+  ['ismultimaster',['IsMultiMaster',['../classkudu_1_1client_1_1KuduClient.html#a6f52dff0717d6e96863aff068bfb3795',1,'kudu::client::KuduClient']]],
+  ['isnetworkerror',['IsNetworkError',['../classkudu_1_1Status.html#a70c83ddb5b234e814db84dfbbb751d0c',1,'kudu::Status']]],
+  ['isnotauthorized',['IsNotAuthorized',['../classkudu_1_1Status.html#aef9c22bc13669be3e2289844ec916244',1,'kudu::Status']]],
+  ['isnotfound',['IsNotFound',['../classkudu_1_1Status.html#a38e1a8eb7b23092569cb61983ebb671d',1,'kudu::Status']]],
+  ['isnotsupported',['IsNotSupported',['../classkudu_1_1Status.html#a2b1672aba7ec84133cd086186b27821b',1,'kudu::Status']]],
+  ['isnull',['IsNull',['../classkudu_1_1client_1_1KuduScanBatch.html#af37f56c4ef55f2e140fcea2a07340054',1,'kudu::client::KuduScanBatch::IsNull(const Slice &amp;col_name) const '],['../classkudu_1_1client_1_1KuduScanBatch.html#a1b0b04656fec608919b7b6ac7c99451e',1,'kudu::client::KuduScanBatch::IsNull(int col_idx) const '],['../classKuduPartialRow.html#acaff842dad3af9546b2ed936613e59ab',1,'KuduPartialRow::IsNull(const Slice &amp;col_name) const '],['../classKuduPartialRow.html#a0b0a0103eea4cc39fbc89df0a9403a26',1,'KuduPartialRow::IsNull(int col_idx) const ']]],
+  ['isremoteerror',['IsRemoteError',['../classkudu_1_1Status.html#a96a35401df4ecd6420c86c65bc3e05f9',1,'kudu::Status']]],
+  ['isruntimeerror',['IsRuntimeError',['../classkudu_1_1Status.html#abc68e44f825df4e221e9fcce419a90cf',1,'kudu::Status']]],
+  ['isserviceunavailable',['IsServiceUnavailable',['../classkudu_1_1Status.html#a7bce15fc7b4d95b0bdffce963972cce8',1,'kudu::Status']]],
+  ['istimedout',['IsTimedOut',['../classkudu_1_1Status.html#a80fe0286d8e3ac011a611afbac4edb11',1,'kudu::Status']]],
+  ['isuninitialized',['IsUninitialized',['../classkudu_1_1Status.html#a325666f396d7f9900403765cecbaecbf',1,'kudu::Status']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/functions_9.html b/releases/1.4.0/cpp-client-api/search/functions_9.html
new file mode 100644
index 0000000..1d34583
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/functions_9.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_9.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/functions_9.js b/releases/1.4.0/cpp-client-api/search/functions_9.js
new file mode 100644
index 0000000..69a9cfa
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/functions_9.js
@@ -0,0 +1,15 @@
+var searchData=
+[
+  ['keepalive',['KeepAlive',['../classkudu_1_1client_1_1KuduScanner.html#aa4a0caf7142880255d7aac1d75f33d21',1,'kudu::client::KuduScanner']]],
+  ['kuducolumnschema',['KuduColumnSchema',['../classkudu_1_1client_1_1KuduColumnSchema.html#aaa771e9d224978f735b3aabb04bc129a',1,'kudu::client::KuduColumnSchema::KuduColumnSchema(const std::string &amp;name, DataType type, bool is_nullable=false, const void *default_value=NULL, KuduColumnStorageAttributes attributes=KuduColumnStorageAttributes()) ATTRIBUTE_DEPRECATED(&quot;use KuduSchemaBuilder instead&quot;)'],['../classkudu_1_1client_1_1KuduColumnSchema.html#afc82e98af83ba61079ba5d30401b5872',1,'kudu::client::KuduColumnSchema::KuduColumnSchema(const KuduColumnSchema &amp;other)']]],
+  ['kuducolumnstorageattributes',['KuduColumnStorageAttributes',['../classkudu_1_1client_1_1KuduColumnStorageAttributes.html#a2d6e5bec50a7305b3b4d75d21d000fab',1,'kudu::client::KuduColumnStorageAttributes']]],
+  ['kuduloggingfunctioncallback',['KuduLoggingFunctionCallback',['../classkudu_1_1client_1_1KuduLoggingFunctionCallback.html#a4263c504b21e0e5827f47a902e908a2c',1,'kudu::client::KuduLoggingFunctionCallback']]],
+  ['kuduloggingmembercallback',['KuduLoggingMemberCallback',['../classkudu_1_1client_1_1KuduLoggingMemberCallback.html#aeda4119b1288db0d055c9800e3485fd8',1,'kudu::client::KuduLoggingMemberCallback']]],
+  ['kudupartialrow',['KuduPartialRow',['../classKuduPartialRow.html#a9eb1cbd1b216f6313a03c82ab67112e4',1,'KuduPartialRow::KuduPartialRow(const Schema *schema)'],['../classKuduPartialRow.html#ab4ebb399982edbb3e877e38a74c700f1',1,'KuduPartialRow::KuduPartialRow(const KuduPartialRow &amp;other)']]],
+  ['kudupartitionerbuilder',['KuduPartitionerBuilder',['../classkudu_1_1client_1_1KuduPartitionerBuilder.html#a27d130235be1c2691779e1d97732a4ba',1,'kudu::client::KuduPartitionerBuilder']]],
+  ['kuduscanner',['KuduScanner',['../classkudu_1_1client_1_1KuduScanner.html#a2c621f778072a02f4092e96a0baf8180',1,'kudu::client::KuduScanner']]],
+  ['kuduscantokenbuilder',['KuduScanTokenBuilder',['../classkudu_1_1client_1_1KuduScanTokenBuilder.html#aa8d300b560d419030abd503b66812484',1,'kudu::client::KuduScanTokenBuilder']]],
+  ['kuduschema',['KuduSchema',['../classkudu_1_1client_1_1KuduSchema.html#a41a683f3d93357fe68531bf71df39d02',1,'kudu::client::KuduSchema']]],
+  ['kudustatusfunctioncallback',['KuduStatusFunctionCallback',['../classkudu_1_1client_1_1KuduStatusFunctionCallback.html#aca289bbf6ad9720bd74a90550f6c9b3b',1,'kudu::client::KuduStatusFunctionCallback']]],
+  ['kudustatusmembercallback',['KuduStatusMemberCallback',['../classkudu_1_1client_1_1KuduStatusMemberCallback.html#acdb02b9798adf2c80b39cfb024f199aa',1,'kudu::client::KuduStatusMemberCallback']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/functions_a.html b/releases/1.4.0/cpp-client-api/search/functions_a.html
new file mode 100644
index 0000000..8eb5e56
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/functions_a.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_a.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/functions_a.js b/releases/1.4.0/cpp-client-api/search/functions_a.js
new file mode 100644
index 0000000..91e443f
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/functions_a.js
@@ -0,0 +1,6 @@
+var searchData=
+[
+  ['lessthan',['LessThan',['../classkudu_1_1MonoDelta.html#a8f4ae8075a1ff013115a558d97e1ad4c',1,'kudu::MonoDelta']]],
+  ['listtables',['ListTables',['../classkudu_1_1client_1_1KuduClient.html#a3ab09f69753b8c99ac7b2eeed03faa1d',1,'kudu::client::KuduClient']]],
+  ['listtabletservers',['ListTabletServers',['../classkudu_1_1client_1_1KuduClient.html#ae283a49551a081524b41f5d8e51e68d9',1,'kudu::client::KuduClient']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/functions_b.html b/releases/1.4.0/cpp-client-api/search/functions_b.html
new file mode 100644
index 0000000..fa9cff5
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/functions_b.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_b.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/functions_b.js b/releases/1.4.0/cpp-client-api/search/functions_b.js
new file mode 100644
index 0000000..aa7ebde
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/functions_b.js
@@ -0,0 +1,14 @@
+var searchData=
+[
+  ['master_5fserver_5faddrs',['master_server_addrs',['../classkudu_1_1client_1_1KuduClientBuilder.html#a0c1b92afad7a6e21c5ea781fb7d42114',1,'kudu::client::KuduClientBuilder']]],
+  ['max',['Max',['../classkudu_1_1MonoTime.html#a28d08092b30ccefc5e45a6e228034ef9',1,'kudu::MonoTime']]],
+  ['memory_5ffootprint_5fexcluding_5fthis',['memory_footprint_excluding_this',['../classkudu_1_1Status.html#a6dd1852c4c78a3c6d8ace5155546db93',1,'kudu::Status']]],
+  ['memory_5ffootprint_5fincluding_5fthis',['memory_footprint_including_this',['../classkudu_1_1Status.html#a7a2d4eb7636a485b5b2cc42f0b8ad627',1,'kudu::Status']]],
+  ['message',['message',['../classkudu_1_1Status.html#a3547012ea31cc504141f2222eec38857',1,'kudu::Status']]],
+  ['min',['Min',['../classkudu_1_1MonoTime.html#acf4fc0351fe9245431932e481e002b99',1,'kudu::MonoTime']]],
+  ['monodelta',['MonoDelta',['../classkudu_1_1MonoDelta.html#ad0646900f0927ad9be6302fcda8bfe5f',1,'kudu::MonoDelta']]],
+  ['monotime',['MonoTime',['../classkudu_1_1MonoTime.html#a8f49b7fd2e217b5541d4ce45bda63bd4',1,'kudu::MonoTime']]],
+  ['morethan',['MoreThan',['../classkudu_1_1MonoDelta.html#a218cc5fcd3ce70365210b7c5587aa6ff',1,'kudu::MonoDelta']]],
+  ['mutable_5fdata',['mutable_data',['../classkudu_1_1Slice.html#a2771156d34daa166067b8d319ad7d164',1,'kudu::Slice']]],
+  ['mutable_5frow',['mutable_row',['../classkudu_1_1client_1_1KuduWriteOperation.html#a8889770ce62e2ca0ce5d55c9c90af6bc',1,'kudu::client::KuduWriteOperation']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/functions_c.html b/releases/1.4.0/cpp-client-api/search/functions_c.html
new file mode 100644
index 0000000..fce7a6b
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/functions_c.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_c.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/functions_c.js b/releases/1.4.0/cpp-client-api/search/functions_c.js
new file mode 100644
index 0000000..9971a2b
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/functions_c.js
@@ -0,0 +1,25 @@
+var searchData=
+[
+  ['name',['name',['../classkudu_1_1client_1_1KuduTable.html#aa0f8b6d63c800727c3a827945512555e',1,'kudu::client::KuduTable']]],
+  ['nanostotimespec',['NanosToTimeSpec',['../classkudu_1_1MonoDelta.html#a4854924550c571f8af548270da52ac22',1,'kudu::MonoDelta']]],
+  ['newcomparisonpredicate',['NewComparisonPredicate',['../classkudu_1_1client_1_1KuduTable.html#aed6c3571aff35270a3e6cd66770f1cea',1,'kudu::client::KuduTable']]],
+  ['newdelete',['NewDelete',['../classkudu_1_1client_1_1KuduTable.html#ad873078bdbcafe015d359a65c370a89a',1,'kudu::client::KuduTable']]],
+  ['newinlistpredicate',['NewInListPredicate',['../classkudu_1_1client_1_1KuduTable.html#a453ffb83cf7c12541caba5ea182fadd9',1,'kudu::client::KuduTable']]],
+  ['newinsert',['NewInsert',['../classkudu_1_1client_1_1KuduTable.html#a0c78f86c5d0fbf53437c2c9db26f92b6',1,'kudu::client::KuduTable']]],
+  ['newisnotnullpredicate',['NewIsNotNullPredicate',['../classkudu_1_1client_1_1KuduTable.html#af6e70f115cf3c0359b1c170533a2d523',1,'kudu::client::KuduTable']]],
+  ['newisnullpredicate',['NewIsNullPredicate',['../classkudu_1_1client_1_1KuduTable.html#a5f453909cdeda167ad15506358470466',1,'kudu::client::KuduTable']]],
+  ['newrow',['NewRow',['../classkudu_1_1client_1_1KuduSchema.html#aafaa50819a283b014ae03373e53489a1',1,'kudu::client::KuduSchema']]],
+  ['newsession',['NewSession',['../classkudu_1_1client_1_1KuduClient.html#a1f5b9bf8767b44f03f4d3220dfd5f925',1,'kudu::client::KuduClient']]],
+  ['newtablealterer',['NewTableAlterer',['../classkudu_1_1client_1_1KuduClient.html#a116bbcf13dc0991ad2a3129630075aea',1,'kudu::client::KuduClient']]],
+  ['newtablecreator',['NewTableCreator',['../classkudu_1_1client_1_1KuduClient.html#a003f13604b4fb378f61e133a9b49d153',1,'kudu::client::KuduClient']]],
+  ['newupdate',['NewUpdate',['../classkudu_1_1client_1_1KuduTable.html#a7e95271452d608fc2b563f7b46ddcda8',1,'kudu::client::KuduTable']]],
+  ['newupsert',['NewUpsert',['../classkudu_1_1client_1_1KuduTable.html#a19e92dbaeeff86c5d707b15b2a7051fc',1,'kudu::client::KuduTable']]],
+  ['nextbatch',['NextBatch',['../classkudu_1_1client_1_1KuduScanner.html#af365f1d3b3b34aeb7d016727a9019067',1,'kudu::client::KuduScanner::NextBatch(std::vector&lt; KuduRowResult &gt; *rows) ATTRIBUTE_DEPRECATED(&quot;use NextBatch(KuduScanBatch*) instead&quot;)'],['../classkudu_1_1client_1_1KuduScanner.html#af1475d9a0667839c1ed9c3714b47d487',1,'kudu::client::KuduScanner::NextBatch(KuduScanBatch *batch)']]],
+  ['notnull',['NotNull',['../classkudu_1_1client_1_1KuduColumnSpec.html#af8c64c5a8a7a93ec644d481f23d91cca',1,'kudu::client::KuduColumnSpec']]],
+  ['now',['Now',['../classkudu_1_1MonoTime.html#a6c83d5c31e6ea5a869a655646f924783',1,'kudu::MonoTime']]],
+  ['nullable',['Nullable',['../classkudu_1_1client_1_1KuduColumnSpec.html#aab05d7d45f4cd2dadb8e0c715d87e841',1,'kudu::client::KuduColumnSpec']]],
+  ['num_5fcolumns',['num_columns',['../classkudu_1_1client_1_1KuduSchema.html#ac9e9f590006bd7ccfa44b87dec1b3c7a',1,'kudu::client::KuduSchema']]],
+  ['num_5freplicas',['num_replicas',['../classkudu_1_1client_1_1KuduTableCreator.html#a9dd4673755ba242eab3f06b19182d139',1,'kudu::client::KuduTableCreator::num_replicas()'],['../classkudu_1_1client_1_1KuduTable.html#a147bdffbd798161916471b721d63128f',1,'kudu::client::KuduTable::num_replicas()']]],
+  ['numpartitions',['NumPartitions',['../classkudu_1_1client_1_1KuduPartitioner.html#af692612faaccb259bf3d15f2bf5b246d',1,'kudu::client::KuduPartitioner']]],
+  ['numrows',['NumRows',['../classkudu_1_1client_1_1KuduScanBatch.html#a16e45694c5932eb3decc2184c3834157',1,'kudu::client::KuduScanBatch']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/functions_d.html b/releases/1.4.0/cpp-client-api/search/functions_d.html
new file mode 100644
index 0000000..82b2b0c
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/functions_d.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_d.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/functions_d.js b/releases/1.4.0/cpp-client-api/search/functions_d.js
new file mode 100644
index 0000000..b9da996
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/functions_d.js
@@ -0,0 +1,15 @@
+var searchData=
+[
+  ['ok',['OK',['../classkudu_1_1Status.html#adaff3248b2f66041d0a7dd59f118b7ac',1,'kudu::Status::OK()'],['../classkudu_1_1Status.html#abf6454dcb72bfa92189a0595b5a858a7',1,'kudu::Status::ok() const ']]],
+  ['open',['Open',['../classkudu_1_1client_1_1KuduScanner.html#aa1ff3c11d9ac9f8183189ea5ac1ed9f1',1,'kudu::client::KuduScanner']]],
+  ['opentable',['OpenTable',['../classkudu_1_1client_1_1KuduClient.html#aa82a09718ffe68d3255195e736aec8d7',1,'kudu::client::KuduClient']]],
+  ['operator_21_3d',['operator!=',['../classkudu_1_1client_1_1KuduScanBatch.html#afd2b2c4cb038cbd366c2af8cf09a3a68',1,'kudu::client::KuduScanBatch']]],
+  ['operator_28_29',['operator()',['../structkudu_1_1Slice_1_1Comparator.html#a2f33c829e2febd880f9cbcbebb08fa6a',1,'kudu::Slice::Comparator']]],
+  ['operator_2a',['operator*',['../classkudu_1_1client_1_1KuduScanBatch.html#ab057b7b1bfb713a7e8f216e3b288cb10',1,'kudu::client::KuduScanBatch']]],
+  ['operator_2b_2b',['operator++',['../classkudu_1_1client_1_1KuduScanBatch.html#ad5df483ed3172caab5a8d6a72abfad0c',1,'kudu::client::KuduScanBatch::operator++()'],['../classkudu_1_1client_1_1KuduScanBatch.html#a4b1ad47fd7d429859b6181825a063c48',1,'kudu::client::KuduScanBatch::operator++(int)']]],
+  ['operator_2d_3d',['operator-=',['../classkudu_1_1MonoTime.html#a2264cf528d0a346e60e0921022333bf8',1,'kudu::MonoTime']]],
+  ['operator_3c_3c',['operator&lt;&lt;',['../classkudu_1_1internal__logging_1_1NullLog.html#abe50abde8e4af12413c99f437094dc8a',1,'kudu::internal_logging::NullLog::operator&lt;&lt;()'],['../classkudu_1_1internal__logging_1_1CerrLog.html#a9febb74005a76f9b203e9718275ab724',1,'kudu::internal_logging::CerrLog::operator&lt;&lt;()']]],
+  ['operator_3d',['operator=',['../classkudu_1_1client_1_1KuduColumnSchema.html#a4b58da787c8e7dc14987aa74a54f199e',1,'kudu::client::KuduColumnSchema::operator=()'],['../classKuduPartialRow.html#a03cab3e1aa0bef19c14f94181934181f',1,'KuduPartialRow::operator=()'],['../classkudu_1_1Status.html#aa387797d8a80892563d56244a2351a88',1,'kudu::Status::operator=()']]],
+  ['operator_3d_3d',['operator==',['../classkudu_1_1client_1_1KuduScanBatch.html#a378a5844a4b4774056b26f0003c15048',1,'kudu::client::KuduScanBatch']]],
+  ['operator_5b_5d',['operator[]',['../classkudu_1_1Slice.html#a5ff06bc0fd9734536a464e604ec226f2',1,'kudu::Slice']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/functions_e.html b/releases/1.4.0/cpp-client-api/search/functions_e.html
new file mode 100644
index 0000000..557ae9a
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/functions_e.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_e.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/functions_e.js b/releases/1.4.0/cpp-client-api/search/functions_e.js
new file mode 100644
index 0000000..1fcca57
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/functions_e.js
@@ -0,0 +1,8 @@
+var searchData=
+[
+  ['partition_5fschema',['partition_schema',['../classkudu_1_1client_1_1KuduTable.html#af1125879ce34fa6c994a70fe1803a808',1,'kudu::client::KuduTable']]],
+  ['partitionrow',['PartitionRow',['../classkudu_1_1client_1_1KuduPartitioner.html#a05d816ba08d85d5c0c95025e12d2e369',1,'kudu::client::KuduPartitioner']]],
+  ['port',['port',['../classkudu_1_1client_1_1KuduTabletServer.html#ab4715d71c64dad1059698f2bb9ef192d',1,'kudu::client::KuduTabletServer']]],
+  ['posix_5fcode',['posix_code',['../classkudu_1_1Status.html#a20d5b34e3507a5dd326029a87df641dc',1,'kudu::Status']]],
+  ['projection_5fschema',['projection_schema',['../classkudu_1_1client_1_1KuduScanBatch.html#a3b58e77f53beea357fbb8bcddaab3137',1,'kudu::client::KuduScanBatch']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/functions_f.html b/releases/1.4.0/cpp-client-api/search/functions_f.html
new file mode 100644
index 0000000..b27fb7d
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/functions_f.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_f.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/functions_f.js b/releases/1.4.0/cpp-client-api/search/functions_f.js
new file mode 100644
index 0000000..2065d59
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/functions_f.js
@@ -0,0 +1,12 @@
+var searchData=
+[
+  ['release_5ffailed_5fop',['release_failed_op',['../classkudu_1_1client_1_1KuduError.html#ae1a49bd16eeff4d2ab88fa70e1dc3c6a',1,'kudu::client::KuduError']]],
+  ['relocate',['relocate',['../classkudu_1_1Slice.html#a4bb1c9fe13873623b5a5a118830b1806',1,'kudu::Slice']]],
+  ['remove_5fprefix',['remove_prefix',['../classkudu_1_1Slice.html#a00f5d310f9ebf17c198cf3feb69c3842',1,'kudu::Slice']]],
+  ['renameto',['RenameTo',['../classkudu_1_1client_1_1KuduTableAlterer.html#aca8ea8d7b65e6952c76fd97f12d5b324',1,'kudu::client::KuduTableAlterer::RenameTo()'],['../classkudu_1_1client_1_1KuduColumnSpec.html#abeb2cbbaa01253165202574db03872f4',1,'kudu::client::KuduColumnSpec::RenameTo()']]],
+  ['replicas',['replicas',['../classkudu_1_1client_1_1KuduTablet.html#a7816ea063549347b676fc18dfa297619',1,'kudu::client::KuduTablet']]],
+  ['reset',['Reset',['../classkudu_1_1client_1_1KuduSchema.html#a3f51ccf1a7e6f4a4fe4958073305dbab',1,'kudu::client::KuduSchema']]],
+  ['row',['row',['../classkudu_1_1client_1_1KuduWriteOperation.html#a973b342ced786b23754b57fd83b34aa3',1,'kudu::client::KuduWriteOperation::row()'],['../classkudu_1_1client_1_1KuduScanBatch.html#a93c2f0914140dd405a51d57e2f75014a',1,'kudu::client::KuduScanBatch::Row()']]],
+  ['rowptr',['RowPtr',['../classkudu_1_1client_1_1KuduScanBatch.html#a92bbfa48e9b503181c2dfb5f11f14e4e',1,'kudu::client::KuduScanBatch']]],
+  ['run',['Run',['../classkudu_1_1client_1_1KuduLoggingCallback.html#ad9d5ac9b45246c5a4304d53ee86102eb',1,'kudu::client::KuduLoggingCallback::Run()'],['../classkudu_1_1client_1_1KuduLoggingMemberCallback.html#a3d75e43bb4af846af66735fabe642a88',1,'kudu::client::KuduLoggingMemberCallback::Run()'],['../classkudu_1_1client_1_1KuduLoggingFunctionCallback.html#ab5119cbc60675f3ca77e08c1e87ec215',1,'kudu::client::KuduLoggingFunctionCallback::Run()'],['../classkudu_1_1client_1_1KuduStatusCallback.html#a2333beedb1d0c08a8c127b4552fbeb07',1,'kudu::client::KuduStatusCallback::Run()'],['../classkudu_1_1client_1_1KuduStatusMemberCallback.html#a94bde1bdcb3cde6f78b11d822be19232',1,'kudu::client::KuduStatusMemberCallback::Run()'],['../classkudu_1_1client_1_1KuduStatusFunctionCallback.html#af4c3e7fbd4fed52bcba220f95a27f70a',1,'kudu::client::KuduStatusFunctionCallback::Run()']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/mag_sel.png b/releases/1.4.0/cpp-client-api/search/mag_sel.png
new file mode 100644
index 0000000..81f6040
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/mag_sel.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/search/nomatches.html b/releases/1.4.0/cpp-client-api/search/nomatches.html
new file mode 100644
index 0000000..b1ded27
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/nomatches.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="NoMatches">No Matches</div>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/pages_0.html b/releases/1.4.0/cpp-client-api/search/pages_0.html
new file mode 100644
index 0000000..0db7267
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/pages_0.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="pages_0.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/pages_0.js b/releases/1.4.0/cpp-client-api/search/pages_0.js
new file mode 100644
index 0000000..038da54
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/pages_0.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['deprecated_20list',['Deprecated List',['../deprecated.html',1,'']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/pages_1.html b/releases/1.4.0/cpp-client-api/search/pages_1.html
new file mode 100644
index 0000000..2c67a8e
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/pages_1.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="pages_1.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/pages_1.js b/releases/1.4.0/cpp-client-api/search/pages_1.js
new file mode 100644
index 0000000..f525564
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/pages_1.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['kudu_20c_2b_2b_20client_20api_20documentation',['Kudu C++ client API documentation',['../index.html',1,'']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/pages_2.html b/releases/1.4.0/cpp-client-api/search/pages_2.html
new file mode 100644
index 0000000..9cb4325
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/pages_2.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="pages_2.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/pages_2.js b/releases/1.4.0/cpp-client-api/search/pages_2.js
new file mode 100644
index 0000000..441b2de
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/pages_2.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['todo_20list',['Todo List',['../todo.html',1,'']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/related_0.html b/releases/1.4.0/cpp-client-api/search/related_0.html
new file mode 100644
index 0000000..e40ed42
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/related_0.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="related_0.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/related_0.js b/releases/1.4.0/cpp-client-api/search/related_0.js
new file mode 100644
index 0000000..2aa82c4
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/related_0.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['operator_3d_3d',['operator==',['../classkudu_1_1Slice.html#a1323493265790d022203af0d8b31fd9c',1,'kudu::Slice']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/search.css b/releases/1.4.0/cpp-client-api/search/search.css
new file mode 100644
index 0000000..4d7612f
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/search.css
@@ -0,0 +1,271 @@
+/*---------------- Search Box */
+
+#FSearchBox {
+    float: left;
+}
+
+#MSearchBox {
+    white-space : nowrap;
+    position: absolute;
+    float: none;
+    display: inline;
+    margin-top: 8px;
+    right: 0px;
+    width: 170px;
+    z-index: 102;
+    background-color: white;
+}
+
+#MSearchBox .left
+{
+    display:block;
+    position:absolute;
+    left:10px;
+    width:20px;
+    height:19px;
+    background:url('search_l.png') no-repeat;
+    background-position:right;
+}
+
+#MSearchSelect {
+    display:block;
+    position:absolute;
+    width:20px;
+    height:19px;
+}
+
+.left #MSearchSelect {
+    left:4px;
+}
+
+.right #MSearchSelect {
+    right:5px;
+}
+
+#MSearchField {
+    display:block;
+    position:absolute;
+    height:19px;
+    background:url('search_m.png') repeat-x;
+    border:none;
+    width:111px;
+    margin-left:20px;
+    padding-left:4px;
+    color: #909090;
+    outline: none;
+    font: 9pt Arial, Verdana, sans-serif;
+}
+
+#FSearchBox #MSearchField {
+    margin-left:15px;
+}
+
+#MSearchBox .right {
+    display:block;
+    position:absolute;
+    right:10px;
+    top:0px;
+    width:20px;
+    height:19px;
+    background:url('search_r.png') no-repeat;
+    background-position:left;
+}
+
+#MSearchClose {
+    display: none;
+    position: absolute;
+    top: 4px;
+    background : none;
+    border: none;
+    margin: 0px 4px 0px 0px;
+    padding: 0px 0px;
+    outline: none;
+}
+
+.left #MSearchClose {
+    left: 6px;
+}
+
+.right #MSearchClose {
+    right: 2px;
+}
+
+.MSearchBoxActive #MSearchField {
+    color: #000000;
+}
+
+/*---------------- Search filter selection */
+
+#MSearchSelectWindow {
+    display: none;
+    position: absolute;
+    left: 0; top: 0;
+    border: 1px solid #90A5CE;
+    background-color: #F9FAFC;
+    z-index: 1;
+    padding-top: 4px;
+    padding-bottom: 4px;
+    -moz-border-radius: 4px;
+    -webkit-border-top-left-radius: 4px;
+    -webkit-border-top-right-radius: 4px;
+    -webkit-border-bottom-left-radius: 4px;
+    -webkit-border-bottom-right-radius: 4px;
+    -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
+}
+
+.SelectItem {
+    font: 8pt Arial, Verdana, sans-serif;
+    padding-left:  2px;
+    padding-right: 12px;
+    border: 0px;
+}
+
+span.SelectionMark {
+    margin-right: 4px;
+    font-family: monospace;
+    outline-style: none;
+    text-decoration: none;
+}
+
+a.SelectItem {
+    display: block;
+    outline-style: none;
+    color: #000000; 
+    text-decoration: none;
+    padding-left:   6px;
+    padding-right: 12px;
+}
+
+a.SelectItem:focus,
+a.SelectItem:active {
+    color: #000000; 
+    outline-style: none;
+    text-decoration: none;
+}
+
+a.SelectItem:hover {
+    color: #FFFFFF;
+    background-color: #3D578C;
+    outline-style: none;
+    text-decoration: none;
+    cursor: pointer;
+    display: block;
+}
+
+/*---------------- Search results window */
+
+iframe#MSearchResults {
+    width: 60ex;
+    height: 15em;
+}
+
+#MSearchResultsWindow {
+    display: none;
+    position: absolute;
+    left: 0; top: 0;
+    border: 1px solid #000;
+    background-color: #EEF1F7;
+}
+
+/* ----------------------------------- */
+
+
+#SRIndex {
+    clear:both; 
+    padding-bottom: 15px;
+}
+
+.SREntry {
+    font-size: 10pt;
+    padding-left: 1ex;
+}
+
+.SRPage .SREntry {
+    font-size: 8pt;
+    padding: 1px 5px;
+}
+
+body.SRPage {
+    margin: 5px 2px;
+}
+
+.SRChildren {
+    padding-left: 3ex; padding-bottom: .5em 
+}
+
+.SRPage .SRChildren {
+    display: none;
+}
+
+.SRSymbol {
+    font-weight: bold; 
+    color: #425E97;
+    font-family: Arial, Verdana, sans-serif;
+    text-decoration: none;
+    outline: none;
+}
+
+a.SRScope {
+    display: block;
+    color: #425E97; 
+    font-family: Arial, Verdana, sans-serif;
+    text-decoration: none;
+    outline: none;
+}
+
+a.SRSymbol:focus, a.SRSymbol:active,
+a.SRScope:focus, a.SRScope:active {
+    text-decoration: underline;
+}
+
+span.SRScope {
+    padding-left: 4px;
+}
+
+.SRPage .SRStatus {
+    padding: 2px 5px;
+    font-size: 8pt;
+    font-style: italic;
+}
+
+.SRResult {
+    display: none;
+}
+
+DIV.searchresults {
+    margin-left: 10px;
+    margin-right: 10px;
+}
+
+/*---------------- External search page results */
+
+.searchresult {
+    background-color: #F0F3F8;
+}
+
+.pages b {
+   color: white;
+   padding: 5px 5px 3px 5px;
+   background-image: url("../tab_a.png");
+   background-repeat: repeat-x;
+   text-shadow: 0 1px 1px #000000;
+}
+
+.pages {
+    line-height: 17px;
+    margin-left: 4px;
+    text-decoration: none;
+}
+
+.hl {
+    font-weight: bold;
+}
+
+#searchresults {
+    margin-bottom: 20px;
+}
+
+.searchpages {
+    margin-top: 10px;
+}
+
diff --git a/releases/1.4.0/cpp-client-api/search/search.js b/releases/1.4.0/cpp-client-api/search/search.js
new file mode 100644
index 0000000..dedce3b
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/search.js
@@ -0,0 +1,791 @@
+function convertToId(search)
+{
+  var result = '';
+  for (i=0;i<search.length;i++)
+  {
+    var c = search.charAt(i);
+    var cn = c.charCodeAt(0);
+    if (c.match(/[a-z0-9\u0080-\uFFFF]/))
+    {
+      result+=c;
+    }
+    else if (cn<16)
+    {
+      result+="_0"+cn.toString(16);
+    }
+    else
+    {
+      result+="_"+cn.toString(16);
+    }
+  }
+  return result;
+}
+
+function getXPos(item)
+{
+  var x = 0;
+  if (item.offsetWidth)
+  {
+    while (item && item!=document.body)
+    {
+      x   += item.offsetLeft;
+      item = item.offsetParent;
+    }
+  }
+  return x;
+}
+
+function getYPos(item)
+{
+  var y = 0;
+  if (item.offsetWidth)
+  {
+     while (item && item!=document.body)
+     {
+       y   += item.offsetTop;
+       item = item.offsetParent;
+     }
+  }
+  return y;
+}
+
+/* A class handling everything associated with the search panel.
+
+   Parameters:
+   name - The name of the global variable that will be
+          storing this instance.  Is needed to be able to set timeouts.
+   resultPath - path to use for external files
+*/
+function SearchBox(name, resultsPath, inFrame, label)
+{
+  if (!name || !resultsPath) {  alert("Missing parameters to SearchBox."); }
+
+  // ---------- Instance variables
+  this.name                  = name;
+  this.resultsPath           = resultsPath;
+  this.keyTimeout            = 0;
+  this.keyTimeoutLength      = 500;
+  this.closeSelectionTimeout = 300;
+  this.lastSearchValue       = "";
+  this.lastResultsPage       = "";
+  this.hideTimeout           = 0;
+  this.searchIndex           = 0;
+  this.searchActive          = false;
+  this.insideFrame           = inFrame;
+  this.searchLabel           = label;
+
+  // ----------- DOM Elements
+
+  this.DOMSearchField = function()
+  {  return document.getElementById("MSearchField");  }
+
+  this.DOMSearchSelect = function()
+  {  return document.getElementById("MSearchSelect");  }
+
+  this.DOMSearchSelectWindow = function()
+  {  return document.getElementById("MSearchSelectWindow");  }
+
+  this.DOMPopupSearchResults = function()
+  {  return document.getElementById("MSearchResults");  }
+
+  this.DOMPopupSearchResultsWindow = function()
+  {  return document.getElementById("MSearchResultsWindow");  }
+
+  this.DOMSearchClose = function()
+  {  return document.getElementById("MSearchClose"); }
+
+  this.DOMSearchBox = function()
+  {  return document.getElementById("MSearchBox");  }
+
+  // ------------ Event Handlers
+
+  // Called when focus is added or removed from the search field.
+  this.OnSearchFieldFocus = function(isActive)
+  {
+    this.Activate(isActive);
+  }
+
+  this.OnSearchSelectShow = function()
+  {
+    var searchSelectWindow = this.DOMSearchSelectWindow();
+    var searchField        = this.DOMSearchSelect();
+
+    if (this.insideFrame)
+    {
+      var left = getXPos(searchField);
+      var top  = getYPos(searchField);
+      left += searchField.offsetWidth + 6;
+      top += searchField.offsetHeight;
+
+      // show search selection popup
+      searchSelectWindow.style.display='block';
+      left -= searchSelectWindow.offsetWidth;
+      searchSelectWindow.style.left =  left + 'px';
+      searchSelectWindow.style.top  =  top  + 'px';
+    }
+    else
+    {
+      var left = getXPos(searchField);
+      var top  = getYPos(searchField);
+      top += searchField.offsetHeight;
+
+      // show search selection popup
+      searchSelectWindow.style.display='block';
+      searchSelectWindow.style.left =  left + 'px';
+      searchSelectWindow.style.top  =  top  + 'px';
+    }
+
+    // stop selection hide timer
+    if (this.hideTimeout)
+    {
+      clearTimeout(this.hideTimeout);
+      this.hideTimeout=0;
+    }
+    return false; // to avoid "image drag" default event
+  }
+
+  this.OnSearchSelectHide = function()
+  {
+    this.hideTimeout = setTimeout(this.name +".CloseSelectionWindow()",
+                                  this.closeSelectionTimeout);
+  }
+
+  // Called when the content of the search field is changed.
+  this.OnSearchFieldChange = function(evt)
+  {
+    if (this.keyTimeout) // kill running timer
+    {
+      clearTimeout(this.keyTimeout);
+      this.keyTimeout = 0;
+    }
+
+    var e  = (evt) ? evt : window.event; // for IE
+    if (e.keyCode==40 || e.keyCode==13)
+    {
+      if (e.shiftKey==1)
+      {
+        this.OnSearchSelectShow();
+        var win=this.DOMSearchSelectWindow();
+        for (i=0;i<win.childNodes.length;i++)
+        {
+          var child = win.childNodes[i]; // get span within a
+          if (child.className=='SelectItem')
+          {
+            child.focus();
+            return;
+          }
+        }
+        return;
+      }
+      else if (window.frames.MSearchResults.searchResults)
+      {
+        var elem = window.frames.MSearchResults.searchResults.NavNext(0);
+        if (elem) elem.focus();
+      }
+    }
+    else if (e.keyCode==27) // Escape out of the search field
+    {
+      this.DOMSearchField().blur();
+      this.DOMPopupSearchResultsWindow().style.display = 'none';
+      this.DOMSearchClose().style.display = 'none';
+      this.lastSearchValue = '';
+      this.Activate(false);
+      return;
+    }
+
+    // strip whitespaces
+    var searchValue = this.DOMSearchField().value.replace(/ +/g, "");
+
+    if (searchValue != this.lastSearchValue) // search value has changed
+    {
+      if (searchValue != "") // non-empty search
+      {
+        // set timer for search update
+        this.keyTimeout = setTimeout(this.name + '.Search()',
+                                     this.keyTimeoutLength);
+      }
+      else // empty search field
+      {
+        this.DOMPopupSearchResultsWindow().style.display = 'none';
+        this.DOMSearchClose().style.display = 'none';
+        this.lastSearchValue = '';
+      }
+    }
+  }
+
+  this.SelectItemCount = function(id)
+  {
+    var count=0;
+    var win=this.DOMSearchSelectWindow();
+    for (i=0;i<win.childNodes.length;i++)
+    {
+      var child = win.childNodes[i]; // get span within a
+      if (child.className=='SelectItem')
+      {
+        count++;
+      }
+    }
+    return count;
+  }
+
+  this.SelectItemSet = function(id)
+  {
+    var i,j=0;
+    var win=this.DOMSearchSelectWindow();
+    for (i=0;i<win.childNodes.length;i++)
+    {
+      var child = win.childNodes[i]; // get span within a
+      if (child.className=='SelectItem')
+      {
+        var node = child.firstChild;
+        if (j==id)
+        {
+          node.innerHTML='&#8226;';
+        }
+        else
+        {
+          node.innerHTML='&#160;';
+        }
+        j++;
+      }
+    }
+  }
+
+  // Called when an search filter selection is made.
+  // set item with index id as the active item
+  this.OnSelectItem = function(id)
+  {
+    this.searchIndex = id;
+    this.SelectItemSet(id);
+    var searchValue = this.DOMSearchField().value.replace(/ +/g, "");
+    if (searchValue!="" && this.searchActive) // something was found -> do a search
+    {
+      this.Search();
+    }
+  }
+
+  this.OnSearchSelectKey = function(evt)
+  {
+    var e = (evt) ? evt : window.event; // for IE
+    if (e.keyCode==40 && this.searchIndex<this.SelectItemCount()) // Down
+    {
+      this.searchIndex++;
+      this.OnSelectItem(this.searchIndex);
+    }
+    else if (e.keyCode==38 && this.searchIndex>0) // Up
+    {
+      this.searchIndex--;
+      this.OnSelectItem(this.searchIndex);
+    }
+    else if (e.keyCode==13 || e.keyCode==27)
+    {
+      this.OnSelectItem(this.searchIndex);
+      this.CloseSelectionWindow();
+      this.DOMSearchField().focus();
+    }
+    return false;
+  }
+
+  // --------- Actions
+
+  // Closes the results window.
+  this.CloseResultsWindow = function()
+  {
+    this.DOMPopupSearchResultsWindow().style.display = 'none';
+    this.DOMSearchClose().style.display = 'none';
+    this.Activate(false);
+  }
+
+  this.CloseSelectionWindow = function()
+  {
+    this.DOMSearchSelectWindow().style.display = 'none';
+  }
+
+  // Performs a search.
+  this.Search = function()
+  {
+    this.keyTimeout = 0;
+
+    // strip leading whitespace
+    var searchValue = this.DOMSearchField().value.replace(/^ +/, "");
+
+    var code = searchValue.toLowerCase().charCodeAt(0);
+    var idxChar = searchValue.substr(0, 1).toLowerCase();
+    if ( 0xD800 <= code && code <= 0xDBFF && searchValue > 1) // surrogate pair
+    {
+      idxChar = searchValue.substr(0, 2);
+    }
+
+    var resultsPage;
+    var resultsPageWithSearch;
+    var hasResultsPage;
+
+    var idx = indexSectionsWithContent[this.searchIndex].indexOf(idxChar);
+    if (idx!=-1)
+    {
+       var hexCode=idx.toString(16);
+       resultsPage = this.resultsPath + '/' + indexSectionNames[this.searchIndex] + '_' + hexCode + '.html';
+       resultsPageWithSearch = resultsPage+'?'+escape(searchValue);
+       hasResultsPage = true;
+    }
+    else // nothing available for this search term
+    {
+       resultsPage = this.resultsPath + '/nomatches.html';
+       resultsPageWithSearch = resultsPage;
+       hasResultsPage = false;
+    }
+
+    window.frames.MSearchResults.location = resultsPageWithSearch;
+    var domPopupSearchResultsWindow = this.DOMPopupSearchResultsWindow();
+
+    if (domPopupSearchResultsWindow.style.display!='block')
+    {
+       var domSearchBox = this.DOMSearchBox();
+       this.DOMSearchClose().style.display = 'inline';
+       if (this.insideFrame)
+       {
+         var domPopupSearchResults = this.DOMPopupSearchResults();
+         domPopupSearchResultsWindow.style.position = 'relative';
+         domPopupSearchResultsWindow.style.display  = 'block';
+         var width = document.body.clientWidth - 8; // the -8 is for IE :-(
+         domPopupSearchResultsWindow.style.width    = width + 'px';
+         domPopupSearchResults.style.width          = width + 'px';
+       }
+       else
+       {
+         var domPopupSearchResults = this.DOMPopupSearchResults();
+         var left = getXPos(domSearchBox) + 150; // domSearchBox.offsetWidth;
+         var top  = getYPos(domSearchBox) + 20;  // domSearchBox.offsetHeight + 1;
+         domPopupSearchResultsWindow.style.display = 'block';
+         left -= domPopupSearchResults.offsetWidth;
+         domPopupSearchResultsWindow.style.top     = top  + 'px';
+         domPopupSearchResultsWindow.style.left    = left + 'px';
+       }
+    }
+
+    this.lastSearchValue = searchValue;
+    this.lastResultsPage = resultsPage;
+  }
+
+  // -------- Activation Functions
+
+  // Activates or deactivates the search panel, resetting things to
+  // their default values if necessary.
+  this.Activate = function(isActive)
+  {
+    if (isActive || // open it
+        this.DOMPopupSearchResultsWindow().style.display == 'block'
+       )
+    {
+      this.DOMSearchBox().className = 'MSearchBoxActive';
+
+      var searchField = this.DOMSearchField();
+
+      if (searchField.value == this.searchLabel) // clear "Search" term upon entry
+      {
+        searchField.value = '';
+        this.searchActive = true;
+      }
+    }
+    else if (!isActive) // directly remove the panel
+    {
+      this.DOMSearchBox().className = 'MSearchBoxInactive';
+      this.DOMSearchField().value   = this.searchLabel;
+      this.searchActive             = false;
+      this.lastSearchValue          = ''
+      this.lastResultsPage          = '';
+    }
+  }
+}
+
+// -----------------------------------------------------------------------
+
+// The class that handles everything on the search results page.
+function SearchResults(name)
+{
+    // The number of matches from the last run of <Search()>.
+    this.lastMatchCount = 0;
+    this.lastKey = 0;
+    this.repeatOn = false;
+
+    // Toggles the visibility of the passed element ID.
+    this.FindChildElement = function(id)
+    {
+      var parentElement = document.getElementById(id);
+      var element = parentElement.firstChild;
+
+      while (element && element!=parentElement)
+      {
+        if (element.nodeName == 'DIV' && element.className == 'SRChildren')
+        {
+          return element;
+        }
+
+        if (element.nodeName == 'DIV' && element.hasChildNodes())
+        {
+           element = element.firstChild;
+        }
+        else if (element.nextSibling)
+        {
+           element = element.nextSibling;
+        }
+        else
+        {
+          do
+          {
+            element = element.parentNode;
+          }
+          while (element && element!=parentElement && !element.nextSibling);
+
+          if (element && element!=parentElement)
+          {
+            element = element.nextSibling;
+          }
+        }
+      }
+    }
+
+    this.Toggle = function(id)
+    {
+      var element = this.FindChildElement(id);
+      if (element)
+      {
+        if (element.style.display == 'block')
+        {
+          element.style.display = 'none';
+        }
+        else
+        {
+          element.style.display = 'block';
+        }
+      }
+    }
+
+    // Searches for the passed string.  If there is no parameter,
+    // it takes it from the URL query.
+    //
+    // Always returns true, since other documents may try to call it
+    // and that may or may not be possible.
+    this.Search = function(search)
+    {
+      if (!search) // get search word from URL
+      {
+        search = window.location.search;
+        search = search.substring(1);  // Remove the leading '?'
+        search = unescape(search);
+      }
+
+      search = search.replace(/^ +/, ""); // strip leading spaces
+      search = search.replace(/ +$/, ""); // strip trailing spaces
+      search = search.toLowerCase();
+      search = convertToId(search);
+
+      var resultRows = document.getElementsByTagName("div");
+      var matches = 0;
+
+      var i = 0;
+      while (i < resultRows.length)
+      {
+        var row = resultRows.item(i);
+        if (row.className == "SRResult")
+        {
+          var rowMatchName = row.id.toLowerCase();
+          rowMatchName = rowMatchName.replace(/^sr\d*_/, ''); // strip 'sr123_'
+
+          if (search.length<=rowMatchName.length &&
+             rowMatchName.substr(0, search.length)==search)
+          {
+            row.style.display = 'block';
+            matches++;
+          }
+          else
+          {
+            row.style.display = 'none';
+          }
+        }
+        i++;
+      }
+      document.getElementById("Searching").style.display='none';
+      if (matches == 0) // no results
+      {
+        document.getElementById("NoMatches").style.display='block';
+      }
+      else // at least one result
+      {
+        document.getElementById("NoMatches").style.display='none';
+      }
+      this.lastMatchCount = matches;
+      return true;
+    }
+
+    // return the first item with index index or higher that is visible
+    this.NavNext = function(index)
+    {
+      var focusItem;
+      while (1)
+      {
+        var focusName = 'Item'+index;
+        focusItem = document.getElementById(focusName);
+        if (focusItem && focusItem.parentNode.parentNode.style.display=='block')
+        {
+          break;
+        }
+        else if (!focusItem) // last element
+        {
+          break;
+        }
+        focusItem=null;
+        index++;
+      }
+      return focusItem;
+    }
+
+    this.NavPrev = function(index)
+    {
+      var focusItem;
+      while (1)
+      {
+        var focusName = 'Item'+index;
+        focusItem = document.getElementById(focusName);
+        if (focusItem && focusItem.parentNode.parentNode.style.display=='block')
+        {
+          break;
+        }
+        else if (!focusItem) // last element
+        {
+          break;
+        }
+        focusItem=null;
+        index--;
+      }
+      return focusItem;
+    }
+
+    this.ProcessKeys = function(e)
+    {
+      if (e.type == "keydown")
+      {
+        this.repeatOn = false;
+        this.lastKey = e.keyCode;
+      }
+      else if (e.type == "keypress")
+      {
+        if (!this.repeatOn)
+        {
+          if (this.lastKey) this.repeatOn = true;
+          return false; // ignore first keypress after keydown
+        }
+      }
+      else if (e.type == "keyup")
+      {
+        this.lastKey = 0;
+        this.repeatOn = false;
+      }
+      return this.lastKey!=0;
+    }
+
+    this.Nav = function(evt,itemIndex)
+    {
+      var e  = (evt) ? evt : window.event; // for IE
+      if (e.keyCode==13) return true;
+      if (!this.ProcessKeys(e)) return false;
+
+      if (this.lastKey==38) // Up
+      {
+        var newIndex = itemIndex-1;
+        var focusItem = this.NavPrev(newIndex);
+        if (focusItem)
+        {
+          var child = this.FindChildElement(focusItem.parentNode.parentNode.id);
+          if (child && child.style.display == 'block') // children visible
+          {
+            var n=0;
+            var tmpElem;
+            while (1) // search for last child
+            {
+              tmpElem = document.getElementById('Item'+newIndex+'_c'+n);
+              if (tmpElem)
+              {
+                focusItem = tmpElem;
+              }
+              else // found it!
+              {
+                break;
+              }
+              n++;
+            }
+          }
+        }
+        if (focusItem)
+        {
+          focusItem.focus();
+        }
+        else // return focus to search field
+        {
+           parent.document.getElementById("MSearchField").focus();
+        }
+      }
+      else if (this.lastKey==40) // Down
+      {
+        var newIndex = itemIndex+1;
+        var focusItem;
+        var item = document.getElementById('Item'+itemIndex);
+        var elem = this.FindChildElement(item.parentNode.parentNode.id);
+        if (elem && elem.style.display == 'block') // children visible
+        {
+          focusItem = document.getElementById('Item'+itemIndex+'_c0');
+        }
+        if (!focusItem) focusItem = this.NavNext(newIndex);
+        if (focusItem)  focusItem.focus();
+      }
+      else if (this.lastKey==39) // Right
+      {
+        var item = document.getElementById('Item'+itemIndex);
+        var elem = this.FindChildElement(item.parentNode.parentNode.id);
+        if (elem) elem.style.display = 'block';
+      }
+      else if (this.lastKey==37) // Left
+      {
+        var item = document.getElementById('Item'+itemIndex);
+        var elem = this.FindChildElement(item.parentNode.parentNode.id);
+        if (elem) elem.style.display = 'none';
+      }
+      else if (this.lastKey==27) // Escape
+      {
+        parent.searchBox.CloseResultsWindow();
+        parent.document.getElementById("MSearchField").focus();
+      }
+      else if (this.lastKey==13) // Enter
+      {
+        return true;
+      }
+      return false;
+    }
+
+    this.NavChild = function(evt,itemIndex,childIndex)
+    {
+      var e  = (evt) ? evt : window.event; // for IE
+      if (e.keyCode==13) return true;
+      if (!this.ProcessKeys(e)) return false;
+
+      if (this.lastKey==38) // Up
+      {
+        if (childIndex>0)
+        {
+          var newIndex = childIndex-1;
+          document.getElementById('Item'+itemIndex+'_c'+newIndex).focus();
+        }
+        else // already at first child, jump to parent
+        {
+          document.getElementById('Item'+itemIndex).focus();
+        }
+      }
+      else if (this.lastKey==40) // Down
+      {
+        var newIndex = childIndex+1;
+        var elem = document.getElementById('Item'+itemIndex+'_c'+newIndex);
+        if (!elem) // last child, jump to parent next parent
+        {
+          elem = this.NavNext(itemIndex+1);
+        }
+        if (elem)
+        {
+          elem.focus();
+        }
+      }
+      else if (this.lastKey==27) // Escape
+      {
+        parent.searchBox.CloseResultsWindow();
+        parent.document.getElementById("MSearchField").focus();
+      }
+      else if (this.lastKey==13) // Enter
+      {
+        return true;
+      }
+      return false;
+    }
+}
+
+function setKeyActions(elem,action)
+{
+  elem.setAttribute('onkeydown',action);
+  elem.setAttribute('onkeypress',action);
+  elem.setAttribute('onkeyup',action);
+}
+
+function setClassAttr(elem,attr)
+{
+  elem.setAttribute('class',attr);
+  elem.setAttribute('className',attr);
+}
+
+function createResults()
+{
+  var results = document.getElementById("SRResults");
+  for (var e=0; e<searchData.length; e++)
+  {
+    var id = searchData[e][0];
+    var srResult = document.createElement('div');
+    srResult.setAttribute('id','SR_'+id);
+    setClassAttr(srResult,'SRResult');
+    var srEntry = document.createElement('div');
+    setClassAttr(srEntry,'SREntry');
+    var srLink = document.createElement('a');
+    srLink.setAttribute('id','Item'+e);
+    setKeyActions(srLink,'return searchResults.Nav(event,'+e+')');
+    setClassAttr(srLink,'SRSymbol');
+    srLink.innerHTML = searchData[e][1][0];
+    srEntry.appendChild(srLink);
+    if (searchData[e][1].length==2) // single result
+    {
+      srLink.setAttribute('href',searchData[e][1][1][0]);
+      if (searchData[e][1][1][1])
+      {
+       srLink.setAttribute('target','_parent');
+      }
+      var srScope = document.createElement('span');
+      setClassAttr(srScope,'SRScope');
+      srScope.innerHTML = searchData[e][1][1][2];
+      srEntry.appendChild(srScope);
+    }
+    else // multiple results
+    {
+      srLink.setAttribute('href','javascript:searchResults.Toggle("SR_'+id+'")');
+      var srChildren = document.createElement('div');
+      setClassAttr(srChildren,'SRChildren');
+      for (var c=0; c<searchData[e][1].length-1; c++)
+      {
+        var srChild = document.createElement('a');
+        srChild.setAttribute('id','Item'+e+'_c'+c);
+        setKeyActions(srChild,'return searchResults.NavChild(event,'+e+','+c+')');
+        setClassAttr(srChild,'SRScope');
+        srChild.setAttribute('href',searchData[e][1][c+1][0]);
+        if (searchData[e][1][c+1][1])
+        {
+         srChild.setAttribute('target','_parent');
+        }
+        srChild.innerHTML = searchData[e][1][c+1][2];
+        srChildren.appendChild(srChild);
+      }
+      srEntry.appendChild(srChildren);
+    }
+    srResult.appendChild(srEntry);
+    results.appendChild(srResult);
+  }
+}
+
+function init_search()
+{
+  var results = document.getElementById("MSearchSelectWindow");
+  for (var key in indexSectionLabels)
+  {
+    var link = document.createElement('a');
+    link.setAttribute('class','SelectItem');
+    link.setAttribute('onclick','searchBox.OnSelectItem('+key+')');
+    link.href='javascript:void(0)';
+    link.innerHTML='<span class="SelectionMark">&#160;</span>'+indexSectionLabels[key];
+    results.appendChild(link);
+  }
+  searchBox.OnSelectItem(0);
+}
+
diff --git a/releases/1.4.0/cpp-client-api/search/search_l.png b/releases/1.4.0/cpp-client-api/search/search_l.png
new file mode 100644
index 0000000..c872f4d
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/search_l.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/search/search_m.png b/releases/1.4.0/cpp-client-api/search/search_m.png
new file mode 100644
index 0000000..b429a16
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/search_m.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/search/search_r.png b/releases/1.4.0/cpp-client-api/search/search_r.png
new file mode 100644
index 0000000..97ee8b4
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/search_r.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/search/searchdata.js b/releases/1.4.0/cpp-client-api/search/searchdata.js
new file mode 100644
index 0000000..be535e6
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/searchdata.js
@@ -0,0 +1,45 @@
+var indexSectionsWithContent =
+{
+  0: "abcdefghiklmnoprstuvw",
+  1: "ckmnrs",
+  2: "s",
+  3: "abcdefghiklmnoprstuw",
+  4: "dknp",
+  5: "fmtv",
+  6: "cdefort",
+  7: "acefgilmortu",
+  8: "o",
+  9: "k",
+  10: "dkt"
+};
+
+var indexSectionNames =
+{
+  0: "all",
+  1: "classes",
+  2: "files",
+  3: "functions",
+  4: "variables",
+  5: "typedefs",
+  6: "enums",
+  7: "enumvalues",
+  8: "related",
+  9: "defines",
+  10: "pages"
+};
+
+var indexSectionLabels =
+{
+  0: "All",
+  1: "Classes",
+  2: "Files",
+  3: "Functions",
+  4: "Variables",
+  5: "Typedefs",
+  6: "Enumerations",
+  7: "Enumerator",
+  8: "Friends",
+  9: "Macros",
+  10: "Pages"
+};
+
diff --git a/releases/1.4.0/cpp-client-api/search/typedefs_0.html b/releases/1.4.0/cpp-client-api/search/typedefs_0.html
new file mode 100644
index 0000000..fb07195
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/typedefs_0.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="typedefs_0.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/typedefs_0.js b/releases/1.4.0/cpp-client-api/search/typedefs_0.js
new file mode 100644
index 0000000..ab220d4
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/typedefs_0.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['functiontype',['FunctionType',['../classkudu_1_1client_1_1KuduLoggingFunctionCallback.html#a609838f5c92d8f4612d195c161cf4003',1,'kudu::client::KuduLoggingFunctionCallback::FunctionType()'],['../classkudu_1_1client_1_1KuduStatusFunctionCallback.html#a20c231ae32873ea7f462b8f3ea05d910',1,'kudu::client::KuduStatusFunctionCallback::FunctionType()']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/typedefs_1.html b/releases/1.4.0/cpp-client-api/search/typedefs_1.html
new file mode 100644
index 0000000..6edac96
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/typedefs_1.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="typedefs_1.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/typedefs_1.js b/releases/1.4.0/cpp-client-api/search/typedefs_1.js
new file mode 100644
index 0000000..4dc87c3
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/typedefs_1.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['membertype',['MemberType',['../classkudu_1_1client_1_1KuduLoggingMemberCallback.html#a379dffd7e67238b37b9a4e4ad8e2a3ec',1,'kudu::client::KuduLoggingMemberCallback::MemberType()'],['../classkudu_1_1client_1_1KuduStatusMemberCallback.html#a1ad9e466506c3453cdd8429d5744f17a',1,'kudu::client::KuduStatusMemberCallback::MemberType()']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/typedefs_2.html b/releases/1.4.0/cpp-client-api/search/typedefs_2.html
new file mode 100644
index 0000000..cc5cc40
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/typedefs_2.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="typedefs_2.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/typedefs_2.js b/releases/1.4.0/cpp-client-api/search/typedefs_2.js
new file mode 100644
index 0000000..25ec71c
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/typedefs_2.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['type',['type',['../structkudu_1_1SliceMap.html#ac97e49d0aa50ae49f34ab3bbd95ea5e6',1,'kudu::SliceMap']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/typedefs_3.html b/releases/1.4.0/cpp-client-api/search/typedefs_3.html
new file mode 100644
index 0000000..3fdb8f2
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/typedefs_3.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="typedefs_3.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/typedefs_3.js b/releases/1.4.0/cpp-client-api/search/typedefs_3.js
new file mode 100644
index 0000000..a766741
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/typedefs_3.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['value_5ftype',['value_type',['../classkudu_1_1client_1_1KuduScanBatch.html#ae1a827120c84eeedb703451bd5782467',1,'kudu::client::KuduScanBatch']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/variables_0.html b/releases/1.4.0/cpp-client-api/search/variables_0.html
new file mode 100644
index 0000000..3835278
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/variables_0.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_0.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/variables_0.js b/releases/1.4.0/cpp-client-api/search/variables_0.js
new file mode 100644
index 0000000..dcf9d8f
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/variables_0.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['data',['Data',['../classkudu_1_1client_1_1KuduPredicate.html#ae8643ced562f7c8a4625a58a4e39abb0',1,'kudu::client::KuduPredicate']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/variables_1.html b/releases/1.4.0/cpp-client-api/search/variables_1.html
new file mode 100644
index 0000000..3c65cf2
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/variables_1.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_1.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/variables_1.js b/releases/1.4.0/cpp-client-api/search/variables_1.js
new file mode 100644
index 0000000..8b195c2
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/variables_1.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['knotimestamp',['kNoTimestamp',['../classkudu_1_1client_1_1KuduClient.html#a196f1a18c000cdca309d05161caaddaa',1,'kudu::client::KuduClient']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/variables_2.html b/releases/1.4.0/cpp-client-api/search/variables_2.html
new file mode 100644
index 0000000..7b43e0a
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/variables_2.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_2.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/variables_2.js b/releases/1.4.0/cpp-client-api/search/variables_2.js
new file mode 100644
index 0000000..9882449
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/variables_2.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['no_5fflags',['NO_FLAGS',['../classkudu_1_1client_1_1KuduScanner.html#a68345956f3f4c7fd5e1665fd292f6a85',1,'kudu::client::KuduScanner']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/search/variables_3.html b/releases/1.4.0/cpp-client-api/search/variables_3.html
new file mode 100644
index 0000000..ea0392d
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/variables_3.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_3.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/search/variables_3.js b/releases/1.4.0/cpp-client-api/search/variables_3.js
new file mode 100644
index 0000000..92ab77f
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/search/variables_3.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['pad_5funixtime_5fmicros_5fto_5f16_5fbytes',['PAD_UNIXTIME_MICROS_TO_16_BYTES',['../classkudu_1_1client_1_1KuduScanner.html#a63cd270f3bc72f4197d2581ec8f8fc44',1,'kudu::client::KuduScanner']]]
+];
diff --git a/releases/1.4.0/cpp-client-api/shared__ptr_8h.html b/releases/1.4.0/cpp-client-api/shared__ptr_8h.html
new file mode 100644
index 0000000..b604724
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/shared__ptr_8h.html
@@ -0,0 +1,129 @@
+<!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.11"/>
+<title>Kudu C++ client API: include/kudu/client/shared_ptr.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="files.html"><span>File&#160;List</span></a></li>
+      <li><a href="globals.html"><span>File&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_58b01e52e53886b8d78ab5060a2cd2bd.html">kudu</a></li><li class="navelem"><a class="el" href="dir_4eb331d85bb84eae27db9d0af49f6f99.html">client</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">shared_ptr.h File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>Smart pointer typedefs for externally-faced code.  
+<a href="#details">More...</a></p>
+<div class="textblock"><code>#include &lt;string&gt;</code><br />
+<code>#include &lt;tr1/memory&gt;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for shared_ptr.h:</div>
+<div class="dyncontent">
+<div class="center"><img src="shared__ptr_8h__incl.png" border="0" usemap="#include_2kudu_2client_2shared__ptr_8h" alt=""/></div>
+<map name="include_2kudu_2client_2shared__ptr_8h" id="include_2kudu_2client_2shared__ptr_8h">
+</map>
+</div>
+</div><div class="textblock"><div class="dynheader">
+This graph shows which files directly or indirectly include this file:</div>
+<div class="dyncontent">
+<div class="center"><img src="shared__ptr_8h__dep__incl.png" border="0" usemap="#include_2kudu_2client_2shared__ptr_8hdep" alt=""/></div>
+<map name="include_2kudu_2client_2shared__ptr_8hdep" id="include_2kudu_2client_2shared__ptr_8hdep">
+<area shape="rect" id="node2" href="client_8h_source.html" title="include/kudu/client\l/client.h" alt="" coords="5,184,136,225"/>
+<area shape="rect" id="node3" href="write__op_8h_source.html" title="include/kudu/client\l/write_op.h" alt="" coords="57,95,188,136"/>
+</map>
+</div>
+</div>
+<p><a href="shared__ptr_8h_source.html">Go to the source code of this file.</a></p>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>Smart pointer typedefs for externally-faced code. </p>
+<p>Kudu uses c++11 features internally, but provides a client interface which does not require c++11. We use std::tr1::shared_ptr in our public interface to hold shared instances of KuduClient, KuduSession, and KuduTable.</p>
+<p>However, if building with libc++ (e.g. if building on macOS), the TR1 APIs are not implemented. As a workaround, we use std::shared_ptr with libc++.</p>
+<p>In order to allow applications to compile against Kudu with libstdc++ as well as with libc++, macros are provided that will resolve to the correct namespace in either case. Clients are encouraged to use these macros in order to ensure that applications compile universally. </p>
+</div></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:02 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/shared__ptr_8h__dep__incl.map b/releases/1.4.0/cpp-client-api/shared__ptr_8h__dep__incl.map
new file mode 100644
index 0000000..d967f74
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/shared__ptr_8h__dep__incl.map
@@ -0,0 +1,4 @@
+<map id="include/kudu/client/shared_ptr.h" name="include/kudu/client/shared_ptr.h">
+<area shape="rect" id="node2" href="$client_8h_source.html" title="include/kudu/client\l/client.h" alt="" coords="5,184,136,225"/>
+<area shape="rect" id="node3" href="$write__op_8h_source.html" title="include/kudu/client\l/write_op.h" alt="" coords="57,95,188,136"/>
+</map>
diff --git a/releases/1.4.0/cpp-client-api/shared__ptr_8h__dep__incl.md5 b/releases/1.4.0/cpp-client-api/shared__ptr_8h__dep__incl.md5
new file mode 100644
index 0000000..6371870
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/shared__ptr_8h__dep__incl.md5
@@ -0,0 +1 @@
+a31321bc3b4b2e70c59abb27f670760e
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/shared__ptr_8h__dep__incl.png b/releases/1.4.0/cpp-client-api/shared__ptr_8h__dep__incl.png
new file mode 100644
index 0000000..28b5f11
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/shared__ptr_8h__dep__incl.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/shared__ptr_8h__incl.map b/releases/1.4.0/cpp-client-api/shared__ptr_8h__incl.map
new file mode 100644
index 0000000..e29516b
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/shared__ptr_8h__incl.map
@@ -0,0 +1,2 @@
+<map id="include/kudu/client/shared_ptr.h" name="include/kudu/client/shared_ptr.h">
+</map>
diff --git a/releases/1.4.0/cpp-client-api/shared__ptr_8h__incl.md5 b/releases/1.4.0/cpp-client-api/shared__ptr_8h__incl.md5
new file mode 100644
index 0000000..ac6855e
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/shared__ptr_8h__incl.md5
@@ -0,0 +1 @@
+5c62621a12985e893ef8311110a5201e
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/shared__ptr_8h__incl.png b/releases/1.4.0/cpp-client-api/shared__ptr_8h__incl.png
new file mode 100644
index 0000000..2fb0a6d
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/shared__ptr_8h__incl.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/shared__ptr_8h_source.html b/releases/1.4.0/cpp-client-api/shared__ptr_8h_source.html
new file mode 100644
index 0000000..c40db36
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/shared__ptr_8h_source.html
@@ -0,0 +1,102 @@
+<!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.11"/>
+<title>Kudu C++ client API: include/kudu/client/shared_ptr.h Source File</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="files.html"><span>File&#160;List</span></a></li>
+      <li><a href="globals.html"><span>File&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_58b01e52e53886b8d78ab5060a2cd2bd.html">kudu</a></li><li class="navelem"><a class="el" href="dir_4eb331d85bb84eae27db9d0af49f6f99.html">client</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">shared_ptr.h</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="shared__ptr_8h.html">Go to the documentation of this file.</a><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&quot;); 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="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#ifndef KUDU_CLIENT_SHARED_PTR_H</span></div><div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#define KUDU_CLIENT_SHARED_PTR_H</span></div><div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;</div><div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;</div><div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;<span class="comment">// This include is not used directly, but we need to include some C++ header in</span></div><div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;<span class="comment">// order to ensure the _LIBCPP_VERSION macro is defined appropriately.</span></div><div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;<span class="preprocessor">#include &lt;string&gt;</span></div><div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;</div><div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;<span class="preprocessor">#if defined(_LIBCPP_VERSION)</span></div><div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;</div><div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;<span class="preprocessor">#include &lt;memory&gt;</span></div><div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;</div><div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;<span class="keyword">namespace </span><a class="code" href="namespacekudu.html">kudu</a> {</div><div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;<span class="keyword">namespace </span>client {</div><div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;<span class="keyword">namespace </span>sp {</div><div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;  <span class="keyword">using</span> std::shared_ptr;</div><div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;  <span class="keyword">using</span> std::weak_ptr;</div><div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;  <span class="keyword">using</span> std::enable_shared_from_this;</div><div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;}</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;}</div><div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;</div><div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;<span class="preprocessor">#include &lt;tr1/memory&gt;</span></div><div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;</div><div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;<span class="keyword">namespace </span><a class="code" href="namespacekudu.html">kudu</a> {</div><div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;<span class="keyword">namespace </span>client {</div><div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;<span class="keyword">namespace </span>sp {</div><div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;  <span class="keyword">using</span> std::tr1::shared_ptr;</div><div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;  <span class="keyword">using</span> std::tr1::weak_ptr;</div><div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;  <span class="keyword">using</span> std::tr1::enable_shared_from_this;</div><div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;}</div><div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;}</div><div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;}</div><div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;</div><div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;<span class="preprocessor">#endif // define KUDU_CLIENT_SHARED_PTR_H</span></div><div class="ttc" id="namespacekudu_html"><div class="ttname"><a href="namespacekudu.html">kudu</a></div><div class="ttdef"><b>Definition:</b> callbacks.h:28</div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:02 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/slice_8h_source.html b/releases/1.4.0/cpp-client-api/slice_8h_source.html
new file mode 100644
index 0000000..0bb93b1
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/slice_8h_source.html
@@ -0,0 +1,125 @@
+<!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.11"/>
+<title>Kudu C++ client API: include/kudu/util/slice.h Source File</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="files.html"><span>File&#160;List</span></a></li>
+      <li><a href="globals.html"><span>File&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_58b01e52e53886b8d78ab5060a2cd2bd.html">kudu</a></li><li class="navelem"><a class="el" href="dir_e8a2e446cf73a5a1ae0ad6a5a21b6d03.html">util</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">slice.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">//</span></div><div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="comment">// Copyright (c) 2011 The LevelDB Authors. All rights reserved.</span></div><div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="comment">// Use of this source code is governed by a BSD-style license that can be</span></div><div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="comment">// found in the LICENSE file. See the AUTHORS file for names of contributors.</span></div><div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="comment">//</span></div><div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;</div><div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="preprocessor">#ifndef KUDU_UTIL_SLICE_H_</span></div><div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#define KUDU_UTIL_SLICE_H_</span></div><div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;</div><div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="preprocessor">#include &lt;assert.h&gt;</span></div><div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="preprocessor">#include &lt;map&gt;</span></div><div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="preprocessor">#include &lt;stddef.h&gt;</span></div><div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="preprocessor">#include &lt;stdint.h&gt;</span></div><div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="preprocessor">#include &lt;string.h&gt;</span></div><div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="preprocessor">#include &lt;string&gt;</span></div><div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;</div><div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="preprocessor">#ifdef KUDU_HEADERS_USE_RICH_SLICE</span></div><div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#include &quot;kudu/gutil/strings/fastmem.h&quot;</span></div><div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#include &quot;kudu/gutil/strings/stringpiece.h&quot;</span></div><div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#include &quot;kudu/util/faststring.h&quot;</span></div><div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#include &quot;kudu/util/kudu_export.h&quot;</span></div><div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;</div><div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="keyword">namespace </span><a class="code" href="namespacekudu.html">kudu</a> {</div><div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;</div><div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="keyword">class </span>Status;</div><div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;</div><div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="classkudu_1_1Slice.html">   43</a></span>&#160;<span class="keyword">class </span>KUDU_EXPORT <a class="code" href="classkudu_1_1Slice.html">Slice</a> {</div><div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="classkudu_1_1Slice.html#aaee66c59ee434349680679bdf0462b66">   46</a></span>&#160;  <a class="code" href="classkudu_1_1Slice.html#aaee66c59ee434349680679bdf0462b66">Slice</a>() : data_(reinterpret_cast&lt;const uint8_t *&gt;(<span class="stringliteral">&quot;&quot;</span>)),</div><div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;            size_(0) { }</div><div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;</div><div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="classkudu_1_1Slice.html#a904b8732b247676c52cbd9147b34c54c">   55</a></span>&#160;  <a class="code" href="classkudu_1_1Slice.html#a904b8732b247676c52cbd9147b34c54c">Slice</a>(<span class="keyword">const</span> uint8_t* d, <span class="keywordtype">size_t</span> n) : data_(d), size_(n) { }</div><div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;</div><div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="classkudu_1_1Slice.html#a9cb396203dd2c589e7d4f10bd80461d5">   63</a></span>&#160;  <a class="code" href="classkudu_1_1Slice.html#a9cb396203dd2c589e7d4f10bd80461d5">Slice</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* d, <span class="keywordtype">size_t</span> n) :</div><div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;    data_(reinterpret_cast&lt;const uint8_t *&gt;(d)),</div><div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;    size_(n) { }</div><div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;</div><div class="line"><a name="l00071"></a><span class="lineno"><a class="line" href="classkudu_1_1Slice.html#a13838e07b6dcea1895a774ab1ba62bdd">   71</a></span>&#160;  <a class="code" href="classkudu_1_1Slice.html#a13838e07b6dcea1895a774ab1ba62bdd">Slice</a>(<span class="keyword">const</span> std::string&amp; s) : <span class="comment">// NOLINT(runtime/explicit)</span></div><div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;    data_(reinterpret_cast&lt;const uint8_t *&gt;(s.data())),</div><div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;    size_(s.size()) { }</div><div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;</div><div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="classkudu_1_1Slice.html#ae8c6057eea15f8136e62255fd766e345">   79</a></span>&#160;  <a class="code" href="classkudu_1_1Slice.html#ae8c6057eea15f8136e62255fd766e345">Slice</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* s) : <span class="comment">// NOLINT(runtime/explicit)</span></div><div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;    data_(reinterpret_cast&lt;const uint8_t *&gt;(s)),</div><div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;    size_(strlen(s)) { }</div><div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;</div><div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;<span class="preprocessor">#ifdef KUDU_HEADERS_USE_RICH_SLICE</span></div><div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;  <a class="code" href="classkudu_1_1Slice.html">Slice</a>(<span class="keyword">const</span> faststring &amp;s) <span class="comment">// NOLINT(runtime/explicit)</span></div><div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;    : data_(s.data()),</div><div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;      size_(s.size()) {</div><div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;  }</div><div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;</div><div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;  <a class="code" href="classkudu_1_1Slice.html">Slice</a>(<span class="keyword">const</span> StringPiece&amp; s) <span class="comment">// NOLINT(runtime/explicit)</span></div><div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;    : data_(reinterpret_cast&lt;const uint8_t*&gt;(s.data())),</div><div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;      size_(s.size()) {</div><div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;  }</div><div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;</div><div class="line"><a name="l00106"></a><span class="lineno"><a class="line" href="classkudu_1_1Slice.html#a2d90a4590b995fb55229d25effb0c5bb">  106</a></span>&#160;  <span class="keyword">const</span> uint8_t* <a class="code" href="classkudu_1_1Slice.html#a2d90a4590b995fb55229d25effb0c5bb">data</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> data_; }</div><div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;</div><div class="line"><a name="l00109"></a><span class="lineno"><a class="line" href="classkudu_1_1Slice.html#a2771156d34daa166067b8d319ad7d164">  109</a></span>&#160;  uint8_t *<a class="code" href="classkudu_1_1Slice.html#a2771156d34daa166067b8d319ad7d164">mutable_data</a>() { <span class="keywordflow">return</span> <span class="keyword">const_cast&lt;</span>uint8_t *<span class="keyword">&gt;</span>(data_); }</div><div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;</div><div class="line"><a name="l00112"></a><span class="lineno"><a class="line" href="classkudu_1_1Slice.html#a141b4a1fc0555d57f192e574e427c146">  112</a></span>&#160;  <span class="keywordtype">size_t</span> <a class="code" href="classkudu_1_1Slice.html#a141b4a1fc0555d57f192e574e427c146">size</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> size_; }</div><div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;</div><div class="line"><a name="l00115"></a><span class="lineno"><a class="line" href="classkudu_1_1Slice.html#a79e41b882b0a85259be89f5698e27372">  115</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classkudu_1_1Slice.html#a79e41b882b0a85259be89f5698e27372">empty</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> size_ == 0; }</div><div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;</div><div class="line"><a name="l00122"></a><span class="lineno"><a class="line" href="classkudu_1_1Slice.html#a5ff06bc0fd9734536a464e604ec226f2">  122</a></span>&#160;  <span class="keyword">const</span> uint8_t &amp;<a class="code" href="classkudu_1_1Slice.html#a5ff06bc0fd9734536a464e604ec226f2">operator[]</a>(<span class="keywordtype">size_t</span> n)<span class="keyword"> const </span>{</div><div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;    assert(n &lt; size());</div><div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;    <span class="keywordflow">return</span> data_[n];</div><div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;  }</div><div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;</div><div class="line"><a name="l00128"></a><span class="lineno"><a class="line" href="classkudu_1_1Slice.html#afb914c0769f019a7c2f28b755cba5eb5">  128</a></span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classkudu_1_1Slice.html#afb914c0769f019a7c2f28b755cba5eb5">clear</a>() {</div><div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;    data_ = <span class="keyword">reinterpret_cast&lt;</span><span class="keyword">const </span>uint8_t *<span class="keyword">&gt;</span>(<span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;    size_ = 0;</div><div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;  }</div><div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;</div><div class="line"><a name="l00142"></a><span class="lineno"><a class="line" href="classkudu_1_1Slice.html#a00f5d310f9ebf17c198cf3feb69c3842">  142</a></span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classkudu_1_1Slice.html#a00f5d310f9ebf17c198cf3feb69c3842">remove_prefix</a>(<span class="keywordtype">size_t</span> n) {</div><div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;    assert(n &lt;= size());</div><div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;    data_ += n;</div><div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;    size_ -= n;</div><div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;  }</div><div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;</div><div class="line"><a name="l00157"></a><span class="lineno"><a class="line" href="classkudu_1_1Slice.html#a20f1c8e91ff0209e5c8f86766ef63d44">  157</a></span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classkudu_1_1Slice.html#a20f1c8e91ff0209e5c8f86766ef63d44">truncate</a>(<span class="keywordtype">size_t</span> n) {</div><div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;    assert(n &lt;= size());</div><div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;    size_ = n;</div><div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;  }</div><div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;</div><div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> check_size(<span class="keywordtype">size_t</span> expected_size) <span class="keyword">const</span>;</div><div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;</div><div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160;  std::string ToString() <span class="keyword">const</span>;</div><div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160;</div><div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160;  std::string ToDebugString(<span class="keywordtype">size_t</span> max_len = 0) <span class="keyword">const</span>;</div><div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;</div><div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160;  <span class="keywordtype">int</span> compare(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; b) <span class="keyword">const</span>;</div><div class="line"><a name="l00188"></a><span class="lineno">  188</span>&#160;</div><div class="line"><a name="l00193"></a><span class="lineno"><a class="line" href="classkudu_1_1Slice.html#a3ad7697d76b8205099d43ca552c12b8d">  193</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classkudu_1_1Slice.html#a3ad7697d76b8205099d43ca552c12b8d">starts_with</a>(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; x)<span class="keyword"> const </span>{</div><div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160;    <span class="keywordflow">return</span> ((size_ &gt;= x.size_) &amp;&amp;</div><div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160;            (MemEqual(data_, x.data_, x.size_)));</div><div class="line"><a name="l00196"></a><span class="lineno">  196</span>&#160;  }</div><div class="line"><a name="l00197"></a><span class="lineno">  197</span>&#160;</div><div class="line"><a name="l00199"></a><span class="lineno"><a class="line" href="structkudu_1_1Slice_1_1Comparator.html">  199</a></span>&#160;  <span class="keyword">struct </span><a class="code" href="structkudu_1_1Slice_1_1Comparator.html">Comparator</a> {</div><div class="line"><a name="l00207"></a><span class="lineno"><a class="line" href="structkudu_1_1Slice_1_1Comparator.html#a2f33c829e2febd880f9cbcbebb08fa6a">  207</a></span>&#160;    <span class="keywordtype">bool</span> <a class="code" href="structkudu_1_1Slice_1_1Comparator.html#a2f33c829e2febd880f9cbcbebb08fa6a">operator()</a>(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; a, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; b)<span class="keyword"> const </span>{</div><div class="line"><a name="l00208"></a><span class="lineno">  208</span>&#160;      <span class="keywordflow">return</span> a.<a class="code" href="classkudu_1_1Slice.html#a0ecc8d893b73a664c69396ad30b14d98">compare</a>(b) &lt; 0;</div><div class="line"><a name="l00209"></a><span class="lineno">  209</span>&#160;    }</div><div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;  };</div><div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160;</div><div class="line"><a name="l00218"></a><span class="lineno"><a class="line" href="classkudu_1_1Slice.html#a4bb1c9fe13873623b5a5a118830b1806">  218</a></span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classkudu_1_1Slice.html#a4bb1c9fe13873623b5a5a118830b1806">relocate</a>(uint8_t* d) {</div><div class="line"><a name="l00219"></a><span class="lineno">  219</span>&#160;    <span class="keywordflow">if</span> (data_ != d) {</div><div class="line"><a name="l00220"></a><span class="lineno">  220</span>&#160;      memcpy(d, data_, size_);</div><div class="line"><a name="l00221"></a><span class="lineno">  221</span>&#160;      data_ = d;</div><div class="line"><a name="l00222"></a><span class="lineno">  222</span>&#160;    }</div><div class="line"><a name="l00223"></a><span class="lineno">  223</span>&#160;  }</div><div class="line"><a name="l00224"></a><span class="lineno">  224</span>&#160;</div><div class="line"><a name="l00225"></a><span class="lineno">  225</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00226"></a><span class="lineno">  226</span>&#160;  <span class="keyword">friend</span> <span class="keywordtype">bool</span> operator==(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; x, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; y);</div><div class="line"><a name="l00227"></a><span class="lineno">  227</span>&#160;</div><div class="line"><a name="l00228"></a><span class="lineno">  228</span>&#160;  <span class="keyword">static</span> <span class="keywordtype">bool</span> MemEqual(<span class="keyword">const</span> <span class="keywordtype">void</span>* a, <span class="keyword">const</span> <span class="keywordtype">void</span>* b, <span class="keywordtype">size_t</span> n) {</div><div class="line"><a name="l00229"></a><span class="lineno">  229</span>&#160;<span class="preprocessor">#ifdef KUDU_HEADERS_USE_RICH_SLICE</span></div><div class="line"><a name="l00230"></a><span class="lineno">  230</span>&#160;    <span class="keywordflow">return</span> strings::memeq(a, b, n);</div><div class="line"><a name="l00231"></a><span class="lineno">  231</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00232"></a><span class="lineno">  232</span>&#160;    <span class="keywordflow">return</span> memcmp(a, b, n) == 0;</div><div class="line"><a name="l00233"></a><span class="lineno">  233</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00234"></a><span class="lineno">  234</span>&#160;  }</div><div class="line"><a name="l00235"></a><span class="lineno">  235</span>&#160;</div><div class="line"><a name="l00236"></a><span class="lineno">  236</span>&#160;  <span class="keyword">static</span> <span class="keywordtype">int</span> MemCompare(<span class="keyword">const</span> <span class="keywordtype">void</span>* a, <span class="keyword">const</span> <span class="keywordtype">void</span>* b, <span class="keywordtype">size_t</span> n) {</div><div class="line"><a name="l00237"></a><span class="lineno">  237</span>&#160;<span class="preprocessor">#ifdef KUDU_HEADERS_USE_RICH_SLICE</span></div><div class="line"><a name="l00238"></a><span class="lineno">  238</span>&#160;    <span class="keywordflow">return</span> strings::fastmemcmp_inlined(a, b, n);</div><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00240"></a><span class="lineno">  240</span>&#160;    <span class="keywordflow">return</span> memcmp(a, b, n);</div><div class="line"><a name="l00241"></a><span class="lineno">  241</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00242"></a><span class="lineno">  242</span>&#160;  }</div><div class="line"><a name="l00243"></a><span class="lineno">  243</span>&#160;</div><div class="line"><a name="l00244"></a><span class="lineno">  244</span>&#160;  <span class="keyword">const</span> uint8_t* data_;</div><div class="line"><a name="l00245"></a><span class="lineno">  245</span>&#160;  <span class="keywordtype">size_t</span> size_;</div><div class="line"><a name="l00246"></a><span class="lineno">  246</span>&#160;</div><div class="line"><a name="l00247"></a><span class="lineno">  247</span>&#160;  <span class="comment">// Intentionally copyable</span></div><div class="line"><a name="l00248"></a><span class="lineno">  248</span>&#160;};</div><div class="line"><a name="l00249"></a><span class="lineno">  249</span>&#160;</div><div class="line"><a name="l00257"></a><span class="lineno"><a class="line" href="classkudu_1_1Slice.html#a1323493265790d022203af0d8b31fd9c">  257</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">bool</span> operator==(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; x, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; y) {</div><div class="line"><a name="l00258"></a><span class="lineno">  258</span>&#160;  <span class="keywordflow">return</span> ((x.<a class="code" href="classkudu_1_1Slice.html#a141b4a1fc0555d57f192e574e427c146">size</a>() == y.<a class="code" href="classkudu_1_1Slice.html#a141b4a1fc0555d57f192e574e427c146">size</a>()) &amp;&amp;</div><div class="line"><a name="l00259"></a><span class="lineno">  259</span>&#160;          (Slice::MemEqual(x.<a class="code" href="classkudu_1_1Slice.html#a2d90a4590b995fb55229d25effb0c5bb">data</a>(), y.<a class="code" href="classkudu_1_1Slice.html#a2d90a4590b995fb55229d25effb0c5bb">data</a>(), x.<a class="code" href="classkudu_1_1Slice.html#a141b4a1fc0555d57f192e574e427c146">size</a>())));</div><div class="line"><a name="l00260"></a><span class="lineno">  260</span>&#160;}</div><div class="line"><a name="l00261"></a><span class="lineno">  261</span>&#160;</div><div class="line"><a name="l00269"></a><span class="lineno">  269</span>&#160;<span class="keyword">inline</span> <span class="keywordtype">bool</span> operator!=(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; x, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; y) {</div><div class="line"><a name="l00270"></a><span class="lineno">  270</span>&#160;  <span class="keywordflow">return</span> !(x == y);</div><div class="line"><a name="l00271"></a><span class="lineno">  271</span>&#160;}</div><div class="line"><a name="l00272"></a><span class="lineno">  272</span>&#160;</div><div class="line"><a name="l00280"></a><span class="lineno">  280</span>&#160;<span class="keyword">inline</span> std::ostream&amp; operator&lt;&lt;(std::ostream&amp; o, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; s) {</div><div class="line"><a name="l00281"></a><span class="lineno">  281</span>&#160;  <span class="keywordflow">return</span> o &lt;&lt; s.<a class="code" href="classkudu_1_1Slice.html#a412d632121ba52444d891c7a4f31dd42">ToDebugString</a>(16); <span class="comment">// should be enough for anyone...</span></div><div class="line"><a name="l00282"></a><span class="lineno">  282</span>&#160;}</div><div class="line"><a name="l00283"></a><span class="lineno">  283</span>&#160;</div><div class="line"><a name="l00284"></a><span class="lineno"><a class="line" href="classkudu_1_1Slice.html#a0ecc8d893b73a664c69396ad30b14d98">  284</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">int</span> <a class="code" href="classkudu_1_1Slice.html#a0ecc8d893b73a664c69396ad30b14d98">Slice::compare</a>(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; b)<span class="keyword"> const </span>{</div><div class="line"><a name="l00285"></a><span class="lineno">  285</span>&#160;  <span class="keyword">const</span> <span class="keywordtype">int</span> min_len = (size_ &lt; b.size_) ? size_ : b.size_;</div><div class="line"><a name="l00286"></a><span class="lineno">  286</span>&#160;  <span class="keywordtype">int</span> r = MemCompare(data_, b.data_, min_len);</div><div class="line"><a name="l00287"></a><span class="lineno">  287</span>&#160;  <span class="keywordflow">if</span> (r == 0) {</div><div class="line"><a name="l00288"></a><span class="lineno">  288</span>&#160;    <span class="keywordflow">if</span> (size_ &lt; b.size_) r = -1;</div><div class="line"><a name="l00289"></a><span class="lineno">  289</span>&#160;    <span class="keywordflow">else</span> <span class="keywordflow">if</span> (size_ &gt; b.size_) r = +1;</div><div class="line"><a name="l00290"></a><span class="lineno">  290</span>&#160;  }</div><div class="line"><a name="l00291"></a><span class="lineno">  291</span>&#160;  <span class="keywordflow">return</span> r;</div><div class="line"><a name="l00292"></a><span class="lineno">  292</span>&#160;}</div><div class="line"><a name="l00293"></a><span class="lineno">  293</span>&#160;</div><div class="line"><a name="l00309"></a><span class="lineno">  309</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">typename</span> T&gt;</div><div class="line"><a name="l00310"></a><span class="lineno"><a class="line" href="structkudu_1_1SliceMap.html">  310</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structkudu_1_1SliceMap.html">SliceMap</a> {</div><div class="line"><a name="l00312"></a><span class="lineno"><a class="line" href="structkudu_1_1SliceMap.html#ac97e49d0aa50ae49f34ab3bbd95ea5e6">  312</a></span>&#160;  <span class="keyword">typedef</span> std::map&lt;Slice, T, Slice::Comparator&gt; <a class="code" href="structkudu_1_1SliceMap.html#ac97e49d0aa50ae49f34ab3bbd95ea5e6">type</a>;</div><div class="line"><a name="l00313"></a><span class="lineno">  313</span>&#160;};</div><div class="line"><a name="l00314"></a><span class="lineno">  314</span>&#160;</div><div class="line"><a name="l00315"></a><span class="lineno">  315</span>&#160;}  <span class="comment">// namespace kudu</span></div><div class="line"><a name="l00316"></a><span class="lineno">  316</span>&#160;</div><div class="line"><a name="l00317"></a><span class="lineno">  317</span>&#160;<span class="preprocessor">#endif  // KUDU_UTIL_SLICE_H_</span></div><div class="ttc" id="classkudu_1_1Status_html"><div class="ttname"><a href="classkudu_1_1Status.html">kudu::Status</a></div><div class="ttdoc">A representation of an operation&amp;#39;s outcome. </div><div class="ttdef"><b>Definition:</b> status.h:130</div></div>
+<div class="ttc" id="namespacekudu_html"><div class="ttname"><a href="namespacekudu.html">kudu</a></div><div class="ttdef"><b>Definition:</b> callbacks.h:28</div></div>
+<div class="ttc" id="classkudu_1_1Slice_html_a4bb1c9fe13873623b5a5a118830b1806"><div class="ttname"><a href="classkudu_1_1Slice.html#a4bb1c9fe13873623b5a5a118830b1806">kudu::Slice::relocate</a></div><div class="ttdeci">void relocate(uint8_t *d)</div><div class="ttdef"><b>Definition:</b> slice.h:218</div></div>
+<div class="ttc" id="classkudu_1_1Slice_html_ae8c6057eea15f8136e62255fd766e345"><div class="ttname"><a href="classkudu_1_1Slice.html#ae8c6057eea15f8136e62255fd766e345">kudu::Slice::Slice</a></div><div class="ttdeci">Slice(const char *s)</div><div class="ttdef"><b>Definition:</b> slice.h:79</div></div>
+<div class="ttc" id="classkudu_1_1Slice_html_a3ad7697d76b8205099d43ca552c12b8d"><div class="ttname"><a href="classkudu_1_1Slice.html#a3ad7697d76b8205099d43ca552c12b8d">kudu::Slice::starts_with</a></div><div class="ttdeci">bool starts_with(const Slice &amp;x) const </div><div class="ttdef"><b>Definition:</b> slice.h:193</div></div>
+<div class="ttc" id="classkudu_1_1Slice_html_a412d632121ba52444d891c7a4f31dd42"><div class="ttname"><a href="classkudu_1_1Slice.html#a412d632121ba52444d891c7a4f31dd42">kudu::Slice::ToDebugString</a></div><div class="ttdeci">std::string ToDebugString(size_t max_len=0) const </div></div>
+<div class="ttc" id="structkudu_1_1SliceMap_html_ac97e49d0aa50ae49f34ab3bbd95ea5e6"><div class="ttname"><a href="structkudu_1_1SliceMap.html#ac97e49d0aa50ae49f34ab3bbd95ea5e6">kudu::SliceMap::type</a></div><div class="ttdeci">std::map&lt; Slice, T, Slice::Comparator &gt; type</div><div class="ttdoc">A handy typedef for the slice map with appropriate comparison operator. </div><div class="ttdef"><b>Definition:</b> slice.h:312</div></div>
+<div class="ttc" id="structkudu_1_1Slice_1_1Comparator_html_a2f33c829e2febd880f9cbcbebb08fa6a"><div class="ttname"><a href="structkudu_1_1Slice_1_1Comparator.html#a2f33c829e2febd880f9cbcbebb08fa6a">kudu::Slice::Comparator::operator()</a></div><div class="ttdeci">bool operator()(const Slice &amp;a, const Slice &amp;b) const </div><div class="ttdef"><b>Definition:</b> slice.h:207</div></div>
+<div class="ttc" id="classkudu_1_1Slice_html_afb914c0769f019a7c2f28b755cba5eb5"><div class="ttname"><a href="classkudu_1_1Slice.html#afb914c0769f019a7c2f28b755cba5eb5">kudu::Slice::clear</a></div><div class="ttdeci">void clear()</div><div class="ttdoc">Change this slice to refer to an empty array. </div><div class="ttdef"><b>Definition:</b> slice.h:128</div></div>
+<div class="ttc" id="classkudu_1_1Slice_html_a5ff06bc0fd9734536a464e604ec226f2"><div class="ttname"><a href="classkudu_1_1Slice.html#a5ff06bc0fd9734536a464e604ec226f2">kudu::Slice::operator[]</a></div><div class="ttdeci">const uint8_t &amp; operator[](size_t n) const </div><div class="ttdef"><b>Definition:</b> slice.h:122</div></div>
+<div class="ttc" id="structkudu_1_1Slice_1_1Comparator_html"><div class="ttname"><a href="structkudu_1_1Slice_1_1Comparator.html">kudu::Slice::Comparator</a></div><div class="ttdoc">Comparator struct, useful for ordered collections (like STL maps). </div><div class="ttdef"><b>Definition:</b> slice.h:199</div></div>
+<div class="ttc" id="classkudu_1_1Slice_html_a20f1c8e91ff0209e5c8f86766ef63d44"><div class="ttname"><a href="classkudu_1_1Slice.html#a20f1c8e91ff0209e5c8f86766ef63d44">kudu::Slice::truncate</a></div><div class="ttdeci">void truncate(size_t n)</div><div class="ttdef"><b>Definition:</b> slice.h:157</div></div>
+<div class="ttc" id="structkudu_1_1SliceMap_html"><div class="ttname"><a href="structkudu_1_1SliceMap.html">kudu::SliceMap</a></div><div class="ttdoc">STL map whose keys are Slices. </div><div class="ttdef"><b>Definition:</b> slice.h:310</div></div>
+<div class="ttc" id="classkudu_1_1Slice_html"><div class="ttname"><a href="classkudu_1_1Slice.html">kudu::Slice</a></div><div class="ttdoc">A wrapper around externally allocated data. </div><div class="ttdef"><b>Definition:</b> slice.h:43</div></div>
+<div class="ttc" id="classkudu_1_1Slice_html_a141b4a1fc0555d57f192e574e427c146"><div class="ttname"><a href="classkudu_1_1Slice.html#a141b4a1fc0555d57f192e574e427c146">kudu::Slice::size</a></div><div class="ttdeci">size_t size() const </div><div class="ttdef"><b>Definition:</b> slice.h:112</div></div>
+<div class="ttc" id="classkudu_1_1Slice_html_a904b8732b247676c52cbd9147b34c54c"><div class="ttname"><a href="classkudu_1_1Slice.html#a904b8732b247676c52cbd9147b34c54c">kudu::Slice::Slice</a></div><div class="ttdeci">Slice(const uint8_t *d, size_t n)</div><div class="ttdef"><b>Definition:</b> slice.h:55</div></div>
+<div class="ttc" id="classkudu_1_1Slice_html_a9cb396203dd2c589e7d4f10bd80461d5"><div class="ttname"><a href="classkudu_1_1Slice.html#a9cb396203dd2c589e7d4f10bd80461d5">kudu::Slice::Slice</a></div><div class="ttdeci">Slice(const char *d, size_t n)</div><div class="ttdef"><b>Definition:</b> slice.h:63</div></div>
+<div class="ttc" id="classkudu_1_1Slice_html_a2771156d34daa166067b8d319ad7d164"><div class="ttname"><a href="classkudu_1_1Slice.html#a2771156d34daa166067b8d319ad7d164">kudu::Slice::mutable_data</a></div><div class="ttdeci">uint8_t * mutable_data()</div><div class="ttdef"><b>Definition:</b> slice.h:109</div></div>
+<div class="ttc" id="classkudu_1_1Slice_html_a2d90a4590b995fb55229d25effb0c5bb"><div class="ttname"><a href="classkudu_1_1Slice.html#a2d90a4590b995fb55229d25effb0c5bb">kudu::Slice::data</a></div><div class="ttdeci">const uint8_t * data() const </div><div class="ttdef"><b>Definition:</b> slice.h:106</div></div>
+<div class="ttc" id="classkudu_1_1Slice_html_a00f5d310f9ebf17c198cf3feb69c3842"><div class="ttname"><a href="classkudu_1_1Slice.html#a00f5d310f9ebf17c198cf3feb69c3842">kudu::Slice::remove_prefix</a></div><div class="ttdeci">void remove_prefix(size_t n)</div><div class="ttdef"><b>Definition:</b> slice.h:142</div></div>
+<div class="ttc" id="classkudu_1_1Slice_html_a13838e07b6dcea1895a774ab1ba62bdd"><div class="ttname"><a href="classkudu_1_1Slice.html#a13838e07b6dcea1895a774ab1ba62bdd">kudu::Slice::Slice</a></div><div class="ttdeci">Slice(const std::string &amp;s)</div><div class="ttdef"><b>Definition:</b> slice.h:71</div></div>
+<div class="ttc" id="classkudu_1_1Slice_html_a0ecc8d893b73a664c69396ad30b14d98"><div class="ttname"><a href="classkudu_1_1Slice.html#a0ecc8d893b73a664c69396ad30b14d98">kudu::Slice::compare</a></div><div class="ttdeci">int compare(const Slice &amp;b) const </div><div class="ttdef"><b>Definition:</b> slice.h:284</div></div>
+<div class="ttc" id="classkudu_1_1Slice_html_aaee66c59ee434349680679bdf0462b66"><div class="ttname"><a href="classkudu_1_1Slice.html#aaee66c59ee434349680679bdf0462b66">kudu::Slice::Slice</a></div><div class="ttdeci">Slice()</div><div class="ttdoc">Create an empty slice. </div><div class="ttdef"><b>Definition:</b> slice.h:46</div></div>
+<div class="ttc" id="classkudu_1_1Slice_html_a79e41b882b0a85259be89f5698e27372"><div class="ttname"><a href="classkudu_1_1Slice.html#a79e41b882b0a85259be89f5698e27372">kudu::Slice::empty</a></div><div class="ttdeci">bool empty() const </div><div class="ttdef"><b>Definition:</b> slice.h:115</div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:02 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/splitbar.png b/releases/1.4.0/cpp-client-api/splitbar.png
new file mode 100644
index 0000000..fe895f2
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/splitbar.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/status_8h.html b/releases/1.4.0/cpp-client-api/status_8h.html
new file mode 100644
index 0000000..9817702
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/status_8h.html
@@ -0,0 +1,398 @@
+<!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.11"/>
+<title>Kudu C++ client API: include/kudu/util/status.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="files.html"><span>File&#160;List</span></a></li>
+      <li><a href="globals.html"><span>File&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_58b01e52e53886b8d78ab5060a2cd2bd.html">kudu</a></li><li class="navelem"><a class="el" href="dir_e8a2e446cf73a5a1ae0ad6a5a21b6d03.html">util</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a> &#124;
+<a href="#define-members">Macros</a>  </div>
+  <div class="headertitle">
+<div class="title">status.h File Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;stdint.h&gt;</code><br />
+<code>#include &lt;string&gt;</code><br />
+<code>#include &quot;kudu/client/stubs.h&quot;</code><br />
+<code>#include &quot;kudu/util/kudu_export.h&quot;</code><br />
+<code>#include &quot;kudu/util/slice.h&quot;</code><br />
+</div><div class="textblock"><div class="dynheader">
+Include dependency graph for status.h:</div>
+<div class="dyncontent">
+<div class="center"><img src="status_8h__incl.png" border="0" usemap="#include_2kudu_2util_2status_8h" alt=""/></div>
+<map name="include_2kudu_2util_2status_8h" id="include_2kudu_2util_2status_8h">
+<area shape="rect" id="node4" href="stubs_8h_source.html" title="kudu/client/stubs.h" alt="" coords="675,80,807,107"/>
+<area shape="rect" id="node7" href="kudu__export_8h_source.html" title="kudu/util/kudu_export.h" alt="" coords="174,155,331,181"/>
+<area shape="rect" id="node8" href="slice_8h_source.html" title="kudu/util/slice.h" alt="" coords="311,80,424,107"/>
+</map>
+</div>
+</div><div class="textblock"><div class="dynheader">
+This graph shows which files directly or indirectly include this file:</div>
+<div class="dyncontent">
+<div class="center"><img src="status_8h__dep__incl.png" border="0" usemap="#include_2kudu_2util_2status_8hdep" alt=""/></div>
+<map name="include_2kudu_2util_2status_8hdep" id="include_2kudu_2util_2status_8hdep">
+<area shape="rect" id="node2" href="client_8h_source.html" title="include/kudu/client\l/client.h" alt="" coords="23,80,154,121"/>
+</map>
+</div>
+</div>
+<p><a href="status_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1Status.html">kudu::Status</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">A representation of an operation's outcome.  <a href="classkudu_1_1Status.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a0de56a3f0e9d83b8ffdd63eac83c54ab"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="status_8h.html#a0de56a3f0e9d83b8ffdd63eac83c54ab">KUDU_RETURN_NOT_OK</a>(s)</td></tr>
+<tr class="memdesc:a0de56a3f0e9d83b8ffdd63eac83c54ab"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the given status if it is not <code>OK</code>.  <a href="#a0de56a3f0e9d83b8ffdd63eac83c54ab">More...</a><br /></td></tr>
+<tr class="separator:a0de56a3f0e9d83b8ffdd63eac83c54ab"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af66b8458f1d3f1264c1da86744e29e46"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="status_8h.html#af66b8458f1d3f1264c1da86744e29e46">KUDU_RETURN_NOT_OK_PREPEND</a>(s,  msg)</td></tr>
+<tr class="memdesc:af66b8458f1d3f1264c1da86744e29e46"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the given status if it is not OK, but first clone it and prepend the given message.  <a href="#af66b8458f1d3f1264c1da86744e29e46">More...</a><br /></td></tr>
+<tr class="separator:af66b8458f1d3f1264c1da86744e29e46"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a58d31c81bf1101a3ead737e9a4a4f223"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="status_8h.html#a58d31c81bf1101a3ead737e9a4a4f223">KUDU_RETURN_NOT_OK_RET</a>(to_call,  to_return)</td></tr>
+<tr class="memdesc:a58d31c81bf1101a3ead737e9a4a4f223"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return <code>to_return</code> if <code>to_call</code> returns a bad status. The substitution for 'to_return' may reference the variable <code>s</code> for the bad status.  <a href="#a58d31c81bf1101a3ead737e9a4a4f223">More...</a><br /></td></tr>
+<tr class="separator:a58d31c81bf1101a3ead737e9a4a4f223"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1e64fec5ef85c0c738f6ac3f398f607e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="status_8h.html#a1e64fec5ef85c0c738f6ac3f398f607e">KUDU_WARN_NOT_OK</a>(to_call,  warning_prefix)</td></tr>
+<tr class="memdesc:a1e64fec5ef85c0c738f6ac3f398f607e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Emit a warning if <code>to_call</code> returns a bad status.  <a href="#a1e64fec5ef85c0c738f6ac3f398f607e">More...</a><br /></td></tr>
+<tr class="separator:a1e64fec5ef85c0c738f6ac3f398f607e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abbd85cc2c5535627091bb06a21918150"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="status_8h.html#abbd85cc2c5535627091bb06a21918150">KUDU_LOG_AND_RETURN</a>(level,  status)</td></tr>
+<tr class="memdesc:abbd85cc2c5535627091bb06a21918150"><td class="mdescLeft">&#160;</td><td class="mdescRight">Log the given status and return immediately.  <a href="#abbd85cc2c5535627091bb06a21918150">More...</a><br /></td></tr>
+<tr class="separator:abbd85cc2c5535627091bb06a21918150"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af09a6a2eca53c9424d74c7fd9f39c5ce"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="status_8h.html#af09a6a2eca53c9424d74c7fd9f39c5ce">KUDU_RETURN_NOT_OK_LOG</a>(s,  level,  msg)</td></tr>
+<tr class="memdesc:af09a6a2eca53c9424d74c7fd9f39c5ce"><td class="mdescLeft">&#160;</td><td class="mdescRight">If the given status is not OK, log it and 'msg' at 'level' and return the status.  <a href="#af09a6a2eca53c9424d74c7fd9f39c5ce">More...</a><br /></td></tr>
+<tr class="separator:af09a6a2eca53c9424d74c7fd9f39c5ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a706c9f6ef1715b8f7a9185fb3c247d3f"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="status_8h.html#a706c9f6ef1715b8f7a9185fb3c247d3f">KUDU_CHECK_OK_PREPEND</a>(to_call,  msg)</td></tr>
+<tr class="memdesc:a706c9f6ef1715b8f7a9185fb3c247d3f"><td class="mdescLeft">&#160;</td><td class="mdescRight">If <code>to_call</code> returns a bad status, CHECK immediately with a logged message of <code>msg</code> followed by the status.  <a href="#a706c9f6ef1715b8f7a9185fb3c247d3f">More...</a><br /></td></tr>
+<tr class="separator:a706c9f6ef1715b8f7a9185fb3c247d3f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac503ba85e942147294cdc82087da60f6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac503ba85e942147294cdc82087da60f6"></a>
+#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="status_8h.html#ac503ba85e942147294cdc82087da60f6">KUDU_CHECK_OK</a>(s)&#160;&#160;&#160;<a class="el" href="status_8h.html#a706c9f6ef1715b8f7a9185fb3c247d3f">KUDU_CHECK_OK_PREPEND</a>(s, &quot;Bad status&quot;)</td></tr>
+<tr class="memdesc:ac503ba85e942147294cdc82087da60f6"><td class="mdescLeft">&#160;</td><td class="mdescRight">If the status is bad, CHECK immediately, appending the status to the logged message. <br /></td></tr>
+<tr class="separator:ac503ba85e942147294cdc82087da60f6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2b360b53025724bb97d1dc21e25e26cc"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="status_8h.html#a2b360b53025724bb97d1dc21e25e26cc">KUDU_DCHECK_OK_PREPEND</a>(to_call,  msg)</td></tr>
+<tr class="memdesc:a2b360b53025724bb97d1dc21e25e26cc"><td class="mdescLeft">&#160;</td><td class="mdescRight">If <code>to_call</code> returns a bad status, DCHECK immediately with a logged message of <code>msg</code> followed by the status.  <a href="#a2b360b53025724bb97d1dc21e25e26cc">More...</a><br /></td></tr>
+<tr class="separator:a2b360b53025724bb97d1dc21e25e26cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a99332afa18f00de3c7fcf3e76949df9d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a99332afa18f00de3c7fcf3e76949df9d"></a>
+#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="status_8h.html#a99332afa18f00de3c7fcf3e76949df9d">KUDU_DCHECK_OK</a>(s)&#160;&#160;&#160;<a class="el" href="status_8h.html#a2b360b53025724bb97d1dc21e25e26cc">KUDU_DCHECK_OK_PREPEND</a>(s, &quot;Bad status&quot;)</td></tr>
+<tr class="memdesc:a99332afa18f00de3c7fcf3e76949df9d"><td class="mdescLeft">&#160;</td><td class="mdescRight">If the status is bad, DCHECK immediately, appending the status to the logged 'Bad status' message. <br /></td></tr>
+<tr class="separator:a99332afa18f00de3c7fcf3e76949df9d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>This header is used in both the Kudu build as well as in builds of applications that use the Kudu C++ client. In the latter we need to be careful to "namespace" our macros, to avoid colliding or overriding with similarly named macros belonging to the application.</p>
+<p>KUDU_HEADERS_USE_SHORT_STATUS_MACROS handles this behavioral change. When defined, we're building Kudu and: </p><ul>
+<li>Non-namespaced macros are allowed and mapped to the namespaced versions defined above. </li>
+<li>Namespaced versions of glog macros are mapped to the real glog macros (otherwise the macros are defined in the C++ client stubs). </li>
+</ul>
+</div><h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="a706c9f6ef1715b8f7a9185fb3c247d3f"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define KUDU_CHECK_OK_PREPEND</td>
+          <td>(</td>
+          <td class="paramtype">&#160;</td>
+          <td class="paramname">to_call, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">&#160;</td>
+          <td class="paramname">msg&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<b>Value:</b><div class="fragment"><div class="line"><span class="keywordflow">do</span> { \</div><div class="line">    const ::kudu::Status&amp; _s = (to_call);                   \</div><div class="line">    KUDU_CHECK(_s.ok()) &lt;&lt; (msg) &lt;&lt; <span class="stringliteral">&quot;: &quot;</span> &lt;&lt; _s.ToString();  \</div><div class="line">  } <span class="keywordflow">while</span> (0);</div></div><!-- fragment -->
+<p>If <code>to_call</code> returns a bad status, CHECK immediately with a logged message of <code>msg</code> followed by the status. </p>
+
+</div>
+</div>
+<a class="anchor" id="a2b360b53025724bb97d1dc21e25e26cc"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define KUDU_DCHECK_OK_PREPEND</td>
+          <td>(</td>
+          <td class="paramtype">&#160;</td>
+          <td class="paramname">to_call, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">&#160;</td>
+          <td class="paramname">msg&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<b>Value:</b><div class="fragment"><div class="line"><span class="keywordflow">do</span> { \</div><div class="line">    const ::kudu::Status&amp; _s = (to_call);                   \</div><div class="line">    KUDU_DCHECK(_s.ok()) &lt;&lt; (msg) &lt;&lt; <span class="stringliteral">&quot;: &quot;</span> &lt;&lt; _s.ToString();  \</div><div class="line">  } <span class="keywordflow">while</span> (0);</div></div><!-- fragment -->
+<p>If <code>to_call</code> returns a bad status, DCHECK immediately with a logged message of <code>msg</code> followed by the status. </p>
+
+</div>
+</div>
+<a class="anchor" id="abbd85cc2c5535627091bb06a21918150"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define KUDU_LOG_AND_RETURN</td>
+          <td>(</td>
+          <td class="paramtype">&#160;</td>
+          <td class="paramname">level, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">&#160;</td>
+          <td class="paramname">status&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<b>Value:</b><div class="fragment"><div class="line"><span class="keywordflow">do</span> { \</div><div class="line">    const ::kudu::Status&amp; _s = (status);        \</div><div class="line">    KUDU_LOG(level) &lt;&lt; _s.ToString(); \</div><div class="line">    return _s; \</div><div class="line">  } <span class="keywordflow">while</span> (0);</div></div><!-- fragment -->
+<p>Log the given status and return immediately. </p>
+
+</div>
+</div>
+<a class="anchor" id="a0de56a3f0e9d83b8ffdd63eac83c54ab"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define KUDU_RETURN_NOT_OK</td>
+          <td>(</td>
+          <td class="paramtype">&#160;</td>
+          <td class="paramname">s</td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<b>Value:</b><div class="fragment"><div class="line"><span class="keywordflow">do</span> { \</div><div class="line">    const ::kudu::Status&amp; _s = (s);             \</div><div class="line">    if (PREDICT_FALSE(!_s.ok())) return _s;     \</div><div class="line">  } while (0);</div></div><!-- fragment -->
+<p>Return the given status if it is not <code>OK</code>. </p>
+
+</div>
+</div>
+<a class="anchor" id="af09a6a2eca53c9424d74c7fd9f39c5ce"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define KUDU_RETURN_NOT_OK_LOG</td>
+          <td>(</td>
+          <td class="paramtype">&#160;</td>
+          <td class="paramname">s, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">&#160;</td>
+          <td class="paramname">level, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">&#160;</td>
+          <td class="paramname">msg&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<b>Value:</b><div class="fragment"><div class="line"><span class="keywordflow">do</span> { \</div><div class="line">    const ::kudu::Status&amp; _s = (s);             \</div><div class="line">    if (PREDICT_FALSE(!_s.ok())) { \</div><div class="line">      KUDU_LOG(level) &lt;&lt; <span class="stringliteral">&quot;Status: &quot;</span> &lt;&lt; _s.ToString() &lt;&lt; <span class="stringliteral">&quot; &quot;</span> &lt;&lt; (msg); \</div><div class="line">      return _s;     \</div><div class="line">    } \</div><div class="line">  } <span class="keywordflow">while</span> (0);</div></div><!-- fragment -->
+<p>If the given status is not OK, log it and 'msg' at 'level' and return the status. </p>
+
+</div>
+</div>
+<a class="anchor" id="af66b8458f1d3f1264c1da86744e29e46"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define KUDU_RETURN_NOT_OK_PREPEND</td>
+          <td>(</td>
+          <td class="paramtype">&#160;</td>
+          <td class="paramname">s, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">&#160;</td>
+          <td class="paramname">msg&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<b>Value:</b><div class="fragment"><div class="line"><span class="keywordflow">do</span> { \</div><div class="line">    const ::kudu::Status&amp; _s = (s);                              \</div><div class="line">    if (PREDICT_FALSE(!_s.ok())) return _s.CloneAndPrepend(msg); \</div><div class="line">  } while (0);</div></div><!-- fragment -->
+<p>Return the given status if it is not OK, but first clone it and prepend the given message. </p>
+
+</div>
+</div>
+<a class="anchor" id="a58d31c81bf1101a3ead737e9a4a4f223"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define KUDU_RETURN_NOT_OK_RET</td>
+          <td>(</td>
+          <td class="paramtype">&#160;</td>
+          <td class="paramname">to_call, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">&#160;</td>
+          <td class="paramname">to_return&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<b>Value:</b><div class="fragment"><div class="line"><span class="keywordflow">do</span> { \</div><div class="line">    const ::kudu::Status&amp; s = (to_call);                \</div><div class="line">    if (PREDICT_FALSE(!s.ok())) return (to_return);  \</div><div class="line">  } while (0);</div></div><!-- fragment -->
+<p>Return <code>to_return</code> if <code>to_call</code> returns a bad status. The substitution for 'to_return' may reference the variable <code>s</code> for the bad status. </p>
+
+</div>
+</div>
+<a class="anchor" id="a1e64fec5ef85c0c738f6ac3f398f607e"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define KUDU_WARN_NOT_OK</td>
+          <td>(</td>
+          <td class="paramtype">&#160;</td>
+          <td class="paramname">to_call, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">&#160;</td>
+          <td class="paramname">warning_prefix&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<b>Value:</b><div class="fragment"><div class="line"><span class="keywordflow">do</span> { \</div><div class="line">    const ::kudu::Status&amp; _s = (to_call);              \</div><div class="line">    if (PREDICT_FALSE(!_s.ok())) { \</div><div class="line">      KUDU_LOG(WARNING) &lt;&lt; (warning_prefix) &lt;&lt; <span class="stringliteral">&quot;: &quot;</span> &lt;&lt; _s.ToString();  \</div><div class="line">    } \</div><div class="line">  } <span class="keywordflow">while</span> (0);</div></div><!-- fragment -->
+<p>Emit a warning if <code>to_call</code> returns a bad status. </p>
+
+</div>
+</div>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:02 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/status_8h__dep__incl.map b/releases/1.4.0/cpp-client-api/status_8h__dep__incl.map
new file mode 100644
index 0000000..1624b8a
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/status_8h__dep__incl.map
@@ -0,0 +1,3 @@
+<map id="include/kudu/util/status.h" name="include/kudu/util/status.h">
+<area shape="rect" id="node2" href="$client_8h_source.html" title="include/kudu/client\l/client.h" alt="" coords="23,80,154,121"/>
+</map>
diff --git a/releases/1.4.0/cpp-client-api/status_8h__dep__incl.md5 b/releases/1.4.0/cpp-client-api/status_8h__dep__incl.md5
new file mode 100644
index 0000000..4cfe262
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/status_8h__dep__incl.md5
@@ -0,0 +1 @@
+1012e24c4e1e2db0977d90bc6bbde64a
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/status_8h__dep__incl.png b/releases/1.4.0/cpp-client-api/status_8h__dep__incl.png
new file mode 100644
index 0000000..a1b66a2
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/status_8h__dep__incl.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/status_8h__incl.map b/releases/1.4.0/cpp-client-api/status_8h__incl.map
new file mode 100644
index 0000000..33e1c4a
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/status_8h__incl.map
@@ -0,0 +1,5 @@
+<map id="include/kudu/util/status.h" name="include/kudu/util/status.h">
+<area shape="rect" id="node4" href="$stubs_8h_source.html" title="kudu/client/stubs.h" alt="" coords="675,80,807,107"/>
+<area shape="rect" id="node7" href="$kudu__export_8h_source.html" title="kudu/util/kudu_export.h" alt="" coords="174,155,331,181"/>
+<area shape="rect" id="node8" href="$slice_8h_source.html" title="kudu/util/slice.h" alt="" coords="311,80,424,107"/>
+</map>
diff --git a/releases/1.4.0/cpp-client-api/status_8h__incl.md5 b/releases/1.4.0/cpp-client-api/status_8h__incl.md5
new file mode 100644
index 0000000..73a0825
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/status_8h__incl.md5
@@ -0,0 +1 @@
+e99ab758ed51f30e1641a05cc3803c0c
\ No newline at end of file
diff --git a/releases/1.4.0/cpp-client-api/status_8h__incl.png b/releases/1.4.0/cpp-client-api/status_8h__incl.png
new file mode 100644
index 0000000..b8e7257
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/status_8h__incl.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/status_8h_source.html b/releases/1.4.0/cpp-client-api/status_8h_source.html
new file mode 100644
index 0000000..2401667
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/status_8h_source.html
@@ -0,0 +1,126 @@
+<!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.11"/>
+<title>Kudu C++ client API: include/kudu/util/status.h Source File</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="files.html"><span>File&#160;List</span></a></li>
+      <li><a href="globals.html"><span>File&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_58b01e52e53886b8d78ab5060a2cd2bd.html">kudu</a></li><li class="navelem"><a class="el" href="dir_e8a2e446cf73a5a1ae0ad6a5a21b6d03.html">util</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">status.h</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="status_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="comment">// Copyright (c) 2011 The LevelDB Authors. All rights reserved.</span></div><div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="comment">// Use of this source code is governed by a BSD-style license that can be</span></div><div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="comment">// found in the LICENSE file. See the AUTHORS file for names of contributors.</span></div><div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="comment">//</span></div><div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="comment">// A Status encapsulates the result of an operation.  It may indicate success,</span></div><div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="comment">// or it may indicate an error with an associated error message.</span></div><div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="comment">//</span></div><div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="comment">// Multiple threads can invoke const methods on a Status without</span></div><div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="comment">// external synchronization, but if any of the threads may call a</span></div><div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="comment">// non-const method, all threads accessing the same Status must use</span></div><div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="comment">// external synchronization.</span></div><div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;</div><div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="preprocessor">#ifndef KUDU_UTIL_STATUS_H_</span></div><div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="preprocessor">#define KUDU_UTIL_STATUS_H_</span></div><div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;</div><div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="preprocessor">#include &lt;stdint.h&gt;</span></div><div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="preprocessor">#include &lt;string&gt;</span></div><div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;</div><div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#ifdef KUDU_HEADERS_NO_STUBS</span></div><div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#include &quot;kudu/gutil/macros.h&quot;</span></div><div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#include &quot;kudu/gutil/port.h&quot;</span></div><div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#include &quot;kudu/client/stubs.h&quot;</span></div><div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;</div><div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="preprocessor">#include &quot;kudu/util/kudu_export.h&quot;</span></div><div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="preprocessor">#include &quot;kudu/util/slice.h&quot;</span></div><div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;</div><div class="line"><a name="l00030"></a><span class="lineno"><a class="line" href="status_8h.html#a0de56a3f0e9d83b8ffdd63eac83c54ab">   30</a></span>&#160;<span class="preprocessor">#define KUDU_RETURN_NOT_OK(s) do { \</span></div><div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;<span class="preprocessor">    const ::kudu::Status&amp; _s = (s);             \</span></div><div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;<span class="preprocessor">    if (PREDICT_FALSE(!_s.ok())) return _s;     \</span></div><div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;<span class="preprocessor">  } while (0);</span></div><div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;</div><div class="line"><a name="l00037"></a><span class="lineno"><a class="line" href="status_8h.html#af66b8458f1d3f1264c1da86744e29e46">   37</a></span>&#160;<span class="preprocessor">#define KUDU_RETURN_NOT_OK_PREPEND(s, msg) do { \</span></div><div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;<span class="preprocessor">    const ::kudu::Status&amp; _s = (s);                              \</span></div><div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;<span class="preprocessor">    if (PREDICT_FALSE(!_s.ok())) return _s.CloneAndPrepend(msg); \</span></div><div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;<span class="preprocessor">  } while (0);</span></div><div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;</div><div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="status_8h.html#a58d31c81bf1101a3ead737e9a4a4f223">   45</a></span>&#160;<span class="preprocessor">#define KUDU_RETURN_NOT_OK_RET(to_call, to_return) do { \</span></div><div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;<span class="preprocessor">    const ::kudu::Status&amp; s = (to_call);                \</span></div><div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;<span class="preprocessor">    if (PREDICT_FALSE(!s.ok())) return (to_return);  \</span></div><div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;<span class="preprocessor">  } while (0);</span></div><div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;</div><div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="status_8h.html#a1e64fec5ef85c0c738f6ac3f398f607e">   51</a></span>&#160;<span class="preprocessor">#define KUDU_WARN_NOT_OK(to_call, warning_prefix) do { \</span></div><div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;<span class="preprocessor">    const ::kudu::Status&amp; _s = (to_call);              \</span></div><div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;<span class="preprocessor">    if (PREDICT_FALSE(!_s.ok())) { \</span></div><div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;<span class="preprocessor">      KUDU_LOG(WARNING) &lt;&lt; (warning_prefix) &lt;&lt; &quot;: &quot; &lt;&lt; _s.ToString();  \</span></div><div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;<span class="preprocessor">    } \</span></div><div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;<span class="preprocessor">  } while (0);</span></div><div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;</div><div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="status_8h.html#abbd85cc2c5535627091bb06a21918150">   59</a></span>&#160;<span class="preprocessor">#define KUDU_LOG_AND_RETURN(level, status) do { \</span></div><div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;<span class="preprocessor">    const ::kudu::Status&amp; _s = (status);        \</span></div><div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;<span class="preprocessor">    KUDU_LOG(level) &lt;&lt; _s.ToString(); \</span></div><div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;<span class="preprocessor">    return _s; \</span></div><div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;<span class="preprocessor">  } while (0);</span></div><div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;</div><div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="status_8h.html#af09a6a2eca53c9424d74c7fd9f39c5ce">   66</a></span>&#160;<span class="preprocessor">#define KUDU_RETURN_NOT_OK_LOG(s, level, msg) do { \</span></div><div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;<span class="preprocessor">    const ::kudu::Status&amp; _s = (s);             \</span></div><div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;<span class="preprocessor">    if (PREDICT_FALSE(!_s.ok())) { \</span></div><div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;<span class="preprocessor">      KUDU_LOG(level) &lt;&lt; &quot;Status: &quot; &lt;&lt; _s.ToString() &lt;&lt; &quot; &quot; &lt;&lt; (msg); \</span></div><div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;<span class="preprocessor">      return _s;     \</span></div><div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;<span class="preprocessor">    } \</span></div><div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;<span class="preprocessor">  } while (0);</span></div><div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;</div><div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="status_8h.html#a706c9f6ef1715b8f7a9185fb3c247d3f">   76</a></span>&#160;<span class="preprocessor">#define KUDU_CHECK_OK_PREPEND(to_call, msg) do { \</span></div><div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;<span class="preprocessor">    const ::kudu::Status&amp; _s = (to_call);                   \</span></div><div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;<span class="preprocessor">    KUDU_CHECK(_s.ok()) &lt;&lt; (msg) &lt;&lt; &quot;: &quot; &lt;&lt; _s.ToString();  \</span></div><div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;<span class="preprocessor">  } while (0);</span></div><div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;</div><div class="line"><a name="l00083"></a><span class="lineno"><a class="line" href="status_8h.html#ac503ba85e942147294cdc82087da60f6">   83</a></span>&#160;<span class="preprocessor">#define KUDU_CHECK_OK(s) KUDU_CHECK_OK_PREPEND(s, &quot;Bad status&quot;)</span></div><div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;</div><div class="line"><a name="l00087"></a><span class="lineno"><a class="line" href="status_8h.html#a2b360b53025724bb97d1dc21e25e26cc">   87</a></span>&#160;<span class="preprocessor">#define KUDU_DCHECK_OK_PREPEND(to_call, msg) do { \</span></div><div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;<span class="preprocessor">    const ::kudu::Status&amp; _s = (to_call);                   \</span></div><div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;<span class="preprocessor">    KUDU_DCHECK(_s.ok()) &lt;&lt; (msg) &lt;&lt; &quot;: &quot; &lt;&lt; _s.ToString();  \</span></div><div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;<span class="preprocessor">  } while (0);</span></div><div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;</div><div class="line"><a name="l00094"></a><span class="lineno"><a class="line" href="status_8h.html#a99332afa18f00de3c7fcf3e76949df9d">   94</a></span>&#160;<span class="preprocessor">#define KUDU_DCHECK_OK(s) KUDU_DCHECK_OK_PREPEND(s, &quot;Bad status&quot;)</span></div><div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;</div><div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;<span class="preprocessor">#ifdef KUDU_HEADERS_USE_SHORT_STATUS_MACROS</span></div><div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;<span class="preprocessor">#define RETURN_NOT_OK         KUDU_RETURN_NOT_OK</span></div><div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;<span class="preprocessor">#define RETURN_NOT_OK_PREPEND KUDU_RETURN_NOT_OK_PREPEND</span></div><div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;<span class="preprocessor">#define RETURN_NOT_OK_RET     KUDU_RETURN_NOT_OK_RET</span></div><div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;<span class="preprocessor">#define WARN_NOT_OK           KUDU_WARN_NOT_OK</span></div><div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;<span class="preprocessor">#define LOG_AND_RETURN        KUDU_LOG_AND_RETURN</span></div><div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;<span class="preprocessor">#define RETURN_NOT_OK_LOG     KUDU_RETURN_NOT_OK_LOG</span></div><div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;<span class="preprocessor">#define CHECK_OK_PREPEND      KUDU_CHECK_OK_PREPEND</span></div><div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;<span class="preprocessor">#define CHECK_OK              KUDU_CHECK_OK</span></div><div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;<span class="preprocessor">#define DCHECK_OK_PREPEND     KUDU_DCHECK_OK_PREPEND</span></div><div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;<span class="preprocessor">#define DCHECK_OK             KUDU_DCHECK_OK</span></div><div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;</div><div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;<span class="comment">// These are standard glog macros.</span></div><div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;<span class="preprocessor">#define KUDU_LOG              LOG</span></div><div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;<span class="preprocessor">#define KUDU_CHECK            CHECK</span></div><div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;<span class="preprocessor">#define KUDU_DCHECK           DCHECK</span></div><div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;</div><div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;<span class="keyword">namespace </span><a class="code" href="namespacekudu.html">kudu</a> {</div><div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;</div><div class="line"><a name="l00130"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html">  130</a></span>&#160;<span class="keyword">class </span>KUDU_EXPORT <a class="code" href="classkudu_1_1Status.html">Status</a> {</div><div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00133"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#ad14eb530b3449967ee976aaa1c0bcde0">  133</a></span>&#160;  <a class="code" href="classkudu_1_1Status.html#ad14eb530b3449967ee976aaa1c0bcde0">Status</a>() : state_(NULL) { }</div><div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;</div><div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;  ~<a class="code" href="classkudu_1_1Status.html">Status</a>() { <span class="keyword">delete</span>[] state_; }</div><div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;</div><div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a>(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Status.html">Status</a>&amp; s);</div><div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;</div><div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a>&amp; operator=(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Status.html">Status</a>&amp; s);</div><div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;</div><div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;<span class="preprocessor">#if __cplusplus &gt;= 201103L</span></div><div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a>(<a class="code" href="classkudu_1_1Status.html">Status</a>&amp;&amp; s);</div><div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;</div><div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a>&amp; operator=(<a class="code" href="classkudu_1_1Status.html">Status</a>&amp;&amp; s);</div><div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;</div><div class="line"><a name="l00166"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#adaff3248b2f66041d0a7dd59f118b7ac">  166</a></span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1Status.html">Status</a> <a class="code" href="classkudu_1_1Status.html#adaff3248b2f66041d0a7dd59f118b7ac">OK</a>() { <span class="keywordflow">return</span> <a class="code" href="classkudu_1_1Status.html">Status</a>(); }</div><div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;</div><div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;</div><div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1Status.html">Status</a> NotFound(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg2 = <a class="code" href="classkudu_1_1Slice.html">Slice</a>(),</div><div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;                         int16_t posix_code = -1) {</div><div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classkudu_1_1Status.html">Status</a>(kNotFound, msg, msg2, posix_code);</div><div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160;  }</div><div class="line"><a name="l00184"></a><span class="lineno">  184</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1Status.html">Status</a> Corruption(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg2 = <a class="code" href="classkudu_1_1Slice.html">Slice</a>(),</div><div class="line"><a name="l00185"></a><span class="lineno">  185</span>&#160;                         int16_t posix_code = -1) {</div><div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classkudu_1_1Status.html">Status</a>(kCorruption, msg, msg2, posix_code);</div><div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160;  }</div><div class="line"><a name="l00188"></a><span class="lineno">  188</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1Status.html">Status</a> NotSupported(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg2 = <a class="code" href="classkudu_1_1Slice.html">Slice</a>(),</div><div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160;                         int16_t posix_code = -1) {</div><div class="line"><a name="l00190"></a><span class="lineno">  190</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classkudu_1_1Status.html">Status</a>(kNotSupported, msg, msg2, posix_code);</div><div class="line"><a name="l00191"></a><span class="lineno">  191</span>&#160;  }</div><div class="line"><a name="l00192"></a><span class="lineno">  192</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1Status.html">Status</a> InvalidArgument(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg2 = <a class="code" href="classkudu_1_1Slice.html">Slice</a>(),</div><div class="line"><a name="l00193"></a><span class="lineno">  193</span>&#160;                         int16_t posix_code = -1) {</div><div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classkudu_1_1Status.html">Status</a>(kInvalidArgument, msg, msg2, posix_code);</div><div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160;  }</div><div class="line"><a name="l00196"></a><span class="lineno">  196</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1Status.html">Status</a> IOError(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg2 = <a class="code" href="classkudu_1_1Slice.html">Slice</a>(),</div><div class="line"><a name="l00197"></a><span class="lineno">  197</span>&#160;                         int16_t posix_code = -1) {</div><div class="line"><a name="l00198"></a><span class="lineno">  198</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classkudu_1_1Status.html">Status</a>(kIOError, msg, msg2, posix_code);</div><div class="line"><a name="l00199"></a><span class="lineno">  199</span>&#160;  }</div><div class="line"><a name="l00200"></a><span class="lineno">  200</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1Status.html">Status</a> AlreadyPresent(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg2 = <a class="code" href="classkudu_1_1Slice.html">Slice</a>(),</div><div class="line"><a name="l00201"></a><span class="lineno">  201</span>&#160;                         int16_t posix_code = -1) {</div><div class="line"><a name="l00202"></a><span class="lineno">  202</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classkudu_1_1Status.html">Status</a>(kAlreadyPresent, msg, msg2, posix_code);</div><div class="line"><a name="l00203"></a><span class="lineno">  203</span>&#160;  }</div><div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1Status.html">Status</a> RuntimeError(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg2 = <a class="code" href="classkudu_1_1Slice.html">Slice</a>(),</div><div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160;                         int16_t posix_code = -1) {</div><div class="line"><a name="l00206"></a><span class="lineno">  206</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classkudu_1_1Status.html">Status</a>(kRuntimeError, msg, msg2, posix_code);</div><div class="line"><a name="l00207"></a><span class="lineno">  207</span>&#160;  }</div><div class="line"><a name="l00208"></a><span class="lineno">  208</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1Status.html">Status</a> NetworkError(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg2 = <a class="code" href="classkudu_1_1Slice.html">Slice</a>(),</div><div class="line"><a name="l00209"></a><span class="lineno">  209</span>&#160;                         int16_t posix_code = -1) {</div><div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classkudu_1_1Status.html">Status</a>(kNetworkError, msg, msg2, posix_code);</div><div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160;  }</div><div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1Status.html">Status</a> IllegalState(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg2 = <a class="code" href="classkudu_1_1Slice.html">Slice</a>(),</div><div class="line"><a name="l00213"></a><span class="lineno">  213</span>&#160;                         int16_t posix_code = -1) {</div><div class="line"><a name="l00214"></a><span class="lineno">  214</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classkudu_1_1Status.html">Status</a>(kIllegalState, msg, msg2, posix_code);</div><div class="line"><a name="l00215"></a><span class="lineno">  215</span>&#160;  }</div><div class="line"><a name="l00216"></a><span class="lineno">  216</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1Status.html">Status</a> NotAuthorized(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg2 = <a class="code" href="classkudu_1_1Slice.html">Slice</a>(),</div><div class="line"><a name="l00217"></a><span class="lineno">  217</span>&#160;                         int16_t posix_code = -1) {</div><div class="line"><a name="l00218"></a><span class="lineno">  218</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classkudu_1_1Status.html">Status</a>(kNotAuthorized, msg, msg2, posix_code);</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;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1Status.html">Status</a> Aborted(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg2 = <a class="code" href="classkudu_1_1Slice.html">Slice</a>(),</div><div class="line"><a name="l00221"></a><span class="lineno">  221</span>&#160;                         int16_t posix_code = -1) {</div><div class="line"><a name="l00222"></a><span class="lineno">  222</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classkudu_1_1Status.html">Status</a>(kAborted, msg, msg2, posix_code);</div><div class="line"><a name="l00223"></a><span class="lineno">  223</span>&#160;  }</div><div class="line"><a name="l00224"></a><span class="lineno">  224</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1Status.html">Status</a> RemoteError(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg2 = <a class="code" href="classkudu_1_1Slice.html">Slice</a>(),</div><div class="line"><a name="l00225"></a><span class="lineno">  225</span>&#160;                         int16_t posix_code = -1) {</div><div class="line"><a name="l00226"></a><span class="lineno">  226</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classkudu_1_1Status.html">Status</a>(kRemoteError, msg, msg2, posix_code);</div><div class="line"><a name="l00227"></a><span class="lineno">  227</span>&#160;  }</div><div class="line"><a name="l00228"></a><span class="lineno">  228</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1Status.html">Status</a> ServiceUnavailable(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg2 = <a class="code" href="classkudu_1_1Slice.html">Slice</a>(),</div><div class="line"><a name="l00229"></a><span class="lineno">  229</span>&#160;                         int16_t posix_code = -1) {</div><div class="line"><a name="l00230"></a><span class="lineno">  230</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classkudu_1_1Status.html">Status</a>(kServiceUnavailable, msg, msg2, posix_code);</div><div class="line"><a name="l00231"></a><span class="lineno">  231</span>&#160;  }</div><div class="line"><a name="l00232"></a><span class="lineno">  232</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1Status.html">Status</a> TimedOut(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg2 = <a class="code" href="classkudu_1_1Slice.html">Slice</a>(),</div><div class="line"><a name="l00233"></a><span class="lineno">  233</span>&#160;                         int16_t posix_code = -1) {</div><div class="line"><a name="l00234"></a><span class="lineno">  234</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classkudu_1_1Status.html">Status</a>(kTimedOut, msg, msg2, posix_code);</div><div class="line"><a name="l00235"></a><span class="lineno">  235</span>&#160;  }</div><div class="line"><a name="l00236"></a><span class="lineno">  236</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1Status.html">Status</a> Uninitialized(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg2 = <a class="code" href="classkudu_1_1Slice.html">Slice</a>(),</div><div class="line"><a name="l00237"></a><span class="lineno">  237</span>&#160;                              int16_t posix_code = -1) {</div><div class="line"><a name="l00238"></a><span class="lineno">  238</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classkudu_1_1Status.html">Status</a>(kUninitialized, msg, msg2, posix_code);</div><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;  }</div><div class="line"><a name="l00240"></a><span class="lineno">  240</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1Status.html">Status</a> ConfigurationError(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg2 = <a class="code" href="classkudu_1_1Slice.html">Slice</a>(),</div><div class="line"><a name="l00241"></a><span class="lineno">  241</span>&#160;                                   int16_t posix_code = -1) {</div><div class="line"><a name="l00242"></a><span class="lineno">  242</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classkudu_1_1Status.html">Status</a>(kConfigurationError, msg, msg2, posix_code);</div><div class="line"><a name="l00243"></a><span class="lineno">  243</span>&#160;  }</div><div class="line"><a name="l00244"></a><span class="lineno">  244</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1Status.html">Status</a> Incomplete(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg2 = <a class="code" href="classkudu_1_1Slice.html">Slice</a>(),</div><div class="line"><a name="l00245"></a><span class="lineno">  245</span>&#160;                           int64_t posix_code = -1) {</div><div class="line"><a name="l00246"></a><span class="lineno">  246</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classkudu_1_1Status.html">Status</a>(kIncomplete, msg, msg2, posix_code);</div><div class="line"><a name="l00247"></a><span class="lineno">  247</span>&#160;  }</div><div class="line"><a name="l00248"></a><span class="lineno">  248</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1Status.html">Status</a> EndOfFile(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg2 = <a class="code" href="classkudu_1_1Slice.html">Slice</a>(),</div><div class="line"><a name="l00249"></a><span class="lineno">  249</span>&#160;                          int64_t posix_code = -1) {</div><div class="line"><a name="l00250"></a><span class="lineno">  250</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="classkudu_1_1Status.html">Status</a>(kEndOfFile, msg, msg2, posix_code);</div><div class="line"><a name="l00251"></a><span class="lineno">  251</span>&#160;  }</div><div class="line"><a name="l00253"></a><span class="lineno">  253</span>&#160;</div><div class="line"><a name="l00255"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#abf6454dcb72bfa92189a0595b5a858a7">  255</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classkudu_1_1Status.html#abf6454dcb72bfa92189a0595b5a858a7">ok</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> (state_ == NULL); }</div><div class="line"><a name="l00256"></a><span class="lineno">  256</span>&#160;</div><div class="line"><a name="l00258"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#a38e1a8eb7b23092569cb61983ebb671d">  258</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classkudu_1_1Status.html#a38e1a8eb7b23092569cb61983ebb671d">IsNotFound</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> code() == kNotFound; }</div><div class="line"><a name="l00259"></a><span class="lineno">  259</span>&#160;</div><div class="line"><a name="l00261"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#a36fa7d6fc0cd9ab1f9ad48e4a7614bc9">  261</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classkudu_1_1Status.html#a36fa7d6fc0cd9ab1f9ad48e4a7614bc9">IsCorruption</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> code() == kCorruption; }</div><div class="line"><a name="l00262"></a><span class="lineno">  262</span>&#160;</div><div class="line"><a name="l00264"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#a2b1672aba7ec84133cd086186b27821b">  264</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classkudu_1_1Status.html#a2b1672aba7ec84133cd086186b27821b">IsNotSupported</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> code() == kNotSupported; }</div><div class="line"><a name="l00265"></a><span class="lineno">  265</span>&#160;</div><div class="line"><a name="l00267"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#a991a91d7c07ffa41e6802a12f34d1acf">  267</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classkudu_1_1Status.html#a991a91d7c07ffa41e6802a12f34d1acf">IsIOError</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> code() == kIOError; }</div><div class="line"><a name="l00268"></a><span class="lineno">  268</span>&#160;</div><div class="line"><a name="l00270"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#a56e991c78f5a4aed32b97fbeccf13c2c">  270</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classkudu_1_1Status.html#a56e991c78f5a4aed32b97fbeccf13c2c">IsInvalidArgument</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> code() == kInvalidArgument; }</div><div class="line"><a name="l00271"></a><span class="lineno">  271</span>&#160;</div><div class="line"><a name="l00273"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#ab9e4ddf4c48889f365c6d359ae560e1c">  273</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classkudu_1_1Status.html#ab9e4ddf4c48889f365c6d359ae560e1c">IsAlreadyPresent</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> code() == kAlreadyPresent; }</div><div class="line"><a name="l00274"></a><span class="lineno">  274</span>&#160;</div><div class="line"><a name="l00276"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#abc68e44f825df4e221e9fcce419a90cf">  276</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classkudu_1_1Status.html#abc68e44f825df4e221e9fcce419a90cf">IsRuntimeError</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> code() == kRuntimeError; }</div><div class="line"><a name="l00277"></a><span class="lineno">  277</span>&#160;</div><div class="line"><a name="l00279"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#a70c83ddb5b234e814db84dfbbb751d0c">  279</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classkudu_1_1Status.html#a70c83ddb5b234e814db84dfbbb751d0c">IsNetworkError</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> code() == kNetworkError; }</div><div class="line"><a name="l00280"></a><span class="lineno">  280</span>&#160;</div><div class="line"><a name="l00282"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#a75e5cf90718eea9654c7e58546ea1aa2">  282</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classkudu_1_1Status.html#a75e5cf90718eea9654c7e58546ea1aa2">IsIllegalState</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> code() == kIllegalState; }</div><div class="line"><a name="l00283"></a><span class="lineno">  283</span>&#160;</div><div class="line"><a name="l00285"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#aef9c22bc13669be3e2289844ec916244">  285</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classkudu_1_1Status.html#aef9c22bc13669be3e2289844ec916244">IsNotAuthorized</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> code() == kNotAuthorized; }</div><div class="line"><a name="l00286"></a><span class="lineno">  286</span>&#160;</div><div class="line"><a name="l00288"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#ad4fe06882fdfb2a040e4d7d10363ca0a">  288</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classkudu_1_1Status.html#ad4fe06882fdfb2a040e4d7d10363ca0a">IsAborted</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> code() == kAborted; }</div><div class="line"><a name="l00289"></a><span class="lineno">  289</span>&#160;</div><div class="line"><a name="l00291"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#a96a35401df4ecd6420c86c65bc3e05f9">  291</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classkudu_1_1Status.html#a96a35401df4ecd6420c86c65bc3e05f9">IsRemoteError</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> code() == kRemoteError; }</div><div class="line"><a name="l00292"></a><span class="lineno">  292</span>&#160;</div><div class="line"><a name="l00294"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#a7bce15fc7b4d95b0bdffce963972cce8">  294</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classkudu_1_1Status.html#a7bce15fc7b4d95b0bdffce963972cce8">IsServiceUnavailable</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> code() == kServiceUnavailable; }</div><div class="line"><a name="l00295"></a><span class="lineno">  295</span>&#160;</div><div class="line"><a name="l00297"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#a80fe0286d8e3ac011a611afbac4edb11">  297</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classkudu_1_1Status.html#a80fe0286d8e3ac011a611afbac4edb11">IsTimedOut</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> code() == kTimedOut; }</div><div class="line"><a name="l00298"></a><span class="lineno">  298</span>&#160;</div><div class="line"><a name="l00300"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#a325666f396d7f9900403765cecbaecbf">  300</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classkudu_1_1Status.html#a325666f396d7f9900403765cecbaecbf">IsUninitialized</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> code() == kUninitialized; }</div><div class="line"><a name="l00301"></a><span class="lineno">  301</span>&#160;</div><div class="line"><a name="l00303"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#a8d31d26943101023125666bbbea002e3">  303</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classkudu_1_1Status.html#a8d31d26943101023125666bbbea002e3">IsConfigurationError</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> code() == kConfigurationError; }</div><div class="line"><a name="l00304"></a><span class="lineno">  304</span>&#160;</div><div class="line"><a name="l00306"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#af68a02f8069b1a8670fcc1b7acd869b9">  306</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classkudu_1_1Status.html#af68a02f8069b1a8670fcc1b7acd869b9">IsIncomplete</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> code() == kIncomplete; }</div><div class="line"><a name="l00307"></a><span class="lineno">  307</span>&#160;</div><div class="line"><a name="l00309"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#adead843ea27f50252f561c995c97b2e6">  309</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classkudu_1_1Status.html#adead843ea27f50252f561c995c97b2e6">IsEndOfFile</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> code() == kEndOfFile; }</div><div class="line"><a name="l00310"></a><span class="lineno">  310</span>&#160;</div><div class="line"><a name="l00313"></a><span class="lineno">  313</span>&#160;  std::string ToString() <span class="keyword">const</span>;</div><div class="line"><a name="l00314"></a><span class="lineno">  314</span>&#160;</div><div class="line"><a name="l00317"></a><span class="lineno">  317</span>&#160;  std::string CodeAsString() <span class="keyword">const</span>;</div><div class="line"><a name="l00318"></a><span class="lineno">  318</span>&#160;</div><div class="line"><a name="l00327"></a><span class="lineno">  327</span>&#160;  <a class="code" href="classkudu_1_1Slice.html">Slice</a> message() <span class="keyword">const</span>;</div><div class="line"><a name="l00328"></a><span class="lineno">  328</span>&#160;</div><div class="line"><a name="l00331"></a><span class="lineno">  331</span>&#160;  int16_t posix_code() <span class="keyword">const</span>;</div><div class="line"><a name="l00332"></a><span class="lineno">  332</span>&#160;</div><div class="line"><a name="l00339"></a><span class="lineno">  339</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> CloneAndPrepend(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg) <span class="keyword">const</span>;</div><div class="line"><a name="l00340"></a><span class="lineno">  340</span>&#160;</div><div class="line"><a name="l00347"></a><span class="lineno">  347</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a> CloneAndAppend(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg) <span class="keyword">const</span>;</div><div class="line"><a name="l00348"></a><span class="lineno">  348</span>&#160;</div><div class="line"><a name="l00351"></a><span class="lineno">  351</span>&#160;  <span class="keywordtype">size_t</span> memory_footprint_excluding_this() <span class="keyword">const</span>;</div><div class="line"><a name="l00352"></a><span class="lineno">  352</span>&#160;</div><div class="line"><a name="l00355"></a><span class="lineno">  355</span>&#160;  <span class="keywordtype">size_t</span> memory_footprint_including_this() <span class="keyword">const</span>;</div><div class="line"><a name="l00356"></a><span class="lineno">  356</span>&#160;</div><div class="line"><a name="l00357"></a><span class="lineno">  357</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00358"></a><span class="lineno">  358</span>&#160;  <span class="comment">// OK status has a NULL state_.  Otherwise, state_ is a new[] array</span></div><div class="line"><a name="l00359"></a><span class="lineno">  359</span>&#160;  <span class="comment">// of the following form:</span></div><div class="line"><a name="l00360"></a><span class="lineno">  360</span>&#160;  <span class="comment">//    state_[0..3] == length of message</span></div><div class="line"><a name="l00361"></a><span class="lineno">  361</span>&#160;  <span class="comment">//    state_[4]    == code</span></div><div class="line"><a name="l00362"></a><span class="lineno">  362</span>&#160;  <span class="comment">//    state_[5..6] == posix_code</span></div><div class="line"><a name="l00363"></a><span class="lineno">  363</span>&#160;  <span class="comment">//    state_[7..]  == message</span></div><div class="line"><a name="l00364"></a><span class="lineno">  364</span>&#160;  <span class="keyword">const</span> <span class="keywordtype">char</span>* state_;</div><div class="line"><a name="l00365"></a><span class="lineno">  365</span>&#160;</div><div class="line"><a name="l00366"></a><span class="lineno">  366</span>&#160;  <span class="keyword">enum</span> Code {</div><div class="line"><a name="l00367"></a><span class="lineno">  367</span>&#160;    kOk = 0,</div><div class="line"><a name="l00368"></a><span class="lineno">  368</span>&#160;    kNotFound = 1,</div><div class="line"><a name="l00369"></a><span class="lineno">  369</span>&#160;    kCorruption = 2,</div><div class="line"><a name="l00370"></a><span class="lineno">  370</span>&#160;    kNotSupported = 3,</div><div class="line"><a name="l00371"></a><span class="lineno">  371</span>&#160;    kInvalidArgument = 4,</div><div class="line"><a name="l00372"></a><span class="lineno">  372</span>&#160;    kIOError = 5,</div><div class="line"><a name="l00373"></a><span class="lineno">  373</span>&#160;    kAlreadyPresent = 6,</div><div class="line"><a name="l00374"></a><span class="lineno">  374</span>&#160;    kRuntimeError = 7,</div><div class="line"><a name="l00375"></a><span class="lineno">  375</span>&#160;    kNetworkError = 8,</div><div class="line"><a name="l00376"></a><span class="lineno">  376</span>&#160;    kIllegalState = 9,</div><div class="line"><a name="l00377"></a><span class="lineno">  377</span>&#160;    kNotAuthorized = 10,</div><div class="line"><a name="l00378"></a><span class="lineno">  378</span>&#160;    kAborted = 11,</div><div class="line"><a name="l00379"></a><span class="lineno">  379</span>&#160;    kRemoteError = 12,</div><div class="line"><a name="l00380"></a><span class="lineno">  380</span>&#160;    kServiceUnavailable = 13,</div><div class="line"><a name="l00381"></a><span class="lineno">  381</span>&#160;    kTimedOut = 14,</div><div class="line"><a name="l00382"></a><span class="lineno">  382</span>&#160;    kUninitialized = 15,</div><div class="line"><a name="l00383"></a><span class="lineno">  383</span>&#160;    kConfigurationError = 16,</div><div class="line"><a name="l00384"></a><span class="lineno">  384</span>&#160;    kIncomplete = 17,</div><div class="line"><a name="l00385"></a><span class="lineno">  385</span>&#160;    kEndOfFile = 18,</div><div class="line"><a name="l00386"></a><span class="lineno">  386</span>&#160;    <span class="comment">// NOTE: Remember to duplicate these constants into wire_protocol.proto and</span></div><div class="line"><a name="l00387"></a><span class="lineno">  387</span>&#160;    <span class="comment">// and to add StatusTo/FromPB ser/deser cases in wire_protocol.cc !</span></div><div class="line"><a name="l00388"></a><span class="lineno">  388</span>&#160;    <span class="comment">// Also remember to make the same changes to the java client in Status.java.</span></div><div class="line"><a name="l00389"></a><span class="lineno">  389</span>&#160;    <span class="comment">//</span></div><div class="line"><a name="l00390"></a><span class="lineno">  390</span>&#160;    <span class="comment">// TODO: Move error codes into an error_code.proto or something similar.</span></div><div class="line"><a name="l00391"></a><span class="lineno">  391</span>&#160;  };</div><div class="line"><a name="l00392"></a><span class="lineno">  392</span>&#160;  COMPILE_ASSERT(<span class="keyword">sizeof</span>(Code) == 4, code_enum_size_is_part_of_abi);</div><div class="line"><a name="l00393"></a><span class="lineno">  393</span>&#160;</div><div class="line"><a name="l00394"></a><span class="lineno">  394</span>&#160;  Code code()<span class="keyword"> const </span>{</div><div class="line"><a name="l00395"></a><span class="lineno">  395</span>&#160;    <span class="keywordflow">return</span> (state_ == NULL) ? kOk : <span class="keyword">static_cast&lt;</span>Code<span class="keyword">&gt;</span>(state_[4]);</div><div class="line"><a name="l00396"></a><span class="lineno">  396</span>&#160;  }</div><div class="line"><a name="l00397"></a><span class="lineno">  397</span>&#160;</div><div class="line"><a name="l00398"></a><span class="lineno">  398</span>&#160;  <a class="code" href="classkudu_1_1Status.html">Status</a>(Code code, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg, <span class="keyword">const</span> <a class="code" href="classkudu_1_1Slice.html">Slice</a>&amp; msg2, int16_t posix_code);</div><div class="line"><a name="l00399"></a><span class="lineno">  399</span>&#160;  <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* CopyState(<span class="keyword">const</span> <span class="keywordtype">char</span>* s);</div><div class="line"><a name="l00400"></a><span class="lineno">  400</span>&#160;};</div><div class="line"><a name="l00401"></a><span class="lineno">  401</span>&#160;</div><div class="line"><a name="l00402"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#affca5639a3341212bb23ae7f5c701803">  402</a></span>&#160;<span class="keyword">inline</span> <a class="code" href="classkudu_1_1Status.html#ad14eb530b3449967ee976aaa1c0bcde0">Status::Status</a>(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Status.html">Status</a>&amp; s) {</div><div class="line"><a name="l00403"></a><span class="lineno">  403</span>&#160;  state_ = (s.state_ == NULL) ? NULL : CopyState(s.state_);</div><div class="line"><a name="l00404"></a><span class="lineno">  404</span>&#160;}</div><div class="line"><a name="l00405"></a><span class="lineno">  405</span>&#160;</div><div class="line"><a name="l00406"></a><span class="lineno"><a class="line" href="classkudu_1_1Status.html#aa387797d8a80892563d56244a2351a88">  406</a></span>&#160;<span class="keyword">inline</span> <a class="code" href="classkudu_1_1Status.html">Status</a>&amp; <a class="code" href="classkudu_1_1Status.html#aa387797d8a80892563d56244a2351a88">Status::operator=</a>(<span class="keyword">const</span> <a class="code" href="classkudu_1_1Status.html">Status</a>&amp; s) {</div><div class="line"><a name="l00407"></a><span class="lineno">  407</span>&#160;  <span class="comment">// The following condition catches both aliasing (when this == &amp;s),</span></div><div class="line"><a name="l00408"></a><span class="lineno">  408</span>&#160;  <span class="comment">// and the common case where both s and *this are OK.</span></div><div class="line"><a name="l00409"></a><span class="lineno">  409</span>&#160;  <span class="keywordflow">if</span> (state_ != s.state_) {</div><div class="line"><a name="l00410"></a><span class="lineno">  410</span>&#160;    <span class="keyword">delete</span>[] state_;</div><div class="line"><a name="l00411"></a><span class="lineno">  411</span>&#160;    state_ = (s.state_ == NULL) ? NULL : CopyState(s.state_);</div><div class="line"><a name="l00412"></a><span class="lineno">  412</span>&#160;  }</div><div class="line"><a name="l00413"></a><span class="lineno">  413</span>&#160;  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div><div class="line"><a name="l00414"></a><span class="lineno">  414</span>&#160;}</div><div class="line"><a name="l00415"></a><span class="lineno">  415</span>&#160;</div><div class="line"><a name="l00416"></a><span class="lineno">  416</span>&#160;<span class="preprocessor">#if __cplusplus &gt;= 201103L</span></div><div class="line"><a name="l00417"></a><span class="lineno">  417</span>&#160;<span class="keyword">inline</span> <a class="code" href="classkudu_1_1Status.html#ad14eb530b3449967ee976aaa1c0bcde0">Status::Status</a>(<a class="code" href="classkudu_1_1Status.html">Status</a>&amp;&amp; s) : state_(s.state_) {</div><div class="line"><a name="l00418"></a><span class="lineno">  418</span>&#160;  s.state_ = <span class="keyword">nullptr</span>;</div><div class="line"><a name="l00419"></a><span class="lineno">  419</span>&#160;}</div><div class="line"><a name="l00420"></a><span class="lineno">  420</span>&#160;</div><div class="line"><a name="l00421"></a><span class="lineno">  421</span>&#160;<span class="keyword">inline</span> <a class="code" href="classkudu_1_1Status.html">Status</a>&amp; <a class="code" href="classkudu_1_1Status.html#aa387797d8a80892563d56244a2351a88">Status::operator=</a>(<a class="code" href="classkudu_1_1Status.html">Status</a>&amp;&amp; s) {</div><div class="line"><a name="l00422"></a><span class="lineno">  422</span>&#160;  <span class="keywordflow">if</span> (state_ != s.state_) {</div><div class="line"><a name="l00423"></a><span class="lineno">  423</span>&#160;    <span class="keyword">delete</span>[] state_;</div><div class="line"><a name="l00424"></a><span class="lineno">  424</span>&#160;    state_ = s.state_;</div><div class="line"><a name="l00425"></a><span class="lineno">  425</span>&#160;    s.state_ = <span class="keyword">nullptr</span>;</div><div class="line"><a name="l00426"></a><span class="lineno">  426</span>&#160;  }</div><div class="line"><a name="l00427"></a><span class="lineno">  427</span>&#160;  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div><div class="line"><a name="l00428"></a><span class="lineno">  428</span>&#160;}</div><div class="line"><a name="l00429"></a><span class="lineno">  429</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00430"></a><span class="lineno">  430</span>&#160;</div><div class="line"><a name="l00431"></a><span class="lineno">  431</span>&#160;}  <span class="comment">// namespace kudu</span></div><div class="line"><a name="l00432"></a><span class="lineno">  432</span>&#160;</div><div class="line"><a name="l00433"></a><span class="lineno">  433</span>&#160;<span class="preprocessor">#endif  // KUDU_UTIL_STATUS_H_</span></div><div class="ttc" id="classkudu_1_1Status_html_ad14eb530b3449967ee976aaa1c0bcde0"><div class="ttname"><a href="classkudu_1_1Status.html#ad14eb530b3449967ee976aaa1c0bcde0">kudu::Status::Status</a></div><div class="ttdeci">Status()</div><div class="ttdoc">Create an object representing success status. </div><div class="ttdef"><b>Definition:</b> status.h:133</div></div>
+<div class="ttc" id="classkudu_1_1Status_html_aef9c22bc13669be3e2289844ec916244"><div class="ttname"><a href="classkudu_1_1Status.html#aef9c22bc13669be3e2289844ec916244">kudu::Status::IsNotAuthorized</a></div><div class="ttdeci">bool IsNotAuthorized() const </div><div class="ttdef"><b>Definition:</b> status.h:285</div></div>
+<div class="ttc" id="classkudu_1_1Status_html"><div class="ttname"><a href="classkudu_1_1Status.html">kudu::Status</a></div><div class="ttdoc">A representation of an operation&amp;#39;s outcome. </div><div class="ttdef"><b>Definition:</b> status.h:130</div></div>
+<div class="ttc" id="classkudu_1_1Status_html_a75e5cf90718eea9654c7e58546ea1aa2"><div class="ttname"><a href="classkudu_1_1Status.html#a75e5cf90718eea9654c7e58546ea1aa2">kudu::Status::IsIllegalState</a></div><div class="ttdeci">bool IsIllegalState() const </div><div class="ttdef"><b>Definition:</b> status.h:282</div></div>
+<div class="ttc" id="namespacekudu_html"><div class="ttname"><a href="namespacekudu.html">kudu</a></div><div class="ttdef"><b>Definition:</b> callbacks.h:28</div></div>
+<div class="ttc" id="classkudu_1_1Status_html_abf6454dcb72bfa92189a0595b5a858a7"><div class="ttname"><a href="classkudu_1_1Status.html#abf6454dcb72bfa92189a0595b5a858a7">kudu::Status::ok</a></div><div class="ttdeci">bool ok() const </div><div class="ttdef"><b>Definition:</b> status.h:255</div></div>
+<div class="ttc" id="classkudu_1_1Status_html_a80fe0286d8e3ac011a611afbac4edb11"><div class="ttname"><a href="classkudu_1_1Status.html#a80fe0286d8e3ac011a611afbac4edb11">kudu::Status::IsTimedOut</a></div><div class="ttdeci">bool IsTimedOut() const </div><div class="ttdef"><b>Definition:</b> status.h:297</div></div>
+<div class="ttc" id="classkudu_1_1Status_html_a96a35401df4ecd6420c86c65bc3e05f9"><div class="ttname"><a href="classkudu_1_1Status.html#a96a35401df4ecd6420c86c65bc3e05f9">kudu::Status::IsRemoteError</a></div><div class="ttdeci">bool IsRemoteError() const </div><div class="ttdef"><b>Definition:</b> status.h:291</div></div>
+<div class="ttc" id="classkudu_1_1Status_html_a7bce15fc7b4d95b0bdffce963972cce8"><div class="ttname"><a href="classkudu_1_1Status.html#a7bce15fc7b4d95b0bdffce963972cce8">kudu::Status::IsServiceUnavailable</a></div><div class="ttdeci">bool IsServiceUnavailable() const </div><div class="ttdef"><b>Definition:</b> status.h:294</div></div>
+<div class="ttc" id="classkudu_1_1Status_html_ad4fe06882fdfb2a040e4d7d10363ca0a"><div class="ttname"><a href="classkudu_1_1Status.html#ad4fe06882fdfb2a040e4d7d10363ca0a">kudu::Status::IsAborted</a></div><div class="ttdeci">bool IsAborted() const </div><div class="ttdef"><b>Definition:</b> status.h:288</div></div>
+<div class="ttc" id="classkudu_1_1Status_html_a325666f396d7f9900403765cecbaecbf"><div class="ttname"><a href="classkudu_1_1Status.html#a325666f396d7f9900403765cecbaecbf">kudu::Status::IsUninitialized</a></div><div class="ttdeci">bool IsUninitialized() const </div><div class="ttdef"><b>Definition:</b> status.h:300</div></div>
+<div class="ttc" id="classkudu_1_1Status_html_abc68e44f825df4e221e9fcce419a90cf"><div class="ttname"><a href="classkudu_1_1Status.html#abc68e44f825df4e221e9fcce419a90cf">kudu::Status::IsRuntimeError</a></div><div class="ttdeci">bool IsRuntimeError() const </div><div class="ttdef"><b>Definition:</b> status.h:276</div></div>
+<div class="ttc" id="classkudu_1_1Status_html_ab9e4ddf4c48889f365c6d359ae560e1c"><div class="ttname"><a href="classkudu_1_1Status.html#ab9e4ddf4c48889f365c6d359ae560e1c">kudu::Status::IsAlreadyPresent</a></div><div class="ttdeci">bool IsAlreadyPresent() const </div><div class="ttdef"><b>Definition:</b> status.h:273</div></div>
+<div class="ttc" id="classkudu_1_1Status_html_a991a91d7c07ffa41e6802a12f34d1acf"><div class="ttname"><a href="classkudu_1_1Status.html#a991a91d7c07ffa41e6802a12f34d1acf">kudu::Status::IsIOError</a></div><div class="ttdeci">bool IsIOError() const </div><div class="ttdef"><b>Definition:</b> status.h:267</div></div>
+<div class="ttc" id="classkudu_1_1Status_html_adaff3248b2f66041d0a7dd59f118b7ac"><div class="ttname"><a href="classkudu_1_1Status.html#adaff3248b2f66041d0a7dd59f118b7ac">kudu::Status::OK</a></div><div class="ttdeci">static Status OK()</div><div class="ttdef"><b>Definition:</b> status.h:166</div></div>
+<div class="ttc" id="classkudu_1_1Slice_html"><div class="ttname"><a href="classkudu_1_1Slice.html">kudu::Slice</a></div><div class="ttdoc">A wrapper around externally allocated data. </div><div class="ttdef"><b>Definition:</b> slice.h:43</div></div>
+<div class="ttc" id="classkudu_1_1Status_html_aa387797d8a80892563d56244a2351a88"><div class="ttname"><a href="classkudu_1_1Status.html#aa387797d8a80892563d56244a2351a88">kudu::Status::operator=</a></div><div class="ttdeci">Status &amp; operator=(const Status &amp;s)</div><div class="ttdef"><b>Definition:</b> status.h:406</div></div>
+<div class="ttc" id="classkudu_1_1Status_html_a8d31d26943101023125666bbbea002e3"><div class="ttname"><a href="classkudu_1_1Status.html#a8d31d26943101023125666bbbea002e3">kudu::Status::IsConfigurationError</a></div><div class="ttdeci">bool IsConfigurationError() const </div><div class="ttdef"><b>Definition:</b> status.h:303</div></div>
+<div class="ttc" id="classkudu_1_1Status_html_a56e991c78f5a4aed32b97fbeccf13c2c"><div class="ttname"><a href="classkudu_1_1Status.html#a56e991c78f5a4aed32b97fbeccf13c2c">kudu::Status::IsInvalidArgument</a></div><div class="ttdeci">bool IsInvalidArgument() const </div><div class="ttdef"><b>Definition:</b> status.h:270</div></div>
+<div class="ttc" id="classkudu_1_1Status_html_a36fa7d6fc0cd9ab1f9ad48e4a7614bc9"><div class="ttname"><a href="classkudu_1_1Status.html#a36fa7d6fc0cd9ab1f9ad48e4a7614bc9">kudu::Status::IsCorruption</a></div><div class="ttdeci">bool IsCorruption() const </div><div class="ttdef"><b>Definition:</b> status.h:261</div></div>
+<div class="ttc" id="classkudu_1_1Status_html_adead843ea27f50252f561c995c97b2e6"><div class="ttname"><a href="classkudu_1_1Status.html#adead843ea27f50252f561c995c97b2e6">kudu::Status::IsEndOfFile</a></div><div class="ttdeci">bool IsEndOfFile() const </div><div class="ttdef"><b>Definition:</b> status.h:309</div></div>
+<div class="ttc" id="classkudu_1_1Status_html_a2b1672aba7ec84133cd086186b27821b"><div class="ttname"><a href="classkudu_1_1Status.html#a2b1672aba7ec84133cd086186b27821b">kudu::Status::IsNotSupported</a></div><div class="ttdeci">bool IsNotSupported() const </div><div class="ttdef"><b>Definition:</b> status.h:264</div></div>
+<div class="ttc" id="classkudu_1_1Status_html_a70c83ddb5b234e814db84dfbbb751d0c"><div class="ttname"><a href="classkudu_1_1Status.html#a70c83ddb5b234e814db84dfbbb751d0c">kudu::Status::IsNetworkError</a></div><div class="ttdeci">bool IsNetworkError() const </div><div class="ttdef"><b>Definition:</b> status.h:279</div></div>
+<div class="ttc" id="classkudu_1_1Status_html_af68a02f8069b1a8670fcc1b7acd869b9"><div class="ttname"><a href="classkudu_1_1Status.html#af68a02f8069b1a8670fcc1b7acd869b9">kudu::Status::IsIncomplete</a></div><div class="ttdeci">bool IsIncomplete() const </div><div class="ttdef"><b>Definition:</b> status.h:306</div></div>
+<div class="ttc" id="classkudu_1_1Status_html_a38e1a8eb7b23092569cb61983ebb671d"><div class="ttname"><a href="classkudu_1_1Status.html#a38e1a8eb7b23092569cb61983ebb671d">kudu::Status::IsNotFound</a></div><div class="ttdeci">bool IsNotFound() const </div><div class="ttdef"><b>Definition:</b> status.h:258</div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:02 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/structkudu_1_1SliceMap-members.html b/releases/1.4.0/cpp-client-api/structkudu_1_1SliceMap-members.html
new file mode 100644
index 0000000..2f6e3ab
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/structkudu_1_1SliceMap-members.html
@@ -0,0 +1,107 @@
+<!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.11"/>
+<title>Kudu C++ client API: Member 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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><a class="el" href="structkudu_1_1SliceMap.html">SliceMap</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">kudu::SliceMap&lt; T &gt; Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="structkudu_1_1SliceMap.html">kudu::SliceMap&lt; T &gt;</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="structkudu_1_1SliceMap.html#ac97e49d0aa50ae49f34ab3bbd95ea5e6">type</a> typedef</td><td class="entry"><a class="el" href="structkudu_1_1SliceMap.html">kudu::SliceMap&lt; T &gt;</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/structkudu_1_1SliceMap.html b/releases/1.4.0/cpp-client-api/structkudu_1_1SliceMap.html
new file mode 100644
index 0000000..788d4bf
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/structkudu_1_1SliceMap.html
@@ -0,0 +1,127 @@
+<!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.11"/>
+<title>Kudu C++ client API: kudu::SliceMap&lt; T &gt; Struct Template Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><a class="el" href="structkudu_1_1SliceMap.html">SliceMap</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-types">Public Types</a> &#124;
+<a href="structkudu_1_1SliceMap-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">kudu::SliceMap&lt; T &gt; Struct Template Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>STL map whose keys are Slices.  
+ <a href="structkudu_1_1SliceMap.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="slice_8h_source.html">slice.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
+Public Types</h2></td></tr>
+<tr class="memitem:ac97e49d0aa50ae49f34ab3bbd95ea5e6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac97e49d0aa50ae49f34ab3bbd95ea5e6"></a>
+typedef std::map&lt; <a class="el" href="classkudu_1_1Slice.html">Slice</a>, T, <a class="el" href="structkudu_1_1Slice_1_1Comparator.html">Slice::Comparator</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structkudu_1_1SliceMap.html#ac97e49d0aa50ae49f34ab3bbd95ea5e6">type</a></td></tr>
+<tr class="memdesc:ac97e49d0aa50ae49f34ab3bbd95ea5e6"><td class="mdescLeft">&#160;</td><td class="mdescRight">A handy typedef for the slice map with appropriate comparison operator. <br /></td></tr>
+<tr class="separator:ac97e49d0aa50ae49f34ab3bbd95ea5e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><h3>template&lt;typename T&gt;<br />
+struct kudu::SliceMap&lt; T &gt;</h3>
+
+<p>STL map whose keys are Slices. </p>
+<p>An example of usage: </p><div class="fragment"><div class="line"><span class="keyword">typedef</span> <a class="code" href="structkudu_1_1SliceMap.html#ac97e49d0aa50ae49f34ab3bbd95ea5e6">SliceMap&lt;int&gt;::type</a> MySliceMap;</div><div class="line"></div><div class="line">MySliceMap my_map;</div><div class="line">my_map.insert(MySliceMap::value_type(a, 1));</div><div class="line">my_map.insert(MySliceMap::value_type(b, 2));</div><div class="line">my_map.insert(MySliceMap::value_type(c, 3));</div><div class="line"></div><div class="line"><span class="keywordflow">for</span> (<span class="keyword">const</span> MySliceMap::value_type&amp; pair : my_map) {</div><div class="line">  ...</div><div class="line">}</div></div><!-- fragment --> </div><hr/>The documentation for this struct was generated from the following file:<ul>
+<li>include/kudu/util/<a class="el" href="slice_8h_source.html">slice.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:03 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/structkudu_1_1Slice_1_1Comparator-members.html b/releases/1.4.0/cpp-client-api/structkudu_1_1Slice_1_1Comparator-members.html
new file mode 100644
index 0000000..c2374d9
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/structkudu_1_1Slice_1_1Comparator-members.html
@@ -0,0 +1,107 @@
+<!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.11"/>
+<title>Kudu C++ client API: Member 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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><a class="el" href="classkudu_1_1Slice.html">Slice</a></li><li class="navelem"><a class="el" href="structkudu_1_1Slice_1_1Comparator.html">Comparator</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">kudu::Slice::Comparator Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="structkudu_1_1Slice_1_1Comparator.html">kudu::Slice::Comparator</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="structkudu_1_1Slice_1_1Comparator.html#a2f33c829e2febd880f9cbcbebb08fa6a">operator()</a>(const Slice &amp;a, const Slice &amp;b) const </td><td class="entry"><a class="el" href="structkudu_1_1Slice_1_1Comparator.html">kudu::Slice::Comparator</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+</table></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:02 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/structkudu_1_1Slice_1_1Comparator.html b/releases/1.4.0/cpp-client-api/structkudu_1_1Slice_1_1Comparator.html
new file mode 100644
index 0000000..7c36aa2
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/structkudu_1_1Slice_1_1Comparator.html
@@ -0,0 +1,166 @@
+<!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.11"/>
+<title>Kudu C++ client API: kudu::Slice::Comparator Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>kudu</b></li><li class="navelem"><a class="el" href="classkudu_1_1Slice.html">Slice</a></li><li class="navelem"><a class="el" href="structkudu_1_1Slice_1_1Comparator.html">Comparator</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="structkudu_1_1Slice_1_1Comparator-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">kudu::Slice::Comparator Struct Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a class="el" href="structkudu_1_1Slice_1_1Comparator.html" title="Comparator struct, useful for ordered collections (like STL maps). ">Comparator</a> struct, useful for ordered collections (like STL maps).  
+ <a href="structkudu_1_1Slice_1_1Comparator.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="slice_8h_source.html">slice.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a2f33c829e2febd880f9cbcbebb08fa6a"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structkudu_1_1Slice_1_1Comparator.html#a2f33c829e2febd880f9cbcbebb08fa6a">operator()</a> (const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;a, const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;b) const </td></tr>
+<tr class="separator:a2f33c829e2febd880f9cbcbebb08fa6a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p><a class="el" href="structkudu_1_1Slice_1_1Comparator.html" title="Comparator struct, useful for ordered collections (like STL maps). ">Comparator</a> struct, useful for ordered collections (like STL maps). </p>
+</div><h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a2f33c829e2febd880f9cbcbebb08fa6a"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool kudu::Slice::Comparator::operator() </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;&#160;</td>
+          <td class="paramname"><em>a</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;&#160;</td>
+          <td class="paramname"><em>b</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td> const</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Compare two slices using <a class="el" href="classkudu_1_1Slice.html#a0ecc8d893b73a664c69396ad30b14d98">Slice::compare()</a></p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">a</td><td>The slice to call <a class="el" href="classkudu_1_1Slice.html#a0ecc8d893b73a664c69396ad30b14d98">Slice::compare()</a> at. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">b</td><td>The slice to use as a parameter for <a class="el" href="classkudu_1_1Slice.html#a0ecc8d893b73a664c69396ad30b14d98">Slice::compare()</a>. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd><code>true</code> iff <code>a</code> is less than <code>b</code> by <a class="el" href="classkudu_1_1Slice.html#a0ecc8d893b73a664c69396ad30b14d98">Slice::compare()</a>. </dd></dl>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>include/kudu/util/<a class="el" href="slice_8h_source.html">slice.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:02 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/stubs_8h_source.html b/releases/1.4.0/cpp-client-api/stubs_8h_source.html
new file mode 100644
index 0000000..20e073f
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/stubs_8h_source.html
@@ -0,0 +1,107 @@
+<!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.11"/>
+<title>Kudu C++ client API: include/kudu/client/stubs.h Source File</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="files.html"><span>File&#160;List</span></a></li>
+      <li><a href="globals.html"><span>File&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_58b01e52e53886b8d78ab5060a2cd2bd.html">kudu</a></li><li class="navelem"><a class="el" href="dir_4eb331d85bb84eae27db9d0af49f6f99.html">client</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">stubs.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&quot;); 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;<span class="preprocessor">#ifndef KUDU_CLIENT_STUBS_H</span></div><div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#define KUDU_CLIENT_STUBS_H</span></div><div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;</div><div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#include &lt;stdlib.h&gt;</span> <span class="comment">// for exit()</span></div><div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;</div><div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#include &lt;iostream&gt;</span></div><div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;</div><div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="comment">//</span></div><div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="comment">// GCC can be told that a certain branch is not likely to be taken (for</span></div><div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="comment">// instance, a CHECK failure), and use that information in static analysis.</span></div><div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="comment">// Giving it this information can help it optimize for the common case in</span></div><div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;<span class="comment">// the absence of better information (ie. -fprofile-arcs).</span></div><div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;<span class="comment">//</span></div><div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;<span class="preprocessor">#ifndef PREDICT_FALSE</span></div><div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;<span class="preprocessor">#if defined(__GNUC__)</span></div><div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;<span class="preprocessor">#define PREDICT_FALSE(x) (__builtin_expect(x, 0))</span></div><div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;<span class="preprocessor">#define PREDICT_FALSE(x) x</span></div><div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;<span class="preprocessor">#ifndef PREDICT_TRUE</span></div><div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;<span class="preprocessor">#if defined(__GNUC__)</span></div><div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;<span class="preprocessor">#define PREDICT_TRUE(x) (__builtin_expect(!!(x), 1))</span></div><div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;<span class="preprocessor">#define PREDICT_TRUE(x) x</span></div><div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;</div><div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;<span class="comment">// Annotate a function indicating the caller must examine the return value.</span></div><div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;<span class="comment">// Use like:</span></div><div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;<span class="comment">//   int foo() WARN_UNUSED_RESULT;</span></div><div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;<span class="comment">// To explicitly ignore a result, see |ignore_result()| in &lt;base/basictypes.h&gt;.</span></div><div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;<span class="preprocessor">#ifndef WARN_UNUSED_RESULT</span></div><div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;<span class="preprocessor">#if defined(__GNUC__)</span></div><div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;<span class="preprocessor">#define WARN_UNUSED_RESULT __attribute__((warn_unused_result))</span></div><div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;<span class="preprocessor">#define WARN_UNUSED_RESULT</span></div><div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;</div><div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;<span class="preprocessor">#if (defined(__GNUC__) || defined(__APPLE__)) &amp;&amp; !defined(SWIG)</span></div><div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;<span class="preprocessor">#undef ATTRIBUTE_UNUSED</span></div><div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;<span class="preprocessor">#define ATTRIBUTE_UNUSED __attribute__ ((unused))</span></div><div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;<span class="preprocessor">#ifndef ATTRIBUTE_UNUSED</span></div><div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;<span class="preprocessor">#define ATTRIBUTE_UNUSED</span></div><div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;</div><div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;<span class="comment">// For deprecated functions or variables, generate a warning at usage sites.</span></div><div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;<span class="comment">// Verified to work as early as GCC 3.1.1 and clang 3.2 (so we&#39;ll assume any</span></div><div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;<span class="comment">// clang is new enough).</span></div><div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;<span class="preprocessor">#ifndef ATTRIBUTE_DEPRECATED</span></div><div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;<span class="preprocessor">#if defined(__clang__) || \</span></div><div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;<span class="preprocessor">  (defined(COMPILER_GCC) &amp;&amp; \</span></div><div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;<span class="preprocessor">   (__GNUC__ * 10000 + __GNUC_MINOR__ * 100) &gt;= 30200)</span></div><div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;<span class="preprocessor">#define ATTRIBUTE_DEPRECATED(msg) __attribute__ ((deprecated (msg) ))</span></div><div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;<span class="preprocessor">#define ATTRIBUTE_DEPRECATED(msg)</span></div><div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;<span class="preprocessor">#endif // #ifndef ATTRIBUTE_DEPRECATED</span></div><div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;</div><div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;<span class="preprocessor">#ifndef COMPILE_ASSERT</span></div><div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;<span class="comment">// The COMPILE_ASSERT macro can be used to verify that a compile time</span></div><div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;<span class="comment">// expression is true. For example, you could use it to verify the</span></div><div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;<span class="comment">// size of a static array:</span></div><div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;<span class="comment">//</span></div><div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;<span class="comment">//   COMPILE_ASSERT(ARRAYSIZE(content_type_names) == CONTENT_NUM_TYPES,</span></div><div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;<span class="comment">//                  content_type_names_incorrect_size);</span></div><div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;<span class="comment">//</span></div><div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;<span class="comment">// or to make sure a struct is smaller than a certain size:</span></div><div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;<span class="comment">//</span></div><div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;<span class="comment">//   COMPILE_ASSERT(sizeof(foo) &lt; 128, foo_too_large);</span></div><div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;<span class="comment">//</span></div><div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;<span class="comment">// The second argument to the macro is the name of the variable. If</span></div><div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;<span class="comment">// the expression is false, most compilers will issue a warning/error</span></div><div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;<span class="comment">// containing the name of the variable.</span></div><div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;</div><div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;<span class="keyword">template</span> &lt;<span class="keywordtype">bool</span>&gt;</div><div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;<span class="keyword">struct </span>StubsCompileAssert {</div><div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;};</div><div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;</div><div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;<span class="preprocessor">#define COMPILE_ASSERT(expr, msg) \</span></div><div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;<span class="preprocessor">  typedef StubsCompileAssert&lt;(bool(expr))&gt; msg[bool(expr) ? 1 : -1] ATTRIBUTE_UNUSED // NOLINT(*)</span></div><div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;</div><div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;<span class="comment">// Annotate a virtual method indicating it must be overriding a virtual</span></div><div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;<span class="comment">// method in the parent class.</span></div><div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;<span class="comment">// Use like:</span></div><div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;<span class="comment">//   virtual void foo() OVERRIDE;</span></div><div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;<span class="preprocessor">#ifndef OVERRIDE</span></div><div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;<span class="preprocessor">#if defined(COMPILER_MSVC)</span></div><div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;<span class="preprocessor">#define OVERRIDE override</span></div><div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;<span class="preprocessor">#elif defined(__clang__)</span></div><div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;<span class="preprocessor">#define OVERRIDE override</span></div><div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;<span class="preprocessor">#elif defined(COMPILER_GCC) &amp;&amp; __cplusplus &gt;= 201103 &amp;&amp; \</span></div><div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;<span class="preprocessor">      (__GNUC__ * 10000 + __GNUC_MINOR__ * 100) &gt;= 40700</span></div><div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;<span class="comment">// GCC 4.7 supports explicit virtual overrides when C++11 support is enabled.</span></div><div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;<span class="preprocessor">#define OVERRIDE override</span></div><div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;<span class="preprocessor">#define OVERRIDE</span></div><div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;</div><div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;<span class="preprocessor">#ifndef DISALLOW_COPY_AND_ASSIGN</span></div><div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;<span class="preprocessor">#define DISALLOW_COPY_AND_ASSIGN(TypeName) \</span></div><div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;<span class="preprocessor">  TypeName(const TypeName&amp;);               \</span></div><div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;<span class="preprocessor">  void operator=(const TypeName&amp;)</span></div><div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;</div><div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;<span class="preprocessor">#ifndef FRIEND_TEST</span></div><div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;<span class="preprocessor">#define FRIEND_TEST(test_case_name, test_name) \</span></div><div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;<span class="preprocessor">  friend class test_case_name##_##test_name##_Test</span></div><div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;</div><div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;<span class="comment">// Stubbed versions of macros defined in glog/logging.h, intended for</span></div><div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;<span class="comment">// environments where glog headers aren&#39;t available.</span></div><div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;<span class="comment">//</span></div><div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;<span class="comment">// Add more as needed.</span></div><div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;</div><div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;<span class="preprocessor">#define KUDU_DCHECK(condition) while (false) kudu::internal_logging::NullLog()</span></div><div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;<span class="preprocessor">#define KUDU_DCHECK_EQ(val1, val2) while (false) kudu::internal_logging::NullLog()</span></div><div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;<span class="preprocessor">#define KUDU_DCHECK_NE(val1, val2) while (false) kudu::internal_logging::NullLog()</span></div><div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;<span class="preprocessor">#define KUDU_DCHECK_LE(val1, val2) while (false) kudu::internal_logging::NullLog()</span></div><div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;<span class="preprocessor">#define KUDU_DCHECK_LT(val1, val2) while (false) kudu::internal_logging::NullLog()</span></div><div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;<span class="preprocessor">#define KUDU_DCHECK_GE(val1, val2) while (false) kudu::internal_logging::NullLog()</span></div><div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;<span class="preprocessor">#define KUDU_DCHECK_GT(val1, val2) while (false) kudu::internal_logging::NullLog()</span></div><div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;<span class="preprocessor">#define KUDU_DCHECK_NOTNULL(val) (val)</span></div><div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;<span class="preprocessor">#define KUDU_DCHECK_STREQ(str1, str2) while (false) kudu::internal_logging::NullLog()</span></div><div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;<span class="preprocessor">#define KUDU_DCHECK_STRCASEEQ(str1, str2) while (false) kudu::internal_logging::NullLog()</span></div><div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;<span class="preprocessor">#define KUDU_DCHECK_STRNE(str1, str2) while (false) kudu::internal_logging::NullLog()</span></div><div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;<span class="preprocessor">#define KUDU_DCHECK_STRCASENE(str1, str2) while (false) kudu::internal_logging::NullLog()</span></div><div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;</div><div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;<span class="comment">// Log levels. LOG ignores them, so their values are abitrary.</span></div><div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;</div><div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;<span class="preprocessor">#define KUDU_INFO 0</span></div><div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;<span class="preprocessor">#define KUDU_WARNING 1</span></div><div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;<span class="preprocessor">#define KUDU_ERROR 2</span></div><div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;<span class="preprocessor">#define KUDU_FATAL 3</span></div><div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;</div><div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;<span class="preprocessor">#ifdef NDEBUG</span></div><div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;<span class="preprocessor">#define KUDU_DFATAL KUDU_WARNING</span></div><div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;<span class="preprocessor">#define KUDU_DFATAL KUDU_FATAL</span></div><div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;<span class="preprocessor">#endif // NDEBUG</span></div><div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;</div><div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;<span class="preprocessor">#define KUDU_LOG_INTERNAL(level) kudu::internal_logging::CerrLog(level)</span></div><div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;<span class="preprocessor">#define KUDU_LOG(level) KUDU_LOG_INTERNAL(KUDU_##level)</span></div><div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;</div><div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;<span class="preprocessor">#define KUDU_CHECK(condition) \</span></div><div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160;<span class="preprocessor">  (condition) ? 0 : KUDU_LOG(FATAL) &lt;&lt; &quot;Check failed: &quot; #condition &quot; &quot;</span></div><div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160;</div><div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;<span class="keyword">namespace </span><a class="code" href="namespacekudu.html">kudu</a> {</div><div class="line"><a name="l00172"></a><span class="lineno">  172</span>&#160;</div><div class="line"><a name="l00173"></a><span class="lineno">  173</span>&#160;<span class="keyword">namespace </span>internal_logging {</div><div class="line"><a name="l00174"></a><span class="lineno">  174</span>&#160;</div><div class="line"><a name="l00179"></a><span class="lineno"><a class="line" href="classkudu_1_1internal__logging_1_1NullLog.html">  179</a></span>&#160;<span class="keyword">class </span><a class="code" href="classkudu_1_1internal__logging_1_1NullLog.html">NullLog</a> {</div><div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160;  <span class="keyword">template</span>&lt;<span class="keyword">class</span> T&gt;</div><div class="line"><a name="l00187"></a><span class="lineno"><a class="line" href="classkudu_1_1internal__logging_1_1NullLog.html#abe50abde8e4af12413c99f437094dc8a">  187</a></span>&#160;  <a class="code" href="classkudu_1_1internal__logging_1_1NullLog.html">NullLog</a>&amp; <a class="code" href="classkudu_1_1internal__logging_1_1NullLog.html#abe50abde8e4af12413c99f437094dc8a">operator&lt;&lt;</a>(<span class="keyword">const</span> T&amp; t) {</div><div class="line"><a name="l00188"></a><span class="lineno">  188</span>&#160;    <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div><div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160;  }</div><div class="line"><a name="l00190"></a><span class="lineno">  190</span>&#160;};</div><div class="line"><a name="l00191"></a><span class="lineno">  191</span>&#160;</div><div class="line"><a name="l00193"></a><span class="lineno"><a class="line" href="classkudu_1_1internal__logging_1_1CerrLog.html">  193</a></span>&#160;<span class="keyword">class </span><a class="code" href="classkudu_1_1internal__logging_1_1CerrLog.html">CerrLog</a> {</div><div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00199"></a><span class="lineno"><a class="line" href="classkudu_1_1internal__logging_1_1CerrLog.html#ac3773ad2825d82f91ea65109f2def713">  199</a></span>&#160;  <a class="code" href="classkudu_1_1internal__logging_1_1CerrLog.html#ac3773ad2825d82f91ea65109f2def713">CerrLog</a>(<span class="keywordtype">int</span> severity) <span class="comment">// NOLINT(runtime/explicit)</span></div><div class="line"><a name="l00200"></a><span class="lineno">  200</span>&#160;    : severity_(severity),</div><div class="line"><a name="l00201"></a><span class="lineno">  201</span>&#160;      has_logged_(false) {</div><div class="line"><a name="l00202"></a><span class="lineno">  202</span>&#160;  }</div><div class="line"><a name="l00203"></a><span class="lineno">  203</span>&#160;</div><div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160;  ~<a class="code" href="classkudu_1_1internal__logging_1_1CerrLog.html">CerrLog</a>() {</div><div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160;    <span class="keywordflow">if</span> (has_logged_) {</div><div class="line"><a name="l00206"></a><span class="lineno">  206</span>&#160;      std::cerr &lt;&lt; std::endl;</div><div class="line"><a name="l00207"></a><span class="lineno">  207</span>&#160;    }</div><div class="line"><a name="l00208"></a><span class="lineno">  208</span>&#160;    <span class="keywordflow">if</span> (severity_ == KUDU_FATAL) {</div><div class="line"><a name="l00209"></a><span class="lineno">  209</span>&#160;      exit(1);</div><div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;    }</div><div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160;  }</div><div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160;</div><div class="line"><a name="l00218"></a><span class="lineno">  218</span>&#160;  <span class="keyword">template</span>&lt;<span class="keyword">class</span> T&gt;</div><div class="line"><a name="l00219"></a><span class="lineno"><a class="line" href="classkudu_1_1internal__logging_1_1CerrLog.html#a9febb74005a76f9b203e9718275ab724">  219</a></span>&#160;  <a class="code" href="classkudu_1_1internal__logging_1_1CerrLog.html">CerrLog</a>&amp; <a class="code" href="classkudu_1_1internal__logging_1_1CerrLog.html#a9febb74005a76f9b203e9718275ab724">operator&lt;&lt;</a>(<span class="keyword">const</span> T&amp; t) {</div><div class="line"><a name="l00220"></a><span class="lineno">  220</span>&#160;    has_logged_ = <span class="keyword">true</span>;</div><div class="line"><a name="l00221"></a><span class="lineno">  221</span>&#160;    std::cerr &lt;&lt; t;</div><div class="line"><a name="l00222"></a><span class="lineno">  222</span>&#160;    <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div><div class="line"><a name="l00223"></a><span class="lineno">  223</span>&#160;  }</div><div class="line"><a name="l00224"></a><span class="lineno">  224</span>&#160;</div><div class="line"><a name="l00225"></a><span class="lineno">  225</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00226"></a><span class="lineno">  226</span>&#160;  <span class="keyword">const</span> <span class="keywordtype">int</span> severity_;</div><div class="line"><a name="l00227"></a><span class="lineno">  227</span>&#160;  <span class="keywordtype">bool</span> has_logged_;</div><div class="line"><a name="l00228"></a><span class="lineno">  228</span>&#160;};</div><div class="line"><a name="l00229"></a><span class="lineno">  229</span>&#160;</div><div class="line"><a name="l00230"></a><span class="lineno">  230</span>&#160;} <span class="comment">// namespace internal_logging</span></div><div class="line"><a name="l00231"></a><span class="lineno">  231</span>&#160;} <span class="comment">// namespace kudu</span></div><div class="line"><a name="l00232"></a><span class="lineno">  232</span>&#160;</div><div class="line"><a name="l00233"></a><span class="lineno">  233</span>&#160;<span class="preprocessor">#endif</span></div><div class="ttc" id="classkudu_1_1internal__logging_1_1NullLog_html"><div class="ttname"><a href="classkudu_1_1internal__logging_1_1NullLog.html">kudu::internal_logging::NullLog</a></div><div class="ttdoc">A helper for the nil log sink. </div><div class="ttdef"><b>Definition:</b> stubs.h:179</div></div>
+<div class="ttc" id="namespacekudu_html"><div class="ttname"><a href="namespacekudu.html">kudu</a></div><div class="ttdef"><b>Definition:</b> callbacks.h:28</div></div>
+<div class="ttc" id="classkudu_1_1internal__logging_1_1CerrLog_html_ac3773ad2825d82f91ea65109f2def713"><div class="ttname"><a href="classkudu_1_1internal__logging_1_1CerrLog.html#ac3773ad2825d82f91ea65109f2def713">kudu::internal_logging::CerrLog::CerrLog</a></div><div class="ttdeci">CerrLog(int severity)</div><div class="ttdef"><b>Definition:</b> stubs.h:199</div></div>
+<div class="ttc" id="classkudu_1_1internal__logging_1_1CerrLog_html"><div class="ttname"><a href="classkudu_1_1internal__logging_1_1CerrLog.html">kudu::internal_logging::CerrLog</a></div><div class="ttdoc">A helper for stderr log sink. </div><div class="ttdef"><b>Definition:</b> stubs.h:193</div></div>
+<div class="ttc" id="classkudu_1_1internal__logging_1_1CerrLog_html_a9febb74005a76f9b203e9718275ab724"><div class="ttname"><a href="classkudu_1_1internal__logging_1_1CerrLog.html#a9febb74005a76f9b203e9718275ab724">kudu::internal_logging::CerrLog::operator&lt;&lt;</a></div><div class="ttdeci">CerrLog &amp; operator&lt;&lt;(const T &amp;t)</div><div class="ttdef"><b>Definition:</b> stubs.h:219</div></div>
+<div class="ttc" id="classkudu_1_1internal__logging_1_1NullLog_html_abe50abde8e4af12413c99f437094dc8a"><div class="ttname"><a href="classkudu_1_1internal__logging_1_1NullLog.html#abe50abde8e4af12413c99f437094dc8a">kudu::internal_logging::NullLog::operator&lt;&lt;</a></div><div class="ttdeci">NullLog &amp; operator&lt;&lt;(const T &amp;t)</div><div class="ttdef"><b>Definition:</b> stubs.h:187</div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:02 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/sync_off.png b/releases/1.4.0/cpp-client-api/sync_off.png
new file mode 100644
index 0000000..3b443fc
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/sync_off.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/sync_on.png b/releases/1.4.0/cpp-client-api/sync_on.png
new file mode 100644
index 0000000..e08320f
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/sync_on.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/tab_a.png b/releases/1.4.0/cpp-client-api/tab_a.png
new file mode 100644
index 0000000..3b725c4
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/tab_a.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/tab_b.png b/releases/1.4.0/cpp-client-api/tab_b.png
new file mode 100644
index 0000000..e2b4a86
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/tab_b.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/tab_h.png b/releases/1.4.0/cpp-client-api/tab_h.png
new file mode 100644
index 0000000..fd5cb70
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/tab_h.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/tab_s.png b/releases/1.4.0/cpp-client-api/tab_s.png
new file mode 100644
index 0000000..ab478c9
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/tab_s.png
Binary files differ
diff --git a/releases/1.4.0/cpp-client-api/tabs.css b/releases/1.4.0/cpp-client-api/tabs.css
new file mode 100644
index 0000000..9cf578f
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/tabs.css
@@ -0,0 +1,60 @@
+.tabs, .tabs2, .tabs3 {
+    background-image: url('tab_b.png');
+    width: 100%;
+    z-index: 101;
+    font-size: 13px;
+    font-family: 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif;
+}
+
+.tabs2 {
+    font-size: 10px;
+}
+.tabs3 {
+    font-size: 9px;
+}
+
+.tablist {
+    margin: 0;
+    padding: 0;
+    display: table;
+}
+
+.tablist li {
+    float: left;
+    display: table-cell;
+    background-image: url('tab_b.png');
+    line-height: 36px;
+    list-style: none;
+}
+
+.tablist a {
+    display: block;
+    padding: 0 20px;
+    font-weight: bold;
+    background-image:url('tab_s.png');
+    background-repeat:no-repeat;
+    background-position:right;
+    color: #283A5D;
+    text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9);
+    text-decoration: none;
+    outline: none;
+}
+
+.tabs3 .tablist a {
+    padding: 0 10px;
+}
+
+.tablist a:hover {
+    background-image: url('tab_h.png');
+    background-repeat:repeat-x;
+    color: #fff;
+    text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0);
+    text-decoration: none;
+}
+
+.tablist li.current a {
+    background-image: url('tab_a.png');
+    background-repeat:repeat-x;
+    color: #fff;
+    text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0);
+}
diff --git a/releases/1.4.0/cpp-client-api/todo.html b/releases/1.4.0/cpp-client-api/todo.html
new file mode 100644
index 0000000..6d1b971
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/todo.html
@@ -0,0 +1,123 @@
+<!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.11"/>
+<title>Kudu C++ client API: Todo 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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li class="current"><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </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">Todo List </div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><dl class="reflist">
+<dt><a class="anchor" id="_todo000012"></a>Module <a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html#amgrp145f08f9ead2d9b4bcd89c476cbe437f">Getters to expose column schema information.</a>  </dt>
+<dd>Expose default column value and attributes? </dd>
+<dt><a class="anchor" id="_todo000001"></a>Class <a class="el" href="classkudu_1_1client_1_1KuduClient.html">kudu::client::KuduClient</a>  </dt>
+<dd>Cluster administration functions are likely to be in this class as well.  </dd>
+<dt><a class="anchor" id="_todo000002"></a>Member <a class="el" href="classkudu_1_1client_1_1KuduClient.html#aa82a09718ffe68d3255195e736aec8d7">kudu::client::KuduClient::OpenTable</a>  (const std::string &amp;table_name, sp::shared_ptr&lt; KuduTable &gt; *table)</dt>
+<dd><p class="startdd">Should we offer an async version of this as well? </p>
+<p class="enddd">Probably should have a configurable timeout in <a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html" title="A &quot;factory&quot; for KuduClient objects. ">KuduClientBuilder</a>?  </p>
+</dd>
+<dt><a class="anchor" id="_todo000011"></a>Member <a class="el" href="classkudu_1_1client_1_1KuduColumnSchema.html#aaa771e9d224978f735b3aabb04bc129a">kudu::client::KuduColumnSchema::KuduColumnSchema</a>  (const std::string &amp;name, DataType type, bool is_nullable=false, const void *default_value=NULL, <a class="el" href="classkudu_1_1client_1_1KuduColumnStorageAttributes.html" title="Representation of column storage attributes. ">KuduColumnStorageAttributes</a> attributes=KuduColumnStorageAttributes()) ATTRIBUTE_DEPRECATED("use KuduSchemaBuilder instead")</dt>
+<dd>KUDU-809: make this hard-to-use constructor private. Clients should use the Builder API. Currently only the Python API uses this old API. </dd>
+<dt><a class="anchor" id="_todo000009"></a>Class <a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html">kudu::client::KuduColumnSpec</a>  </dt>
+<dd>KUDU-861: this API will also be used for an improved AlterTable API.  </dd>
+<dt><a class="anchor" id="_todo000013"></a>Member <a class="el" href="classkudu_1_1client_1_1KuduColumnSpec.html#a8502dd68c6743c7c66b2b6a02d41a4e6">kudu::client::KuduColumnSpec::BlockSize</a>  (int32_t block_size)</dt>
+<dd>KUDU-1107: move above info to docs </dd>
+<dt><a class="anchor" id="_todo000010"></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>Make this constructor private. </dd>
+<dt><a class="anchor" id="_todo000007"></a>Member <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#af1db3f372fe3d0f30cd0b6a36b783cc8">kudu::client::KuduScanner::SetSelection</a>  (<a class="el" href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11a" title="Policy with which to choose amongst multiple replicas. ">KuduClient::ReplicaSelection</a> selection) WARN_UNUSED_RESULT</dt>
+<dd>Kill this method in favor of a consistency-level-based API.  </dd>
+<dt><a class="anchor" id="_todo000008"></a>Member <a class="el" href="classkudu_1_1client_1_1KuduScanTokenBuilder.html#a168bfed43dcd754a17d4c82293dade88">kudu::client::KuduScanTokenBuilder::SetSelection</a>  (<a class="el" href="classkudu_1_1client_1_1KuduClient.html#aef70c7f3a596ecda4040f9d46514b11a" title="Policy with which to choose amongst multiple replicas. ">KuduClient::ReplicaSelection</a> selection) WARN_UNUSED_RESULT</dt>
+<dd>Kill this in favor of a consistency-level-based API.  </dd>
+<dt><a class="anchor" id="_todo000014"></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>Remove <a class="el" href="classkudu_1_1client_1_1KuduSchema.html#a3f51ccf1a7e6f4a4fe4958073305dbab">KuduSchema::Reset()</a>. </dd>
+<dt><a class="anchor" id="_todo000004"></a>Member <a class="el" href="classkudu_1_1client_1_1KuduSession.html#ad3f7324b27fca298c5ca3d07b4741943">kudu::client::KuduSession::Apply</a>  (<a class="el" href="classkudu_1_1client_1_1KuduWriteOperation.html" title="A single-row write operation to be sent to a Kudu table. ">KuduWriteOperation</a> *write_op) WARN_UNUSED_RESULT</dt>
+<dd>Add "doAs" ability here for proxy servers to be able to act on behalf of other users, assuming access rights.  </dd>
+<dt><a class="anchor" id="_todo000006"></a>Member <a class="el" href="classkudu_1_1client_1_1KuduSession.html#aaec3956e642610d703f3b83b78e24e19a520b8eef7ef0fd149b2757faf43972b1">kudu::client::KuduSession::AUTO_FLUSH_BACKGROUND</a>  </dt>
+<dd>Provide an API for the user to specify a callback to do their own error reporting.  </dd>
+<dt><a class="anchor" id="_todo000005"></a>Member <a class="el" href="classkudu_1_1client_1_1KuduSession.html#a3f224e9b95f86da7e1f2ea6fcf327756">kudu::client::KuduSession::HasPendingOperations</a>  () const </dt>
+<dd>Maybe "incomplete" or "undelivered" is clearer?  </dd>
+<dt><a class="anchor" id="_todo000003"></a>Member <a class="el" href="classkudu_1_1client_1_1KuduTableCreator.html#a15126b62437fc1741b41249080376f93">kudu::client::KuduTableCreator::table_name</a>  (const std::string &amp;name)</dt>
+<dd>Should name of the table be a constructor's parameter instead? </dd>
+</dl>
+</div></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:02 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/value_8h_source.html b/releases/1.4.0/cpp-client-api/value_8h_source.html
new file mode 100644
index 0000000..2c33639
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/value_8h_source.html
@@ -0,0 +1,105 @@
+<!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.11"/>
+<title>Kudu C++ client API: include/kudu/client/value.h Source File</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="files.html"><span>File&#160;List</span></a></li>
+      <li><a href="globals.html"><span>File&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_58b01e52e53886b8d78ab5060a2cd2bd.html">kudu</a></li><li class="navelem"><a class="el" href="dir_4eb331d85bb84eae27db9d0af49f6f99.html">client</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">value.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&quot;); 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;<span class="preprocessor">#ifndef KUDU_CLIENT_VALUE_H</span></div><div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#define KUDU_CLIENT_VALUE_H</span></div><div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;</div><div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#ifdef KUDU_HEADERS_NO_STUBS</span></div><div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#include &quot;kudu/gutil/macros.h&quot;</span></div><div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#include &quot;kudu/gutil/port.h&quot;</span></div><div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#include &quot;kudu/client/stubs.h&quot;</span></div><div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="preprocessor">#include &quot;kudu/util/slice.h&quot;</span></div><div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="preprocessor">#include &quot;kudu/util/kudu_export.h&quot;</span></div><div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;</div><div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;<span class="keyword">namespace </span><a class="code" href="namespacekudu.html">kudu</a> {</div><div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;<span class="keyword">namespace </span>client {</div><div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;</div><div class="line"><a name="l00033"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduValue.html">   33</a></span>&#160;<span class="keyword">class </span>KUDU_EXPORT <a class="code" href="classkudu_1_1client_1_1KuduValue.html">KuduValue</a> {</div><div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;  <a class="code" href="classkudu_1_1client_1_1KuduValue.html">KuduValue</a>* Clone() <span class="keyword">const</span>;</div><div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;</div><div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1client_1_1KuduValue.html">KuduValue</a>* FromInt(int64_t val);</div><div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1client_1_1KuduValue.html">KuduValue</a>* FromFloat(<span class="keywordtype">float</span> f);</div><div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1client_1_1KuduValue.html">KuduValue</a>* FromDouble(<span class="keywordtype">double</span> d);</div><div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1client_1_1KuduValue.html">KuduValue</a>* FromBool(<span class="keywordtype">bool</span> b);</div><div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;</div><div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;  <span class="keyword">static</span> <a class="code" href="classkudu_1_1client_1_1KuduValue.html">KuduValue</a>* CopyString(<a class="code" href="classkudu_1_1Slice.html">Slice</a> s);</div><div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;</div><div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;  ~<a class="code" href="classkudu_1_1client_1_1KuduValue.html">KuduValue</a>();</div><div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>ComparisonPredicateData;</div><div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>InListPredicateData;</div><div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classkudu_1_1client_1_1KuduColumnSpec.html">KuduColumnSpec</a>;</div><div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;</div><div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;  <span class="keyword">class </span>KUDU_NO_EXPORT Data;</div><div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;  <span class="keyword">explicit</span> <a class="code" href="classkudu_1_1client_1_1KuduValue.html">KuduValue</a>(Data* d);</div><div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;</div><div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;  <span class="comment">// Owned.</span></div><div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;  Data* data_;</div><div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;</div><div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;  DISALLOW_COPY_AND_ASSIGN(KuduValue);</div><div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;};</div><div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;</div><div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;} <span class="comment">// namespace client</span></div><div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;} <span class="comment">// namespace kudu</span></div><div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* KUDU_CLIENT_VALUE_H */</span><span class="preprocessor"></span></div><div class="ttc" id="classkudu_1_1client_1_1KuduValue_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduValue.html">kudu::client::KuduValue</a></div><div class="ttdoc">A constant cell value with a specific type. </div><div class="ttdef"><b>Definition:</b> value.h:33</div></div>
+<div class="ttc" id="namespacekudu_html"><div class="ttname"><a href="namespacekudu.html">kudu</a></div><div class="ttdef"><b>Definition:</b> callbacks.h:28</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduColumnSpec_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduColumnSpec.html">kudu::client::KuduColumnSpec</a></div><div class="ttdoc">Builder API for specifying or altering a column within a table schema. </div><div class="ttdef"><b>Definition:</b> schema.h:232</div></div>
+<div class="ttc" id="classkudu_1_1Slice_html"><div class="ttname"><a href="classkudu_1_1Slice.html">kudu::Slice</a></div><div class="ttdoc">A wrapper around externally allocated data. </div><div class="ttdef"><b>Definition:</b> slice.h:43</div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:02 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/cpp-client-api/write__op_8h_source.html b/releases/1.4.0/cpp-client-api/write__op_8h_source.html
new file mode 100644
index 0000000..6f57b26
--- /dev/null
+++ b/releases/1.4.0/cpp-client-api/write__op_8h_source.html
@@ -0,0 +1,117 @@
+<!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.11"/>
+<title>Kudu C++ client API: include/kudu/client/write_op.h Source File</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>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</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.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="files.html"><span>File&#160;List</span></a></li>
+      <li><a href="globals.html"><span>File&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_58b01e52e53886b8d78ab5060a2cd2bd.html">kudu</a></li><li class="navelem"><a class="el" href="dir_4eb331d85bb84eae27db9d0af49f6f99.html">client</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">write_op.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&quot;); 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;<span class="preprocessor">#ifndef KUDU_CLIENT_WRITE_OP_H</span></div><div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#define KUDU_CLIENT_WRITE_OP_H</span></div><div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;</div><div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#include &lt;string&gt;</span></div><div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;</div><div class="line"><a name="l00022"></a><span class="lineno">   22</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="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#include &quot;kudu/common/partial_row.h&quot;</span></div><div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#include &quot;kudu/util/kudu_export.h&quot;</span></div><div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;</div><div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="keyword">namespace </span><a class="code" href="namespacekudu.html">kudu</a> {</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="keyword">class </span>EncodedKey;</div><div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;</div><div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;<span class="keyword">namespace </span>client {</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="keyword">namespace </span>internal {</div><div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;<span class="keyword">class </span>Batcher;</div><div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;<span class="keyword">class </span>ErrorCollector;</div><div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;<span class="keyword">class </span>WriteRpc;</div><div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;} <span class="comment">// namespace internal</span></div><div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;</div><div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;<span class="keyword">class </span>KuduTable;</div><div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;</div><div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduWriteOperation.html">   56</a></span>&#160;<span class="keyword">class </span>KUDU_EXPORT <a class="code" href="classkudu_1_1client_1_1KuduWriteOperation.html">KuduWriteOperation</a> {</div><div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduWriteOperation.html#a87d94ee5801a6b16fc6d1f44ee2e4357">   59</a></span>&#160;  <span class="keyword">enum</span> <a class="code" href="classkudu_1_1client_1_1KuduWriteOperation.html#a87d94ee5801a6b16fc6d1f44ee2e4357">Type</a> {</div><div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;    INSERT = 1,</div><div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;    UPDATE = 2,</div><div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;    DELETE = 3,</div><div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;    UPSERT = 4</div><div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;  };</div><div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;  <span class="keyword">virtual</span> ~<a class="code" href="classkudu_1_1client_1_1KuduWriteOperation.html">KuduWriteOperation</a>();</div><div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;</div><div class="line"><a name="l00070"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduWriteOperation.html#a973b342ced786b23754b57fd83b34aa3">   70</a></span>&#160;  <span class="keyword">const</span> <a class="code" href="classKuduPartialRow.html">KuduPartialRow</a>&amp; <a class="code" href="classkudu_1_1client_1_1KuduWriteOperation.html#a973b342ced786b23754b57fd83b34aa3">row</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> row_; }</div><div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;</div><div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduWriteOperation.html#a8889770ce62e2ca0ce5d55c9c90af6bc">   75</a></span>&#160;  <a class="code" href="classKuduPartialRow.html">KuduPartialRow</a>* <a class="code" href="classkudu_1_1client_1_1KuduWriteOperation.html#a8889770ce62e2ca0ce5d55c9c90af6bc">mutable_row</a>() { <span class="keywordflow">return</span> &amp;row_; }</div><div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;</div><div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;  <span class="keyword">virtual</span> std::string ToString() <span class="keyword">const</span> = 0;</div><div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160; <span class="keyword">protected</span>:</div><div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;</div><div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;  <span class="keyword">explicit</span> <a class="code" href="classkudu_1_1client_1_1KuduWriteOperation.html">KuduWriteOperation</a>(<span class="keyword">const</span> sp::shared_ptr&lt;KuduTable&gt;&amp; table);</div><div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;</div><div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;  <span class="keyword">virtual</span> <a class="code" href="classkudu_1_1client_1_1KuduWriteOperation.html#a87d94ee5801a6b16fc6d1f44ee2e4357">Type</a> type() <span class="keyword">const</span> = 0;</div><div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;</div><div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;  sp::shared_ptr&lt;KuduTable&gt; <span class="keyword">const</span> table_;</div><div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;</div><div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;  <a class="code" href="classKuduPartialRow.html">KuduPartialRow</a> row_;</div><div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;</div><div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;</div><div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>internal::Batcher;</div><div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>internal::WriteRpc;</div><div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;  <span class="keyword">friend</span> <span class="keyword">class </span>internal::ErrorCollector;</div><div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;</div><div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;  <span class="comment">// Create and encode the key for this write (key must be set)</span></div><div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;  <span class="comment">//</span></div><div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;  <span class="comment">// Caller takes ownership of the allocated memory.</span></div><div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;  EncodedKey* CreateKey() <span class="keyword">const</span>;</div><div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;</div><div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;  <span class="keyword">const</span> <a class="code" href="classkudu_1_1client_1_1KuduTable.html">KuduTable</a>* table()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> table_.get(); }</div><div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;</div><div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;  <span class="comment">// Return the number of bytes required to buffer this operation,</span></div><div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;  <span class="comment">// including direct and indirect data. Once called, the result is cached</span></div><div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;  <span class="comment">// so subsequent calls will return the size previously computed.</span></div><div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;  int64_t SizeInBuffer() <span class="keyword">const</span>;</div><div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;</div><div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;  <span class="keyword">mutable</span> int64_t size_in_buffer_;</div><div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;</div><div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;  DISALLOW_COPY_AND_ASSIGN(<a class="code" href="classkudu_1_1client_1_1KuduWriteOperation.html">KuduWriteOperation</a>);</div><div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;};</div><div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;</div><div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;</div><div class="line"><a name="l00132"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduInsert.html">  132</a></span>&#160;<span class="keyword">class </span>KUDU_EXPORT <a class="code" href="classkudu_1_1client_1_1KuduInsert.html">KuduInsert</a> : <span class="keyword">public</span> <a class="code" href="classkudu_1_1client_1_1KuduWriteOperation.html">KuduWriteOperation</a> {</div><div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;  <span class="keyword">virtual</span> ~<a class="code" href="classkudu_1_1client_1_1KuduInsert.html">KuduInsert</a>();</div><div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;</div><div class="line"><a name="l00137"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduInsert.html#a7c0fb45a5bfa96574b6328be392ba240">  137</a></span>&#160;  <span class="keyword">virtual</span> std::string <a class="code" href="classkudu_1_1client_1_1KuduInsert.html#a7c0fb45a5bfa96574b6328be392ba240">ToString</a>() const OVERRIDE { <span class="keywordflow">return</span> <span class="stringliteral">&quot;INSERT &quot;</span> + row_.ToString(); }</div><div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;</div><div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160; <span class="keyword">protected</span>:</div><div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;</div><div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;  <span class="keyword">virtual</span> <a class="code" href="classkudu_1_1client_1_1KuduWriteOperation.html#a87d94ee5801a6b16fc6d1f44ee2e4357">Type</a> type() <span class="keyword">const</span> OVERRIDE {</div><div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;    <span class="keywordflow">return</span> INSERT;</div><div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;  }</div><div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;</div><div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;</div><div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00150"></a><span class="lineno">  150</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="l00151"></a><span class="lineno">  151</span>&#160;  <span class="keyword">explicit</span> <a class="code" href="classkudu_1_1client_1_1KuduInsert.html">KuduInsert</a>(<span class="keyword">const</span> sp::shared_ptr&lt;KuduTable&gt;&amp; table);</div><div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;};</div><div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;</div><div class="line"><a name="l00157"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduUpsert.html">  157</a></span>&#160;<span class="keyword">class </span>KUDU_EXPORT <a class="code" href="classkudu_1_1client_1_1KuduUpsert.html">KuduUpsert</a> : <span class="keyword">public</span> <a class="code" href="classkudu_1_1client_1_1KuduWriteOperation.html">KuduWriteOperation</a> {</div><div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;  <span class="keyword">virtual</span> ~<a class="code" href="classkudu_1_1client_1_1KuduUpsert.html">KuduUpsert</a>();</div><div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;</div><div class="line"><a name="l00162"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduUpsert.html#a0608280ef5b4eb2a53c0b303db7401c8">  162</a></span>&#160;  <span class="keyword">virtual</span> std::string <a class="code" href="classkudu_1_1client_1_1KuduUpsert.html#a0608280ef5b4eb2a53c0b303db7401c8">ToString</a>() const OVERRIDE { <span class="keywordflow">return</span> <span class="stringliteral">&quot;UPSERT &quot;</span> + row_.ToString(); }</div><div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;</div><div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160; <span class="keyword">protected</span>:</div><div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;</div><div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;  <span class="keyword">virtual</span> <a class="code" href="classkudu_1_1client_1_1KuduWriteOperation.html#a87d94ee5801a6b16fc6d1f44ee2e4357">Type</a> type() <span class="keyword">const</span> OVERRIDE {</div><div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160;    <span class="keywordflow">return</span> UPSERT;</div><div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160;  }</div><div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;</div><div class="line"><a name="l00173"></a><span class="lineno">  173</span>&#160;</div><div class="line"><a name="l00174"></a><span class="lineno">  174</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00175"></a><span class="lineno">  175</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="l00176"></a><span class="lineno">  176</span>&#160;  <span class="keyword">explicit</span> <a class="code" href="classkudu_1_1client_1_1KuduUpsert.html">KuduUpsert</a>(<span class="keyword">const</span> sp::shared_ptr&lt;KuduTable&gt;&amp; table);</div><div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160;};</div><div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;</div><div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160;</div><div class="line"><a name="l00184"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduUpdate.html">  184</a></span>&#160;<span class="keyword">class </span>KUDU_EXPORT <a class="code" href="classkudu_1_1client_1_1KuduUpdate.html">KuduUpdate</a> : <span class="keyword">public</span> <a class="code" href="classkudu_1_1client_1_1KuduWriteOperation.html">KuduWriteOperation</a> {</div><div class="line"><a name="l00185"></a><span class="lineno">  185</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160;  <span class="keyword">virtual</span> ~<a class="code" href="classkudu_1_1client_1_1KuduUpdate.html">KuduUpdate</a>();</div><div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160;</div><div class="line"><a name="l00189"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduUpdate.html#af05d202ea529554b6d033d51ec942718">  189</a></span>&#160;  <span class="keyword">virtual</span> std::string <a class="code" href="classkudu_1_1client_1_1KuduUpdate.html#af05d202ea529554b6d033d51ec942718">ToString</a>() const OVERRIDE { <span class="keywordflow">return</span> <span class="stringliteral">&quot;UPDATE &quot;</span> + row_.ToString(); }</div><div class="line"><a name="l00190"></a><span class="lineno">  190</span>&#160;</div><div class="line"><a name="l00191"></a><span class="lineno">  191</span>&#160; <span class="keyword">protected</span>:</div><div class="line"><a name="l00193"></a><span class="lineno">  193</span>&#160;</div><div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160;  <span class="keyword">virtual</span> <a class="code" href="classkudu_1_1client_1_1KuduWriteOperation.html#a87d94ee5801a6b16fc6d1f44ee2e4357">Type</a> type() <span class="keyword">const</span> OVERRIDE {</div><div class="line"><a name="l00196"></a><span class="lineno">  196</span>&#160;    <span class="keywordflow">return</span> UPDATE;</div><div class="line"><a name="l00197"></a><span class="lineno">  197</span>&#160;  }</div><div class="line"><a name="l00198"></a><span class="lineno">  198</span>&#160;</div><div class="line"><a name="l00200"></a><span class="lineno">  200</span>&#160;</div><div class="line"><a name="l00201"></a><span class="lineno">  201</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00202"></a><span class="lineno">  202</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="l00203"></a><span class="lineno">  203</span>&#160;  <span class="keyword">explicit</span> <a class="code" href="classkudu_1_1client_1_1KuduUpdate.html">KuduUpdate</a>(<span class="keyword">const</span> sp::shared_ptr&lt;KuduTable&gt;&amp; table);</div><div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160;};</div><div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160;</div><div class="line"><a name="l00206"></a><span class="lineno">  206</span>&#160;</div><div class="line"><a name="l00211"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduDelete.html">  211</a></span>&#160;<span class="keyword">class </span>KUDU_EXPORT <a class="code" href="classkudu_1_1client_1_1KuduDelete.html">KuduDelete</a> : <span class="keyword">public</span> <a class="code" href="classkudu_1_1client_1_1KuduWriteOperation.html">KuduWriteOperation</a> {</div><div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00213"></a><span class="lineno">  213</span>&#160;  <span class="keyword">virtual</span> ~<a class="code" href="classkudu_1_1client_1_1KuduDelete.html">KuduDelete</a>();</div><div class="line"><a name="l00214"></a><span class="lineno">  214</span>&#160;</div><div class="line"><a name="l00216"></a><span class="lineno"><a class="line" href="classkudu_1_1client_1_1KuduDelete.html#a586dc46e1d10118465e3b834ac578de0">  216</a></span>&#160;  <span class="keyword">virtual</span> std::string <a class="code" href="classkudu_1_1client_1_1KuduDelete.html#a586dc46e1d10118465e3b834ac578de0">ToString</a>() const OVERRIDE { <span class="keywordflow">return</span> <span class="stringliteral">&quot;DELETE &quot;</span> + row_.ToString(); }</div><div class="line"><a name="l00217"></a><span class="lineno">  217</span>&#160;</div><div class="line"><a name="l00218"></a><span class="lineno">  218</span>&#160; <span class="keyword">protected</span>:</div><div class="line"><a name="l00220"></a><span class="lineno">  220</span>&#160;</div><div class="line"><a name="l00222"></a><span class="lineno">  222</span>&#160;  <span class="keyword">virtual</span> <a class="code" href="classkudu_1_1client_1_1KuduWriteOperation.html#a87d94ee5801a6b16fc6d1f44ee2e4357">Type</a> type() <span class="keyword">const</span> OVERRIDE {</div><div class="line"><a name="l00223"></a><span class="lineno">  223</span>&#160;    <span class="keywordflow">return</span> DELETE;</div><div class="line"><a name="l00224"></a><span class="lineno">  224</span>&#160;  }</div><div class="line"><a name="l00225"></a><span class="lineno">  225</span>&#160;</div><div class="line"><a name="l00227"></a><span class="lineno">  227</span>&#160;</div><div class="line"><a name="l00228"></a><span class="lineno">  228</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00229"></a><span class="lineno">  229</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="l00230"></a><span class="lineno">  230</span>&#160;  <span class="keyword">explicit</span> <a class="code" href="classkudu_1_1client_1_1KuduDelete.html">KuduDelete</a>(<span class="keyword">const</span> sp::shared_ptr&lt;KuduTable&gt;&amp; table);</div><div class="line"><a name="l00231"></a><span class="lineno">  231</span>&#160;};</div><div class="line"><a name="l00232"></a><span class="lineno">  232</span>&#160;</div><div class="line"><a name="l00233"></a><span class="lineno">  233</span>&#160;} <span class="comment">// namespace client</span></div><div class="line"><a name="l00234"></a><span class="lineno">  234</span>&#160;} <span class="comment">// namespace kudu</span></div><div class="line"><a name="l00235"></a><span class="lineno">  235</span>&#160;</div><div class="line"><a name="l00236"></a><span class="lineno">  236</span>&#160;<span class="preprocessor">#endif</span></div><div class="ttc" id="classkudu_1_1client_1_1KuduUpdate_html_af05d202ea529554b6d033d51ec942718"><div class="ttname"><a href="classkudu_1_1client_1_1KuduUpdate.html#af05d202ea529554b6d033d51ec942718">kudu::client::KuduUpdate::ToString</a></div><div class="ttdeci">virtual std::string ToString() const OVERRIDE</div><div class="ttdef"><b>Definition:</b> write_op.h:189</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduUpdate_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduUpdate.html">kudu::client::KuduUpdate</a></div><div class="ttdoc">A single row update to be sent to the cluster. </div><div class="ttdef"><b>Definition:</b> write_op.h:184</div></div>
+<div class="ttc" id="namespacekudu_html"><div class="ttname"><a href="namespacekudu.html">kudu</a></div><div class="ttdef"><b>Definition:</b> callbacks.h:28</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduInsert_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduInsert.html">kudu::client::KuduInsert</a></div><div class="ttdoc">A single row insert to be sent to the cluster. </div><div class="ttdef"><b>Definition:</b> write_op.h:132</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduUpsert_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduUpsert.html">kudu::client::KuduUpsert</a></div><div class="ttdoc">A single row upsert to be sent to the cluster. </div><div class="ttdef"><b>Definition:</b> write_op.h:157</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduInsert_html_a7c0fb45a5bfa96574b6328be392ba240"><div class="ttname"><a href="classkudu_1_1client_1_1KuduInsert.html#a7c0fb45a5bfa96574b6328be392ba240">kudu::client::KuduInsert::ToString</a></div><div class="ttdeci">virtual std::string ToString() const OVERRIDE</div><div class="ttdef"><b>Definition:</b> write_op.h:137</div></div>
+<div class="ttc" id="shared__ptr_8h_html"><div class="ttname"><a href="shared__ptr_8h.html">shared_ptr.h</a></div><div class="ttdoc">Smart pointer typedefs for externally-faced code. </div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduUpsert_html_a0608280ef5b4eb2a53c0b303db7401c8"><div class="ttname"><a href="classkudu_1_1client_1_1KuduUpsert.html#a0608280ef5b4eb2a53c0b303db7401c8">kudu::client::KuduUpsert::ToString</a></div><div class="ttdeci">virtual std::string ToString() const OVERRIDE</div><div class="ttdef"><b>Definition:</b> write_op.h:162</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduDelete_html_a586dc46e1d10118465e3b834ac578de0"><div class="ttname"><a href="classkudu_1_1client_1_1KuduDelete.html#a586dc46e1d10118465e3b834ac578de0">kudu::client::KuduDelete::ToString</a></div><div class="ttdeci">virtual std::string ToString() const OVERRIDE</div><div class="ttdef"><b>Definition:</b> write_op.h:216</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduWriteOperation_html_a973b342ced786b23754b57fd83b34aa3"><div class="ttname"><a href="classkudu_1_1client_1_1KuduWriteOperation.html#a973b342ced786b23754b57fd83b34aa3">kudu::client::KuduWriteOperation::row</a></div><div class="ttdeci">const KuduPartialRow &amp; row() const </div><div class="ttdef"><b>Definition:</b> write_op.h:70</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduTable_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduTable.html">kudu::client::KuduTable</a></div><div class="ttdoc">A representation of a table on a particular cluster. </div><div class="ttdef"><b>Definition:</b> client.h:862</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduWriteOperation_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduWriteOperation.html">kudu::client::KuduWriteOperation</a></div><div class="ttdoc">A single-row write operation to be sent to a Kudu table. </div><div class="ttdef"><b>Definition:</b> write_op.h:56</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduWriteOperation_html_a8889770ce62e2ca0ce5d55c9c90af6bc"><div class="ttname"><a href="classkudu_1_1client_1_1KuduWriteOperation.html#a8889770ce62e2ca0ce5d55c9c90af6bc">kudu::client::KuduWriteOperation::mutable_row</a></div><div class="ttdeci">KuduPartialRow * mutable_row()</div><div class="ttdef"><b>Definition:</b> write_op.h:75</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduWriteOperation_html_a87d94ee5801a6b16fc6d1f44ee2e4357"><div class="ttname"><a href="classkudu_1_1client_1_1KuduWriteOperation.html#a87d94ee5801a6b16fc6d1f44ee2e4357">kudu::client::KuduWriteOperation::Type</a></div><div class="ttdeci">Type</div><div class="ttdoc">Write operation types. </div><div class="ttdef"><b>Definition:</b> write_op.h:59</div></div>
+<div class="ttc" id="classkudu_1_1client_1_1KuduDelete_html"><div class="ttname"><a href="classkudu_1_1client_1_1KuduDelete.html">kudu::client::KuduDelete</a></div><div class="ttdoc">A single row delete to be sent to the cluster. </div><div class="ttdef"><b>Definition:</b> write_op.h:211</div></div>
+<div class="ttc" id="classKuduPartialRow_html"><div class="ttname"><a href="classKuduPartialRow.html">KuduPartialRow</a></div><div class="ttdoc">A row which may only contain values for a subset of the columns. </div><div class="ttdef"><b>Definition:</b> partial_row.h:61</div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.4.0 on Tue Jun 13 2017 10:50:02 by Doxygen 1.8.11</small>
+  <br>
+  <small>Copyright © 2017 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>
diff --git a/releases/1.4.0/docs/administration.html b/releases/1.4.0/docs/administration.html
new file mode 100644
index 0000000..2528033
--- /dev/null
+++ b/releases/1.4.0/docs/administration.html
@@ -0,0 +1,1352 @@
+<!DOCTYPE html>
+<html lang="en">
+  <head>
+    <meta charset="utf-8" />
+    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
+    <meta name="viewport" content="width=device-width, initial-scale=1" />
+    <!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
+    <meta name="description" content="A new open source Apache Hadoop ecosystem project, Apache Kudu completes Hadoop's storage layer to enable fast analytics on fast data" />
+    <meta name="author" content="Cloudera" />
+    <title>Apache Kudu - Apache Kudu Administration</title>
+    <!-- Bootstrap core CSS -->
+    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css"
+          integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7"
+          crossorigin="anonymous">
+
+    <!-- Custom styles for this template -->
+    <link href="/css/kudu.css" rel="stylesheet"/>
+    <link href="/css/asciidoc.css" rel="stylesheet"/>
+    <link rel="shortcut icon" href="/img/logo-favicon.ico" />
+    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.6.1/css/font-awesome.min.css" />
+
+    
+
+    <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+        <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+        <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+        <![endif]-->
+  </head>
+  <body>
+    <div class="kudu-site container-fluid">
+      <!-- Static navbar -->
+        <nav class="navbar navbar-default">
+          <div class="container-fluid">
+            <div class="navbar-header">
+              <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
+                <span class="sr-only">Toggle navigation</span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+              </button>
+              
+              <a class="logo" href="/"><img
+                src="//d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_80px.png"
+                srcset="//d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_80px.png 1x, //d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_160px.png 2x"
+                alt="Apache Kudu"/></a>
+              
+            </div>
+            <div id="navbar" class="collapse navbar-collapse">
+              <ul class="nav navbar-nav navbar-right">
+                <li >
+                  <a href="/">Home</a>
+                </li>
+                <li >
+                  <a href="/overview.html">Overview</a>
+                </li>
+                <li class="active">
+                  <a href="/docs/">Documentation</a>
+                </li>
+                <li >
+                  <a href="/releases/">Download</a>
+                </li>
+                <li >
+                  <a href="/blog/">Blog</a>
+                </li>
+                <!-- NOTE: this dropdown menu does not appear on Mobile, so don't add anything here
+                     that doesn't also appear elsewhere on the site. -->
+                <li class="dropdown">
+                  <a href="/community.html" role="button" aria-haspopup="true" aria-expanded="false">Community <span class="caret"></span></a>
+                  <ul class="dropdown-menu">
+                    <li class="dropdown-header">GET IN TOUCH</li>
+                    <li><a class="icon email" href="/community.html">Mailing Lists</a></li>
+                    <li><a class="icon slack" href="https://getkudu-slack.herokuapp.com/">Slack Channel</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li><a href="/community.html#meetups-user-groups-and-conference-presentations">Events and Meetups</a></li>
+                    <li><a href="/committers.html">Project Committers</a></li>
+                    <!--<li><a href="/roadmap.html">Roadmap</a></li>-->
+                    <li><a href="/community.html#contributions">How to Contribute</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li class="dropdown-header">DEVELOPER RESOURCES</li>
+                    <li><a class="icon github" href="https://github.com/apache/incubator-kudu">GitHub</a></li>
+                    <li><a class="icon gerrit" href="http://gerrit.cloudera.org:8080/#/q/status:open+project:kudu">Gerrit Code Review</a></li>
+                    <li><a class="icon jira" href="https://issues.apache.org/jira/browse/KUDU">JIRA Issue Tracker</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li class="dropdown-header">SOCIAL MEDIA</li>
+                    <li><a class="icon twitter" href="https://twitter.com/ApacheKudu">Twitter</a></li>
+                  </ul>
+                </li>
+                <li >
+                  <a href="/faq.html">FAQ</a>
+                </li>
+              </ul><!-- /.nav -->
+            </div><!-- /#navbar -->
+          </div><!-- /.container-fluid -->
+        </nav>
+
+<!--
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
+
+
+<div class="container">
+  <div class="row">
+    <div class="col-md-9">
+
+<h1>Apache Kudu Administration</h1>
+      <div id="preamble">
+<div class="sectionbody">
+<div class="admonitionblock note">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-note" title="Note"></i>
+</td>
+<td class="content">
+Kudu is easier to manage with <a href="http://www.cloudera.com/content/www/en-us/products/cloudera-manager.html">Cloudera Manager</a>
+than in a standalone installation. See Cloudera&#8217;s
+<a href="http://www.cloudera.com/documentation/kudu/latest/topics/kudu_installation.html">Kudu documentation</a>
+for more details about using Kudu with Cloudera Manager.
+</td>
+</tr>
+</table>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_starting_and_stopping_kudu_processes"><a class="link" href="#_starting_and_stopping_kudu_processes">Starting and Stopping Kudu Processes</a></h2>
+<div class="sectionbody">
+<div class="admonitionblock note">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-note" title="Note"></i>
+</td>
+<td class="content">
+These instructions are relevant only when Kudu is installed using operating system packages
+(e.g. <code>rpm</code> or <code>deb</code>).
+</td>
+</tr>
+</table>
+</div>
+<div class="olist arabic">
+<ol class="arabic">
+<li>
+<p>Start Kudu services using the following commands:</p>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-bash" data-lang="bash">$ sudo service kudu-master start
+$ sudo service kudu-tserver start</code></pre>
+</div>
+</div>
+</li>
+<li>
+<p>To stop Kudu services, use the following commands:</p>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-bash" data-lang="bash">$ sudo service kudu-master stop
+$ sudo service kudu-tserver stop</code></pre>
+</div>
+</div>
+</li>
+</ol>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_kudu_web_interfaces"><a class="link" href="#_kudu_web_interfaces">Kudu Web Interfaces</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Kudu tablet servers and masters expose useful operational information on a built-in web interface,</p>
+</div>
+<div class="sect2">
+<h3 id="_kudu_master_web_interface"><a class="link" href="#_kudu_master_web_interface">Kudu Master Web Interface</a></h3>
+<div class="paragraph">
+<p>Kudu master processes serve their web interface on port 8051. The interface exposes several pages
+with information about the cluster state:</p>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p>A list of tablet servers, their host names, and the time of their last heartbeat.</p>
+</li>
+<li>
+<p>A list of tables, including schema and tablet location information for each.</p>
+</li>
+<li>
+<p>SQL code which you can paste into Impala Shell to add an existing table to Impala&#8217;s list of known data sources.</p>
+</li>
+</ul>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_kudu_tablet_server_web_interface"><a class="link" href="#_kudu_tablet_server_web_interface">Kudu Tablet Server Web Interface</a></h3>
+<div class="paragraph">
+<p>Each tablet server serves a web interface on port 8050. The interface exposes information
+about each tablet hosted on the server, its current state, and debugging information
+about maintenance background operations.</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_common_web_interface_pages"><a class="link" href="#_common_web_interface_pages">Common Web Interface Pages</a></h3>
+<div class="paragraph">
+<p>Both Kudu masters and tablet servers expose a common set of information via their web interfaces:</p>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p>HTTP access to server logs.</p>
+</li>
+<li>
+<p>an <code>/rpcz</code> endpoint which lists currently running RPCs via JSON.</p>
+</li>
+<li>
+<p>pages giving an overview and detailed information on the memory usage of different
+components of the process.</p>
+</li>
+<li>
+<p>information on the current set of configuration flags.</p>
+</li>
+<li>
+<p>information on the currently running threads and their resource consumption.</p>
+</li>
+<li>
+<p>a JSON endpoint exposing metrics about the server.</p>
+</li>
+<li>
+<p>information on the deployed version number of the daemon.</p>
+</li>
+</ul>
+</div>
+<div class="paragraph">
+<p>These interfaces are linked from the landing page of each daemon&#8217;s web UI.</p>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_kudu_metrics"><a class="link" href="#_kudu_metrics">Kudu Metrics</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Kudu daemons expose a large number of metrics. Some metrics are associated with an entire
+server process, whereas others are associated with a particular tablet replica.</p>
+</div>
+<div class="sect2">
+<h3 id="_listing_available_metrics"><a class="link" href="#_listing_available_metrics">Listing available metrics</a></h3>
+<div class="paragraph">
+<p>The full set of available metrics for a Kudu server can be dumped via a special command
+line flag:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-bash" data-lang="bash">$ kudu-tserver --dump_metrics_json
+$ kudu-master --dump_metrics_json</code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>This will output a large JSON document. Each metric indicates its name, label, description,
+units, and type. Because the output is JSON-formatted, this information can easily be
+parsed and fed into other tooling which collects metrics from Kudu servers.</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_collecting_metrics_via_http"><a class="link" href="#_collecting_metrics_via_http">Collecting metrics via HTTP</a></h3>
+<div class="paragraph">
+<p>Metrics can be collected from a server process via its HTTP interface by visiting
+<code>/metrics</code>. The output of this page is JSON for easy parsing by monitoring services.
+This endpoint accepts several <code>GET</code> parameters in its query string:</p>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p><code>/metrics?metrics=&lt;substring1&gt;,&lt;substring2&gt;,&#8230;&#8203;</code> - limits the returned metrics to those which contain
+at least one of the provided substrings. The substrings also match entity names, so this
+may be used to collect metrics for a specific tablet.</p>
+</li>
+<li>
+<p><code>/metrics?include_schema=1</code> - includes metrics schema information such as unit, description,
+and label in the JSON output. This information is typically elided to save space.</p>
+</li>
+<li>
+<p><code>/metrics?compact=1</code> - eliminates unnecessary whitespace from the resulting JSON, which can decrease
+bandwidth when fetching this page from a remote host.</p>
+</li>
+<li>
+<p><code>/metrics?include_raw_histograms=1</code> - include the raw buckets and values for histogram metrics,
+enabling accurate aggregation of percentile metrics over time and across hosts.</p>
+</li>
+</ul>
+</div>
+<div class="paragraph">
+<p>For example:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-bash" data-lang="bash">$ curl -s 'http://example-ts:8050/metrics?include_schema=1&amp;metrics=connections_accepted'</code></pre>
+</div>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-json" data-lang="json">[
+    {
+        "type": "server",
+        "id": "kudu.tabletserver",
+        "attributes": {},
+        "metrics": [
+            {
+                "name": "rpc_connections_accepted",
+                "label": "RPC Connections Accepted",
+                "type": "counter",
+                "unit": "connections",
+                "description": "Number of incoming TCP connections made to the RPC server",
+                "value": 92
+            }
+        ]
+    }
+]</code></pre>
+</div>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-bash" data-lang="bash">$ curl -s 'http://example-ts:8050/metrics?metrics=log_append_latency'</code></pre>
+</div>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-json" data-lang="json">[
+    {
+        "type": "tablet",
+        "id": "c0ebf9fef1b847e2a83c7bd35c2056b1",
+        "attributes": {
+            "table_name": "lineitem",
+            "partition": "hash buckets: (55), range: [(&lt;start&gt;), (&lt;end&gt;))",
+            "table_id": ""
+        },
+        "metrics": [
+            {
+                "name": "log_append_latency",
+                "total_count": 7498,
+                "min": 4,
+                "mean": 69.3649,
+                "percentile_75": 29,
+                "percentile_95": 38,
+                "percentile_99": 45,
+                "percentile_99_9": 95,
+                "percentile_99_99": 167,
+                "max": 367244,
+                "total_sum": 520098
+            }
+        ]
+    }
+]</code></pre>
+</div>
+</div>
+<div class="admonitionblock note">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-note" title="Note"></i>
+</td>
+<td class="content">
+All histograms and counters are measured since the server start time, and are not reset upon collection.
+</td>
+</tr>
+</table>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_collecting_metrics_to_a_log"><a class="link" href="#_collecting_metrics_to_a_log">Collecting metrics to a log</a></h3>
+<div class="paragraph">
+<p>Kudu may be configured to periodically dump all of its metrics to a local log file using the
+<code>--metrics_log_interval_ms</code> flag. Set this flag to the interval at which metrics should be written
+to a log file.</p>
+</div>
+<div class="paragraph">
+<p>The metrics log will be written to the same directory as the other Kudu log files, with the same
+naming format. After any metrics log file reaches 64MB uncompressed, the log will be rolled and
+the previous file will be gzip-compressed.</p>
+</div>
+<div class="paragraph">
+<p>The log file generated has three space-separated fields. The first field is the word
+<code>metrics</code>. The second field is the current timestamp in microseconds since the Unix epoch.
+The third is the current value of all metrics on the server, using a compact JSON encoding.
+The encoding is the same as the metrics fetched via HTTP described above.</p>
+</div>
+<div class="admonitionblock warning">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-warning" title="Warning"></i>
+</td>
+<td class="content">
+Although metrics logging automatically rolls and compresses previous log files, it does
+not remove old ones. Since metrics logging can use significant amounts of disk space,
+consider setting up a system utility to monitor space in the log directory and archive or
+delete old segments.
+</td>
+</tr>
+</table>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_common_kudu_workflows"><a class="link" href="#_common_kudu_workflows">Common Kudu workflows</a></h2>
+<div class="sectionbody">
+<div class="sect2">
+<h3 id="migrate_to_multi_master"><a class="link" href="#migrate_to_multi_master">Migrating to Multiple Kudu Masters</a></h3>
+<div class="paragraph">
+<p>For high availability and to avoid a single point of failure, Kudu clusters should be created with
+multiple masters. Many Kudu clusters were created with just a single master, either for simplicity
+or because Kudu multi-master support was still experimental at the time. This workflow demonstrates
+how to migrate to a multi-master configuration.</p>
+</div>
+<div class="admonitionblock warning">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-warning" title="Warning"></i>
+</td>
+<td class="content">
+The workflow is unsafe for adding new masters to an existing multi-master configuration.
+Do not use it for that purpose.
+</td>
+</tr>
+</table>
+</div>
+<div class="admonitionblock warning">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-warning" title="Warning"></i>
+</td>
+<td class="content">
+The workflow presupposes at least basic familiarity with Kudu configuration management. If
+using Cloudera Manager (CM), the workflow also presupposes familiarity with it.
+</td>
+</tr>
+</table>
+</div>
+<div class="admonitionblock warning">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-warning" title="Warning"></i>
+</td>
+<td class="content">
+All of the command line steps below should be executed as the Kudu UNIX user, typically
+<code>kudu</code>.
+</td>
+</tr>
+</table>
+</div>
+<div class="sect3">
+<h4 id="_prepare_for_the_migration"><a class="link" href="#_prepare_for_the_migration">Prepare for the migration</a></h4>
+<div class="olist arabic">
+<ol class="arabic">
+<li>
+<p>Establish a maintenance window (one hour should be sufficient). During this time the Kudu cluster
+will be unavailable.</p>
+</li>
+<li>
+<p>Decide how many masters to use. The number of masters should be odd. Three or five node master
+configurations are recommended; they can tolerate one or two failures respectively.</p>
+</li>
+<li>
+<p>Perform the following preparatory steps for the existing master:</p>
+<div class="ulist">
+<ul>
+<li>
+<p>Identify and record the directory where the master&#8217;s data lives. If using Kudu system packages,
+the default value is /var/lib/kudu/master, but it may be customized via the <code>fs_wal_dir</code> and
+<code>fs_data_dirs</code> configuration parameter. Please note if you&#8217;ve set fs_data_dirs to some directories
+other than the value of fs_wal_dir, it should be explicitly included in every command below where
+fs_wal_dir is also included.</p>
+</li>
+<li>
+<p>Identify and record the port the master is using for RPCs. The default port value is 7051, but it
+may have been customized using the <code>rpc_bind_addresses</code> configuration parameter.</p>
+</li>
+<li>
+<p>Identify the master&#8217;s UUID. It can be fetched using the following command:</p>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-bash" data-lang="bash">$ kudu fs dump uuid --fs_wal_dir=&lt;master_data_dir&gt; 2&gt;/dev/null</code></pre>
+</div>
+</div>
+<div class="dlist">
+<dl>
+<dt class="hdlist1">master_data_dir</dt>
+<dd>
+<p>existing master&#8217;s previously recorded data directory</p>
+</dd>
+<dt class="hdlist1">Example</dt>
+<dd>
+<div class="listingblock">
+<div class="content">
+<pre>$ kudu fs dump uuid --fs_wal_dir=/var/lib/kudu/master 2&gt;/dev/null
+4aab798a69e94fab8d77069edff28ce0</pre>
+</div>
+</div>
+</dd>
+</dl>
+</div>
+</li>
+<li>
+<p>Optional: configure a DNS alias for the master. The alias could be a DNS cname (if the machine
+already has an A record in DNS), an A record (if the machine is only known by its IP address),
+or an alias in /etc/hosts. The alias should be an abstract representation of the master (e.g.
+<code>master-1</code>).</p>
+<div class="admonitionblock warning">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-warning" title="Warning"></i>
+</td>
+<td class="content">
+Without DNS aliases it is not possible to recover from permanent master failures, and as
+such it is highly recommended.
+</td>
+</tr>
+</table>
+</div>
+</li>
+</ul>
+</div>
+</li>
+<li>
+<p>Perform the following preparatory steps for each new master:</p>
+<div class="ulist">
+<ul>
+<li>
+<p>Choose an unused machine in the cluster. The master generates very little load so it can be
+colocated with other data services or load-generating processes, though not with another Kudu
+master from the same configuration.</p>
+</li>
+<li>
+<p>Ensure Kudu is installed on the machine, either via system packages (in which case the <code>kudu</code> and
+<code>kudu-master</code> packages should be installed), or via some other means.</p>
+</li>
+<li>
+<p>Choose and record the directory where the master&#8217;s data will live.</p>
+</li>
+<li>
+<p>Choose and record the port the master should use for RPCs.</p>
+</li>
+<li>
+<p>Optional: configure a DNS alias for the master (e.g. <code>master-2</code>, <code>master-3</code>, etc).</p>
+</li>
+</ul>
+</div>
+</li>
+</ol>
+</div>
+</div>
+<div class="sect3">
+<h4 id="_perform_the_migration"><a class="link" href="#_perform_the_migration">Perform the migration</a></h4>
+<div class="olist arabic">
+<ol class="arabic">
+<li>
+<p>Stop all the Kudu processes in the entire cluster.</p>
+</li>
+<li>
+<p>Format the data directory on each new master machine, and record the generated UUID. Use the
+following command sequence:</p>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-bash" data-lang="bash">$ kudu fs format --fs_wal_dir=&lt;master_data_dir&gt;
+$ kudu fs dump uuid --fs_wal_dir=&lt;master_data_dir&gt; 2&gt;/dev/null</code></pre>
+</div>
+</div>
+<div class="dlist">
+<dl>
+<dt class="hdlist1">master_data_dir</dt>
+<dd>
+<p>new master&#8217;s previously recorded data directory</p>
+</dd>
+<dt class="hdlist1">Example</dt>
+<dd>
+<div class="listingblock">
+<div class="content">
+<pre>$ kudu fs format --fs_wal_dir=/var/lib/kudu/master
+$ kudu fs dump uuid --fs_wal_dir=/var/lib/kudu/master 2&gt;/dev/null
+f5624e05f40649b79a757629a69d061e</pre>
+</div>
+</div>
+</dd>
+</dl>
+</div>
+</li>
+<li>
+<p>If using CM, add the new Kudu master roles now, but do not start them.</p>
+<div class="ulist">
+<ul>
+<li>
+<p>If using DNS aliases, override the empty value of the <code>Master Address</code> parameter for each role
+(including the existing master role) with that master&#8217;s alias.</p>
+</li>
+<li>
+<p>Add the port number (separated by a colon) if using a non-default RPC port value.</p>
+</li>
+</ul>
+</div>
+</li>
+<li>
+<p>Rewrite the master&#8217;s Raft configuration with the following command, executed on the existing
+master machine:</p>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-bash" data-lang="bash">$ kudu local_replica cmeta rewrite_raft_config --fs_wal_dir=&lt;master_data_dir&gt; &lt;tablet_id&gt; &lt;all_masters&gt;</code></pre>
+</div>
+</div>
+<div class="dlist">
+<dl>
+<dt class="hdlist1">master_data_dir</dt>
+<dd>
+<p>existing master&#8217;s previously recorded data directory</p>
+</dd>
+<dt class="hdlist1">tablet_id</dt>
+<dd>
+<p>must be the string <code>00000000000000000000000000000000</code></p>
+</dd>
+<dt class="hdlist1">all_masters</dt>
+<dd>
+<p>space-separated list of masters, both new and existing. Each entry in the list must be
+a string of the form <code>&lt;uuid&gt;:&lt;hostname&gt;:&lt;port&gt;</code></p>
+<div class="dlist">
+<dl>
+<dt class="hdlist1">uuid</dt>
+<dd>
+<p>master&#8217;s previously recorded UUID</p>
+</dd>
+<dt class="hdlist1">hostname</dt>
+<dd>
+<p>master&#8217;s previously recorded hostname or alias</p>
+</dd>
+<dt class="hdlist1">port</dt>
+<dd>
+<p>master&#8217;s previously recorded RPC port number</p>
+</dd>
+</dl>
+</div>
+</dd>
+<dt class="hdlist1">Example</dt>
+<dd>
+<div class="listingblock">
+<div class="content">
+<pre>$ kudu local_replica cmeta rewrite_raft_config --fs_wal_dir=/var/lib/kudu/master 00000000000000000000000000000000 4aab798a69e94fab8d77069edff28ce0:master-1:7051 f5624e05f40649b79a757629a69d061e:master-2:7051 988d8ac6530f426cbe180be5ba52033d:master-3:7051</pre>
+</div>
+</div>
+</dd>
+</dl>
+</div>
+</li>
+<li>
+<p>Modify the value of the <code>master_addresses</code> configuration parameter for both existing master and new masters.
+The new value must be a comma-separated list of all of the masters. Each entry is a string of the form <code>&lt;hostname&gt;:&lt;port&gt;</code></p>
+<div class="dlist">
+<dl>
+<dt class="hdlist1">hostname</dt>
+<dd>
+<p>master&#8217;s previously recorded hostname or alias</p>
+</dd>
+<dt class="hdlist1">port</dt>
+<dd>
+<p>master&#8217;s previously recorded RPC port number</p>
+</dd>
+</dl>
+</div>
+</li>
+<li>
+<p>Start the existing master.</p>
+</li>
+<li>
+<p>Copy the master data to each new master with the following command, executed on each new master
+machine:</p>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-bash" data-lang="bash">$ kudu local_replica copy_from_remote --fs_wal_dir=&lt;master_data_dir&gt; &lt;tablet_id&gt; &lt;existing_master&gt;</code></pre>
+</div>
+</div>
+<div class="dlist">
+<dl>
+<dt class="hdlist1">master_data_dir</dt>
+<dd>
+<p>new master&#8217;s previously recorded data directory</p>
+</dd>
+<dt class="hdlist1">tablet_id</dt>
+<dd>
+<p>must be the string <code>00000000000000000000000000000000</code></p>
+</dd>
+<dt class="hdlist1">existing_master</dt>
+<dd>
+<p>RPC address of the existing master and must be a string of the form
+<code>&lt;hostname&gt;:&lt;port&gt;</code></p>
+<div class="dlist">
+<dl>
+<dt class="hdlist1">hostname</dt>
+<dd>
+<p>existing master&#8217;s previously recorded hostname or alias</p>
+</dd>
+<dt class="hdlist1">port</dt>
+<dd>
+<p>existing master&#8217;s previously recorded RPC port number</p>
+</dd>
+</dl>
+</div>
+</dd>
+<dt class="hdlist1">Example</dt>
+<dd>
+<div class="listingblock">
+<div class="content">
+<pre>$ kudu local_replica copy_from_remote --fs_wal_dir=/var/lib/kudu/master 00000000000000000000000000000000 master-1:7051</pre>
+</div>
+</div>
+</dd>
+</dl>
+</div>
+</li>
+<li>
+<p>Start all of the new masters.</p>
+<div class="admonitionblock warning">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-warning" title="Warning"></i>
+</td>
+<td class="content">
+Skip the next step if using CM.
+</td>
+</tr>
+</table>
+</div>
+</li>
+<li>
+<p>Modify the value of the <code>tserver_master_addrs</code> configuration parameter for each tablet server.
+The new value must be a comma-separated list of masters where each entry is a string of the form
+<code>&lt;hostname&gt;:&lt;port&gt;</code></p>
+<div class="dlist">
+<dl>
+<dt class="hdlist1">hostname</dt>
+<dd>
+<p>master&#8217;s previously recorded hostname or alias</p>
+</dd>
+<dt class="hdlist1">port</dt>
+<dd>
+<p>master&#8217;s previously recorded RPC port number</p>
+</dd>
+</dl>
+</div>
+</li>
+<li>
+<p>Start all of the tablet servers.</p>
+</li>
+</ol>
+</div>
+<div class="paragraph">
+<p>Congratulations, the cluster has now been migrated to multiple masters! To verify that all masters
+are working properly, consider performing the following sanity checks:</p>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p>Using a browser, visit each master&#8217;s web UI. Look at the /masters page. All of the masters should
+be listed there with one master in the LEADER role and the others in the FOLLOWER role. The
+contents of /masters on each master should be the same.</p>
+</li>
+<li>
+<p>Run a Kudu system check (ksck) on the cluster using the <code>kudu</code> command line
+tool. See <a href="#ksck">Checking Cluster Health with <code>ksck</code></a> for more details.</p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_recovering_from_a_dead_kudu_master_in_a_multi_master_deployment"><a class="link" href="#_recovering_from_a_dead_kudu_master_in_a_multi_master_deployment">Recovering from a dead Kudu Master in a Multi-Master Deployment</a></h3>
+<div class="paragraph">
+<p>Kudu multi-master deployments function normally in the event of a master loss. However, it is
+important to replace the dead master; otherwise a second failure may lead to a loss of availability,
+depending on the number of available masters. This workflow describes how to replace the dead
+master.</p>
+</div>
+<div class="paragraph">
+<p>Due to <a href="https://issues.apache.org/jira/browse/KUDU-1620">KUDU-1620</a>, it is not possible to perform
+this workflow without also restarting the live masters. As such, the workflow requires a
+maintenance window, albeit a brief one as masters generally restart quickly.</p>
+</div>
+<div class="admonitionblock warning">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-warning" title="Warning"></i>
+</td>
+<td class="content">
+Kudu does not yet support Raft configuration changes for masters. As such, it is only
+possible to replace a master if the deployment was created with DNS aliases. See the
+<a href="#migrate_to_multi_master">multi-master migration workflow</a> for more details.
+</td>
+</tr>
+</table>
+</div>
+<div class="admonitionblock warning">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-warning" title="Warning"></i>
+</td>
+<td class="content">
+The workflow presupposes at least basic familiarity with Kudu configuration management. If
+using Cloudera Manager (CM), the workflow also presupposes familiarity with it.
+</td>
+</tr>
+</table>
+</div>
+<div class="admonitionblock warning">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-warning" title="Warning"></i>
+</td>
+<td class="content">
+All of the command line steps below should be executed as the Kudu UNIX user, typically
+<code>kudu</code>.
+</td>
+</tr>
+</table>
+</div>
+<div class="sect3">
+<h4 id="_prepare_for_the_recovery"><a class="link" href="#_prepare_for_the_recovery">Prepare for the recovery</a></h4>
+<div class="olist arabic">
+<ol class="arabic">
+<li>
+<p>Ensure that the dead master is well and truly dead. Take whatever steps needed to prevent it from
+accidentally restarting; this can be quite dangerous for the cluster post-recovery.</p>
+</li>
+<li>
+<p>Choose one of the remaining live masters to serve as a basis for recovery. The rest of this
+workflow will refer to this master as the "reference" master.</p>
+</li>
+<li>
+<p>Choose an unused machine in the cluster where the new master will live. The master generates very
+little load so it can be colocated with other data services or load-generating processes, though
+not with another Kudu master from the same configuration. The rest of this workflow will refer to
+this master as the "replacement" master.</p>
+</li>
+<li>
+<p>Perform the following preparatory steps for the replacement master:</p>
+<div class="ulist">
+<ul>
+<li>
+<p>Ensure Kudu is installed on the machine, either via system packages (in which case the <code>kudu</code> and
+<code>kudu-master</code> packages should be installed), or via some other means.</p>
+</li>
+<li>
+<p>Choose and record the directory where the master&#8217;s data will live.</p>
+</li>
+</ul>
+</div>
+</li>
+<li>
+<p>Perform the following preparatory steps for each live master:</p>
+<div class="ulist">
+<ul>
+<li>
+<p>Identify and record the directory where the master&#8217;s data lives. If using Kudu system packages,
+the default value is /var/lib/kudu/master, but it may be customized via the <code>fs_wal_dir</code> and
+<code>fs_data_dirs</code> configuration parameter. Please note if you&#8217;ve set fs_data_dirs to some directories
+other than the value of fs_wal_dir, it should be explicitly included in every command below where
+fs_wal_dir is also included.</p>
+</li>
+<li>
+<p>Identify and record the master&#8217;s UUID. It can be fetched using the following command:</p>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-bash" data-lang="bash">$ kudu fs dump uuid --fs_wal_dir=&lt;master_data_dir&gt; 2&gt;/dev/null</code></pre>
+</div>
+</div>
+<div class="dlist">
+<dl>
+<dt class="hdlist1">master_data_dir</dt>
+<dd>
+<p>live master&#8217;s previously recorded data directory</p>
+</dd>
+<dt class="hdlist1">Example</dt>
+<dd>
+<div class="listingblock">
+<div class="content">
+<pre>$ kudu fs dump uuid --fs_wal_dir=/var/lib/kudu/master 2&gt;/dev/null
+80a82c4b8a9f4c819bab744927ad765c</pre>
+</div>
+</div>
+</dd>
+</dl>
+</div>
+</li>
+</ul>
+</div>
+</li>
+<li>
+<p>Perform the following preparatory steps for the reference master:</p>
+<div class="ulist">
+<ul>
+<li>
+<p>Identify and record the directory where the master&#8217;s data lives. If using Kudu system packages,
+the default value is /var/lib/kudu/master, but it may be customized via the <code>fs_wal_dir</code> and
+<code>fs_data_dirs</code> configuration parameter. Please note if you&#8217;ve set fs_data_dirs to some directories
+other than the value of fs_wal_dir, it should be explicitly included in every command below where
+fs_wal_dir is also included.</p>
+</li>
+<li>
+<p>Identify and record the UUIDs of every master in the cluster, using the following command:</p>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-bash" data-lang="bash">$ kudu local_replica cmeta print_replica_uuids --fs_wal_dir=&lt;master_data_dir&gt; &lt;tablet_id&gt; 2&gt;/dev/null</code></pre>
+</div>
+</div>
+<div class="dlist">
+<dl>
+<dt class="hdlist1">master_data_dir</dt>
+<dd>
+<p>reference master&#8217;s previously recorded data directory</p>
+</dd>
+<dt class="hdlist1">tablet_id</dt>
+<dd>
+<p>must be the string <code>00000000000000000000000000000000</code></p>
+</dd>
+<dt class="hdlist1">Example</dt>
+<dd>
+<div class="listingblock">
+<div class="content">
+<pre>$ kudu local_replica cmeta print_replica_uuids --fs_wal_dir=/var/lib/kudu/master 00000000000000000000000000000000 2&gt;/dev/null
+80a82c4b8a9f4c819bab744927ad765c 2a73eeee5d47413981d9a1c637cce170 1c3f3094256347528d02ec107466aef3</pre>
+</div>
+</div>
+</dd>
+</dl>
+</div>
+</li>
+</ul>
+</div>
+</li>
+<li>
+<p>Using the two previously-recorded lists of UUIDs (one for all live masters and one for all
+masters), determine and record (by process of elimination) the UUID of the dead master.</p>
+</li>
+</ol>
+</div>
+</div>
+<div class="sect3">
+<h4 id="_perform_the_recovery"><a class="link" href="#_perform_the_recovery">Perform the recovery</a></h4>
+<div class="olist arabic">
+<ol class="arabic">
+<li>
+<p>Format the data directory on the replacement master machine using the previously recorded
+UUID of the dead master. Use the following command sequence:</p>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-bash" data-lang="bash">$ kudu fs format --fs_wal_dir=&lt;master_data_dir&gt; --uuid=&lt;uuid&gt;</code></pre>
+</div>
+</div>
+<div class="dlist">
+<dl>
+<dt class="hdlist1">master_data_dir</dt>
+<dd>
+<p>replacement master&#8217;s previously recorded data directory</p>
+</dd>
+<dt class="hdlist1">uuid</dt>
+<dd>
+<p>dead master&#8217;s previously recorded UUID</p>
+</dd>
+<dt class="hdlist1">Example</dt>
+<dd>
+<div class="listingblock">
+<div class="content">
+<pre>$ kudu fs format --fs_wal_dir=/var/lib/kudu/master --uuid=80a82c4b8a9f4c819bab744927ad765c</pre>
+</div>
+</div>
+</dd>
+</dl>
+</div>
+</li>
+<li>
+<p>Copy the master data to the replacement master with the following command:</p>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-bash" data-lang="bash">$ kudu local_replica copy_from_remote --fs_wal_dir=&lt;master_data_dir&gt; &lt;tablet_id&gt; &lt;reference_master&gt;</code></pre>
+</div>
+</div>
+<div class="dlist">
+<dl>
+<dt class="hdlist1">master_data_dir</dt>
+<dd>
+<p>replacement master&#8217;s previously recorded data directory</p>
+</dd>
+<dt class="hdlist1">tablet_id</dt>
+<dd>
+<p>must be the string <code>00000000000000000000000000000000</code></p>
+</dd>
+<dt class="hdlist1">reference_master</dt>
+<dd>
+<p>RPC address of the reference master and must be a string of the form
+<code>&lt;hostname&gt;:&lt;port&gt;</code></p>
+<div class="dlist">
+<dl>
+<dt class="hdlist1">hostname</dt>
+<dd>
+<p>reference master&#8217;s previously recorded hostname or alias</p>
+</dd>
+<dt class="hdlist1">port</dt>
+<dd>
+<p>reference master&#8217;s previously recorded RPC port number</p>
+</dd>
+</dl>
+</div>
+</dd>
+<dt class="hdlist1">Example</dt>
+<dd>
+<div class="listingblock">
+<div class="content">
+<pre>$ kudu local_replica copy_from_remote --fs_wal_dir=/var/lib/kudu/master 00000000000000000000000000000000 master-2:7051</pre>
+</div>
+</div>
+</dd>
+</dl>
+</div>
+</li>
+<li>
+<p>If using CM, add the replacement Kudu master role now, but do not start it.</p>
+<div class="ulist">
+<ul>
+<li>
+<p>Override the empty value of the <code>Master Address</code> parameter for the new role with the replacement
+master&#8217;s alias.</p>
+</li>
+<li>
+<p>Add the port number (separated by a colon) if using a non-default RPC port value.</p>
+</li>
+</ul>
+</div>
+</li>
+<li>
+<p>Reconfigure the DNS alias for the dead master to point at the replacement master.</p>
+</li>
+<li>
+<p>Start the replacement master.</p>
+</li>
+<li>
+<p>Restart the existing live masters. This results in a brief availability outage, but it should
+last only as long as it takes for the masters to come back up.</p>
+</li>
+</ol>
+</div>
+<div class="paragraph">
+<p>Congratulations, the dead master has been replaced! To verify that all masters are working properly,
+consider performing the following sanity checks:</p>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p>Using a browser, visit each master&#8217;s web UI. Look at the /masters page. All of the masters should
+be listed there with one master in the LEADER role and the others in the FOLLOWER role. The
+contents of /masters on each master should be the same.</p>
+</li>
+<li>
+<p>Run a Kudu system check (ksck) on the cluster using the <code>kudu</code> command line
+tool. See <a href="#ksck">Checking Cluster Health with <code>ksck</code></a> for more details.</p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+<div class="sect2">
+<h3 id="ksck"><a class="link" href="#ksck">Checking Cluster Health with <code>ksck</code></a></h3>
+<div class="paragraph">
+<p>The <code>kudu</code> CLI includes a tool named <code>ksck</code> which can be used for checking
+cluster health and data integrity. <code>ksck</code> will identify issues such as
+under-replicated tablets, unreachable tablet servers, or tablets without a
+leader.</p>
+</div>
+<div class="paragraph">
+<p><code>ksck</code> should be run from the command line, and requires the full list of master
+addresses to be specified:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-bash" data-lang="bash">$ kudu cluster ksck master-01.example.com,master-02.example.com,master-03.example.com</code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>To see a full list of the options available with <code>ksck</code>, use the <code>--help</code> flag.
+If the cluster is healthy, <code>ksck</code> will print a success message, and return a
+zero (success) exit status.</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre>Connected to the Master
+Fetched info from all 1 Tablet Servers
+Table IntegrationTestBigLinkedList is HEALTHY (1 tablet(s) checked)
+
+The metadata for 1 table(s) is HEALTHY
+OK</pre>
+</div>
+</div>
+<div class="paragraph">
+<p>If the cluster is unhealthy, for instance if a tablet server process has
+stopped, <code>ksck</code> will report the issue(s) and return a non-zero exit status:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre>Connected to the Master
+WARNING: Unable to connect to Tablet Server 8a0b66a756014def82760a09946d1fce
+(tserver-01.example.com:7050): Network error: could not send Ping RPC to server: Client connection negotiation failed: client connection to 192.168.0.2:7050: connect: Connection refused (error 61)
+WARNING: Fetched info from 0 Tablet Servers, 1 weren't reachable
+Tablet ce3c2d27010d4253949a989b9d9bf43c of table 'IntegrationTestBigLinkedList'
+is unavailable: 1 replica(s) not RUNNING
+  8a0b66a756014def82760a09946d1fce (tserver-01.example.com:7050): TS unavailable [LEADER]
+
+  Table IntegrationTestBigLinkedList has 1 unavailable tablet(s)
+
+  WARNING: 1 out of 1 table(s) are not in a healthy state
+  ==================
+  Errors:
+  ==================
+  error fetching info from tablet servers: Network error: Not all Tablet Servers are reachable
+  table consistency check error: Corruption: 1 table(s) are bad
+
+  FAILED
+  Runtime error: ksck discovered errors</pre>
+</div>
+</div>
+<div class="paragraph">
+<p>To verify data integrity, the optional <code>--checksum_scan</code> flag can be set, which
+will ensure the cluster has consistent data by scanning each tablet replica and
+comparing results. The <code>--tables</code> or <code>--tablets</code> flags can be used to limit the
+scope of the checksum scan to specific tables or tablets, respectively. For
+example, checking data integrity on the <code>IntegrationTestBigLinkedList</code> table can
+be done with the following command:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-bash" data-lang="bash">$ kudu cluster ksck --checksum_scan --tables IntegrationTestBigLinkedList master-01.example.com,master-02.example.com,master-03.example.com</code></pre>
+</div>
+</div>
+</div>
+<div class="sect2">
+<h3 id="disk_failure_recovery"><a class="link" href="#disk_failure_recovery">Recovering from Disk Failure</a></h3>
+<div class="paragraph">
+<p>Kudu tablet servers are not resilient to disk failure. When a disk containing a
+data directory or the write-ahead log (WAL) dies, the entire tablet server must
+be rebuilt. Kudu will automatically re-replicate tablets on other servers after
+a tablet server fails, but manual intervention is needed in order to restore the
+failed tablet server to a running state.</p>
+</div>
+<div class="paragraph">
+<p>The first step to restoring a tablet server after a disk failure is to replace
+the failed disk, or remove the failed disk from the data-directory and/or WAL
+configuration. Next, the contents of the data directories and WAL directory must
+be removed. For example, if the tablet server is configured with
+<code>--fs_wal_dir=/data/0/kudu-tserver-wal</code> and
+<code>--fs_data_dirs=/data/1/kudu-tserver,/data/2/kudu-tserver</code>, the following
+commands will remove the data directories and WAL directory contents:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-bash" data-lang="bash">$ rm -rf /data/0/kudu-tserver-wal/* /data/1/kudu-tserver/* /data/2/kudu-tserver/*</code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>After the WAL and data directories are emptied, the tablet server process can be
+started. When Kudu is installed using system packages, <code>service</code> is typically
+used:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-bash" data-lang="bash">$ sudo service kudu-tserver start</code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>Once the tablet server is running again, new tablet replicas will be created on
+it as necessary.</p>
+</div>
+</div>
+</div>
+</div>
+    </div>
+    <div class="col-md-3">
+
+  <div id="toc" data-spy="affix" data-offset-top="70">
+  <ul>
+
+      <li>
+
+          <a href="index.html">Introducing Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="release_notes.html">Kudu Release Notes</a> 
+      </li> 
+      <li>
+
+          <a href="quickstart.html">Getting Started with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="installation.html">Installation Guide</a> 
+      </li> 
+      <li>
+
+          <a href="configuration.html">Configuring Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="kudu_impala_integration.html">Using Impala with Kudu</a> 
+      </li> 
+      <li>
+<span class="active-toc">Administering Kudu</span>
+            <ul class="sectlevel1">
+<li><a href="#_starting_and_stopping_kudu_processes">Starting and Stopping Kudu Processes</a></li>
+<li><a href="#_kudu_web_interfaces">Kudu Web Interfaces</a>
+<ul class="sectlevel2">
+<li><a href="#_kudu_master_web_interface">Kudu Master Web Interface</a></li>
+<li><a href="#_kudu_tablet_server_web_interface">Kudu Tablet Server Web Interface</a></li>
+<li><a href="#_common_web_interface_pages">Common Web Interface Pages</a></li>
+</ul>
+</li>
+<li><a href="#_kudu_metrics">Kudu Metrics</a>
+<ul class="sectlevel2">
+<li><a href="#_listing_available_metrics">Listing available metrics</a></li>
+<li><a href="#_collecting_metrics_via_http">Collecting metrics via HTTP</a></li>
+<li><a href="#_collecting_metrics_to_a_log">Collecting metrics to a log</a></li>
+</ul>
+</li>
+<li><a href="#_common_kudu_workflows">Common Kudu workflows</a>
+<ul class="sectlevel2">
+<li><a href="#migrate_to_multi_master">Migrating to Multiple Kudu Masters</a>
+<ul class="sectlevel3">
+<li><a href="#_prepare_for_the_migration">Prepare for the migration</a></li>
+<li><a href="#_perform_the_migration">Perform the migration</a></li>
+</ul>
+</li>
+<li><a href="#_recovering_from_a_dead_kudu_master_in_a_multi_master_deployment">Recovering from a dead Kudu Master in a Multi-Master Deployment</a>
+<ul class="sectlevel3">
+<li><a href="#_prepare_for_the_recovery">Prepare for the recovery</a></li>
+<li><a href="#_perform_the_recovery">Perform the recovery</a></li>
+</ul>
+</li>
+<li><a href="#ksck">Checking Cluster Health with <code>ksck</code></a></li>
+<li><a href="#disk_failure_recovery">Recovering from Disk Failure</a></li>
+</ul>
+</li>
+</ul> 
+      </li> 
+      <li>
+
+          <a href="troubleshooting.html">Troubleshooting Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="developing.html">Developing Applications with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="schema_design.html">Kudu Schema Design</a> 
+      </li> 
+      <li>
+
+          <a href="security.html">Kudu Security</a> 
+      </li> 
+      <li>
+
+          <a href="transaction_semantics.html">Kudu Transaction Semantics</a> 
+      </li> 
+      <li>
+
+          <a href="background_tasks.html">Background Maintenance Tasks</a> 
+      </li> 
+      <li>
+
+          <a href="configuration_reference.html">Kudu Configuration Reference</a> 
+      </li> 
+      <li>
+
+          <a href="command_line_tools_reference.html">Kudu Command Line Tools Reference</a> 
+      </li> 
+      <li>
+
+          <a href="known_issues.html">Known Issues and Limitations</a> 
+      </li> 
+      <li>
+
+          <a href="contributing.html">Contributing to Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="export_control.html">Export Control Notice</a> 
+      </li> 
+  </ul>
+  </div>
+    </div>
+  </div>
+</div>
+      <footer class="footer">
+        <p class="small">
+        Copyright &copy; 2016 The Apache Software Foundation.  Last updated 2017-05-15 17:12:37 PDT 
+        </p>
+      </footer>
+    </div>
+    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
+    <script>
+      // Try to detect touch-screen devices. Note: Many laptops have touch screens.
+      $(document).ready(function() {
+        if ("ontouchstart" in document.documentElement) {
+          $(document.documentElement).addClass("touch");
+        } else {
+          $(document.documentElement).addClass("no-touch");
+        }
+      });
+    </script>
+    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"
+            integrity="sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS"
+            crossorigin="anonymous"></script>
+    <script>
+      (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+      (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+      m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+      })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+
+      ga('create', 'UA-68448017-1', 'auto');
+      ga('send', 'pageview');
+    </script>
+    <script src="https://cdnjs.cloudflare.com/ajax/libs/anchor-js/3.1.0/anchor.js"></script>
+    <script>
+      anchors.options = {
+        placement: 'right',
+        visible: 'touch',
+      };
+      anchors.add();
+    </script>
+  </body>
+</html>
+
diff --git a/releases/1.4.0/docs/background_tasks.html b/releases/1.4.0/docs/background_tasks.html
new file mode 100644
index 0000000..56aed14
--- /dev/null
+++ b/releases/1.4.0/docs/background_tasks.html
@@ -0,0 +1,353 @@
+<!DOCTYPE html>
+<html lang="en">
+  <head>
+    <meta charset="utf-8" />
+    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
+    <meta name="viewport" content="width=device-width, initial-scale=1" />
+    <!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
+    <meta name="description" content="A new open source Apache Hadoop ecosystem project, Apache Kudu completes Hadoop's storage layer to enable fast analytics on fast data" />
+    <meta name="author" content="Cloudera" />
+    <title>Apache Kudu - Apache Kudu Background Maintenance Tasks</title>
+    <!-- Bootstrap core CSS -->
+    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css"
+          integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7"
+          crossorigin="anonymous">
+
+    <!-- Custom styles for this template -->
+    <link href="/css/kudu.css" rel="stylesheet"/>
+    <link href="/css/asciidoc.css" rel="stylesheet"/>
+    <link rel="shortcut icon" href="/img/logo-favicon.ico" />
+    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.6.1/css/font-awesome.min.css" />
+
+    
+
+    <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+        <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+        <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+        <![endif]-->
+  </head>
+  <body>
+    <div class="kudu-site container-fluid">
+      <!-- Static navbar -->
+        <nav class="navbar navbar-default">
+          <div class="container-fluid">
+            <div class="navbar-header">
+              <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
+                <span class="sr-only">Toggle navigation</span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+              </button>
+              
+              <a class="logo" href="/"><img
+                src="//d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_80px.png"
+                srcset="//d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_80px.png 1x, //d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_160px.png 2x"
+                alt="Apache Kudu"/></a>
+              
+            </div>
+            <div id="navbar" class="collapse navbar-collapse">
+              <ul class="nav navbar-nav navbar-right">
+                <li >
+                  <a href="/">Home</a>
+                </li>
+                <li >
+                  <a href="/overview.html">Overview</a>
+                </li>
+                <li class="active">
+                  <a href="/docs/">Documentation</a>
+                </li>
+                <li >
+                  <a href="/releases/">Download</a>
+                </li>
+                <li >
+                  <a href="/blog/">Blog</a>
+                </li>
+                <!-- NOTE: this dropdown menu does not appear on Mobile, so don't add anything here
+                     that doesn't also appear elsewhere on the site. -->
+                <li class="dropdown">
+                  <a href="/community.html" role="button" aria-haspopup="true" aria-expanded="false">Community <span class="caret"></span></a>
+                  <ul class="dropdown-menu">
+                    <li class="dropdown-header">GET IN TOUCH</li>
+                    <li><a class="icon email" href="/community.html">Mailing Lists</a></li>
+                    <li><a class="icon slack" href="https://getkudu-slack.herokuapp.com/">Slack Channel</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li><a href="/community.html#meetups-user-groups-and-conference-presentations">Events and Meetups</a></li>
+                    <li><a href="/committers.html">Project Committers</a></li>
+                    <!--<li><a href="/roadmap.html">Roadmap</a></li>-->
+                    <li><a href="/community.html#contributions">How to Contribute</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li class="dropdown-header">DEVELOPER RESOURCES</li>
+                    <li><a class="icon github" href="https://github.com/apache/incubator-kudu">GitHub</a></li>
+                    <li><a class="icon gerrit" href="http://gerrit.cloudera.org:8080/#/q/status:open+project:kudu">Gerrit Code Review</a></li>
+                    <li><a class="icon jira" href="https://issues.apache.org/jira/browse/KUDU">JIRA Issue Tracker</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li class="dropdown-header">SOCIAL MEDIA</li>
+                    <li><a class="icon twitter" href="https://twitter.com/ApacheKudu">Twitter</a></li>
+                  </ul>
+                </li>
+                <li >
+                  <a href="/faq.html">FAQ</a>
+                </li>
+              </ul><!-- /.nav -->
+            </div><!-- /#navbar -->
+          </div><!-- /.container-fluid -->
+        </nav>
+
+<!--
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
+
+
+<div class="container">
+  <div class="row">
+    <div class="col-md-9">
+
+<h1>Apache Kudu Background Maintenance Tasks</h1>
+      <div id="preamble">
+<div class="sectionbody">
+<div class="paragraph">
+<p>Kudu relies on running background tasks for many important automatic
+maintenance activities. These tasks include flushing data from memory to disk,
+compacting data to improve performance, freeing up disk space, and more.</p>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_maintenance_manager"><a class="link" href="#_maintenance_manager">Maintenance manager</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The maintenance manager schedules and runs background tasks. At any given point
+in time, the maintenance manager is prioritizing the next task based on the
+improvement needed at that moment, such as relieving memory pressure, improving
+read performance, or freeing up disk space. The number of worker threads
+dedicated to running background tasks can be controlled by setting
+<code>--maintenance_manager_num_threads</code>.</p>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_flushing_data_to_disk"><a class="link" href="#_flushing_data_to_disk">Flushing data to disk</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Flushing data from memory to disk relieves memory pressure and can improve read
+performance by switching from a write-optimized, row-oriented in-memory format
+in the <code>MemRowSet</code> to a read-optimized, column-oriented format on disk.
+Background tasks that flush data include <code>FlushMRSOp</code> and
+<code>FlushDeltaMemStoresOp</code>.</p>
+</div>
+<div class="paragraph">
+<p>The metrics associated with these ops have the prefix <code>flush_mrs</code> and
+<code>flush_dms</code>, respectively.</p>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_compacting_on_disk_data"><a class="link" href="#_compacting_on_disk_data">Compacting on-disk data</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Kudu constantly performs several types of compaction tasks in order to maintain
+consistent read and write performance over time. A merging compaction, which combines
+multiple <code>DiskRowSets</code> together into a single <code>DiskRowSet</code>, is run by
+<code>CompactRowSetsOp</code>. There are two types of delta store compaction operations
+that may be run as well: <code>MinorDeltaCompactionOp</code> and <code>MajorDeltaCompactionOp</code>.</p>
+</div>
+<div class="paragraph">
+<p>For more information on what these different types of compaction operations do,
+please see the
+<a href="https://github.com/apache/kudu/blob/master/docs/design-docs/tablet.md">Kudu Tablet
+design document</a>.</p>
+</div>
+<div class="paragraph">
+<p>The metrics associated with these tasks have the prefix <code>compact_rs</code>,
+<code>delta_minor_compact_rs</code>, and <code>delta_major_compact_rs</code>, respectively.</p>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_write_ahead_log_gc"><a class="link" href="#_write_ahead_log_gc">Write-ahead log GC</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Kudu maintains a write-ahead log (WAL) per tablet that is split into discrete
+fixed-size segments. A tablet periodically rolls the WAL to a new log segment
+when the active segment reaches a configured size (controlled by
+<code>--log_segment_size_mb</code>). In order to save disk space and decrease startup
+time, a background task called <code>LogGCOp</code> attempts to garbage-collect (GC) old
+WAL segments by deleting them from disk once it is determined that they are no
+longer needed by the local node for durability.</p>
+</div>
+<div class="paragraph">
+<p>The metrics associated with this background task have the prefix <code>log_gc</code>.</p>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_tablet_history_gc_and_the_ancient_history_mark"><a class="link" href="#_tablet_history_gc_and_the_ancient_history_mark">Tablet history GC and the ancient history mark</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Because Kudu uses a multiversion concurrency control (MVCC) mechanism to
+ensure that snapshot scans can proceeed isolated from new changes to a table,
+periodically old historical data should be garbage-collected (removed) to free
+up disk space. While Kudu never removes rows or data that are visible in the
+latest version of the data, Kudu does remove records of old changes that are no
+longer visible.</p>
+</div>
+<div class="paragraph">
+<p>The point in time in the past beyond which historical MVCC data becomes
+inaccessible and is free to be deleted is called the <em>ancient history mark</em>
+(AHM). The AHM can be configured by setting <code>--tablet_history_max_age_sec</code>.</p>
+</div>
+<div class="paragraph">
+<p>There are two background tasks that GC historical MVCC data older than the AHM:
+the one that runs the merging compaction, called <code>CompactRowSetsOp</code> (see
+above), and a separate background task that deletes old undo delta blocks,
+called <code>UndoDeltaBlockGCOp</code>. Running <code>UndoDeltaBlockGCOp</code> reduces disk space
+usage in all workloads, but particularly in those with a higher volume of
+updates or upserts.</p>
+</div>
+<div class="paragraph">
+<p>The metrics associated with this background task have the prefix
+<code>undo_delta_block</code>.</p>
+</div>
+</div>
+</div>
+    </div>
+    <div class="col-md-3">
+
+  <div id="toc" data-spy="affix" data-offset-top="70">
+  <ul>
+
+      <li>
+
+          <a href="index.html">Introducing Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="release_notes.html">Kudu Release Notes</a> 
+      </li> 
+      <li>
+
+          <a href="quickstart.html">Getting Started with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="installation.html">Installation Guide</a> 
+      </li> 
+      <li>
+
+          <a href="configuration.html">Configuring Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="kudu_impala_integration.html">Using Impala with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="administration.html">Administering Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="troubleshooting.html">Troubleshooting Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="developing.html">Developing Applications with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="schema_design.html">Kudu Schema Design</a> 
+      </li> 
+      <li>
+
+          <a href="security.html">Kudu Security</a> 
+      </li> 
+      <li>
+
+          <a href="transaction_semantics.html">Kudu Transaction Semantics</a> 
+      </li> 
+      <li>
+<span class="active-toc">Background Maintenance Tasks</span>
+            <ul class="sectlevel1">
+<li><a href="#_maintenance_manager">Maintenance manager</a></li>
+<li><a href="#_flushing_data_to_disk">Flushing data to disk</a></li>
+<li><a href="#_compacting_on_disk_data">Compacting on-disk data</a></li>
+<li><a href="#_write_ahead_log_gc">Write-ahead log GC</a></li>
+<li><a href="#_tablet_history_gc_and_the_ancient_history_mark">Tablet history GC and the ancient history mark</a></li>
+</ul> 
+      </li> 
+      <li>
+
+          <a href="configuration_reference.html">Kudu Configuration Reference</a> 
+      </li> 
+      <li>
+
+          <a href="command_line_tools_reference.html">Kudu Command Line Tools Reference</a> 
+      </li> 
+      <li>
+
+          <a href="known_issues.html">Known Issues and Limitations</a> 
+      </li> 
+      <li>
+
+          <a href="contributing.html">Contributing to Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="export_control.html">Export Control Notice</a> 
+      </li> 
+  </ul>
+  </div>
+    </div>
+  </div>
+</div>
+      <footer class="footer">
+        <p class="small">
+        Copyright &copy; 2016 The Apache Software Foundation.  Last updated 2017-05-15 17:12:37 PDT 
+        </p>
+      </footer>
+    </div>
+    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
+    <script>
+      // Try to detect touch-screen devices. Note: Many laptops have touch screens.
+      $(document).ready(function() {
+        if ("ontouchstart" in document.documentElement) {
+          $(document.documentElement).addClass("touch");
+        } else {
+          $(document.documentElement).addClass("no-touch");
+        }
+      });
+    </script>
+    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"
+            integrity="sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS"
+            crossorigin="anonymous"></script>
+    <script>
+      (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+      (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+      m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+      })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+
+      ga('create', 'UA-68448017-1', 'auto');
+      ga('send', 'pageview');
+    </script>
+    <script src="https://cdnjs.cloudflare.com/ajax/libs/anchor-js/3.1.0/anchor.js"></script>
+    <script>
+      anchors.options = {
+        placement: 'right',
+        visible: 'touch',
+      };
+      anchors.add();
+    </script>
+  </body>
+</html>
+
diff --git a/releases/1.4.0/docs/command_line_tools.html b/releases/1.4.0/docs/command_line_tools.html
new file mode 100644
index 0000000..4fc155a
--- /dev/null
+++ b/releases/1.4.0/docs/command_line_tools.html
@@ -0,0 +1,2535 @@
+<!DOCTYPE html>
+<html lang="en">
+  <head>
+    <meta charset="utf-8" />
+    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
+    <meta name="viewport" content="width=device-width, initial-scale=1" />
+    <!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
+    <meta name="description" content="A new open source Apache Hadoop ecosystem project, Apache Kudu completes Hadoop's storage layer to enable fast analytics on fast data" />
+    <meta name="author" content="Cloudera" />
+    <title>Apache Kudu - Command Hierarchy</title>
+    <!-- Bootstrap core CSS -->
+    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css"
+          integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7"
+          crossorigin="anonymous">
+
+    <!-- Custom styles for this template -->
+    <link href="/css/kudu.css" rel="stylesheet"/>
+    <link href="/css/asciidoc.css" rel="stylesheet"/>
+    <link rel="shortcut icon" href="/img/logo-favicon.ico" />
+    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.6.1/css/font-awesome.min.css" />
+
+    
+
+    <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+        <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+        <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+        <![endif]-->
+  </head>
+  <body>
+    <div class="kudu-site container-fluid">
+      <!-- Static navbar -->
+        <nav class="navbar navbar-default">
+          <div class="container-fluid">
+            <div class="navbar-header">
+              <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
+                <span class="sr-only">Toggle navigation</span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+              </button>
+              
+              <a class="logo" href="/"><img
+                src="//d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_80px.png"
+                srcset="//d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_80px.png 1x, //d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_160px.png 2x"
+                alt="Apache Kudu"/></a>
+              
+            </div>
+            <div id="navbar" class="collapse navbar-collapse">
+              <ul class="nav navbar-nav navbar-right">
+                <li >
+                  <a href="/">Home</a>
+                </li>
+                <li >
+                  <a href="/overview.html">Overview</a>
+                </li>
+                <li class="active">
+                  <a href="/docs/">Documentation</a>
+                </li>
+                <li >
+                  <a href="/releases/">Download</a>
+                </li>
+                <li >
+                  <a href="/blog/">Blog</a>
+                </li>
+                <!-- NOTE: this dropdown menu does not appear on Mobile, so don't add anything here
+                     that doesn't also appear elsewhere on the site. -->
+                <li class="dropdown">
+                  <a href="/community.html" role="button" aria-haspopup="true" aria-expanded="false">Community <span class="caret"></span></a>
+                  <ul class="dropdown-menu">
+                    <li class="dropdown-header">GET IN TOUCH</li>
+                    <li><a class="icon email" href="/community.html">Mailing Lists</a></li>
+                    <li><a class="icon slack" href="https://getkudu-slack.herokuapp.com/">Slack Channel</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li><a href="/community.html#meetups-user-groups-and-conference-presentations">Events and Meetups</a></li>
+                    <li><a href="/committers.html">Project Committers</a></li>
+                    <!--<li><a href="/roadmap.html">Roadmap</a></li>-->
+                    <li><a href="/community.html#contributions">How to Contribute</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li class="dropdown-header">DEVELOPER RESOURCES</li>
+                    <li><a class="icon github" href="https://github.com/apache/incubator-kudu">GitHub</a></li>
+                    <li><a class="icon gerrit" href="http://gerrit.cloudera.org:8080/#/q/status:open+project:kudu">Gerrit Code Review</a></li>
+                    <li><a class="icon jira" href="https://issues.apache.org/jira/browse/KUDU">JIRA Issue Tracker</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li class="dropdown-header">SOCIAL MEDIA</li>
+                    <li><a class="icon twitter" href="https://twitter.com/ApacheKudu">Twitter</a></li>
+                  </ul>
+                </li>
+                <li >
+                  <a href="/faq.html">FAQ</a>
+                </li>
+              </ul><!-- /.nav -->
+            </div><!-- /#navbar -->
+          </div><!-- /.container-fluid -->
+        </nav>
+
+<!--
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
+
+
+<div class="container">
+  <div class="row">
+    <div class="col-md-9">
+
+<h1>Command Hierarchy</h1>
+      <div id="preamble">
+<div class="sectionbody">
+<div class="ulist">
+<ul>
+<li>
+<p><a href="#fs">fs</a></p>
+<div class="ulist">
+<ul>
+<li>
+<p><a href="#fs-check">check</a></p>
+</li>
+<li>
+<p><a href="#fs-format">format</a></p>
+</li>
+<li>
+<p><a href="#fs-dump">dump</a></p>
+<div class="ulist">
+<ul>
+<li>
+<p><a href="#dump-cfile">cfile</a></p>
+</li>
+<li>
+<p><a href="#dump-tree">tree</a></p>
+</li>
+<li>
+<p><a href="#dump-uuid">uuid</a></p>
+</li>
+</ul>
+</div>
+</li>
+</ul>
+</div>
+</li>
+<li>
+<p><a href="#local_replica">local_replica</a></p>
+<div class="ulist">
+<ul>
+<li>
+<p><a href="#local_replica-copy_from_remote">copy_from_remote</a></p>
+</li>
+<li>
+<p><a href="#local_replica-delete">delete</a></p>
+</li>
+<li>
+<p><a href="#local_replica-list">list</a></p>
+</li>
+<li>
+<p><a href="#local_replica-cmeta">cmeta</a></p>
+<div class="ulist">
+<ul>
+<li>
+<p><a href="#cmeta-print_replica_uuids">print_replica_uuids</a></p>
+</li>
+<li>
+<p><a href="#cmeta-rewrite_raft_config">rewrite_raft_config</a></p>
+</li>
+</ul>
+</div>
+</li>
+<li>
+<p><a href="#local_replica-dump">dump</a></p>
+<div class="ulist">
+<ul>
+<li>
+<p><a href="#dump-block_ids">block_ids</a></p>
+</li>
+<li>
+<p><a href="#dump-meta">meta</a></p>
+</li>
+<li>
+<p><a href="#dump-rowset">rowset</a></p>
+</li>
+<li>
+<p><a href="#dump-wals">wals</a></p>
+</li>
+</ul>
+</div>
+</li>
+</ul>
+</div>
+</li>
+<li>
+<p><a href="#master">master</a></p>
+<div class="ulist">
+<ul>
+<li>
+<p><a href="#master-set_flag">set_flag</a></p>
+</li>
+<li>
+<p><a href="#master-status">status</a></p>
+</li>
+<li>
+<p><a href="#master-timestamp">timestamp</a></p>
+</li>
+<li>
+<p><a href="#master-list">list</a></p>
+</li>
+</ul>
+</div>
+</li>
+<li>
+<p><a href="#pbc">pbc</a></p>
+<div class="ulist">
+<ul>
+<li>
+<p><a href="#pbc-dump">dump</a></p>
+</li>
+</ul>
+</div>
+</li>
+<li>
+<p><a href="#remote_replica">remote_replica</a></p>
+<div class="ulist">
+<ul>
+<li>
+<p><a href="#remote_replica-check">check</a></p>
+</li>
+<li>
+<p><a href="#remote_replica-copy">copy</a></p>
+</li>
+<li>
+<p><a href="#remote_replica-delete">delete</a></p>
+</li>
+<li>
+<p><a href="#remote_replica-dump">dump</a></p>
+</li>
+<li>
+<p><a href="#remote_replica-list">list</a></p>
+</li>
+<li>
+<p><a href="#remote_replica-unsafe_change_config">unsafe_change_config</a></p>
+</li>
+</ul>
+</div>
+</li>
+<li>
+<p><a href="#table">table</a></p>
+<div class="ulist">
+<ul>
+<li>
+<p><a href="#table-delete">delete</a></p>
+</li>
+<li>
+<p><a href="#table-list">list</a></p>
+</li>
+</ul>
+</div>
+</li>
+<li>
+<p><a href="#tablet">tablet</a></p>
+<div class="ulist">
+<ul>
+<li>
+<p><a href="#tablet-leader_step_down">leader_step_down</a></p>
+</li>
+<li>
+<p><a href="#tablet-change_config">change_config</a></p>
+<div class="ulist">
+<ul>
+<li>
+<p><a href="#change_config-add_replica">add_replica</a></p>
+</li>
+<li>
+<p><a href="#change_config-change_replica_type">change_replica_type</a></p>
+</li>
+<li>
+<p><a href="#change_config-remove_replica">remove_replica</a></p>
+</li>
+</ul>
+</div>
+</li>
+</ul>
+</div>
+</li>
+<li>
+<p><a href="#test">test</a></p>
+<div class="ulist">
+<ul>
+<li>
+<p><a href="#test-loadgen">loadgen</a></p>
+</li>
+</ul>
+</div>
+</li>
+<li>
+<p><a href="#tserver">tserver</a></p>
+<div class="ulist">
+<ul>
+<li>
+<p><a href="#tserver-set_flag">set_flag</a></p>
+</li>
+<li>
+<p><a href="#tserver-status">status</a></p>
+</li>
+<li>
+<p><a href="#tserver-timestamp">timestamp</a></p>
+</li>
+<li>
+<p><a href="#tserver-list">list</a></p>
+</li>
+</ul>
+</div>
+</li>
+<li>
+<p><a href="#wal">wal</a></p>
+<div class="ulist">
+<ul>
+<li>
+<p><a href="#wal-dump">dump</a></p>
+</li>
+</ul>
+</div>
+</li>
+</ul>
+</div>
+</div>
+</div>
+<h1 id="_command_details" class="sect0"><a class="link" href="#_command_details">Command Details</a></h1>
+<div class="sect1">
+<h2 id="cluster"><a class="link" href="#cluster"><code>cluster</code>: Operate on a Kudu cluster</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p><br></p>
+</div>
+<div class="sect2">
+<h3 id="cluster-ksck"><a class="link" href="#cluster-ksck"><code>ksck</code>: Check the health of a Kudu cluster&#160;</a></h3>
+<div class="paragraph">
+<p>By default, ksck checks that master and tablet server processes are running, and that table metadata is consistent. Use the 'checksum' flag to check that tablet data is consistent (also see the 'tables' and 'tablets' flags). Use the 'checksum_snapshot' along with 'checksum' if the table or tablets are actively receiving inserts or updates.<br>
+<strong>Usage:</strong><br>
+<code>kudu cluster ksck &lt;master_addresses&gt; [-checksum_cache_blocks] [-checksum_scan] [-checksum_scan_concurrency=&lt;concurrency&gt;] [-nochecksum_snapshot] [-color=&lt;color&gt;] [-noconsensus] [-tables=&lt;tables&gt;] [-tablets=&lt;tablets&gt;]</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">master_addresses</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of Kudu Master addresses where each address is of form 'hostname:port'</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">checksum_cache_blocks (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Should the checksum scanners cache the read blocks</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">checksum_scan (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Perform a checksum scan on data in the cluster.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">checksum_scan_concurrency (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Number of concurrent checksum scans to execute per tablet server.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>4</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">checksum_snapshot (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Should the checksum scanner use a snapshot scan</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">color (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Specifies whether output should be colorized. The default value 'auto' colorizes output if the output is a terminal. The other valid values are 'always' or 'never'.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>auto</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">consensus (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Whether to check the consensus state from each tablet against the master.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">tables (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Tables to check (comma-separated list of names). If not specified, checks all tables.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">tablets (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Tablets to check (comma-separated list of IDs) If not specified, checks all tablets.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="fs"><a class="link" href="#fs"><code>fs</code>: Operate on a local Kudu filesystem</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p><br></p>
+</div>
+<div class="sect2">
+<h3 id="fs-check"><a class="link" href="#fs-check"><code>check</code>: Check a Kudu filesystem for inconsistencies&#160;</a></h3>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu fs check [-fs_wal_dir=&lt;dir&gt;] [-fs_data_dirs=&lt;dirs&gt;] [-repair]</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">fs_wal_dir (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with write-ahead logs. If this is not specified, the program will not start. May be the same as fs_data_dirs</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">fs_data_dirs (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of directories with data blocks. If this is not specified, fs_wal_dir will be used as the sole data block directory.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">repair (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Repair any inconsistencies in the filesystem.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="fs-format"><a class="link" href="#fs-format"><code>format</code>: Format a new Kudu filesystem&#160;</a></h3>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu fs format [-fs_wal_dir=&lt;dir&gt;] [-fs_data_dirs=&lt;dirs&gt;] [-uuid=&lt;uuid&gt;]</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">fs_wal_dir (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with write-ahead logs. If this is not specified, the program will not start. May be the same as fs_data_dirs</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">fs_data_dirs (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of directories with data blocks. If this is not specified, fs_wal_dir will be used as the sole data block directory.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">uuid (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">The uuid to use in the filesystem. If not provided, one is generated</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="fs-dump"><a class="link" href="#fs-dump"><code>dump</code>: Dump a Kudu filesystem</a></h3>
+<div class="paragraph">
+<p><br></p>
+</div>
+<div class="sect3">
+<h4 id="dump-cfile"><a class="link" href="#dump-cfile"><code>cfile</code>: Dump the contents of a CFile (column file)&#160;</a></h4>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu fs dump cfile &lt;block_id&gt; [-fs_wal_dir=&lt;dir&gt;] [-fs_data_dirs=&lt;dirs&gt;] [-noprint_meta] [-noprint_rows]</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">block_id</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">block identifier</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">fs_wal_dir (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with write-ahead logs. If this is not specified, the program will not start. May be the same as fs_data_dirs</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">fs_data_dirs (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of directories with data blocks. If this is not specified, fs_wal_dir will be used as the sole data block directory.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">print_meta (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Include metadata in output</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">print_rows (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Print each row in the CFile</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="dump-tree"><a class="link" href="#dump-tree"><code>tree</code>: Dump the tree of a Kudu filesystem&#160;</a></h4>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu fs dump tree [-fs_wal_dir=&lt;dir&gt;] [-fs_data_dirs=&lt;dirs&gt;]</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">fs_wal_dir (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with write-ahead logs. If this is not specified, the program will not start. May be the same as fs_data_dirs</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">fs_data_dirs (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of directories with data blocks. If this is not specified, fs_wal_dir will be used as the sole data block directory.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="dump-uuid"><a class="link" href="#dump-uuid"><code>uuid</code>: Dump the UUID of a Kudu filesystem&#160;</a></h4>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu fs dump uuid [-fs_wal_dir=&lt;dir&gt;] [-fs_data_dirs=&lt;dirs&gt;]</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">fs_wal_dir (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with write-ahead logs. If this is not specified, the program will not start. May be the same as fs_data_dirs</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">fs_data_dirs (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of directories with data blocks. If this is not specified, fs_wal_dir will be used as the sole data block directory.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="local_replica"><a class="link" href="#local_replica"><code>local_replica</code>: Operate on local tablet replicas via the local filesystem</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p><br></p>
+</div>
+<div class="sect2">
+<h3 id="local_replica-copy_from_remote"><a class="link" href="#local_replica-copy_from_remote"><code>copy_from_remote</code>: Copy a tablet replica from a remote server&#160;</a></h3>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu local_replica copy_from_remote &lt;tablet_id&gt; &lt;source&gt; [-fs_wal_dir=&lt;dir&gt;] [-fs_data_dirs=&lt;dirs&gt;]</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">tablet_id</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Tablet Identifier</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">source</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Source RPC address of form hostname:port</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">fs_wal_dir (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with write-ahead logs. If this is not specified, the program will not start. May be the same as fs_data_dirs</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">fs_data_dirs (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of directories with data blocks. If this is not specified, fs_wal_dir will be used as the sole data block directory.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="local_replica-delete"><a class="link" href="#local_replica-delete"><code>delete</code>: Delete a tablet replica from the local filesystem. By default, leaves a tombstone record.&#160;</a></h3>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu local_replica delete &lt;tablet_id&gt; [-fs_wal_dir=&lt;dir&gt;] [-fs_data_dirs=&lt;dirs&gt;] [-clean_unsafe]</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">tablet_id</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Tablet Identifier</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">fs_wal_dir (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with write-ahead logs. If this is not specified, the program will not start. May be the same as fs_data_dirs</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">fs_data_dirs (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of directories with data blocks. If this is not specified, fs_wal_dir will be used as the sole data block directory.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">clean_unsafe (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Delete the local replica completely, not leaving a tombstone. This is not guaranteed to be safe because it also removes the consensus metadata (including Raft voting record) for the specified tablet, which violates the Raft vote durability requirements.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="local_replica-list"><a class="link" href="#local_replica-list"><code>list</code>: Show list of tablet replicas in the local filesystem&#160;</a></h3>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu local_replica list [-fs_wal_dir=&lt;dir&gt;] [-fs_data_dirs=&lt;dirs&gt;] [-list_detail]</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">fs_wal_dir (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with write-ahead logs. If this is not specified, the program will not start. May be the same as fs_data_dirs</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">fs_data_dirs (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of directories with data blocks. If this is not specified, fs_wal_dir will be used as the sole data block directory.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">list_detail (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Print partition info for the local replicas</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="local_replica-cmeta"><a class="link" href="#local_replica-cmeta"><code>cmeta</code>: Operate on a local tablet replica&#8217;s consensus metadata file</a></h3>
+<div class="paragraph">
+<p><br></p>
+</div>
+<div class="sect3">
+<h4 id="cmeta-print_replica_uuids"><a class="link" href="#cmeta-print_replica_uuids"><code>print_replica_uuids</code>: Print all tablet replica peer UUIDs found in a tablet&#8217;s Raft configuration&#160;</a></h4>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu local_replica cmeta print_replica_uuids &lt;tablet_id&gt; [-fs_wal_dir=&lt;dir&gt;] [-fs_data_dirs=&lt;dirs&gt;]</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">tablet_id</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Tablet Identifier</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">fs_wal_dir (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with write-ahead logs. If this is not specified, the program will not start. May be the same as fs_data_dirs</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">fs_data_dirs (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of directories with data blocks. If this is not specified, fs_wal_dir will be used as the sole data block directory.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="cmeta-rewrite_raft_config"><a class="link" href="#cmeta-rewrite_raft_config"><code>rewrite_raft_config</code>: Rewrite a tablet replica&#8217;s Raft configuration&#160;</a></h4>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu local_replica cmeta rewrite_raft_config &lt;tablet_id&gt; &lt;peers&gt;&#8230;&#8203; [-fs_wal_dir=&lt;dir&gt;] [-fs_data_dirs=&lt;dirs&gt;]</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">tablet_id</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Tablet Identifier</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">peers&#8230;&#8203;</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">List of peers where each peer is of form 'uuid:hostname:port'</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">fs_wal_dir (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with write-ahead logs. If this is not specified, the program will not start. May be the same as fs_data_dirs</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">fs_data_dirs (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of directories with data blocks. If this is not specified, fs_wal_dir will be used as the sole data block directory.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+</div>
+<div class="sect2">
+<h3 id="local_replica-dump"><a class="link" href="#local_replica-dump"><code>dump</code>: Dump a Kudu filesystem</a></h3>
+<div class="paragraph">
+<p><br></p>
+</div>
+<div class="sect3">
+<h4 id="dump-block_ids"><a class="link" href="#dump-block_ids"><code>block_ids</code>: Dump the IDs of all blocks belonging to a local replica&#160;</a></h4>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu local_replica dump block_ids &lt;tablet_id&gt; [-fs_wal_dir=&lt;dir&gt;] [-fs_data_dirs=&lt;dirs&gt;]</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">tablet_id</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Tablet Identifier</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">fs_wal_dir (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with write-ahead logs. If this is not specified, the program will not start. May be the same as fs_data_dirs</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">fs_data_dirs (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of directories with data blocks. If this is not specified, fs_wal_dir will be used as the sole data block directory.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="dump-meta"><a class="link" href="#dump-meta"><code>meta</code>: Dump the metadata of a local replica&#160;</a></h4>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu local_replica dump meta &lt;tablet_id&gt; [-fs_wal_dir=&lt;dir&gt;] [-fs_data_dirs=&lt;dirs&gt;]</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">tablet_id</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Tablet Identifier</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">fs_wal_dir (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with write-ahead logs. If this is not specified, the program will not start. May be the same as fs_data_dirs</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">fs_data_dirs (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of directories with data blocks. If this is not specified, fs_wal_dir will be used as the sole data block directory.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="dump-rowset"><a class="link" href="#dump-rowset"><code>rowset</code>: Dump the rowset contents of a local replica&#160;</a></h4>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu local_replica dump rowset &lt;tablet_id&gt; [-dump_data] [-fs_wal_dir=&lt;dir&gt;] [-fs_data_dirs=&lt;dirs&gt;] [-metadata_only] [-nrows=&lt;nrows&gt;] [-rowset_index=&lt;index&gt;]</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">tablet_id</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Tablet Identifier</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">dump_data (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Dump the data for each column in the rowset.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">fs_wal_dir (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with write-ahead logs. If this is not specified, the program will not start. May be the same as fs_data_dirs</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">fs_data_dirs (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of directories with data blocks. If this is not specified, fs_wal_dir will be used as the sole data block directory.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">metadata_only (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Only dump the block metadata when printing blocks.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">nrows (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Number of rows to dump</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">rowset_index (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Index of the rowset in local replica, default value(-1) will dump all the rowsets of the local replica</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>-1</code></p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="dump-wals"><a class="link" href="#dump-wals"><code>wals</code>: Dump all WAL (write-ahead log) segments of a local replica&#160;</a></h4>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu local_replica dump wals &lt;tablet_id&gt; [-fs_wal_dir=&lt;dir&gt;] [-fs_data_dirs=&lt;dirs&gt;] [-print_entries=&lt;entries&gt;] [-noprint_meta] [-truncate_data=&lt;data&gt;]</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">tablet_id</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Tablet Identifier</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">fs_wal_dir (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with write-ahead logs. If this is not specified, the program will not start. May be the same as fs_data_dirs</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">fs_data_dirs (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of directories with data blocks. If this is not specified, fs_wal_dir will be used as the sole data block directory.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">print_entries (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">How to print entries:
+  false|0|no = don&#8217;t print
+  true|1|yes|decoded = print them decoded
+  pb = print the raw protobuf
+  id = print only their ids</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>decoded</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">print_meta (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Include metadata in output</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">truncate_data (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Truncate the data fields to the given number of bytes before printing. Set to 0 to disable</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>100</code></p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="master"><a class="link" href="#master"><code>master</code>: Operate on a Kudu Master</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p><br></p>
+</div>
+<div class="sect2">
+<h3 id="master-set_flag"><a class="link" href="#master-set_flag"><code>set_flag</code>: Change a gflag value on a Kudu Master&#160;</a></h3>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu master set_flag &lt;master_address&gt; &lt;flag&gt; &lt;value&gt; [-force]</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">master_address</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Address of a Kudu Master of form 'hostname:port'. Port may be omitted if the Master is bound to the default port.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">flag</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Name of the gflag</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">value</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">New value for the gflag</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">force (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">If true, allows the set_flag command to set a flag which is not explicitly marked as runtime-settable. Such flag changes may be simply ignored on the server, or may cause the server to crash.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="master-status"><a class="link" href="#master-status"><code>status</code>: Get the status of a Kudu Master&#160;</a></h3>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu master status &lt;master_address&gt;</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">master_address</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Address of a Kudu Master of form 'hostname:port'. Port may be omitted if the Master is bound to the default port.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="master-timestamp"><a class="link" href="#master-timestamp"><code>timestamp</code>: Get the current timestamp of a Kudu Master&#160;</a></h3>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu master timestamp &lt;master_address&gt;</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">master_address</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Address of a Kudu Master of form 'hostname:port'. Port may be omitted if the Master is bound to the default port.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="master-list"><a class="link" href="#master-list"><code>list</code>: List masters in a Kudu cluster&#160;</a></h3>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu master list &lt;master_addresses&gt; [-columns=&lt;columns&gt;] [-format=&lt;format&gt;] [-timeout_ms=&lt;ms&gt;]</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">master_addresses</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of Kudu Master addresses where each address is of form 'hostname:port'</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">columns (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of master info fields to include in output.
+Possible values: uuid, rpc-addresses, http-addresses, version, and seqno</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>uuid,rpc-addresses</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">format (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Format to use for printing list output tables.
+Possible values: pretty, space, tsv, csv, and json</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>pretty</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">timeout_ms (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">RPC timeout in milliseconds</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>60000</code></p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="pbc"><a class="link" href="#pbc"><code>pbc</code>: Operate on PBC (protobuf container) files</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p><br></p>
+</div>
+<div class="sect2">
+<h3 id="pbc-dump"><a class="link" href="#pbc-dump"><code>dump</code>: Dump a PBC (protobuf container) file&#160;</a></h3>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu pbc dump &lt;path&gt; [-oneline]</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">path</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">path to PBC file</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">oneline (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">print each protobuf on a single line</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="remote_replica"><a class="link" href="#remote_replica"><code>remote_replica</code>: Operate on remote tablet replicas on a Kudu Tablet Server</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p><br></p>
+</div>
+<div class="sect2">
+<h3 id="remote_replica-check"><a class="link" href="#remote_replica-check"><code>check</code>: Check if all tablet replicas on a Kudu Tablet Server are running&#160;</a></h3>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu remote_replica check &lt;tserver_address&gt;</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">tserver_address</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Address of a Kudu Tablet Server of form 'hostname:port'. Port may be omitted if the Tablet Server is bound to the default port.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="remote_replica-copy"><a class="link" href="#remote_replica-copy"><code>copy</code>: Copy a tablet replica from one Kudu Tablet Server to another&#160;</a></h3>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu remote_replica copy &lt;tablet_id&gt; &lt;src_address&gt; &lt;dst_address&gt; [-force_copy]</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">tablet_id</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Tablet Identifier</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">src_address</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Address of a Kudu Tablet Server of form 'hostname:port'. Port may be omitted if the Tablet Server is bound to the default port.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">dst_address</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Address of a Kudu Tablet Server of form 'hostname:port'. Port may be omitted if the Tablet Server is bound to the default port.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">force_copy (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Force the copy when the destination tablet server has this replica</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="remote_replica-delete"><a class="link" href="#remote_replica-delete"><code>delete</code>: Delete a tablet replica from a Kudu Tablet Server&#160;</a></h3>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu remote_replica delete &lt;tserver_address&gt; &lt;tablet_id&gt; &lt;reason&gt;</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">tserver_address</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Address of a Kudu Tablet Server of form 'hostname:port'. Port may be omitted if the Tablet Server is bound to the default port.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">tablet_id</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Tablet Identifier</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">reason</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Reason for deleting the replica</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="remote_replica-dump"><a class="link" href="#remote_replica-dump"><code>dump</code>: Dump the data of a tablet replica on a Kudu Tablet Server&#160;</a></h3>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu remote_replica dump &lt;tserver_address&gt; &lt;tablet_id&gt;</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">tserver_address</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Address of a Kudu Tablet Server of form 'hostname:port'. Port may be omitted if the Tablet Server is bound to the default port.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">tablet_id</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Tablet Identifier</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="remote_replica-list"><a class="link" href="#remote_replica-list"><code>list</code>: List all tablet replicas on a Kudu Tablet Server&#160;</a></h3>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu remote_replica list &lt;tserver_address&gt;</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">tserver_address</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Address of a Kudu Tablet Server of form 'hostname:port'. Port may be omitted if the Tablet Server is bound to the default port.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="remote_replica-unsafe_change_config"><a class="link" href="#remote_replica-unsafe_change_config"><code>unsafe_change_config</code>: Force the specified replica to adopt a new Raft config&#160;</a></h3>
+<div class="paragraph">
+<p>The members of the new Raft config must be a subset of (or the same as) the members of the existing committed Raft config on that replica.<br>
+<strong>Usage:</strong><br>
+<code>kudu remote_replica unsafe_change_config &lt;tserver_address&gt; &lt;tablet_id&gt; &lt;peer uuids&gt;&#8230;&#8203;</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">tserver_address</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Address of a Kudu Tablet Server of form 'hostname:port'. Port may be omitted if the Tablet Server is bound to the default port.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">tablet_id</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Tablet Identifier</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">peer uuids&#8230;&#8203;</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">List of peer uuids to be part of new config</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="table"><a class="link" href="#table"><code>table</code>: Operate on Kudu tables</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p><br></p>
+</div>
+<div class="sect2">
+<h3 id="table-delete"><a class="link" href="#table-delete"><code>delete</code>: Delete a table&#160;</a></h3>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu table delete &lt;master_addresses&gt; &lt;table_name&gt;</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">master_addresses</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of Kudu Master addresses where each address is of form 'hostname:port'</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">table_name</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Name of the table to delete</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="table-list"><a class="link" href="#table-list"><code>list</code>: List all tables&#160;</a></h3>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu table list &lt;master_addresses&gt; [-list_tablets]</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">master_addresses</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of Kudu Master addresses where each address is of form 'hostname:port'</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">list_tablets (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Include tablet and replica UUIDs in the output</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="tablet"><a class="link" href="#tablet"><code>tablet</code>: Operate on remote Kudu tablets</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p><br></p>
+</div>
+<div class="sect2">
+<h3 id="tablet-leader_step_down"><a class="link" href="#tablet-leader_step_down"><code>leader_step_down</code>: Force the tablet&#8217;s leader replica to step down&#160;</a></h3>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu tablet leader_step_down &lt;master_addresses&gt; &lt;tablet_id&gt;</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">master_addresses</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of Kudu Master addresses where each address is of form 'hostname:port'</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">tablet_id</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Tablet Identifier</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="tablet-change_config"><a class="link" href="#tablet-change_config"><code>change_config</code>: Change a tablet&#8217;s Raft configuration</a></h3>
+<div class="paragraph">
+<p><br></p>
+</div>
+<div class="sect3">
+<h4 id="change_config-add_replica"><a class="link" href="#change_config-add_replica"><code>add_replica</code>: Add a new replica to a tablet&#8217;s Raft configuration&#160;</a></h4>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu tablet change_config add_replica &lt;master_addresses&gt; &lt;tablet_id&gt; &lt;replica_uuid&gt; &lt;replica_type&gt;</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">master_addresses</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of Kudu Master addresses where each address is of form 'hostname:port'</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">tablet_id</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Tablet Identifier</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">replica_uuid</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">New replica&#8217;s UUID</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">replica_type</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">New replica&#8217;s type. Must be VOTER or NON-VOTER.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="change_config-change_replica_type"><a class="link" href="#change_config-change_replica_type"><code>change_replica_type</code>: Change the type of an existing replica in a tablet&#8217;s Raft configuration&#160;</a></h4>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu tablet change_config change_replica_type &lt;master_addresses&gt; &lt;tablet_id&gt; &lt;replica_uuid&gt; &lt;replica_type&gt;</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">master_addresses</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of Kudu Master addresses where each address is of form 'hostname:port'</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">tablet_id</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Tablet Identifier</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">replica_uuid</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Existing replica&#8217;s UUID</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">replica_type</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Existing replica&#8217;s new type. Must be VOTER or NON-VOTER.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="change_config-remove_replica"><a class="link" href="#change_config-remove_replica"><code>remove_replica</code>: Remove an existing replica from a tablet&#8217;s Raft configuration&#160;</a></h4>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu tablet change_config remove_replica &lt;master_addresses&gt; &lt;tablet_id&gt; &lt;replica_uuid&gt;</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">master_addresses</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of Kudu Master addresses where each address is of form 'hostname:port'</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">tablet_id</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Tablet Identifier</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">replica_uuid</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Existing replica&#8217;s UUID</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="test"><a class="link" href="#test"><code>test</code>: Run various tests against a Kudu cluster</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p><br></p>
+</div>
+<div class="sect2">
+<h3 id="test-loadgen"><a class="link" href="#test-loadgen"><code>loadgen</code>: Run load generation test with optional scan afterwards&#160;</a></h3>
+<div class="paragraph">
+<p>Run load generation tool which inserts auto-generated data into already existing or auto-created table as fast as possible. If requested, also run scan over the inserted rows to check whether the actual count or inserted rows matches the expected one.<br>
+<strong>Usage:</strong><br>
+<code>kudu test loadgen &lt;master_addresses&gt; [-buffer_flush_watermark_pct=&lt;pct&gt;] [-buffer_size_bytes=&lt;bytes&gt;] [-buffers_num=&lt;num&gt;] [-flush_per_n_rows=&lt;rows&gt;] [-keep_auto_table] [-num_rows_per_thread=&lt;thread&gt;] [-num_threads=&lt;threads&gt;] [-run_scan] [-seq_start=&lt;start&gt;] [-show_first_n_errors=&lt;errors&gt;] [-string_fixed=&lt;fixed&gt;] [-string_len=&lt;len&gt;] [-table_name=&lt;name&gt;] [-table_num_buckets=&lt;buckets&gt;] [-table_num_replicas=&lt;replicas&gt;] [-use_random]</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">master_addresses</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of master addresses to run against. Addresses are in 'hostname:port' form where port may be omitted if a master server listens at the default port.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">buffer_flush_watermark_pct (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Mutation buffer flush watermark, in percentage of total size.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0.5</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">buffer_size_bytes (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Size of the mutation buffer, per session (bytes).</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>4194304</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">buffers_num (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Number of mutation buffers per session.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>2</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">flush_per_n_rows (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Perform async flush per given number of rows added. Setting to non-zero implicitly turns on manual flush mode.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">keep_auto_table (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">If using the auto-generated table, enabling this option retains the table populated with the data after the test finishes. By default, the auto-generated table is dropped after sucessfully finishing the test. NOTE: this parameter has no effect if using already existing table (see the '--table_name' flag): the existing tables nor their data are never dropped/deleted.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">num_rows_per_thread (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Number of rows each thread generates and inserts; 0 means unlimited. All rows generated by a thread are inserted in the context of the same session.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">uint64</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1000</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">num_threads (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Number of generator threads to run. Each thread runs its own KuduSession.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>2</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">run_scan (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Whether to run post-insertion scan to verify that the count of the inserted rows matches the expected number. If enabled, the scan is run only if no errors were encountered while inserting the generated rows.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">seq_start (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Initial value for the generator in sequential mode. This is useful when running multiple times against already existing table: for every next run, set this flag to (num_threads * num_rows_per_thread * column_num + seq_start).</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">uint64</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">show_first_n_errors (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Output detailed information on the specified number of first n errors (if any).</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string_fixed (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Pre-defined string to write into binary and string columns. Client generates more data per second using pre-defined string compared with auto-generated strings of the same length if run with the same CPU/memory configuration. If left empty, then auto-generated strings of length specified by the '--string_len' parameter are used instead.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string_len (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Length of strings to put into string and binary columns. This parameter is not in effect if '--string_fixed' is specified.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>32</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">table_name (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Name of an existing table to use for the test. The test will determine the structure of the table schema and populate it with data accordingly. If left empty, the test automatically creates a table of pre-defined columnar structure with unique name and uses it to insert auto-generated data. The auto-created table is dropped upon successful completion of the test if not overridden by the '--keep_auto_table' flag. If running the test against an already existing table, it&#8217;s highly recommended to use a dedicated table created just for testing purposes: the existing table nor its data is never dropped/deleted.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">table_num_buckets (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">The number of buckets to create when this tool creates a new table.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>8</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">table_num_replicas (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">The number of replicas for the auto-created table; 0 means 'use server-side default'.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">use_random (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Whether to use random numbers instead of sequential ones. In case of using random numbers collisions are possible over the data for columns with unique constraint (e.g. primary key).</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="tserver"><a class="link" href="#tserver"><code>tserver</code>: Operate on a Kudu Tablet Server</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p><br></p>
+</div>
+<div class="sect2">
+<h3 id="tserver-set_flag"><a class="link" href="#tserver-set_flag"><code>set_flag</code>: Change a gflag value on a Kudu Tablet Server&#160;</a></h3>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu tserver set_flag &lt;tserver_address&gt; &lt;flag&gt; &lt;value&gt; [-force]</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">tserver_address</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Address of a Kudu Tablet Server of form 'hostname:port'. Port may be omitted if the Tablet Server is bound to the default port.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">flag</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Name of the gflag</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">value</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">New value for the gflag</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">force (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">If true, allows the set_flag command to set a flag which is not explicitly marked as runtime-settable. Such flag changes may be simply ignored on the server, or may cause the server to crash.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="tserver-status"><a class="link" href="#tserver-status"><code>status</code>: Get the status of a Kudu Tablet Server&#160;</a></h3>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu tserver status &lt;tserver_address&gt;</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">tserver_address</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Address of a Kudu Tablet Server of form 'hostname:port'. Port may be omitted if the Tablet Server is bound to the default port.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="tserver-timestamp"><a class="link" href="#tserver-timestamp"><code>timestamp</code>: Get the current timestamp of a Kudu Tablet Server&#160;</a></h3>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu tserver timestamp &lt;tserver_address&gt;</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">tserver_address</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Address of a Kudu Tablet Server of form 'hostname:port'. Port may be omitted if the Tablet Server is bound to the default port.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="tserver-list"><a class="link" href="#tserver-list"><code>list</code>: List tablet servers in a Kudu cluster&#160;</a></h3>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu tserver list &lt;master_addresses&gt; [-columns=&lt;columns&gt;] [-format=&lt;format&gt;] [-timeout_ms=&lt;ms&gt;]</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">master_addresses</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of Kudu Master addresses where each address is of form 'hostname:port'</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">columns (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of tserver info fields to include in output.
+Possible values: uuid, rpc-addresses, http-addresses, version, seqno, and heartbeat</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>uuid,rpc-addresses</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">format (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Format to use for printing list output tables.
+Possible values: pretty, space, tsv, csv, and json</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>pretty</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">timeout_ms (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">RPC timeout in milliseconds</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>60000</code></p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="wal"><a class="link" href="#wal"><code>wal</code>: Operate on WAL (write-ahead log) files</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p><br></p>
+</div>
+<div class="sect2">
+<h3 id="wal-dump"><a class="link" href="#wal-dump"><code>dump</code>: Dump a WAL (write-ahead log) file&#160;</a></h3>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu wal dump &lt;path&gt; [-print_entries=&lt;entries&gt;] [-noprint_meta] [-truncate_data=&lt;data&gt;]</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">path</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">path to WAL file</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">print_entries (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">How to print entries:
+  false|0|no = don&#8217;t print
+  true|1|yes|decoded = print them decoded
+  pb = print the raw protobuf
+  id = print only their ids</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>decoded</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">print_meta (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Include metadata in output</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">truncate_data (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Truncate the data fields to the given number of bytes before printing. Set to 0 to disable</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>100</code></p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+</div>
+</div>
+    </div>
+    <div class="col-md-3">
+
+  <div id="toc" data-spy="affix" data-offset-top="70">
+  <ul>
+
+      <li>
+
+          <a href="index.html">Introducing Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="release_notes.html">Kudu Release Notes</a> 
+      </li> 
+      <li>
+
+          <a href="quickstart.html">Getting Started with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="installation.html">Installation Guide</a> 
+      </li> 
+      <li>
+
+          <a href="configuration.html">Configuring Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="kudu_impala_integration.html">Using Impala with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="administration.html">Administering Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="troubleshooting.html">Troubleshooting Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="developing.html">Developing Applications with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="schema_design.html">Kudu Schema Design</a> 
+      </li> 
+      <li>
+
+          <a href="security.html">Kudu Security</a> 
+      </li> 
+      <li>
+
+          <a href="transaction_semantics.html">Kudu Transaction Semantics</a> 
+      </li> 
+      <li>
+
+          <a href="background_tasks.html">Background Maintenance Tasks</a> 
+      </li> 
+      <li>
+
+          <a href="configuration_reference.html">Kudu Configuration Reference</a> 
+      </li> 
+      <li>
+
+          <a href="command_line_tools_reference.html">Kudu Command Line Tools Reference</a> 
+      </li> 
+      <li>
+
+          <a href="known_issues.html">Known Issues and Limitations</a> 
+      </li> 
+      <li>
+
+          <a href="contributing.html">Contributing to Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="export_control.html">Export Control Notice</a> 
+      </li> 
+  </ul>
+  </div>
+    </div>
+  </div>
+</div>
+      <footer class="footer">
+        <p class="small">
+        Copyright &copy; 2016 The Apache Software Foundation.  Last updated 2017-06-13 10:50:35 PDT 
+        </p>
+      </footer>
+    </div>
+    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
+    <script>
+      // Try to detect touch-screen devices. Note: Many laptops have touch screens.
+      $(document).ready(function() {
+        if ("ontouchstart" in document.documentElement) {
+          $(document.documentElement).addClass("touch");
+        } else {
+          $(document.documentElement).addClass("no-touch");
+        }
+      });
+    </script>
+    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"
+            integrity="sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS"
+            crossorigin="anonymous"></script>
+    <script>
+      (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+      (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+      m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+      })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+
+      ga('create', 'UA-68448017-1', 'auto');
+      ga('send', 'pageview');
+    </script>
+    <script src="https://cdnjs.cloudflare.com/ajax/libs/anchor-js/3.1.0/anchor.js"></script>
+    <script>
+      anchors.options = {
+        placement: 'right',
+        visible: 'touch',
+      };
+      anchors.add();
+    </script>
+  </body>
+</html>
+
diff --git a/releases/1.4.0/docs/command_line_tools_reference.html b/releases/1.4.0/docs/command_line_tools_reference.html
new file mode 100644
index 0000000..2006ac1
--- /dev/null
+++ b/releases/1.4.0/docs/command_line_tools_reference.html
@@ -0,0 +1,2531 @@
+<!DOCTYPE html>
+<html lang="en">
+  <head>
+    <meta charset="utf-8" />
+    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
+    <meta name="viewport" content="width=device-width, initial-scale=1" />
+    <!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
+    <meta name="description" content="A new open source Apache Hadoop ecosystem project, Apache Kudu completes Hadoop's storage layer to enable fast analytics on fast data" />
+    <meta name="author" content="Cloudera" />
+    <title>Apache Kudu - Apache Kudu Command Line Tools Reference</title>
+    <!-- Bootstrap core CSS -->
+    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css"
+          integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7"
+          crossorigin="anonymous">
+
+    <!-- Custom styles for this template -->
+    <link href="/css/kudu.css" rel="stylesheet"/>
+    <link href="/css/asciidoc.css" rel="stylesheet"/>
+    <link rel="shortcut icon" href="/img/logo-favicon.ico" />
+    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.6.1/css/font-awesome.min.css" />
+
+    
+
+    <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+        <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+        <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+        <![endif]-->
+  </head>
+  <body>
+    <div class="kudu-site container-fluid">
+      <!-- Static navbar -->
+        <nav class="navbar navbar-default">
+          <div class="container-fluid">
+            <div class="navbar-header">
+              <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
+                <span class="sr-only">Toggle navigation</span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+              </button>
+              
+              <a class="logo" href="/"><img
+                src="//d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_80px.png"
+                srcset="//d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_80px.png 1x, //d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_160px.png 2x"
+                alt="Apache Kudu"/></a>
+              
+            </div>
+            <div id="navbar" class="collapse navbar-collapse">
+              <ul class="nav navbar-nav navbar-right">
+                <li >
+                  <a href="/">Home</a>
+                </li>
+                <li >
+                  <a href="/overview.html">Overview</a>
+                </li>
+                <li class="active">
+                  <a href="/docs/">Documentation</a>
+                </li>
+                <li >
+                  <a href="/releases/">Download</a>
+                </li>
+                <li >
+                  <a href="/blog/">Blog</a>
+                </li>
+                <!-- NOTE: this dropdown menu does not appear on Mobile, so don't add anything here
+                     that doesn't also appear elsewhere on the site. -->
+                <li class="dropdown">
+                  <a href="/community.html" role="button" aria-haspopup="true" aria-expanded="false">Community <span class="caret"></span></a>
+                  <ul class="dropdown-menu">
+                    <li class="dropdown-header">GET IN TOUCH</li>
+                    <li><a class="icon email" href="/community.html">Mailing Lists</a></li>
+                    <li><a class="icon slack" href="https://getkudu-slack.herokuapp.com/">Slack Channel</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li><a href="/community.html#meetups-user-groups-and-conference-presentations">Events and Meetups</a></li>
+                    <li><a href="/committers.html">Project Committers</a></li>
+                    <!--<li><a href="/roadmap.html">Roadmap</a></li>-->
+                    <li><a href="/community.html#contributions">How to Contribute</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li class="dropdown-header">DEVELOPER RESOURCES</li>
+                    <li><a class="icon github" href="https://github.com/apache/incubator-kudu">GitHub</a></li>
+                    <li><a class="icon gerrit" href="http://gerrit.cloudera.org:8080/#/q/status:open+project:kudu">Gerrit Code Review</a></li>
+                    <li><a class="icon jira" href="https://issues.apache.org/jira/browse/KUDU">JIRA Issue Tracker</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li class="dropdown-header">SOCIAL MEDIA</li>
+                    <li><a class="icon twitter" href="https://twitter.com/ApacheKudu">Twitter</a></li>
+                  </ul>
+                </li>
+                <li >
+                  <a href="/faq.html">FAQ</a>
+                </li>
+              </ul><!-- /.nav -->
+            </div><!-- /#navbar -->
+          </div><!-- /.container-fluid -->
+        </nav>
+
+<!--
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
+
+
+<div class="container">
+  <div class="row">
+    <div class="col-md-9">
+
+<h1>Apache Kudu Command Line Tools Reference</h1>
+      <div class="sect1">
+<h2 id="_command_hierarchy"><a class="link" href="#_command_hierarchy">Command Hierarchy</a></h2>
+<div class="sectionbody">
+<div class="ulist">
+<ul>
+<li>
+<p><a href="#cluster">cluster</a></p>
+<div class="ulist">
+<ul>
+<li>
+<p><a href="#cluster-ksck">ksck</a></p>
+</li>
+</ul>
+</div>
+</li>
+<li>
+<p><a href="#fs">fs</a></p>
+<div class="ulist">
+<ul>
+<li>
+<p><a href="#fs-check">check</a></p>
+</li>
+<li>
+<p><a href="#fs-format">format</a></p>
+</li>
+<li>
+<p><a href="#fs-dump">dump</a></p>
+<div class="ulist">
+<ul>
+<li>
+<p><a href="#dump-cfile">cfile</a></p>
+</li>
+<li>
+<p><a href="#dump-tree">tree</a></p>
+</li>
+<li>
+<p><a href="#dump-uuid">uuid</a></p>
+</li>
+</ul>
+</div>
+</li>
+</ul>
+</div>
+</li>
+<li>
+<p><a href="#local_replica">local_replica</a></p>
+<div class="ulist">
+<ul>
+<li>
+<p><a href="#local_replica-copy_from_remote">copy_from_remote</a></p>
+</li>
+<li>
+<p><a href="#local_replica-delete">delete</a></p>
+</li>
+<li>
+<p><a href="#local_replica-list">list</a></p>
+</li>
+<li>
+<p><a href="#local_replica-cmeta">cmeta</a></p>
+<div class="ulist">
+<ul>
+<li>
+<p><a href="#cmeta-print_replica_uuids">print_replica_uuids</a></p>
+</li>
+<li>
+<p><a href="#cmeta-rewrite_raft_config">rewrite_raft_config</a></p>
+</li>
+</ul>
+</div>
+</li>
+<li>
+<p><a href="#local_replica-dump">dump</a></p>
+<div class="ulist">
+<ul>
+<li>
+<p><a href="#dump-block_ids">block_ids</a></p>
+</li>
+<li>
+<p><a href="#dump-meta">meta</a></p>
+</li>
+<li>
+<p><a href="#dump-rowset">rowset</a></p>
+</li>
+<li>
+<p><a href="#dump-wals">wals</a></p>
+</li>
+</ul>
+</div>
+</li>
+</ul>
+</div>
+</li>
+<li>
+<p><a href="#master">master</a></p>
+<div class="ulist">
+<ul>
+<li>
+<p><a href="#master-set_flag">set_flag</a></p>
+</li>
+<li>
+<p><a href="#master-status">status</a></p>
+</li>
+<li>
+<p><a href="#master-timestamp">timestamp</a></p>
+</li>
+<li>
+<p><a href="#master-list">list</a></p>
+</li>
+</ul>
+</div>
+</li>
+<li>
+<p><a href="#pbc">pbc</a></p>
+<div class="ulist">
+<ul>
+<li>
+<p><a href="#pbc-dump">dump</a></p>
+</li>
+</ul>
+</div>
+</li>
+<li>
+<p><a href="#remote_replica">remote_replica</a></p>
+<div class="ulist">
+<ul>
+<li>
+<p><a href="#remote_replica-check">check</a></p>
+</li>
+<li>
+<p><a href="#remote_replica-copy">copy</a></p>
+</li>
+<li>
+<p><a href="#remote_replica-delete">delete</a></p>
+</li>
+<li>
+<p><a href="#remote_replica-dump">dump</a></p>
+</li>
+<li>
+<p><a href="#remote_replica-list">list</a></p>
+</li>
+<li>
+<p><a href="#remote_replica-unsafe_change_config">unsafe_change_config</a></p>
+</li>
+</ul>
+</div>
+</li>
+<li>
+<p><a href="#table">table</a></p>
+<div class="ulist">
+<ul>
+<li>
+<p><a href="#table-delete">delete</a></p>
+</li>
+<li>
+<p><a href="#table-list">list</a></p>
+</li>
+</ul>
+</div>
+</li>
+<li>
+<p><a href="#tablet">tablet</a></p>
+<div class="ulist">
+<ul>
+<li>
+<p><a href="#tablet-leader_step_down">leader_step_down</a></p>
+</li>
+<li>
+<p><a href="#tablet-change_config">change_config</a></p>
+<div class="ulist">
+<ul>
+<li>
+<p><a href="#change_config-add_replica">add_replica</a></p>
+</li>
+<li>
+<p><a href="#change_config-change_replica_type">change_replica_type</a></p>
+</li>
+<li>
+<p><a href="#change_config-remove_replica">remove_replica</a></p>
+</li>
+</ul>
+</div>
+</li>
+</ul>
+</div>
+</li>
+<li>
+<p><a href="#test">test</a></p>
+<div class="ulist">
+<ul>
+<li>
+<p><a href="#test-loadgen">loadgen</a></p>
+</li>
+</ul>
+</div>
+</li>
+<li>
+<p><a href="#tserver">tserver</a></p>
+<div class="ulist">
+<ul>
+<li>
+<p><a href="#tserver-set_flag">set_flag</a></p>
+</li>
+<li>
+<p><a href="#tserver-status">status</a></p>
+</li>
+<li>
+<p><a href="#tserver-timestamp">timestamp</a></p>
+</li>
+<li>
+<p><a href="#tserver-list">list</a></p>
+</li>
+</ul>
+</div>
+</li>
+<li>
+<p><a href="#wal">wal</a></p>
+<div class="ulist">
+<ul>
+<li>
+<p><a href="#wal-dump">dump</a></p>
+</li>
+</ul>
+</div>
+</li>
+</ul>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_command_details"><a class="link" href="#_command_details">Command Details</a></h2>
+<div class="sectionbody">
+<div class="sect2">
+<h3 id="cluster"><a class="link" href="#cluster"><code>cluster</code>: Operate on a Kudu cluster</a></h3>
+<div class="paragraph">
+<p><br></p>
+</div>
+<div class="sect3">
+<h4 id="cluster-ksck"><a class="link" href="#cluster-ksck"><code>ksck</code>: Check the health of a Kudu cluster&#160;</a></h4>
+<div class="paragraph">
+<p>By default, ksck checks that master and tablet server processes are running, and that table metadata is consistent. Use the 'checksum' flag to check that tablet data is consistent (also see the 'tables' and 'tablets' flags). Use the 'checksum_snapshot' along with 'checksum' if the table or tablets are actively receiving inserts or updates.<br>
+<strong>Usage:</strong><br>
+<code>kudu cluster ksck &lt;master_addresses&gt; [-checksum_cache_blocks] [-checksum_scan] [-checksum_scan_concurrency=&lt;concurrency&gt;] [-nochecksum_snapshot] [-color=&lt;color&gt;] [-noconsensus] [-tables=&lt;tables&gt;] [-tablets=&lt;tablets&gt;]</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">master_addresses</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of Kudu Master addresses where each address is of form 'hostname:port'</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">checksum_cache_blocks (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Should the checksum scanners cache the read blocks</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">checksum_scan (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Perform a checksum scan on data in the cluster.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">checksum_scan_concurrency (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Number of concurrent checksum scans to execute per tablet server.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>4</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">checksum_snapshot (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Should the checksum scanner use a snapshot scan</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">color (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Specifies whether output should be colorized. The default value 'auto' colorizes output if the output is a terminal. The other valid values are 'always' or 'never'.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>auto</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">consensus (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Whether to check the consensus state from each tablet against the master.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">tables (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Tables to check (comma-separated list of names). If not specified, checks all tables.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">tablets (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Tablets to check (comma-separated list of IDs) If not specified, checks all tablets.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+</div>
+<div class="sect2">
+<h3 id="fs"><a class="link" href="#fs"><code>fs</code>: Operate on a local Kudu filesystem</a></h3>
+<div class="paragraph">
+<p><br></p>
+</div>
+<div class="sect3">
+<h4 id="fs-check"><a class="link" href="#fs-check"><code>check</code>: Check a Kudu filesystem for inconsistencies&#160;</a></h4>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu fs check [-fs_wal_dir=&lt;dir&gt;] [-fs_data_dirs=&lt;dirs&gt;] [-repair]</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">fs_wal_dir (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with write-ahead logs. If this is not specified, the program will not start. May be the same as fs_data_dirs</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">fs_data_dirs (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of directories with data blocks. If this is not specified, fs_wal_dir will be used as the sole data block directory.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">repair (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Repair any inconsistencies in the filesystem.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="fs-format"><a class="link" href="#fs-format"><code>format</code>: Format a new Kudu filesystem&#160;</a></h4>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu fs format [-fs_wal_dir=&lt;dir&gt;] [-fs_data_dirs=&lt;dirs&gt;] [-uuid=&lt;uuid&gt;]</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">fs_wal_dir (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with write-ahead logs. If this is not specified, the program will not start. May be the same as fs_data_dirs</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">fs_data_dirs (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of directories with data blocks. If this is not specified, fs_wal_dir will be used as the sole data block directory.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">uuid (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">The uuid to use in the filesystem. If not provided, one is generated</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="fs-dump"><a class="link" href="#fs-dump"><code>dump</code>: Dump a Kudu filesystem</a></h4>
+<div class="paragraph">
+<p><br></p>
+</div>
+<div class="sect4">
+<h5 id="dump-cfile"><a class="link" href="#dump-cfile"><code>cfile</code>: Dump the contents of a CFile (column file)&#160;</a></h5>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu fs dump cfile &lt;block_id&gt; [-fs_wal_dir=&lt;dir&gt;] [-fs_data_dirs=&lt;dirs&gt;] [-noprint_meta] [-noprint_rows]</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">block_id</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">block identifier</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">fs_wal_dir (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with write-ahead logs. If this is not specified, the program will not start. May be the same as fs_data_dirs</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">fs_data_dirs (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of directories with data blocks. If this is not specified, fs_wal_dir will be used as the sole data block directory.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">print_meta (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Include metadata in output</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">print_rows (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Print each row in the CFile</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+<div class="sect4">
+<h5 id="dump-tree"><a class="link" href="#dump-tree"><code>tree</code>: Dump the tree of a Kudu filesystem&#160;</a></h5>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu fs dump tree [-fs_wal_dir=&lt;dir&gt;] [-fs_data_dirs=&lt;dirs&gt;]</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">fs_wal_dir (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with write-ahead logs. If this is not specified, the program will not start. May be the same as fs_data_dirs</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">fs_data_dirs (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of directories with data blocks. If this is not specified, fs_wal_dir will be used as the sole data block directory.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+<div class="sect4">
+<h5 id="dump-uuid"><a class="link" href="#dump-uuid"><code>uuid</code>: Dump the UUID of a Kudu filesystem&#160;</a></h5>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu fs dump uuid [-fs_wal_dir=&lt;dir&gt;] [-fs_data_dirs=&lt;dirs&gt;]</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">fs_wal_dir (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with write-ahead logs. If this is not specified, the program will not start. May be the same as fs_data_dirs</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">fs_data_dirs (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of directories with data blocks. If this is not specified, fs_wal_dir will be used as the sole data block directory.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+</div>
+</div>
+<div class="sect2">
+<h3 id="local_replica"><a class="link" href="#local_replica"><code>local_replica</code>: Operate on local tablet replicas via the local filesystem</a></h3>
+<div class="paragraph">
+<p><br></p>
+</div>
+<div class="sect3">
+<h4 id="local_replica-copy_from_remote"><a class="link" href="#local_replica-copy_from_remote"><code>copy_from_remote</code>: Copy a tablet replica from a remote server&#160;</a></h4>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu local_replica copy_from_remote &lt;tablet_id&gt; &lt;source&gt; [-fs_wal_dir=&lt;dir&gt;] [-fs_data_dirs=&lt;dirs&gt;]</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">tablet_id</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Tablet Identifier</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">source</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Source RPC address of form hostname:port</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">fs_wal_dir (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with write-ahead logs. If this is not specified, the program will not start. May be the same as fs_data_dirs</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">fs_data_dirs (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of directories with data blocks. If this is not specified, fs_wal_dir will be used as the sole data block directory.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="local_replica-delete"><a class="link" href="#local_replica-delete"><code>delete</code>: Delete a tablet replica from the local filesystem. By default, leaves a tombstone record.&#160;</a></h4>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu local_replica delete &lt;tablet_id&gt; [-fs_wal_dir=&lt;dir&gt;] [-fs_data_dirs=&lt;dirs&gt;] [-clean_unsafe]</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">tablet_id</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Tablet Identifier</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">fs_wal_dir (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with write-ahead logs. If this is not specified, the program will not start. May be the same as fs_data_dirs</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">fs_data_dirs (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of directories with data blocks. If this is not specified, fs_wal_dir will be used as the sole data block directory.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">clean_unsafe (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Delete the local replica completely, not leaving a tombstone. This is not guaranteed to be safe because it also removes the consensus metadata (including Raft voting record) for the specified tablet, which violates the Raft vote durability requirements.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="local_replica-list"><a class="link" href="#local_replica-list"><code>list</code>: Show list of tablet replicas in the local filesystem&#160;</a></h4>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu local_replica list [-fs_wal_dir=&lt;dir&gt;] [-fs_data_dirs=&lt;dirs&gt;] [-list_detail]</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">fs_wal_dir (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with write-ahead logs. If this is not specified, the program will not start. May be the same as fs_data_dirs</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">fs_data_dirs (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of directories with data blocks. If this is not specified, fs_wal_dir will be used as the sole data block directory.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">list_detail (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Print partition info for the local replicas</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="local_replica-cmeta"><a class="link" href="#local_replica-cmeta"><code>cmeta</code>: Operate on a local tablet replica&#8217;s consensus metadata file</a></h4>
+<div class="paragraph">
+<p><br></p>
+</div>
+<div class="sect4">
+<h5 id="cmeta-print_replica_uuids"><a class="link" href="#cmeta-print_replica_uuids"><code>print_replica_uuids</code>: Print all tablet replica peer UUIDs found in a tablet&#8217;s Raft configuration&#160;</a></h5>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu local_replica cmeta print_replica_uuids &lt;tablet_id&gt; [-fs_wal_dir=&lt;dir&gt;] [-fs_data_dirs=&lt;dirs&gt;]</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">tablet_id</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Tablet Identifier</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">fs_wal_dir (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with write-ahead logs. If this is not specified, the program will not start. May be the same as fs_data_dirs</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">fs_data_dirs (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of directories with data blocks. If this is not specified, fs_wal_dir will be used as the sole data block directory.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+<div class="sect4">
+<h5 id="cmeta-rewrite_raft_config"><a class="link" href="#cmeta-rewrite_raft_config"><code>rewrite_raft_config</code>: Rewrite a tablet replica&#8217;s Raft configuration&#160;</a></h5>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu local_replica cmeta rewrite_raft_config &lt;tablet_id&gt; &lt;peers&gt;&#8230;&#8203; [-fs_wal_dir=&lt;dir&gt;] [-fs_data_dirs=&lt;dirs&gt;]</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">tablet_id</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Tablet Identifier</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">peers&#8230;&#8203;</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">List of peers where each peer is of form 'uuid:hostname:port'</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">fs_wal_dir (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with write-ahead logs. If this is not specified, the program will not start. May be the same as fs_data_dirs</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">fs_data_dirs (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of directories with data blocks. If this is not specified, fs_wal_dir will be used as the sole data block directory.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+</div>
+<div class="sect3">
+<h4 id="local_replica-dump"><a class="link" href="#local_replica-dump"><code>dump</code>: Dump a Kudu filesystem</a></h4>
+<div class="paragraph">
+<p><br></p>
+</div>
+<div class="sect4">
+<h5 id="dump-block_ids"><a class="link" href="#dump-block_ids"><code>block_ids</code>: Dump the IDs of all blocks belonging to a local replica&#160;</a></h5>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu local_replica dump block_ids &lt;tablet_id&gt; [-fs_wal_dir=&lt;dir&gt;] [-fs_data_dirs=&lt;dirs&gt;]</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">tablet_id</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Tablet Identifier</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">fs_wal_dir (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with write-ahead logs. If this is not specified, the program will not start. May be the same as fs_data_dirs</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">fs_data_dirs (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of directories with data blocks. If this is not specified, fs_wal_dir will be used as the sole data block directory.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+<div class="sect4">
+<h5 id="dump-meta"><a class="link" href="#dump-meta"><code>meta</code>: Dump the metadata of a local replica&#160;</a></h5>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu local_replica dump meta &lt;tablet_id&gt; [-fs_wal_dir=&lt;dir&gt;] [-fs_data_dirs=&lt;dirs&gt;]</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">tablet_id</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Tablet Identifier</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">fs_wal_dir (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with write-ahead logs. If this is not specified, the program will not start. May be the same as fs_data_dirs</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">fs_data_dirs (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of directories with data blocks. If this is not specified, fs_wal_dir will be used as the sole data block directory.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+<div class="sect4">
+<h5 id="dump-rowset"><a class="link" href="#dump-rowset"><code>rowset</code>: Dump the rowset contents of a local replica&#160;</a></h5>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu local_replica dump rowset &lt;tablet_id&gt; [-dump_data] [-fs_wal_dir=&lt;dir&gt;] [-fs_data_dirs=&lt;dirs&gt;] [-metadata_only] [-nrows=&lt;nrows&gt;] [-rowset_index=&lt;index&gt;]</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">tablet_id</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Tablet Identifier</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">dump_data (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Dump the data for each column in the rowset.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">fs_wal_dir (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with write-ahead logs. If this is not specified, the program will not start. May be the same as fs_data_dirs</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">fs_data_dirs (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of directories with data blocks. If this is not specified, fs_wal_dir will be used as the sole data block directory.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">metadata_only (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Only dump the block metadata when printing blocks.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">nrows (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Number of rows to dump</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">rowset_index (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Index of the rowset in local replica, default value(-1) will dump all the rowsets of the local replica</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>-1</code></p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+<div class="sect4">
+<h5 id="dump-wals"><a class="link" href="#dump-wals"><code>wals</code>: Dump all WAL (write-ahead log) segments of a local replica&#160;</a></h5>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu local_replica dump wals &lt;tablet_id&gt; [-fs_wal_dir=&lt;dir&gt;] [-fs_data_dirs=&lt;dirs&gt;] [-print_entries=&lt;entries&gt;] [-noprint_meta] [-truncate_data=&lt;data&gt;]</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">tablet_id</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Tablet Identifier</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">fs_wal_dir (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with write-ahead logs. If this is not specified, the program will not start. May be the same as fs_data_dirs</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">fs_data_dirs (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of directories with data blocks. If this is not specified, fs_wal_dir will be used as the sole data block directory.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">print_entries (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">How to print entries:
+  false|0|no = don&#8217;t print
+  true|1|yes|decoded = print them decoded
+  pb = print the raw protobuf
+  id = print only their ids</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>decoded</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">print_meta (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Include metadata in output</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">truncate_data (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Truncate the data fields to the given number of bytes before printing. Set to 0 to disable</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>100</code></p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+</div>
+</div>
+<div class="sect2">
+<h3 id="master"><a class="link" href="#master"><code>master</code>: Operate on a Kudu Master</a></h3>
+<div class="paragraph">
+<p><br></p>
+</div>
+<div class="sect3">
+<h4 id="master-set_flag"><a class="link" href="#master-set_flag"><code>set_flag</code>: Change a gflag value on a Kudu Master&#160;</a></h4>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu master set_flag &lt;master_address&gt; &lt;flag&gt; &lt;value&gt; [-force]</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">master_address</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Address of a Kudu Master of form 'hostname:port'. Port may be omitted if the Master is bound to the default port.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">flag</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Name of the gflag</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">value</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">New value for the gflag</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">force (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">If true, allows the set_flag command to set a flag which is not explicitly marked as runtime-settable. Such flag changes may be simply ignored on the server, or may cause the server to crash.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="master-status"><a class="link" href="#master-status"><code>status</code>: Get the status of a Kudu Master&#160;</a></h4>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu master status &lt;master_address&gt;</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">master_address</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Address of a Kudu Master of form 'hostname:port'. Port may be omitted if the Master is bound to the default port.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="master-timestamp"><a class="link" href="#master-timestamp"><code>timestamp</code>: Get the current timestamp of a Kudu Master&#160;</a></h4>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu master timestamp &lt;master_address&gt;</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">master_address</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Address of a Kudu Master of form 'hostname:port'. Port may be omitted if the Master is bound to the default port.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="master-list"><a class="link" href="#master-list"><code>list</code>: List masters in a Kudu cluster&#160;</a></h4>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu master list &lt;master_addresses&gt; [-columns=&lt;columns&gt;] [-format=&lt;format&gt;] [-timeout_ms=&lt;ms&gt;]</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">master_addresses</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of Kudu Master addresses where each address is of form 'hostname:port'</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">columns (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of master info fields to include in output.
+Possible values: uuid, rpc-addresses, http-addresses, version, and seqno</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>uuid,rpc-addresses</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">format (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Format to use for printing list output tables.
+Possible values: pretty, space, tsv, csv, and json</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>pretty</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">timeout_ms (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">RPC timeout in milliseconds</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>60000</code></p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+</div>
+<div class="sect2">
+<h3 id="pbc"><a class="link" href="#pbc"><code>pbc</code>: Operate on PBC (protobuf container) files</a></h3>
+<div class="paragraph">
+<p><br></p>
+</div>
+<div class="sect3">
+<h4 id="pbc-dump"><a class="link" href="#pbc-dump"><code>dump</code>: Dump a PBC (protobuf container) file&#160;</a></h4>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu pbc dump &lt;path&gt; [-oneline]</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">path</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">path to PBC file</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">oneline (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">print each protobuf on a single line</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+</div>
+<div class="sect2">
+<h3 id="remote_replica"><a class="link" href="#remote_replica"><code>remote_replica</code>: Operate on remote tablet replicas on a Kudu Tablet Server</a></h3>
+<div class="paragraph">
+<p><br></p>
+</div>
+<div class="sect3">
+<h4 id="remote_replica-check"><a class="link" href="#remote_replica-check"><code>check</code>: Check if all tablet replicas on a Kudu Tablet Server are running&#160;</a></h4>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu remote_replica check &lt;tserver_address&gt;</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">tserver_address</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Address of a Kudu Tablet Server of form 'hostname:port'. Port may be omitted if the Tablet Server is bound to the default port.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="remote_replica-copy"><a class="link" href="#remote_replica-copy"><code>copy</code>: Copy a tablet replica from one Kudu Tablet Server to another&#160;</a></h4>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu remote_replica copy &lt;tablet_id&gt; &lt;src_address&gt; &lt;dst_address&gt; [-force_copy]</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">tablet_id</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Tablet Identifier</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">src_address</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Address of a Kudu Tablet Server of form 'hostname:port'. Port may be omitted if the Tablet Server is bound to the default port.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">dst_address</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Address of a Kudu Tablet Server of form 'hostname:port'. Port may be omitted if the Tablet Server is bound to the default port.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">force_copy (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Force the copy when the destination tablet server has this replica</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="remote_replica-delete"><a class="link" href="#remote_replica-delete"><code>delete</code>: Delete a tablet replica from a Kudu Tablet Server&#160;</a></h4>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu remote_replica delete &lt;tserver_address&gt; &lt;tablet_id&gt; &lt;reason&gt;</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">tserver_address</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Address of a Kudu Tablet Server of form 'hostname:port'. Port may be omitted if the Tablet Server is bound to the default port.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">tablet_id</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Tablet Identifier</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">reason</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Reason for deleting the replica</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="remote_replica-dump"><a class="link" href="#remote_replica-dump"><code>dump</code>: Dump the data of a tablet replica on a Kudu Tablet Server&#160;</a></h4>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu remote_replica dump &lt;tserver_address&gt; &lt;tablet_id&gt;</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">tserver_address</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Address of a Kudu Tablet Server of form 'hostname:port'. Port may be omitted if the Tablet Server is bound to the default port.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">tablet_id</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Tablet Identifier</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="remote_replica-list"><a class="link" href="#remote_replica-list"><code>list</code>: List all tablet replicas on a Kudu Tablet Server&#160;</a></h4>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu remote_replica list &lt;tserver_address&gt;</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">tserver_address</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Address of a Kudu Tablet Server of form 'hostname:port'. Port may be omitted if the Tablet Server is bound to the default port.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="remote_replica-unsafe_change_config"><a class="link" href="#remote_replica-unsafe_change_config"><code>unsafe_change_config</code>: Force the specified replica to adopt a new Raft config&#160;</a></h4>
+<div class="paragraph">
+<p>The members of the new Raft config must be a subset of (or the same as) the members of the existing committed Raft config on that replica.<br>
+<strong>Usage:</strong><br>
+<code>kudu remote_replica unsafe_change_config &lt;tserver_address&gt; &lt;tablet_id&gt; &lt;peer uuids&gt;&#8230;&#8203;</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">tserver_address</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Address of a Kudu Tablet Server of form 'hostname:port'. Port may be omitted if the Tablet Server is bound to the default port.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">tablet_id</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Tablet Identifier</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">peer uuids&#8230;&#8203;</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">List of peer uuids to be part of new config</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+</div>
+<div class="sect2">
+<h3 id="table"><a class="link" href="#table"><code>table</code>: Operate on Kudu tables</a></h3>
+<div class="paragraph">
+<p><br></p>
+</div>
+<div class="sect3">
+<h4 id="table-delete"><a class="link" href="#table-delete"><code>delete</code>: Delete a table&#160;</a></h4>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu table delete &lt;master_addresses&gt; &lt;table_name&gt;</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">master_addresses</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of Kudu Master addresses where each address is of form 'hostname:port'</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">table_name</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Name of the table to delete</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="table-list"><a class="link" href="#table-list"><code>list</code>: List all tables&#160;</a></h4>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu table list &lt;master_addresses&gt; [-list_tablets]</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">master_addresses</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of Kudu Master addresses where each address is of form 'hostname:port'</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">list_tablets (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Include tablet and replica UUIDs in the output</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+</div>
+<div class="sect2">
+<h3 id="tablet"><a class="link" href="#tablet"><code>tablet</code>: Operate on remote Kudu tablets</a></h3>
+<div class="paragraph">
+<p><br></p>
+</div>
+<div class="sect3">
+<h4 id="tablet-leader_step_down"><a class="link" href="#tablet-leader_step_down"><code>leader_step_down</code>: Force the tablet&#8217;s leader replica to step down&#160;</a></h4>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu tablet leader_step_down &lt;master_addresses&gt; &lt;tablet_id&gt;</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">master_addresses</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of Kudu Master addresses where each address is of form 'hostname:port'</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">tablet_id</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Tablet Identifier</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="tablet-change_config"><a class="link" href="#tablet-change_config"><code>change_config</code>: Change a tablet&#8217;s Raft configuration</a></h4>
+<div class="paragraph">
+<p><br></p>
+</div>
+<div class="sect4">
+<h5 id="change_config-add_replica"><a class="link" href="#change_config-add_replica"><code>add_replica</code>: Add a new replica to a tablet&#8217;s Raft configuration&#160;</a></h5>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu tablet change_config add_replica &lt;master_addresses&gt; &lt;tablet_id&gt; &lt;replica_uuid&gt; &lt;replica_type&gt;</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">master_addresses</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of Kudu Master addresses where each address is of form 'hostname:port'</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">tablet_id</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Tablet Identifier</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">replica_uuid</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">New replica&#8217;s UUID</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">replica_type</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">New replica&#8217;s type. Must be VOTER or NON-VOTER.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+<div class="sect4">
+<h5 id="change_config-change_replica_type"><a class="link" href="#change_config-change_replica_type"><code>change_replica_type</code>: Change the type of an existing replica in a tablet&#8217;s Raft configuration&#160;</a></h5>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu tablet change_config change_replica_type &lt;master_addresses&gt; &lt;tablet_id&gt; &lt;replica_uuid&gt; &lt;replica_type&gt;</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">master_addresses</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of Kudu Master addresses where each address is of form 'hostname:port'</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">tablet_id</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Tablet Identifier</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">replica_uuid</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Existing replica&#8217;s UUID</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">replica_type</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Existing replica&#8217;s new type. Must be VOTER or NON-VOTER.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+<div class="sect4">
+<h5 id="change_config-remove_replica"><a class="link" href="#change_config-remove_replica"><code>remove_replica</code>: Remove an existing replica from a tablet&#8217;s Raft configuration&#160;</a></h5>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu tablet change_config remove_replica &lt;master_addresses&gt; &lt;tablet_id&gt; &lt;replica_uuid&gt;</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">master_addresses</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of Kudu Master addresses where each address is of form 'hostname:port'</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">tablet_id</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Tablet Identifier</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">replica_uuid</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Existing replica&#8217;s UUID</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+</div>
+</div>
+<div class="sect2">
+<h3 id="test"><a class="link" href="#test"><code>test</code>: Run various tests against a Kudu cluster</a></h3>
+<div class="paragraph">
+<p><br></p>
+</div>
+<div class="sect3">
+<h4 id="test-loadgen"><a class="link" href="#test-loadgen"><code>loadgen</code>: Run load generation test with optional scan afterwards&#160;</a></h4>
+<div class="paragraph">
+<p>Run load generation tool which inserts auto-generated data into already existing or auto-created table as fast as possible. If requested, also run scan over the inserted rows to check whether the actual count or inserted rows matches the expected one.<br>
+<strong>Usage:</strong><br>
+<code>kudu test loadgen &lt;master_addresses&gt; [-buffer_flush_watermark_pct=&lt;pct&gt;] [-buffer_size_bytes=&lt;bytes&gt;] [-buffers_num=&lt;num&gt;] [-flush_per_n_rows=&lt;rows&gt;] [-keep_auto_table] [-num_rows_per_thread=&lt;thread&gt;] [-num_threads=&lt;threads&gt;] [-run_scan] [-seq_start=&lt;start&gt;] [-show_first_n_errors=&lt;errors&gt;] [-string_fixed=&lt;fixed&gt;] [-string_len=&lt;len&gt;] [-table_name=&lt;name&gt;] [-table_num_buckets=&lt;buckets&gt;] [-table_num_replicas=&lt;replicas&gt;] [-use_random]</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">master_addresses</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of master addresses to run against. Addresses are in 'hostname:port' form where port may be omitted if a master server listens at the default port.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">buffer_flush_watermark_pct (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Mutation buffer flush watermark, in percentage of total size.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0.5</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">buffer_size_bytes (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Size of the mutation buffer, per session (bytes).</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>4194304</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">buffers_num (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Number of mutation buffers per session.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>2</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">flush_per_n_rows (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Perform async flush per given number of rows added. Setting to non-zero implicitly turns on manual flush mode.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">keep_auto_table (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">If using the auto-generated table, enabling this option retains the table populated with the data after the test finishes. By default, the auto-generated table is dropped after sucessfully finishing the test. NOTE: this parameter has no effect if using already existing table (see the '--table_name' flag): the existing tables nor their data are never dropped/deleted.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">num_rows_per_thread (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Number of rows each thread generates and inserts; 0 means unlimited. All rows generated by a thread are inserted in the context of the same session.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">uint64</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1000</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">num_threads (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Number of generator threads to run. Each thread runs its own KuduSession.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>2</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">run_scan (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Whether to run post-insertion scan to verify that the count of the inserted rows matches the expected number. If enabled, the scan is run only if no errors were encountered while inserting the generated rows.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">seq_start (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Initial value for the generator in sequential mode. This is useful when running multiple times against already existing table: for every next run, set this flag to (num_threads * num_rows_per_thread * column_num + seq_start).</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">uint64</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">show_first_n_errors (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Output detailed information on the specified number of first n errors (if any).</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string_fixed (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Pre-defined string to write into binary and string columns. Client generates more data per second using pre-defined string compared with auto-generated strings of the same length if run with the same CPU/memory configuration. If left empty, then auto-generated strings of length specified by the '--string_len' parameter are used instead.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string_len (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Length of strings to put into string and binary columns. This parameter is not in effect if '--string_fixed' is specified.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>32</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">table_name (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Name of an existing table to use for the test. The test will determine the structure of the table schema and populate it with data accordingly. If left empty, the test automatically creates a table of pre-defined columnar structure with unique name and uses it to insert auto-generated data. The auto-created table is dropped upon successful completion of the test if not overridden by the '--keep_auto_table' flag. If running the test against an already existing table, it&#8217;s highly recommended to use a dedicated table created just for testing purposes: the existing table nor its data is never dropped/deleted.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">table_num_buckets (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">The number of buckets to create when this tool creates a new table.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>8</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">table_num_replicas (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">The number of replicas for the auto-created table; 0 means 'use server-side default'.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">use_random (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Whether to use random numbers instead of sequential ones. In case of using random numbers collisions are possible over the data for columns with unique constraint (e.g. primary key).</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+</div>
+<div class="sect2">
+<h3 id="tserver"><a class="link" href="#tserver"><code>tserver</code>: Operate on a Kudu Tablet Server</a></h3>
+<div class="paragraph">
+<p><br></p>
+</div>
+<div class="sect3">
+<h4 id="tserver-set_flag"><a class="link" href="#tserver-set_flag"><code>set_flag</code>: Change a gflag value on a Kudu Tablet Server&#160;</a></h4>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu tserver set_flag &lt;tserver_address&gt; &lt;flag&gt; &lt;value&gt; [-force]</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">tserver_address</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Address of a Kudu Tablet Server of form 'hostname:port'. Port may be omitted if the Tablet Server is bound to the default port.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">flag</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Name of the gflag</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">value</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">New value for the gflag</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">force (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">If true, allows the set_flag command to set a flag which is not explicitly marked as runtime-settable. Such flag changes may be simply ignored on the server, or may cause the server to crash.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="tserver-status"><a class="link" href="#tserver-status"><code>status</code>: Get the status of a Kudu Tablet Server&#160;</a></h4>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu tserver status &lt;tserver_address&gt;</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">tserver_address</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Address of a Kudu Tablet Server of form 'hostname:port'. Port may be omitted if the Tablet Server is bound to the default port.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="tserver-timestamp"><a class="link" href="#tserver-timestamp"><code>timestamp</code>: Get the current timestamp of a Kudu Tablet Server&#160;</a></h4>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu tserver timestamp &lt;tserver_address&gt;</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">tserver_address</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Address of a Kudu Tablet Server of form 'hostname:port'. Port may be omitted if the Tablet Server is bound to the default port.</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="tserver-list"><a class="link" href="#tserver-list"><code>list</code>: List tablet servers in a Kudu cluster&#160;</a></h4>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu tserver list &lt;master_addresses&gt; [-columns=&lt;columns&gt;] [-format=&lt;format&gt;] [-timeout_ms=&lt;ms&gt;]</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">master_addresses</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of Kudu Master addresses where each address is of form 'hostname:port'</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">columns (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of tserver info fields to include in output.
+Possible values: uuid, rpc-addresses, http-addresses, version, seqno, and heartbeat</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>uuid,rpc-addresses</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">format (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Format to use for printing list output tables.
+Possible values: pretty, space, tsv, csv, and json</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>pretty</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">timeout_ms (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">RPC timeout in milliseconds</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>60000</code></p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+</div>
+<div class="sect2">
+<h3 id="wal"><a class="link" href="#wal"><code>wal</code>: Operate on WAL (write-ahead log) files</a></h3>
+<div class="paragraph">
+<p><br></p>
+</div>
+<div class="sect3">
+<h4 id="wal-dump"><a class="link" href="#wal-dump"><code>dump</code>: Dump a WAL (write-ahead log) file&#160;</a></h4>
+<div class="paragraph">
+<p><strong>Usage:</strong><br>
+<code>kudu wal dump &lt;path&gt; [-print_entries=&lt;entries&gt;] [-noprint_meta] [-truncate_data=&lt;data&gt;]</code>
+<br>
+<strong>Arguments:</strong></p>
+</div>
+<table class="tableblock frame-topbot grid-all spread">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+<th class="tableblock halign-left valign-top">Type</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">path</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">path to WAL file</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">print_entries (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">How to print entries:
+  false|0|no = don&#8217;t print
+  true|1|yes|decoded = print them decoded
+  pb = print the raw protobuf
+  id = print only their ids</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>decoded</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">print_meta (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Include metadata in output</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">truncate_data (optional)</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Truncate the data fields to the given number of bytes before printing. Set to 0 to disable</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>100</code></p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p><br></p>
+</div>
+</div>
+</div>
+</div>
+</div>
+    </div>
+    <div class="col-md-3">
+
+  <div id="toc" data-spy="affix" data-offset-top="70">
+  <ul>
+
+      <li>
+
+          <a href="index.html">Introducing Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="release_notes.html">Kudu Release Notes</a> 
+      </li> 
+      <li>
+
+          <a href="quickstart.html">Getting Started with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="installation.html">Installation Guide</a> 
+      </li> 
+      <li>
+
+          <a href="configuration.html">Configuring Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="kudu_impala_integration.html">Using Impala with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="administration.html">Administering Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="troubleshooting.html">Troubleshooting Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="developing.html">Developing Applications with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="schema_design.html">Kudu Schema Design</a> 
+      </li> 
+      <li>
+
+          <a href="security.html">Kudu Security</a> 
+      </li> 
+      <li>
+
+          <a href="transaction_semantics.html">Kudu Transaction Semantics</a> 
+      </li> 
+      <li>
+
+          <a href="background_tasks.html">Background Maintenance Tasks</a> 
+      </li> 
+      <li>
+
+          <a href="configuration_reference.html">Kudu Configuration Reference</a> 
+      </li> 
+      <li>
+<span class="active-toc">Kudu Command Line Tools Reference</span>
+            <ul class="sectlevel1">
+<li><a href="#_command_hierarchy">Command Hierarchy</a></li>
+<li><a href="#_command_details">Command Details</a></li>
+</ul> 
+      </li> 
+      <li>
+
+          <a href="known_issues.html">Known Issues and Limitations</a> 
+      </li> 
+      <li>
+
+          <a href="contributing.html">Contributing to Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="export_control.html">Export Control Notice</a> 
+      </li> 
+  </ul>
+  </div>
+    </div>
+  </div>
+</div>
+      <footer class="footer">
+        <p class="small">
+        Copyright &copy; 2016 The Apache Software Foundation.  Last updated 2017-06-13 10:50:35 PDT 
+        </p>
+      </footer>
+    </div>
+    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
+    <script>
+      // Try to detect touch-screen devices. Note: Many laptops have touch screens.
+      $(document).ready(function() {
+        if ("ontouchstart" in document.documentElement) {
+          $(document.documentElement).addClass("touch");
+        } else {
+          $(document.documentElement).addClass("no-touch");
+        }
+      });
+    </script>
+    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"
+            integrity="sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS"
+            crossorigin="anonymous"></script>
+    <script>
+      (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+      (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+      m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+      })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+
+      ga('create', 'UA-68448017-1', 'auto');
+      ga('send', 'pageview');
+    </script>
+    <script src="https://cdnjs.cloudflare.com/ajax/libs/anchor-js/3.1.0/anchor.js"></script>
+    <script>
+      anchors.options = {
+        placement: 'right',
+        visible: 'touch',
+      };
+      anchors.add();
+    </script>
+  </body>
+</html>
+
diff --git a/releases/1.4.0/docs/configuration.html b/releases/1.4.0/docs/configuration.html
new file mode 100644
index 0000000..89be57b
--- /dev/null
+++ b/releases/1.4.0/docs/configuration.html
@@ -0,0 +1,459 @@
+<!DOCTYPE html>
+<html lang="en">
+  <head>
+    <meta charset="utf-8" />
+    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
+    <meta name="viewport" content="width=device-width, initial-scale=1" />
+    <!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
+    <meta name="description" content="A new open source Apache Hadoop ecosystem project, Apache Kudu completes Hadoop's storage layer to enable fast analytics on fast data" />
+    <meta name="author" content="Cloudera" />
+    <title>Apache Kudu - Configuring Apache Kudu</title>
+    <!-- Bootstrap core CSS -->
+    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css"
+          integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7"
+          crossorigin="anonymous">
+
+    <!-- Custom styles for this template -->
+    <link href="/css/kudu.css" rel="stylesheet"/>
+    <link href="/css/asciidoc.css" rel="stylesheet"/>
+    <link rel="shortcut icon" href="/img/logo-favicon.ico" />
+    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.6.1/css/font-awesome.min.css" />
+
+    
+
+    <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+        <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+        <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+        <![endif]-->
+  </head>
+  <body>
+    <div class="kudu-site container-fluid">
+      <!-- Static navbar -->
+        <nav class="navbar navbar-default">
+          <div class="container-fluid">
+            <div class="navbar-header">
+              <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
+                <span class="sr-only">Toggle navigation</span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+              </button>
+              
+              <a class="logo" href="/"><img
+                src="//d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_80px.png"
+                srcset="//d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_80px.png 1x, //d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_160px.png 2x"
+                alt="Apache Kudu"/></a>
+              
+            </div>
+            <div id="navbar" class="collapse navbar-collapse">
+              <ul class="nav navbar-nav navbar-right">
+                <li >
+                  <a href="/">Home</a>
+                </li>
+                <li >
+                  <a href="/overview.html">Overview</a>
+                </li>
+                <li class="active">
+                  <a href="/docs/">Documentation</a>
+                </li>
+                <li >
+                  <a href="/releases/">Download</a>
+                </li>
+                <li >
+                  <a href="/blog/">Blog</a>
+                </li>
+                <!-- NOTE: this dropdown menu does not appear on Mobile, so don't add anything here
+                     that doesn't also appear elsewhere on the site. -->
+                <li class="dropdown">
+                  <a href="/community.html" role="button" aria-haspopup="true" aria-expanded="false">Community <span class="caret"></span></a>
+                  <ul class="dropdown-menu">
+                    <li class="dropdown-header">GET IN TOUCH</li>
+                    <li><a class="icon email" href="/community.html">Mailing Lists</a></li>
+                    <li><a class="icon slack" href="https://getkudu-slack.herokuapp.com/">Slack Channel</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li><a href="/community.html#meetups-user-groups-and-conference-presentations">Events and Meetups</a></li>
+                    <li><a href="/committers.html">Project Committers</a></li>
+                    <!--<li><a href="/roadmap.html">Roadmap</a></li>-->
+                    <li><a href="/community.html#contributions">How to Contribute</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li class="dropdown-header">DEVELOPER RESOURCES</li>
+                    <li><a class="icon github" href="https://github.com/apache/incubator-kudu">GitHub</a></li>
+                    <li><a class="icon gerrit" href="http://gerrit.cloudera.org:8080/#/q/status:open+project:kudu">Gerrit Code Review</a></li>
+                    <li><a class="icon jira" href="https://issues.apache.org/jira/browse/KUDU">JIRA Issue Tracker</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li class="dropdown-header">SOCIAL MEDIA</li>
+                    <li><a class="icon twitter" href="https://twitter.com/ApacheKudu">Twitter</a></li>
+                  </ul>
+                </li>
+                <li >
+                  <a href="/faq.html">FAQ</a>
+                </li>
+              </ul><!-- /.nav -->
+            </div><!-- /#navbar -->
+          </div><!-- /.container-fluid -->
+        </nav>
+
+<!--
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
+
+
+<div class="container">
+  <div class="row">
+    <div class="col-md-9">
+
+<h1>Configuring Apache Kudu</h1>
+      <div id="preamble">
+<div class="sectionbody">
+<div class="admonitionblock note">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-note" title="Note"></i>
+</td>
+<td class="content">
+Kudu is easier to configure with <a href="http://www.cloudera.com/content/www/en-us/products/cloudera-manager.html">Cloudera Manager</a>
+than in a standalone installation. See Cloudera&#8217;s
+<a href="http://www.cloudera.com/documentation/kudu/latest/topics/kudu_installation.html">Kudu documentation</a>
+for more details about using Kudu with Cloudera Manager.
+</td>
+</tr>
+</table>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_configure_kudu"><a class="link" href="#_configure_kudu">Configure Kudu</a></h2>
+<div class="sectionbody">
+<div class="sect2">
+<h3 id="_configuration_basics"><a class="link" href="#_configuration_basics">Configuration Basics</a></h3>
+<div class="paragraph">
+<p>To configure the behavior of each Kudu process, you can pass command-line flags when
+you start it, or read those options from configuration files by passing them using
+one or more <code>--flagfile=&lt;file&gt;</code> options. You can even include the
+<code>--flagfile</code> option within your configuration file to include other files. Learn more about gflags
+by reading <a href="https://gflags.github.io/gflags/">its documentation</a>.</p>
+</div>
+<div class="paragraph">
+<p>You can place options for masters and tablet servers into the same configuration
+file, and each will ignore options that do not apply.</p>
+</div>
+<div class="paragraph">
+<p>Flags can be prefixed with either one or two <code>-</code> characters. This
+documentation standardizes on two: <code>--example_flag</code>.</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_discovering_configuration_options"><a class="link" href="#_discovering_configuration_options">Discovering Configuration Options</a></h3>
+<div class="paragraph">
+<p>Only the most common configuration options are documented here. For a more exhaustive
+list of configuration options, see the <a href="configuration_reference.html">Configuration Reference</a>.</p>
+</div>
+<div class="paragraph">
+<p>To see all configuration flags for a given executable, run it with the <code>--help</code> option.
+Take care when configuring undocumented flags, as not every possible
+configuration has been tested, and undocumented options are not guaranteed to be
+maintained in future releases.</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_configuring_the_kudu_master"><a class="link" href="#_configuring_the_kudu_master">Configuring the Kudu Master</a></h3>
+<div class="paragraph">
+<p>To see all available configuration options for the <code>kudu-master</code> executable, run it
+with the <code>--help</code> option:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre>$ kudu-master --help</pre>
+</div>
+</div>
+<table class="tableblock frame-all grid-all spread">
+<caption class="title">Table 1. Supported Configuration Flags for Kudu Masters</caption>
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Flag</th>
+<th class="tableblock halign-left valign-top">Valid Options</th>
+<th class="tableblock halign-left valign-top">Default</th>
+<th class="tableblock halign-left valign-top">Description</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>--master_addresses</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>localhost</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of all the RPC
+addresses for Master consensus-configuration. If not specified, assumes a standalone Master.</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>--fs_data_dirs</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of
+directories where the Master will place its data blocks.</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>--fs_wal_dir</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">The directory where the Master will
+place its write-ahead logs. May be the same as <em>one of</em> the directories listed in
+<code>--fs_data_dirs</code>, but not a sub-directory of a data directory.</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>--log_dir</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>/tmp</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">The directory to store Master log files.</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>For the full list of flags for masters, see the
+<a href="configuration_reference.html#master_configuration_reference">Kudu Master Configuration Reference</a>.</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_configuring_tablet_servers"><a class="link" href="#_configuring_tablet_servers">Configuring Tablet Servers</a></h3>
+<div class="paragraph">
+<p>To see all available configuration options for the <code>kudu-tserver</code> executable,
+run it with the <code>--help</code> option:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre>$ kudu-tserver --help</pre>
+</div>
+</div>
+<table class="tableblock frame-all grid-all spread">
+<caption class="title">Table 2. Supported Configuration Flags for Kudu Tablet Servers</caption>
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Flag</th>
+<th class="tableblock halign-left valign-top">Valid Options</th>
+<th class="tableblock halign-left valign-top">Default</th>
+<th class="tableblock halign-left valign-top">Description</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">--fs_data_dirs</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list
+of directories where the Tablet Server will place its data blocks.</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">--fs_wal_dir</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">The directory where the Tablet Server will
+place its write-ahead logs. May be the same as <em>one of</em> the directories listed in
+<code>--fs_data_dirs</code>, but not a sub-directory of a data directory.</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">--log_dir</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">/tmp</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">The directory to store Tablet Server log files</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">--tserver_master_addrs</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>127.0.0.1:7051</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Comma separated
+addresses of the masters which the tablet server should connect to. The masters
+do not read this flag.</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">--block_cache_capacity_mb</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">integer</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">512</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Maximum amount of memory allocated to the Kudu Tablet Server&#8217;s block cache.</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">--memory_limit_hard_bytes</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">integer</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">4294967296</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Maximum amount of memory a Tablet Server can consume before it starts rejecting all incoming writes.</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>For the full list of flags for tablet servers, see the
+<a href="configuration_reference.html#tablet_server_configuration_reference">Kudu Tablet Server Configuration Reference</a>.</p>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_next_steps"><a class="link" href="#_next_steps">Next Steps</a></h2>
+<div class="sectionbody">
+<div class="ulist">
+<ul>
+<li>
+<p><a href="quickstart.html">Get Started With Kudu</a></p>
+</li>
+<li>
+<p><a href="developing.html">Developing Applications With Kudu</a></p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+    </div>
+    <div class="col-md-3">
+
+  <div id="toc" data-spy="affix" data-offset-top="70">
+  <ul>
+
+      <li>
+
+          <a href="index.html">Introducing Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="release_notes.html">Kudu Release Notes</a> 
+      </li> 
+      <li>
+
+          <a href="quickstart.html">Getting Started with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="installation.html">Installation Guide</a> 
+      </li> 
+      <li>
+<span class="active-toc">Configuring Kudu</span>
+            <ul class="sectlevel1">
+<li><a href="#_configure_kudu">Configure Kudu</a>
+<ul class="sectlevel2">
+<li><a href="#_configuration_basics">Configuration Basics</a></li>
+<li><a href="#_discovering_configuration_options">Discovering Configuration Options</a></li>
+<li><a href="#_configuring_the_kudu_master">Configuring the Kudu Master</a></li>
+<li><a href="#_configuring_tablet_servers">Configuring Tablet Servers</a></li>
+</ul>
+</li>
+<li><a href="#_next_steps">Next Steps</a></li>
+</ul> 
+      </li> 
+      <li>
+
+          <a href="kudu_impala_integration.html">Using Impala with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="administration.html">Administering Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="troubleshooting.html">Troubleshooting Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="developing.html">Developing Applications with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="schema_design.html">Kudu Schema Design</a> 
+      </li> 
+      <li>
+
+          <a href="security.html">Kudu Security</a> 
+      </li> 
+      <li>
+
+          <a href="transaction_semantics.html">Kudu Transaction Semantics</a> 
+      </li> 
+      <li>
+
+          <a href="background_tasks.html">Background Maintenance Tasks</a> 
+      </li> 
+      <li>
+
+          <a href="configuration_reference.html">Kudu Configuration Reference</a> 
+      </li> 
+      <li>
+
+          <a href="command_line_tools_reference.html">Kudu Command Line Tools Reference</a> 
+      </li> 
+      <li>
+
+          <a href="known_issues.html">Known Issues and Limitations</a> 
+      </li> 
+      <li>
+
+          <a href="contributing.html">Contributing to Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="export_control.html">Export Control Notice</a> 
+      </li> 
+  </ul>
+  </div>
+    </div>
+  </div>
+</div>
+      <footer class="footer">
+        <p class="small">
+        Copyright &copy; 2016 The Apache Software Foundation.  Last updated 2017-04-10 16:00:03 PDT 
+        </p>
+      </footer>
+    </div>
+    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
+    <script>
+      // Try to detect touch-screen devices. Note: Many laptops have touch screens.
+      $(document).ready(function() {
+        if ("ontouchstart" in document.documentElement) {
+          $(document.documentElement).addClass("touch");
+        } else {
+          $(document.documentElement).addClass("no-touch");
+        }
+      });
+    </script>
+    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"
+            integrity="sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS"
+            crossorigin="anonymous"></script>
+    <script>
+      (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+      (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+      m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+      })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+
+      ga('create', 'UA-68448017-1', 'auto');
+      ga('send', 'pageview');
+    </script>
+    <script src="https://cdnjs.cloudflare.com/ajax/libs/anchor-js/3.1.0/anchor.js"></script>
+    <script>
+      anchors.options = {
+        placement: 'right',
+        visible: 'touch',
+      };
+      anchors.add();
+    </script>
+  </body>
+</html>
+
diff --git a/releases/1.4.0/docs/configuration_reference.html b/releases/1.4.0/docs/configuration_reference.html
new file mode 100644
index 0000000..6ac763c
--- /dev/null
+++ b/releases/1.4.0/docs/configuration_reference.html
@@ -0,0 +1,15465 @@
+<!DOCTYPE html>
+<html lang="en">
+  <head>
+    <meta charset="utf-8" />
+    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
+    <meta name="viewport" content="width=device-width, initial-scale=1" />
+    <!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
+    <meta name="description" content="A new open source Apache Hadoop ecosystem project, Apache Kudu completes Hadoop's storage layer to enable fast analytics on fast data" />
+    <meta name="author" content="Cloudera" />
+    <title>Apache Kudu - Apache Kudu Configuration Reference</title>
+    <!-- Bootstrap core CSS -->
+    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css"
+          integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7"
+          crossorigin="anonymous">
+
+    <!-- Custom styles for this template -->
+    <link href="/css/kudu.css" rel="stylesheet"/>
+    <link href="/css/asciidoc.css" rel="stylesheet"/>
+    <link rel="shortcut icon" href="/img/logo-favicon.ico" />
+    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.6.1/css/font-awesome.min.css" />
+
+    
+
+    <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+        <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+        <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+        <![endif]-->
+  </head>
+  <body>
+    <div class="kudu-site container-fluid">
+      <!-- Static navbar -->
+        <nav class="navbar navbar-default">
+          <div class="container-fluid">
+            <div class="navbar-header">
+              <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
+                <span class="sr-only">Toggle navigation</span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+              </button>
+              
+              <a class="logo" href="/"><img
+                src="//d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_80px.png"
+                srcset="//d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_80px.png 1x, //d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_160px.png 2x"
+                alt="Apache Kudu"/></a>
+              
+            </div>
+            <div id="navbar" class="collapse navbar-collapse">
+              <ul class="nav navbar-nav navbar-right">
+                <li >
+                  <a href="/">Home</a>
+                </li>
+                <li >
+                  <a href="/overview.html">Overview</a>
+                </li>
+                <li class="active">
+                  <a href="/docs/">Documentation</a>
+                </li>
+                <li >
+                  <a href="/releases/">Download</a>
+                </li>
+                <li >
+                  <a href="/blog/">Blog</a>
+                </li>
+                <!-- NOTE: this dropdown menu does not appear on Mobile, so don't add anything here
+                     that doesn't also appear elsewhere on the site. -->
+                <li class="dropdown">
+                  <a href="/community.html" role="button" aria-haspopup="true" aria-expanded="false">Community <span class="caret"></span></a>
+                  <ul class="dropdown-menu">
+                    <li class="dropdown-header">GET IN TOUCH</li>
+                    <li><a class="icon email" href="/community.html">Mailing Lists</a></li>
+                    <li><a class="icon slack" href="https://getkudu-slack.herokuapp.com/">Slack Channel</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li><a href="/community.html#meetups-user-groups-and-conference-presentations">Events and Meetups</a></li>
+                    <li><a href="/committers.html">Project Committers</a></li>
+                    <!--<li><a href="/roadmap.html">Roadmap</a></li>-->
+                    <li><a href="/community.html#contributions">How to Contribute</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li class="dropdown-header">DEVELOPER RESOURCES</li>
+                    <li><a class="icon github" href="https://github.com/apache/incubator-kudu">GitHub</a></li>
+                    <li><a class="icon gerrit" href="http://gerrit.cloudera.org:8080/#/q/status:open+project:kudu">Gerrit Code Review</a></li>
+                    <li><a class="icon jira" href="https://issues.apache.org/jira/browse/KUDU">JIRA Issue Tracker</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li class="dropdown-header">SOCIAL MEDIA</li>
+                    <li><a class="icon twitter" href="https://twitter.com/ApacheKudu">Twitter</a></li>
+                  </ul>
+                </li>
+                <li >
+                  <a href="/faq.html">FAQ</a>
+                </li>
+              </ul><!-- /.nav -->
+            </div><!-- /#navbar -->
+          </div><!-- /.container-fluid -->
+        </nav>
+
+<!--
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
+
+
+<div class="container">
+  <div class="row">
+    <div class="col-md-9">
+
+<h1>Apache Kudu Configuration Reference</h1>
+      <div class="sect1">
+<h2 id="kudu-master_supported"><a class="link" href="#kudu-master_supported"><code>kudu-master</code> Flags</a></h2>
+<div class="sectionbody">
+<div class="sect2">
+<h3 id="kudu-master_stable"><a class="link" href="#kudu-master_stable">Stable Flags</a></h3>
+<div class="paragraph">
+<p>Flags tagged <code>stable</code> and not <code>advanced</code> are safe to use for common
+configuration tasks.</p>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_block_cache_capacity_mb"><a class="link" href="#kudu-master_block_cache_capacity_mb"><code>--block_cache_capacity_mb</code></a></h4>
+<div class="paragraph">
+<p>block cache capacity in MB</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>512</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_log_force_fsync_all"><a class="link" href="#kudu-master_log_force_fsync_all"><code>--log_force_fsync_all</code></a></h4>
+<div class="paragraph">
+<p>Whether the Log/WAL should explicitly call fsync() after each write.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_fs_data_dirs"><a class="link" href="#kudu-master_fs_data_dirs"><code>--fs_data_dirs</code></a></h4>
+<div class="paragraph">
+<p>Comma-separated list of directories with data blocks. If this is not specified, fs_wal_dir will be used as the sole data block directory.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_fs_wal_dir"><a class="link" href="#kudu-master_fs_wal_dir"><code>--fs_wal_dir</code></a></h4>
+<div class="paragraph">
+<p>Directory with write-ahead logs. If this is not specified, the program will not start. May be the same as fs_data_dirs</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_master_addresses"><a class="link" href="#kudu-master_master_addresses"><code>--master_addresses</code></a></h4>
+<div class="paragraph">
+<p>Comma-separated list of the RPC addresses belonging to all Masters in this cluster. NOTE: if not specified, configures a non-replicated Master.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_keytab_file"><a class="link" href="#kudu-master_keytab_file"><code>--keytab_file</code></a></h4>
+<div class="paragraph">
+<p>Path to the Kerberos Keytab file for this server. Specifying a keytab file will cause the server to kinit, and enable Kerberos to be used to authenticate RPC connections.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_rpc_bind_addresses"><a class="link" href="#kudu-master_rpc_bind_addresses"><code>--rpc_bind_addresses</code></a></h4>
+<div class="paragraph">
+<p>Comma-separated list of addresses to bind to for RPC connections. Currently, ephemeral ports (i.e. port 0) are not allowed.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0.0.0.0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_superuser_acl"><a class="link" href="#kudu-master_superuser_acl"><code>--superuser_acl</code></a></h4>
+<div class="paragraph">
+<p>The list of usernames to allow as super users, comma-separated. A '*' entry indicates that all authenticated users are allowed. If this is left unset or blank, the default behavior is that the identity of the daemon itself determines the superuser. If the daemon is logged in from a Keytab, then the local username from the Kerberos principal is used; otherwise, the local Unix username is used.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">sensitive,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_user_acl"><a class="link" href="#kudu-master_user_acl"><code>--user_acl</code></a></h4>
+<div class="paragraph">
+<p>The list of usernames who may access the cluster, comma-separated. A '*' entry indicates that all authenticated users are allowed.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>*</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">sensitive,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_webserver_certificate_file"><a class="link" href="#kudu-master_webserver_certificate_file"><code>--webserver_certificate_file</code></a></h4>
+<div class="paragraph">
+<p>The location of the debug webserver&#8217;s SSL certificate file, in PEM format. If empty, webserver SSL support is not enabled. If --webserver_private_key_file is set, this option must be set as well.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_webserver_port"><a class="link" href="#kudu-master_webserver_port"><code>--webserver_port</code></a></h4>
+<div class="paragraph">
+<p>Port to bind to for the web server</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_webserver_private_key_file"><a class="link" href="#kudu-master_webserver_private_key_file"><code>--webserver_private_key_file</code></a></h4>
+<div class="paragraph">
+<p>The full path to the private key used as a counterpart to the public key contained in --webserver_certificate_file. If --webserver_certificate_file is set, this option must be set as well.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_webserver_private_key_password_cmd"><a class="link" href="#kudu-master_webserver_private_key_password_cmd"><code>--webserver_private_key_password_cmd</code></a></h4>
+<div class="paragraph">
+<p>A Unix command whose output returns the password used to decrypt the Webserver&#8217;s certificate private key file specified in --webserver_private_key_file. If the PEM key file is not password-protected, this command will not be invoked. The output of the command will be truncated to 1024 bytes, and then all trailing whitespace will be trimmed before it is used to decrypt the private key</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_log_filename"><a class="link" href="#kudu-master_log_filename"><code>--log_filename</code></a></h4>
+<div class="paragraph">
+<p>Prefix of log filename - full path is &lt;log_dir&gt;/&lt;log_filename&gt;.[INFO|WARN|ERROR|FATAL]</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_maintenance_manager_num_threads"><a class="link" href="#kudu-master_maintenance_manager_num_threads"><code>--maintenance_manager_num_threads</code></a></h4>
+<div class="paragraph">
+<p>Size of the maintenance manager thread pool. For spinning disks, the number of threads should not be above the number of devices.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_memory_limit_hard_bytes"><a class="link" href="#kudu-master_memory_limit_hard_bytes"><code>--memory_limit_hard_bytes</code></a></h4>
+<div class="paragraph">
+<p>Maximum amount of memory this daemon should use, in bytes. A value of 0 autosizes based on the total system memory. A value of -1 disables all memory limiting.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_flagfile"><a class="link" href="#kudu-master_flagfile"><code>--flagfile</code></a></h4>
+<div class="paragraph">
+<p>load flags from file</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_help"><a class="link" href="#kudu-master_help"><code>--help</code></a></h4>
+<div class="paragraph">
+<p>show help on all flags [tip: all flags can have two dashes]</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_version"><a class="link" href="#kudu-master_version"><code>--version</code></a></h4>
+<div class="paragraph">
+<p>show version and build info and exit</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_colorlogtostderr"><a class="link" href="#kudu-master_colorlogtostderr"><code>--colorlogtostderr</code></a></h4>
+<div class="paragraph">
+<p>color messages logged to stderr (if supported by terminal)</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_log_dir"><a class="link" href="#kudu-master_log_dir"><code>--log_dir</code></a></h4>
+<div class="paragraph">
+<p>If specified, logfiles are written into this directory instead of the default logging directory.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_logtostderr"><a class="link" href="#kudu-master_logtostderr"><code>--logtostderr</code></a></h4>
+<div class="paragraph">
+<p>log messages go to stderr instead of logfiles</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_max_log_size"><a class="link" href="#kudu-master_max_log_size"><code>--max_log_size</code></a></h4>
+<div class="paragraph">
+<p>approx. maximum log file size (in MB). A value of 0 will be silently overridden to 1.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1800</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_stable_advanced"><a class="link" href="#kudu-master_stable_advanced">Stable, Advanced Flags</a></h3>
+<div class="paragraph">
+<p>Flags tagged <code>stable</code> and <code>advanced</code> are supported, but should be considered
+"expert" options and should be used carefully and after thorough testing.</p>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_enable_process_lifetime_heap_profiling"><a class="link" href="#kudu-master_enable_process_lifetime_heap_profiling"><code>--enable_process_lifetime_heap_profiling</code></a></h4>
+<div class="paragraph">
+<p>Enables heap profiling for the lifetime of the process. Profile output will be stored in the directory specified by -heap_profile_path. Enabling this option will disable the on-demand/remote server profile handlers.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_heap_profile_path"><a class="link" href="#kudu-master_heap_profile_path"><code>--heap_profile_path</code></a></h4>
+<div class="paragraph">
+<p>Output path to store heap profiles. If not set profiles are stored in /tmp/&lt;process-name&gt;.&lt;pid&gt;.&lt;n&gt;.heap.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_unlock_experimental_flags"><a class="link" href="#kudu-master_unlock_experimental_flags"><code>--unlock_experimental_flags</code></a></h4>
+<div class="paragraph">
+<p>Unlock flags marked as 'experimental'. These flags are not guaranteed to be maintained across releases of Kudu, and may enable features or behavior known to be unstable. Use at your own risk.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_unlock_unsafe_flags"><a class="link" href="#kudu-master_unlock_unsafe_flags"><code>--unlock_unsafe_flags</code></a></h4>
+<div class="paragraph">
+<p>Unlock flags marked as 'unsafe'. These flags are not guaranteed to be maintained across releases of Kudu, and enable features or behavior known to be unsafe. Use at your own risk.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_fromenv"><a class="link" href="#kudu-master_fromenv"><code>--fromenv</code></a></h4>
+<div class="paragraph">
+<p>set flags from the environment [use 'export FLAGS_flag1=value']</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_tryfromenv"><a class="link" href="#kudu-master_tryfromenv"><code>--tryfromenv</code></a></h4>
+<div class="paragraph">
+<p>set flags from the environment if present</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_undefok"><a class="link" href="#kudu-master_undefok"><code>--undefok</code></a></h4>
+<div class="paragraph">
+<p>comma-separated list of flag names that it is okay to specify on the command line even if the program does not define a flag with that name.  IMPORTANT: flags in this list that have arguments MUST use the flag=value format</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_helpmatch"><a class="link" href="#kudu-master_helpmatch"><code>--helpmatch</code></a></h4>
+<div class="paragraph">
+<p>show help on modules whose name contains the specified substr</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_helpon"><a class="link" href="#kudu-master_helpon"><code>--helpon</code></a></h4>
+<div class="paragraph">
+<p>show help on the modules named by this flag value</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_helppackage"><a class="link" href="#kudu-master_helppackage"><code>--helppackage</code></a></h4>
+<div class="paragraph">
+<p>show help on all modules in the main package</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_helpshort"><a class="link" href="#kudu-master_helpshort"><code>--helpshort</code></a></h4>
+<div class="paragraph">
+<p>show help on only the main module for this program</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_helpxml"><a class="link" href="#kudu-master_helpxml"><code>--helpxml</code></a></h4>
+<div class="paragraph">
+<p>produce an xml version of help</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_log_link"><a class="link" href="#kudu-master_log_link"><code>--log_link</code></a></h4>
+<div class="paragraph">
+<p>Put additional links to the log files in this directory</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_log_prefix"><a class="link" href="#kudu-master_log_prefix"><code>--log_prefix</code></a></h4>
+<div class="paragraph">
+<p>Prepend the log prefix to the start of each log line</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_minloglevel"><a class="link" href="#kudu-master_minloglevel"><code>--minloglevel</code></a></h4>
+<div class="paragraph">
+<p>Messages logged at a lower level than this don&#8217;t actually get logged anywhere</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_stderrthreshold"><a class="link" href="#kudu-master_stderrthreshold"><code>--stderrthreshold</code></a></h4>
+<div class="paragraph">
+<p>log messages at or above this level are copied to stderr in addition to logfiles.  This flag obsoletes --alsologtostderr.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>2</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_stop_logging_if_full_disk"><a class="link" href="#kudu-master_stop_logging_if_full_disk"><code>--stop_logging_if_full_disk</code></a></h4>
+<div class="paragraph">
+<p>Stop attempting to log to disk if the disk is full.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_symbolize_stacktrace"><a class="link" href="#kudu-master_symbolize_stacktrace"><code>--symbolize_stacktrace</code></a></h4>
+<div class="paragraph">
+<p>Symbolize the stack trace in the tombstone</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,runtime,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_v"><a class="link" href="#kudu-master_v"><code>--v</code></a></h4>
+<div class="paragraph">
+<p>Show all VLOG(m) messages for m &#8656; this. Overridable by --vmodule.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_vmodule"><a class="link" href="#kudu-master_vmodule"><code>--vmodule</code></a></h4>
+<div class="paragraph">
+<p>per-module verbose level. Argument is a comma-separated list of &lt;module name&gt;=&lt;log level&gt;. &lt;module name&gt; is a glob pattern, matched against the filename base (that is, name ignoring .cc/.h./-inl.h). &lt;log level&gt; overrides any value given by --v.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_evolving"><a class="link" href="#kudu-master_evolving">Evolving Flags</a></h3>
+<div class="paragraph">
+<p>Flags tagged <code>evolving</code> (or not tagged with a stability tag) are not yet
+considered final, and while they may be useful for tuning, they are subject to
+being changed or removed without notice.</p>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_cfile_verify_checksums"><a class="link" href="#kudu-master_cfile_verify_checksums"><code>--cfile_verify_checksums</code></a></h4>
+<div class="paragraph">
+<p>Verify the checksum for each block on read if one exists</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_cfile_default_block_size"><a class="link" href="#kudu-master_cfile_default_block_size"><code>--cfile_default_block_size</code></a></h4>
+<div class="paragraph">
+<p>The default block size to use in cfiles</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>262144</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_cfile_default_compression_codec"><a class="link" href="#kudu-master_cfile_default_compression_codec"><code>--cfile_default_compression_codec</code></a></h4>
+<div class="paragraph">
+<p>Default cfile block compression codec.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>none</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_cfile_write_checksums"><a class="link" href="#kudu-master_cfile_write_checksums"><code>--cfile_write_checksums</code></a></h4>
+<div class="paragraph">
+<p>Write CRC32 checksums for each block</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_consensus_rpc_timeout_ms"><a class="link" href="#kudu-master_consensus_rpc_timeout_ms"><code>--consensus_rpc_timeout_ms</code></a></h4>
+<div class="paragraph">
+<p>Timeout used for all consensus internal RPC communications.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_consensus_max_batch_size_bytes"><a class="link" href="#kudu-master_consensus_max_batch_size_bytes"><code>--consensus_max_batch_size_bytes</code></a></h4>
+<div class="paragraph">
+<p>The maximum per-tablet RPC batch size when updating peers.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1048576</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_follower_unavailable_considered_failed_sec"><a class="link" href="#kudu-master_follower_unavailable_considered_failed_sec"><code>--follower_unavailable_considered_failed_sec</code></a></h4>
+<div class="paragraph">
+<p>Seconds that a leader is unable to successfully heartbeat to a follower after which the follower is considered to be failed and evicted from the config.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>300</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_fs_wal_dir_reserved_bytes"><a class="link" href="#kudu-master_fs_wal_dir_reserved_bytes"><code>--fs_wal_dir_reserved_bytes</code></a></h4>
+<div class="paragraph">
+<p>Number of bytes to reserve on the log directory filesystem for non-Kudu usage. The default, which is represented by -1, is that 1% of the disk space on each disk will be reserved. Any other value specified represents the number of bytes reserved and must be greater than or equal to 0. Explicit percentages to reserve are not currently supported</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>-1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving,runtime</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_group_commit_queue_size_bytes"><a class="link" href="#kudu-master_group_commit_queue_size_bytes"><code>--group_commit_queue_size_bytes</code></a></h4>
+<div class="paragraph">
+<p>Maximum size of the group commit queue in bytes</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>4194304</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_log_min_segments_to_retain"><a class="link" href="#kudu-master_log_min_segments_to_retain"><code>--log_min_segments_to_retain</code></a></h4>
+<div class="paragraph">
+<p>The minimum number of past log segments to keep at all times, regardless of what is required for durability. Must be at least 1.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,runtime</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_global_log_cache_size_limit_mb"><a class="link" href="#kudu-master_global_log_cache_size_limit_mb"><code>--global_log_cache_size_limit_mb</code></a></h4>
+<div class="paragraph">
+<p>Server-wide version of 'log_cache_size_limit_mb'. The total memory used for caching log entries across all tablets is kept under this threshold.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1024</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_log_cache_size_limit_mb"><a class="link" href="#kudu-master_log_cache_size_limit_mb"><code>--log_cache_size_limit_mb</code></a></h4>
+<div class="paragraph">
+<p>The total per-tablet size of consensus entries which may be kept in memory. The log cache attempts to keep all entries which have not yet been replicated to all followers in memory, but if the total size of those entries exceeds this limit within an individual tablet, the oldest will be evicted.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>128</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_log_async_preallocate_segments"><a class="link" href="#kudu-master_log_async_preallocate_segments"><code>--log_async_preallocate_segments</code></a></h4>
+<div class="paragraph">
+<p>Whether the WAL segments preallocation should happen asynchronously</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_log_preallocate_segments"><a class="link" href="#kudu-master_log_preallocate_segments"><code>--log_preallocate_segments</code></a></h4>
+<div class="paragraph">
+<p>Whether the WAL should preallocate the entire segment before writing to it</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_log_segment_size_mb"><a class="link" href="#kudu-master_log_segment_size_mb"><code>--log_segment_size_mb</code></a></h4>
+<div class="paragraph">
+<p>The default size for log segments, in MB</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>8</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_evict_failed_followers"><a class="link" href="#kudu-master_evict_failed_followers"><code>--evict_failed_followers</code></a></h4>
+<div class="paragraph">
+<p>Whether to evict followers from the Raft config that have fallen too far behind the leader&#8217;s log to catch up normally or have been unreachable by the leader for longer than follower_unavailable_considered_failed_sec</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_leader_failure_max_missed_heartbeat_periods"><a class="link" href="#kudu-master_leader_failure_max_missed_heartbeat_periods"><code>--leader_failure_max_missed_heartbeat_periods</code></a></h4>
+<div class="paragraph">
+<p>Maximum heartbeat periods that the leader can fail to heartbeat in before we consider the leader to be failed. The total failure timeout in milliseconds is raft_heartbeat_interval_ms times leader_failure_max_missed_heartbeat_periods. The value passed to this flag may be fractional.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>3</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_raft_heartbeat_interval_ms"><a class="link" href="#kudu-master_raft_heartbeat_interval_ms"><code>--raft_heartbeat_interval_ms</code></a></h4>
+<div class="paragraph">
+<p>The heartbeat interval for Raft replication. The leader produces heartbeats to followers at this interval. The followers expect a heartbeat at this interval and consider a leader to have failed if it misses several in a row.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>500</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_safe_time_advancement_without_writes"><a class="link" href="#kudu-master_safe_time_advancement_without_writes"><code>--safe_time_advancement_without_writes</code></a></h4>
+<div class="paragraph">
+<p>Whether to enable the advancement of "safe" time in the absense of write operations</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_block_manager_max_open_files"><a class="link" href="#kudu-master_block_manager_max_open_files"><code>--block_manager_max_open_files</code></a></h4>
+<div class="paragraph">
+<p>Maximum number of open file descriptors to be used for data blocks. If -1, Kudu will use 40% of its resource limit as per getrlimit(). This is a soft limit. It is an error to use a value of 0.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>-1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_fs_data_dirs_full_disk_cache_seconds"><a class="link" href="#kudu-master_fs_data_dirs_full_disk_cache_seconds"><code>--fs_data_dirs_full_disk_cache_seconds</code></a></h4>
+<div class="paragraph">
+<p>Number of seconds we cache the full-disk status in the block manager. During this time, writes to the corresponding root path will not be attempted.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>30</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_fs_data_dirs_reserved_bytes"><a class="link" href="#kudu-master_fs_data_dirs_reserved_bytes"><code>--fs_data_dirs_reserved_bytes</code></a></h4>
+<div class="paragraph">
+<p>Number of bytes to reserve on each data directory filesystem for non-Kudu usage. The default, which is represented by -1, is that 1% of the disk space on each disk will be reserved. Any other value specified represents the number of bytes reserved and must be greater than or equal to 0. Explicit percentages to reserve are not currently supported</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>-1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving,runtime</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_block_manager"><a class="link" href="#kudu-master_block_manager"><code>--block_manager</code></a></h4>
+<div class="paragraph">
+<p>Which block manager to use for storage. Valid options are 'file' and 'log'.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>log</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_log_container_excess_space_before_cleanup_fraction"><a class="link" href="#kudu-master_log_container_excess_space_before_cleanup_fraction"><code>--log_container_excess_space_before_cleanup_fraction</code></a></h4>
+<div class="paragraph">
+<p>Additional fraction of a log container&#8217;s calculated size that must be consumed on disk before the container is considered to be inconsistent and subject to excess space cleanup at block manager startup.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0.10000000000000001</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_log_container_max_blocks"><a class="link" href="#kudu-master_log_container_max_blocks"><code>--log_container_max_blocks</code></a></h4>
+<div class="paragraph">
+<p>Maximum number of blocks (soft) of a log container. Use 0 for no limit. Use -1 for no limit except in the case of a kernel bug with hole punching on ext4 (see KUDU-1508 for details).</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>-1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_log_container_max_size"><a class="link" href="#kudu-master_log_container_max_size"><code>--log_container_max_size</code></a></h4>
+<div class="paragraph">
+<p>Maximum size (soft) of a log container</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">uint64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10737418240</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_log_container_preallocate_bytes"><a class="link" href="#kudu-master_log_container_preallocate_bytes"><code>--log_container_preallocate_bytes</code></a></h4>
+<div class="paragraph">
+<p>Number of bytes to preallocate in a log container when creating new blocks. Set to 0 to disable preallocation</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">uint64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>33554432</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_catalog_manager_delete_orphaned_tablets"><a class="link" href="#kudu-master_catalog_manager_delete_orphaned_tablets"><code>--catalog_manager_delete_orphaned_tablets</code></a></h4>
+<div class="paragraph">
+<p>Whether the master should delete tablets reported by tablet servers for which there are no corresponding records in the master&#8217;s metadata. Use this option with care; it may cause permanent tablet data loss under specific (and rare) cases of master failures!</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_default_num_replicas"><a class="link" href="#kudu-master_default_num_replicas"><code>--default_num_replicas</code></a></h4>
+<div class="paragraph">
+<p>Default number of replicas for tables that do not have the num_replicas set.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>3</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_master_ts_rpc_timeout_ms"><a class="link" href="#kudu-master_master_ts_rpc_timeout_ms"><code>--master_ts_rpc_timeout_ms</code></a></h4>
+<div class="paragraph">
+<p>Timeout used for the master&#8594;TS async rpc calls.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>30000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_max_create_tablets_per_ts"><a class="link" href="#kudu-master_max_create_tablets_per_ts"><code>--max_create_tablets_per_ts</code></a></h4>
+<div class="paragraph">
+<p>The number of tablets per TS that can be requested for a new table.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>20</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_table_locations_ttl_ms"><a class="link" href="#kudu-master_table_locations_ttl_ms"><code>--table_locations_ttl_ms</code></a></h4>
+<div class="paragraph">
+<p>Maximum time in milliseconds which clients may cache table locations. New range partitions may not be visible to existing client instances until after waiting for the ttl period.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>300000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_tablet_creation_timeout_ms"><a class="link" href="#kudu-master_tablet_creation_timeout_ms"><code>--tablet_creation_timeout_ms</code></a></h4>
+<div class="paragraph">
+<p>Timeout used by the master when attempting to create tablet replicas during table creation.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>30000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_unresponsive_ts_rpc_timeout_ms"><a class="link" href="#kudu-master_unresponsive_ts_rpc_timeout_ms"><code>--unresponsive_ts_rpc_timeout_ms</code></a></h4>
+<div class="paragraph">
+<p>After this amount of time, the master will stop attempting to contact a tablet server in order to perform operations such as deleting a tablet.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>3600000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_tserver_unresponsive_timeout_ms"><a class="link" href="#kudu-master_tserver_unresponsive_timeout_ms"><code>--tserver_unresponsive_timeout_ms</code></a></h4>
+<div class="paragraph">
+<p>The period of time that a Master can go without receiving a heartbeat from a tablet server before considering it unresponsive. Unresponsive servers are not selected when assigning replicas during table creation or re-replication.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>60000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_rpc_acceptor_listen_backlog"><a class="link" href="#kudu-master_rpc_acceptor_listen_backlog"><code>--rpc_acceptor_listen_backlog</code></a></h4>
+<div class="paragraph">
+<p>Socket backlog parameter used when listening for RPC connections. This defines the maximum length to which the queue of pending TCP connections inbound to the RPC server may grow. If a connection request arrives when the queue is full, the client may receive an error. Higher values may help the server ride over bursts of new inbound connection requests.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>128</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_rpc_authentication"><a class="link" href="#kudu-master_rpc_authentication"><code>--rpc_authentication</code></a></h4>
+<div class="paragraph">
+<p>Whether to require RPC connections to authenticate. Must be one of 'disabled', 'optional', or 'required'. If 'optional', authentication will be used when the remote end supports it. If 'required', connections which are not able to authenticate (because the remote end lacks support) are rejected. Secure clusters should use 'required'.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>optional</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_rpc_default_keepalive_time_ms"><a class="link" href="#kudu-master_rpc_default_keepalive_time_ms"><code>--rpc_default_keepalive_time_ms</code></a></h4>
+<div class="paragraph">
+<p>If an RPC connection from a client is idle for this amount of time, the server will disconnect the client.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>65000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_rpc_encryption"><a class="link" href="#kudu-master_rpc_encryption"><code>--rpc_encryption</code></a></h4>
+<div class="paragraph">
+<p>Whether to require RPC connections to be encrypted. Must be one of 'disabled', 'optional', or 'required'. If 'optional', encryption will be used when the remote end supports it. If 'required', connections which are not able to use encryption (because the remote end lacks support) are rejected. If 'disabled', encryption will not be used, and RPC authentication (--rpc_authentication) must also be disabled as well. Secure clusters should use 'required'.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>optional</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_rpc_encrypt_loopback_connections"><a class="link" href="#kudu-master_rpc_encrypt_loopback_connections"><code>--rpc_encrypt_loopback_connections</code></a></h4>
+<div class="paragraph">
+<p>Whether to encrypt data transfer on RPC connections that stay within a single host. Encryption here is likely to offer no additional security benefit since only a local 'root' user could intercept the traffic, and wire encryption does not suitably protect against such an attacker.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_rpc_callback_max_cycles"><a class="link" href="#kudu-master_rpc_callback_max_cycles"><code>--rpc_callback_max_cycles</code></a></h4>
+<div class="paragraph">
+<p>The maximum number of cycles for which an RPC callback should be allowed to run without emitting a warning. (Advanced debugging option)</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>100000000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_rpc_negotiation_timeout_ms"><a class="link" href="#kudu-master_rpc_negotiation_timeout_ms"><code>--rpc_negotiation_timeout_ms</code></a></h4>
+<div class="paragraph">
+<p>Timeout for negotiating an RPC connection.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>3000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_remember_clients_ttl_ms"><a class="link" href="#kudu-master_remember_clients_ttl_ms"><code>--remember_clients_ttl_ms</code></a></h4>
+<div class="paragraph">
+<p>Maximum amount of time, in milliseconds, the server "remembers" a client for the purpose of caching its responses. After this period without hearing from it, the client is no longer remembered and the memory occupied by its responses is reclaimed. Retries of requests older than 'remember_clients_ttl_ms' are treated as new ones.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>3600000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_remember_responses_ttl_ms"><a class="link" href="#kudu-master_remember_responses_ttl_ms"><code>--remember_responses_ttl_ms</code></a></h4>
+<div class="paragraph">
+<p>Maximum amount of time, in milliseconds, the server "remembers" a response to a specific request for a client. After this period has elapsed, the response may have been garbage collected and the client might get a response indicating the request is STALE.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>600000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_rpc_dump_all_traces"><a class="link" href="#kudu-master_rpc_dump_all_traces"><code>--rpc_dump_all_traces</code></a></h4>
+<div class="paragraph">
+<p>If true, dump all RPC traces at INFO level</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_trusted_subnets"><a class="link" href="#kudu-master_trusted_subnets"><code>--trusted_subnets</code></a></h4>
+<div class="paragraph">
+<p>A trusted subnet whitelist. If set explicitly, all unauthenticated or unencrypted connections are prohibited except the ones from the specified address blocks. Otherwise, private network (127.0.0.0/8, etc.) and local subnets of all local network interfaces will be used. Set it to '0.0.0.0/0' to allow unauthenticated/unencrypted connections from all remote IP addresses. However, if network access is not otherwise restricted by a firewall, malicious users may be able to gain unauthorized access.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>127.0.0.0/8,10.0.0.0/8,172.16.0.0/12,192.168.0.0/16,169.254.0.0/16</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_rpc_max_message_size"><a class="link" href="#kudu-master_rpc_max_message_size"><code>--rpc_max_message_size</code></a></h4>
+<div class="paragraph">
+<p>The maximum size of a message that any RPC that the server will accept. Must be at least 1MB.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>52428800</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_rpc_tls_ciphers"><a class="link" href="#kudu-master_rpc_tls_ciphers"><code>--rpc_tls_ciphers</code></a></h4>
+<div class="paragraph">
+<p>The cipher suite preferences to use for TLS-secured RPC connections. Uses the OpenSSL cipher preference list format. See man (1) ciphers for more information.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256AES256-GCM-SHA384:AES128-GCM-SHA256:AES256-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_rpc_tls_min_protocol"><a class="link" href="#kudu-master_rpc_tls_min_protocol"><code>--rpc_tls_min_protocol</code></a></h4>
+<div class="paragraph">
+<p>The minimum protocol version to allow when for securing RPC connections with TLS. May be one of 'TLSv1', 'TLSv1.1', or 'TLSv1.2'.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>TLSv1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_web_log_bytes"><a class="link" href="#kudu-master_web_log_bytes"><code>--web_log_bytes</code></a></h4>
+<div class="paragraph">
+<p>The maximum number of bytes to display on the debug webserver&#8217;s log page</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1048576</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_max_clock_sync_error_usec"><a class="link" href="#kudu-master_max_clock_sync_error_usec"><code>--max_clock_sync_error_usec</code></a></h4>
+<div class="paragraph">
+<p>Maximum allowed clock synchronization error as reported by NTP before the server will abort.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10000000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_rpc_advertised_addresses"><a class="link" href="#kudu-master_rpc_advertised_addresses"><code>--rpc_advertised_addresses</code></a></h4>
+<div class="paragraph">
+<p>Comma-separated list of addresses to advertise externally for RPC connections. Ephemeral ports (i.e. port 0) are not allowed. This should be configured when the locally bound RPC addresses specified in --rpc_bind_addresses are not externally resolvable, for example, if Kudu is deployed in a container.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_rpc_num_acceptors_per_address"><a class="link" href="#kudu-master_rpc_num_acceptors_per_address"><code>--rpc_num_acceptors_per_address</code></a></h4>
+<div class="paragraph">
+<p>Number of RPC acceptor threads for each bound address</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_rpc_num_service_threads"><a class="link" href="#kudu-master_rpc_num_service_threads"><code>--rpc_num_service_threads</code></a></h4>
+<div class="paragraph">
+<p>Number of RPC worker threads to run</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_rpc_service_queue_length"><a class="link" href="#kudu-master_rpc_service_queue_length"><code>--rpc_service_queue_length</code></a></h4>
+<div class="paragraph">
+<p>Default length of queue for incoming RPC requests</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>50</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_max_negotiation_threads"><a class="link" href="#kudu-master_max_negotiation_threads"><code>--max_negotiation_threads</code></a></h4>
+<div class="paragraph">
+<p>Maximum number of connection negotiation threads.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>50</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_min_negotiation_threads"><a class="link" href="#kudu-master_min_negotiation_threads"><code>--min_negotiation_threads</code></a></h4>
+<div class="paragraph">
+<p>Minimum number of connection negotiation threads.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_num_reactor_threads"><a class="link" href="#kudu-master_num_reactor_threads"><code>--num_reactor_threads</code></a></h4>
+<div class="paragraph">
+<p>Number of libev reactor threads to start.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>4</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_webserver_enabled"><a class="link" href="#kudu-master_webserver_enabled"><code>--webserver_enabled</code></a></h4>
+<div class="paragraph">
+<p>Whether to enable the web server on this daemon. NOTE: disabling the web server is also likely to prevent monitoring systems from properly capturing metrics.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_metrics_log_interval_ms"><a class="link" href="#kudu-master_metrics_log_interval_ms"><code>--metrics_log_interval_ms</code></a></h4>
+<div class="paragraph">
+<p>Interval (in milliseconds) at which the server will dump its metrics to a local log file. The log files are located in the same directory as specified by the -log_dir flag. If this is not a positive value, then metrics logging will be disabled.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_webserver_max_post_length_bytes"><a class="link" href="#kudu-master_webserver_max_post_length_bytes"><code>--webserver_max_post_length_bytes</code></a></h4>
+<div class="paragraph">
+<p>The maximum length of a POST request that will be accepted by the embedded web server.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1048576</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_webserver_x_frame_options"><a class="link" href="#kudu-master_webserver_x_frame_options"><code>--webserver_x_frame_options</code></a></h4>
+<div class="paragraph">
+<p>The webserver will add an 'X-Frame-Options' HTTP header with this value to all responses. This can help prevent clickjacking attacks.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>DENY</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_webserver_advertised_addresses"><a class="link" href="#kudu-master_webserver_advertised_addresses"><code>--webserver_advertised_addresses</code></a></h4>
+<div class="paragraph">
+<p>Comma-separated list of addresses to advertise externally for HTTP(S) connections. Ephemeral ports (i.e. port 0) are not allowed. This should be configured when the locally bound webserver address specified in --webserver_interface and --webserver_port are not externally resolvable, for example, if Kudu is deployed in a container.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_webserver_authentication_domain"><a class="link" href="#kudu-master_webserver_authentication_domain"><code>--webserver_authentication_domain</code></a></h4>
+<div class="paragraph">
+<p>Domain used for debug webserver authentication</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_webserver_doc_root"><a class="link" href="#kudu-master_webserver_doc_root"><code>--webserver_doc_root</code></a></h4>
+<div class="paragraph">
+<p>Files under &lt;webserver_doc_root&gt; are accessible via the debug webserver. Defaults to $KUDU_HOME/www, or if $KUDU_HOME is not set, disables the document root</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_webserver_enable_doc_root"><a class="link" href="#kudu-master_webserver_enable_doc_root"><code>--webserver_enable_doc_root</code></a></h4>
+<div class="paragraph">
+<p>If true, webserver may serve static files from the webserver_doc_root</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_webserver_interface"><a class="link" href="#kudu-master_webserver_interface"><code>--webserver_interface</code></a></h4>
+<div class="paragraph">
+<p>Interface to start debug webserver on. If blank, webserver binds to 0.0.0.0</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_webserver_num_worker_threads"><a class="link" href="#kudu-master_webserver_num_worker_threads"><code>--webserver_num_worker_threads</code></a></h4>
+<div class="paragraph">
+<p>Maximum number of threads to start for handling web server requests</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>50</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_webserver_password_file"><a class="link" href="#kudu-master_webserver_password_file"><code>--webserver_password_file</code></a></h4>
+<div class="paragraph">
+<p>(Optional) Location of .htpasswd file containing user names and hashed passwords for debug webserver authentication</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_enable_undo_delta_block_gc"><a class="link" href="#kudu-master_enable_undo_delta_block_gc"><code>--enable_undo_delta_block_gc</code></a></h4>
+<div class="paragraph">
+<p>Whether to enable undo delta block garbage collection. This only affects the undo delta block deletion background task, and doesn&#8217;t control whether compactions delete ancient history. To change what is considered ancient history use --tablet_history_max_age_sec</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_tablet_bloom_block_size"><a class="link" href="#kudu-master_tablet_bloom_block_size"><code>--tablet_bloom_block_size</code></a></h4>
+<div class="paragraph">
+<p>Block size of the bloom filters used for tablet keys.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>4096</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_tablet_bloom_target_fp_rate"><a class="link" href="#kudu-master_tablet_bloom_target_fp_rate"><code>--tablet_bloom_target_fp_rate</code></a></h4>
+<div class="paragraph">
+<p>Target false-positive rate (between 0 and 1) to size tablet key bloom filters. A lower false positive rate may reduce the number of disk seeks required in heavy insert workloads, at the expense of more space and RAM required for bloom filters.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>9.9999997473787516e-05</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_tablet_history_max_age_sec"><a class="link" href="#kudu-master_tablet_history_max_age_sec"><code>--tablet_history_max_age_sec</code></a></h4>
+<div class="paragraph">
+<p>Number of seconds to retain tablet history. Reads initiated at a snapshot that is older than this age will be rejected. To disable history removal, set to -1.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>900</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_undo_delta_block_gc_init_budget_millis"><a class="link" href="#kudu-master_undo_delta_block_gc_init_budget_millis"><code>--undo_delta_block_gc_init_budget_millis</code></a></h4>
+<div class="paragraph">
+<p>The maximum number of milliseconds we will spend initializing UNDO delta blocks per invocation of UndoDeltaBlockGCOp. Existing delta blocks must be initialized once per process startup to determine when they can be deleted.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,evolving</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_tablet_transaction_memory_limit_mb"><a class="link" href="#kudu-master_tablet_transaction_memory_limit_mb"><code>--tablet_transaction_memory_limit_mb</code></a></h4>
+<div class="paragraph">
+<p>Maximum amount of memory that may be consumed by all in-flight transactions belonging to a particular tablet. When this limit is reached, new transactions will be rejected and clients will be forced to retry them. If -1, transaction memory tracking is disabled.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>64</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_heartbeat_interval_ms"><a class="link" href="#kudu-master_heartbeat_interval_ms"><code>--heartbeat_interval_ms</code></a></h4>
+<div class="paragraph">
+<p>Interval at which the TS heartbeats to the master.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_heartbeat_max_failures_before_backoff"><a class="link" href="#kudu-master_heartbeat_max_failures_before_backoff"><code>--heartbeat_max_failures_before_backoff</code></a></h4>
+<div class="paragraph">
+<p>Maximum number of consecutive heartbeat failures until the Tablet Server backs off to the normal heartbeat interval, rather than retrying.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>3</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_heartbeat_rpc_timeout_ms"><a class="link" href="#kudu-master_heartbeat_rpc_timeout_ms"><code>--heartbeat_rpc_timeout_ms</code></a></h4>
+<div class="paragraph">
+<p>Timeout used for the TS&#8594;Master heartbeat RPCs.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>15000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_scanner_ttl_ms"><a class="link" href="#kudu-master_scanner_ttl_ms"><code>--scanner_ttl_ms</code></a></h4>
+<div class="paragraph">
+<p>Number of milliseconds of inactivity allowed for a scannerbefore it may be expired</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>60000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_scanner_batch_size_rows"><a class="link" href="#kudu-master_scanner_batch_size_rows"><code>--scanner_batch_size_rows</code></a></h4>
+<div class="paragraph">
+<p>The number of rows to batch for servicing scan requests.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>100</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_scanner_default_batch_size_bytes"><a class="link" href="#kudu-master_scanner_default_batch_size_bytes"><code>--scanner_default_batch_size_bytes</code></a></h4>
+<div class="paragraph">
+<p>The default size for batches of scan results</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1048576</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_scanner_max_batch_size_bytes"><a class="link" href="#kudu-master_scanner_max_batch_size_bytes"><code>--scanner_max_batch_size_bytes</code></a></h4>
+<div class="paragraph">
+<p>The maximum batch size that a client may request for scan results.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>8388608</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_scanner_max_wait_ms"><a class="link" href="#kudu-master_scanner_max_wait_ms"><code>--scanner_max_wait_ms</code></a></h4>
+<div class="paragraph">
+<p>The maximum amount of time (in milliseconds) we&#8217;ll hang a scanner thread waiting for safe time to advance or transactions to commit, even if its deadline allows waiting longer.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_num_tablets_to_copy_simultaneously"><a class="link" href="#kudu-master_num_tablets_to_copy_simultaneously"><code>--num_tablets_to_copy_simultaneously</code></a></h4>
+<div class="paragraph">
+<p>Number of threads available to copy tablets from remote servers.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_num_tablets_to_open_simultaneously"><a class="link" href="#kudu-master_num_tablets_to_open_simultaneously"><code>--num_tablets_to_open_simultaneously</code></a></h4>
+<div class="paragraph">
+<p>Number of threads available to open tablets during startup. If this is set to 0 (the default), then the number of bootstrap threads will be set based on the number of data directories. If the data directories are on some very fast storage device such as SSD or a RAID array, it may make sense to manually tune this.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_env_use_fsync"><a class="link" href="#kudu-master_env_use_fsync"><code>--env_use_fsync</code></a></h4>
+<div class="paragraph">
+<p>Use fsync(2) instead of fdatasync(2) for synchronizing dirty data to disk.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_suicide_on_eio"><a class="link" href="#kudu-master_suicide_on_eio"><code>--suicide_on_eio</code></a></h4>
+<div class="paragraph">
+<p>Kill the process if an I/O operation results in EIO</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_file_cache_expiry_period_ms"><a class="link" href="#kudu-master_file_cache_expiry_period_ms"><code>--file_cache_expiry_period_ms</code></a></h4>
+<div class="paragraph">
+<p>Period of time (in ms) between removing expired file cache descriptors</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>60000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_disable_core_dumps"><a class="link" href="#kudu-master_disable_core_dumps"><code>--disable_core_dumps</code></a></h4>
+<div class="paragraph">
+<p>Disable core dumps when this process crashes.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_redact"><a class="link" href="#kudu-master_redact"><code>--redact</code></a></h4>
+<div class="paragraph">
+<p>Comma-separated list of redactions. Supported options are 'flag', 'log', 'all', and 'none'. If 'flag' is specified, configuration flags which may include sensitive data will be redacted whenever server configuration is emitted. If 'log' is specified, row data will be redacted from log and error messages. If 'all' is specified, all of above will be redacted. If 'none' is specified, no redaction will occur.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>all</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_umask"><a class="link" href="#kudu-master_umask"><code>--umask</code></a></h4>
+<div class="paragraph">
+<p>The umask that will be used when creating files and directories. Permissions of top-level data directories will also be modified at start-up to conform to the given umask. Changing this value may enable unauthorized local users to read or modify data stored by Kudu.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>077</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_metrics_retirement_age_ms"><a class="link" href="#kudu-master_metrics_retirement_age_ms"><code>--metrics_retirement_age_ms</code></a></h4>
+<div class="paragraph">
+<p>The minimum number of milliseconds a metric will be kept for after it is no longer active. (Advanced option)</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>120000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,runtime</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_enable_minidumps"><a class="link" href="#kudu-master_enable_minidumps"><code>--enable_minidumps</code></a></h4>
+<div class="paragraph">
+<p>Whether to enable minidump generation upon process crash or SIGUSR1. Currently only supported on Linux systems.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_max_minidumps"><a class="link" href="#kudu-master_max_minidumps"><code>--max_minidumps</code></a></h4>
+<div class="paragraph">
+<p>Maximum number of minidump files to keep per daemon. Older files are removed first. Set to 0 to keep all minidump files.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>9</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_minidump_path"><a class="link" href="#kudu-master_minidump_path"><code>--minidump_path</code></a></h4>
+<div class="paragraph">
+<p>Directory to write minidump files to. This can be either an absolute path or a path relative to --log_dir. Each daemon will create an additional sub-directory to prevent naming conflicts and to make it easier to identify a crashing daemon. Minidump files contain crash-related information in a compressed format. Minidumps will be written when a daemon exits unexpectedly, for example on an unhandled exception or signal, or when a SIGUSR1 signal is sent to the process. Cannot be set to an empty value.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>minidumps</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_minidump_size_limit_hint_kb"><a class="link" href="#kudu-master_minidump_size_limit_hint_kb"><code>--minidump_size_limit_hint_kb</code></a></h4>
+<div class="paragraph">
+<p>Size limit hint for minidump files in KB. If a minidump exceeds this value, then breakpad will reduce the stack memory it collects for each thread from 8KB to 2KB. However it will always include the full stack memory for the first 20 threads, including the thread that crashed.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>20480</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_memory_limit_soft_percentage"><a class="link" href="#kudu-master_memory_limit_soft_percentage"><code>--memory_limit_soft_percentage</code></a></h4>
+<div class="paragraph">
+<p>Percentage of the hard memory limit that this daemon may consume before memory throttling of writes begins. The greater the excess, the higher the chance of throttling. In general, a lower soft limit leads to smoother write latencies but decreased throughput, and vice versa for a higher soft limit.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>80</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_memory_limit_warn_threshold_percentage"><a class="link" href="#kudu-master_memory_limit_warn_threshold_percentage"><code>--memory_limit_warn_threshold_percentage</code></a></h4>
+<div class="paragraph">
+<p>Percentage of the hard memory limit that this daemon may consume before WARNING level messages are periodically logged.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>98</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_memory_pressure_percentage"><a class="link" href="#kudu-master_memory_pressure_percentage"><code>--memory_pressure_percentage</code></a></h4>
+<div class="paragraph">
+<p>Percentage of the hard memory limit that this daemon may consume before flushing of in-memory data becomes prioritized.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>60</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_tcmalloc_max_free_bytes_percentage"><a class="link" href="#kudu-master_tcmalloc_max_free_bytes_percentage"><code>--tcmalloc_max_free_bytes_percentage</code></a></h4>
+<div class="paragraph">
+<p>Maximum percentage of the RSS that tcmalloc is allowed to use for reserved but unallocated memory.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_drop_log_memory"><a class="link" href="#kudu-master_drop_log_memory"><code>--drop_log_memory</code></a></h4>
+<div class="paragraph">
+<p>Drop in-memory buffers of log contents. Logs can grow very quickly and they are rarely read before they need to be evicted from memory. Instead, drop them from memory as soon as they are flushed to disk.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_log_backtrace_at"><a class="link" href="#kudu-master_log_backtrace_at"><code>--log_backtrace_at</code></a></h4>
+<div class="paragraph">
+<p>Emit a backtrace when logging at file:linenum.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_logbuflevel"><a class="link" href="#kudu-master_logbuflevel"><code>--logbuflevel</code></a></h4>
+<div class="paragraph">
+<p>Buffer log messages logged at this level or lower (-1 means don&#8217;t buffer; 0 means buffer INFO only; &#8230;&#8203;)</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_logbufsecs"><a class="link" href="#kudu-master_logbufsecs"><code>--logbufsecs</code></a></h4>
+<div class="paragraph">
+<p>Buffer log messages for at most this many seconds</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>5</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_logfile_mode"><a class="link" href="#kudu-master_logfile_mode"><code>--logfile_mode</code></a></h4>
+<div class="paragraph">
+<p>Log file mode/permissions.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>436</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+<hr>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_supported"><a class="link" href="#kudu-tserver_supported"><code>kudu-tserver</code> Flags</a></h2>
+<div class="sectionbody">
+<div class="sect2">
+<h3 id="kudu-tserver_stable"><a class="link" href="#kudu-tserver_stable">Stable Flags</a></h3>
+<div class="paragraph">
+<p>Flags tagged <code>stable</code> and not <code>advanced</code> are safe to use for common
+configuration tasks.</p>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_block_cache_capacity_mb"><a class="link" href="#kudu-tserver_block_cache_capacity_mb"><code>--block_cache_capacity_mb</code></a></h4>
+<div class="paragraph">
+<p>block cache capacity in MB</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>512</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_log_force_fsync_all"><a class="link" href="#kudu-tserver_log_force_fsync_all"><code>--log_force_fsync_all</code></a></h4>
+<div class="paragraph">
+<p>Whether the Log/WAL should explicitly call fsync() after each write.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_fs_data_dirs"><a class="link" href="#kudu-tserver_fs_data_dirs"><code>--fs_data_dirs</code></a></h4>
+<div class="paragraph">
+<p>Comma-separated list of directories with data blocks. If this is not specified, fs_wal_dir will be used as the sole data block directory.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_fs_wal_dir"><a class="link" href="#kudu-tserver_fs_wal_dir"><code>--fs_wal_dir</code></a></h4>
+<div class="paragraph">
+<p>Directory with write-ahead logs. If this is not specified, the program will not start. May be the same as fs_data_dirs</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_keytab_file"><a class="link" href="#kudu-tserver_keytab_file"><code>--keytab_file</code></a></h4>
+<div class="paragraph">
+<p>Path to the Kerberos Keytab file for this server. Specifying a keytab file will cause the server to kinit, and enable Kerberos to be used to authenticate RPC connections.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_rpc_bind_addresses"><a class="link" href="#kudu-tserver_rpc_bind_addresses"><code>--rpc_bind_addresses</code></a></h4>
+<div class="paragraph">
+<p>Comma-separated list of addresses to bind to for RPC connections. Currently, ephemeral ports (i.e. port 0) are not allowed.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0.0.0.0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_superuser_acl"><a class="link" href="#kudu-tserver_superuser_acl"><code>--superuser_acl</code></a></h4>
+<div class="paragraph">
+<p>The list of usernames to allow as super users, comma-separated. A '*' entry indicates that all authenticated users are allowed. If this is left unset or blank, the default behavior is that the identity of the daemon itself determines the superuser. If the daemon is logged in from a Keytab, then the local username from the Kerberos principal is used; otherwise, the local Unix username is used.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">sensitive,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_user_acl"><a class="link" href="#kudu-tserver_user_acl"><code>--user_acl</code></a></h4>
+<div class="paragraph">
+<p>The list of usernames who may access the cluster, comma-separated. A '*' entry indicates that all authenticated users are allowed.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>*</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">sensitive,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_webserver_certificate_file"><a class="link" href="#kudu-tserver_webserver_certificate_file"><code>--webserver_certificate_file</code></a></h4>
+<div class="paragraph">
+<p>The location of the debug webserver&#8217;s SSL certificate file, in PEM format. If empty, webserver SSL support is not enabled. If --webserver_private_key_file is set, this option must be set as well.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_webserver_port"><a class="link" href="#kudu-tserver_webserver_port"><code>--webserver_port</code></a></h4>
+<div class="paragraph">
+<p>Port to bind to for the web server</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_webserver_private_key_file"><a class="link" href="#kudu-tserver_webserver_private_key_file"><code>--webserver_private_key_file</code></a></h4>
+<div class="paragraph">
+<p>The full path to the private key used as a counterpart to the public key contained in --webserver_certificate_file. If --webserver_certificate_file is set, this option must be set as well.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_webserver_private_key_password_cmd"><a class="link" href="#kudu-tserver_webserver_private_key_password_cmd"><code>--webserver_private_key_password_cmd</code></a></h4>
+<div class="paragraph">
+<p>A Unix command whose output returns the password used to decrypt the Webserver&#8217;s certificate private key file specified in --webserver_private_key_file. If the PEM key file is not password-protected, this command will not be invoked. The output of the command will be truncated to 1024 bytes, and then all trailing whitespace will be trimmed before it is used to decrypt the private key</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_tserver_master_addrs"><a class="link" href="#kudu-tserver_tserver_master_addrs"><code>--tserver_master_addrs</code></a></h4>
+<div class="paragraph">
+<p>Comma separated addresses of the masters which the tablet server should connect to. The masters do not read this flag&#8201;&#8212;&#8201;configure the masters separately using 'rpc_bind_addresses'.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>127.0.0.1:7051</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_log_filename"><a class="link" href="#kudu-tserver_log_filename"><code>--log_filename</code></a></h4>
+<div class="paragraph">
+<p>Prefix of log filename - full path is &lt;log_dir&gt;/&lt;log_filename&gt;.[INFO|WARN|ERROR|FATAL]</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_maintenance_manager_num_threads"><a class="link" href="#kudu-tserver_maintenance_manager_num_threads"><code>--maintenance_manager_num_threads</code></a></h4>
+<div class="paragraph">
+<p>Size of the maintenance manager thread pool. For spinning disks, the number of threads should not be above the number of devices.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_memory_limit_hard_bytes"><a class="link" href="#kudu-tserver_memory_limit_hard_bytes"><code>--memory_limit_hard_bytes</code></a></h4>
+<div class="paragraph">
+<p>Maximum amount of memory this daemon should use, in bytes. A value of 0 autosizes based on the total system memory. A value of -1 disables all memory limiting.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_flagfile"><a class="link" href="#kudu-tserver_flagfile"><code>--flagfile</code></a></h4>
+<div class="paragraph">
+<p>load flags from file</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_help"><a class="link" href="#kudu-tserver_help"><code>--help</code></a></h4>
+<div class="paragraph">
+<p>show help on all flags [tip: all flags can have two dashes]</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_version"><a class="link" href="#kudu-tserver_version"><code>--version</code></a></h4>
+<div class="paragraph">
+<p>show version and build info and exit</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_colorlogtostderr"><a class="link" href="#kudu-tserver_colorlogtostderr"><code>--colorlogtostderr</code></a></h4>
+<div class="paragraph">
+<p>color messages logged to stderr (if supported by terminal)</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_log_dir"><a class="link" href="#kudu-tserver_log_dir"><code>--log_dir</code></a></h4>
+<div class="paragraph">
+<p>If specified, logfiles are written into this directory instead of the default logging directory.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_logtostderr"><a class="link" href="#kudu-tserver_logtostderr"><code>--logtostderr</code></a></h4>
+<div class="paragraph">
+<p>log messages go to stderr instead of logfiles</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_max_log_size"><a class="link" href="#kudu-tserver_max_log_size"><code>--max_log_size</code></a></h4>
+<div class="paragraph">
+<p>approx. maximum log file size (in MB). A value of 0 will be silently overridden to 1.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1800</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_stable_advanced"><a class="link" href="#kudu-tserver_stable_advanced">Stable, Advanced Flags</a></h3>
+<div class="paragraph">
+<p>Flags tagged <code>stable</code> and <code>advanced</code> are supported, but should be considered
+"expert" options and should be used carefully and after thorough testing.</p>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_enable_process_lifetime_heap_profiling"><a class="link" href="#kudu-tserver_enable_process_lifetime_heap_profiling"><code>--enable_process_lifetime_heap_profiling</code></a></h4>
+<div class="paragraph">
+<p>Enables heap profiling for the lifetime of the process. Profile output will be stored in the directory specified by -heap_profile_path. Enabling this option will disable the on-demand/remote server profile handlers.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_heap_profile_path"><a class="link" href="#kudu-tserver_heap_profile_path"><code>--heap_profile_path</code></a></h4>
+<div class="paragraph">
+<p>Output path to store heap profiles. If not set profiles are stored in /tmp/&lt;process-name&gt;.&lt;pid&gt;.&lt;n&gt;.heap.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_unlock_experimental_flags"><a class="link" href="#kudu-tserver_unlock_experimental_flags"><code>--unlock_experimental_flags</code></a></h4>
+<div class="paragraph">
+<p>Unlock flags marked as 'experimental'. These flags are not guaranteed to be maintained across releases of Kudu, and may enable features or behavior known to be unstable. Use at your own risk.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_unlock_unsafe_flags"><a class="link" href="#kudu-tserver_unlock_unsafe_flags"><code>--unlock_unsafe_flags</code></a></h4>
+<div class="paragraph">
+<p>Unlock flags marked as 'unsafe'. These flags are not guaranteed to be maintained across releases of Kudu, and enable features or behavior known to be unsafe. Use at your own risk.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_fromenv"><a class="link" href="#kudu-tserver_fromenv"><code>--fromenv</code></a></h4>
+<div class="paragraph">
+<p>set flags from the environment [use 'export FLAGS_flag1=value']</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_tryfromenv"><a class="link" href="#kudu-tserver_tryfromenv"><code>--tryfromenv</code></a></h4>
+<div class="paragraph">
+<p>set flags from the environment if present</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_undefok"><a class="link" href="#kudu-tserver_undefok"><code>--undefok</code></a></h4>
+<div class="paragraph">
+<p>comma-separated list of flag names that it is okay to specify on the command line even if the program does not define a flag with that name.  IMPORTANT: flags in this list that have arguments MUST use the flag=value format</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_helpmatch"><a class="link" href="#kudu-tserver_helpmatch"><code>--helpmatch</code></a></h4>
+<div class="paragraph">
+<p>show help on modules whose name contains the specified substr</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_helpon"><a class="link" href="#kudu-tserver_helpon"><code>--helpon</code></a></h4>
+<div class="paragraph">
+<p>show help on the modules named by this flag value</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_helppackage"><a class="link" href="#kudu-tserver_helppackage"><code>--helppackage</code></a></h4>
+<div class="paragraph">
+<p>show help on all modules in the main package</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_helpshort"><a class="link" href="#kudu-tserver_helpshort"><code>--helpshort</code></a></h4>
+<div class="paragraph">
+<p>show help on only the main module for this program</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_helpxml"><a class="link" href="#kudu-tserver_helpxml"><code>--helpxml</code></a></h4>
+<div class="paragraph">
+<p>produce an xml version of help</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_log_link"><a class="link" href="#kudu-tserver_log_link"><code>--log_link</code></a></h4>
+<div class="paragraph">
+<p>Put additional links to the log files in this directory</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_log_prefix"><a class="link" href="#kudu-tserver_log_prefix"><code>--log_prefix</code></a></h4>
+<div class="paragraph">
+<p>Prepend the log prefix to the start of each log line</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_minloglevel"><a class="link" href="#kudu-tserver_minloglevel"><code>--minloglevel</code></a></h4>
+<div class="paragraph">
+<p>Messages logged at a lower level than this don&#8217;t actually get logged anywhere</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_stderrthreshold"><a class="link" href="#kudu-tserver_stderrthreshold"><code>--stderrthreshold</code></a></h4>
+<div class="paragraph">
+<p>log messages at or above this level are copied to stderr in addition to logfiles.  This flag obsoletes --alsologtostderr.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>2</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_stop_logging_if_full_disk"><a class="link" href="#kudu-tserver_stop_logging_if_full_disk"><code>--stop_logging_if_full_disk</code></a></h4>
+<div class="paragraph">
+<p>Stop attempting to log to disk if the disk is full.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_symbolize_stacktrace"><a class="link" href="#kudu-tserver_symbolize_stacktrace"><code>--symbolize_stacktrace</code></a></h4>
+<div class="paragraph">
+<p>Symbolize the stack trace in the tombstone</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,runtime,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_v"><a class="link" href="#kudu-tserver_v"><code>--v</code></a></h4>
+<div class="paragraph">
+<p>Show all VLOG(m) messages for m &#8656; this. Overridable by --vmodule.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_vmodule"><a class="link" href="#kudu-tserver_vmodule"><code>--vmodule</code></a></h4>
+<div class="paragraph">
+<p>per-module verbose level. Argument is a comma-separated list of &lt;module name&gt;=&lt;log level&gt;. &lt;module name&gt; is a glob pattern, matched against the filename base (that is, name ignoring .cc/.h./-inl.h). &lt;log level&gt; overrides any value given by --v.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_evolving"><a class="link" href="#kudu-tserver_evolving">Evolving Flags</a></h3>
+<div class="paragraph">
+<p>Flags tagged <code>evolving</code> (or not tagged with a stability tag) are not yet
+considered final, and while they may be useful for tuning, they are subject to
+being changed or removed without notice.</p>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_cfile_verify_checksums"><a class="link" href="#kudu-tserver_cfile_verify_checksums"><code>--cfile_verify_checksums</code></a></h4>
+<div class="paragraph">
+<p>Verify the checksum for each block on read if one exists</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_cfile_default_block_size"><a class="link" href="#kudu-tserver_cfile_default_block_size"><code>--cfile_default_block_size</code></a></h4>
+<div class="paragraph">
+<p>The default block size to use in cfiles</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>262144</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_cfile_default_compression_codec"><a class="link" href="#kudu-tserver_cfile_default_compression_codec"><code>--cfile_default_compression_codec</code></a></h4>
+<div class="paragraph">
+<p>Default cfile block compression codec.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>none</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_cfile_write_checksums"><a class="link" href="#kudu-tserver_cfile_write_checksums"><code>--cfile_write_checksums</code></a></h4>
+<div class="paragraph">
+<p>Write CRC32 checksums for each block</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_consensus_rpc_timeout_ms"><a class="link" href="#kudu-tserver_consensus_rpc_timeout_ms"><code>--consensus_rpc_timeout_ms</code></a></h4>
+<div class="paragraph">
+<p>Timeout used for all consensus internal RPC communications.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_consensus_max_batch_size_bytes"><a class="link" href="#kudu-tserver_consensus_max_batch_size_bytes"><code>--consensus_max_batch_size_bytes</code></a></h4>
+<div class="paragraph">
+<p>The maximum per-tablet RPC batch size when updating peers.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1048576</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_follower_unavailable_considered_failed_sec"><a class="link" href="#kudu-tserver_follower_unavailable_considered_failed_sec"><code>--follower_unavailable_considered_failed_sec</code></a></h4>
+<div class="paragraph">
+<p>Seconds that a leader is unable to successfully heartbeat to a follower after which the follower is considered to be failed and evicted from the config.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>300</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_fs_wal_dir_reserved_bytes"><a class="link" href="#kudu-tserver_fs_wal_dir_reserved_bytes"><code>--fs_wal_dir_reserved_bytes</code></a></h4>
+<div class="paragraph">
+<p>Number of bytes to reserve on the log directory filesystem for non-Kudu usage. The default, which is represented by -1, is that 1% of the disk space on each disk will be reserved. Any other value specified represents the number of bytes reserved and must be greater than or equal to 0. Explicit percentages to reserve are not currently supported</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>-1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving,runtime</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_group_commit_queue_size_bytes"><a class="link" href="#kudu-tserver_group_commit_queue_size_bytes"><code>--group_commit_queue_size_bytes</code></a></h4>
+<div class="paragraph">
+<p>Maximum size of the group commit queue in bytes</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>4194304</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_log_min_segments_to_retain"><a class="link" href="#kudu-tserver_log_min_segments_to_retain"><code>--log_min_segments_to_retain</code></a></h4>
+<div class="paragraph">
+<p>The minimum number of past log segments to keep at all times, regardless of what is required for durability. Must be at least 1.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,runtime</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_global_log_cache_size_limit_mb"><a class="link" href="#kudu-tserver_global_log_cache_size_limit_mb"><code>--global_log_cache_size_limit_mb</code></a></h4>
+<div class="paragraph">
+<p>Server-wide version of 'log_cache_size_limit_mb'. The total memory used for caching log entries across all tablets is kept under this threshold.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1024</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_log_cache_size_limit_mb"><a class="link" href="#kudu-tserver_log_cache_size_limit_mb"><code>--log_cache_size_limit_mb</code></a></h4>
+<div class="paragraph">
+<p>The total per-tablet size of consensus entries which may be kept in memory. The log cache attempts to keep all entries which have not yet been replicated to all followers in memory, but if the total size of those entries exceeds this limit within an individual tablet, the oldest will be evicted.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>128</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_log_async_preallocate_segments"><a class="link" href="#kudu-tserver_log_async_preallocate_segments"><code>--log_async_preallocate_segments</code></a></h4>
+<div class="paragraph">
+<p>Whether the WAL segments preallocation should happen asynchronously</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_log_preallocate_segments"><a class="link" href="#kudu-tserver_log_preallocate_segments"><code>--log_preallocate_segments</code></a></h4>
+<div class="paragraph">
+<p>Whether the WAL should preallocate the entire segment before writing to it</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_log_segment_size_mb"><a class="link" href="#kudu-tserver_log_segment_size_mb"><code>--log_segment_size_mb</code></a></h4>
+<div class="paragraph">
+<p>The default size for log segments, in MB</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>8</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_evict_failed_followers"><a class="link" href="#kudu-tserver_evict_failed_followers"><code>--evict_failed_followers</code></a></h4>
+<div class="paragraph">
+<p>Whether to evict followers from the Raft config that have fallen too far behind the leader&#8217;s log to catch up normally or have been unreachable by the leader for longer than follower_unavailable_considered_failed_sec</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_leader_failure_max_missed_heartbeat_periods"><a class="link" href="#kudu-tserver_leader_failure_max_missed_heartbeat_periods"><code>--leader_failure_max_missed_heartbeat_periods</code></a></h4>
+<div class="paragraph">
+<p>Maximum heartbeat periods that the leader can fail to heartbeat in before we consider the leader to be failed. The total failure timeout in milliseconds is raft_heartbeat_interval_ms times leader_failure_max_missed_heartbeat_periods. The value passed to this flag may be fractional.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>3</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_raft_heartbeat_interval_ms"><a class="link" href="#kudu-tserver_raft_heartbeat_interval_ms"><code>--raft_heartbeat_interval_ms</code></a></h4>
+<div class="paragraph">
+<p>The heartbeat interval for Raft replication. The leader produces heartbeats to followers at this interval. The followers expect a heartbeat at this interval and consider a leader to have failed if it misses several in a row.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>500</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_safe_time_advancement_without_writes"><a class="link" href="#kudu-tserver_safe_time_advancement_without_writes"><code>--safe_time_advancement_without_writes</code></a></h4>
+<div class="paragraph">
+<p>Whether to enable the advancement of "safe" time in the absense of write operations</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_block_manager_max_open_files"><a class="link" href="#kudu-tserver_block_manager_max_open_files"><code>--block_manager_max_open_files</code></a></h4>
+<div class="paragraph">
+<p>Maximum number of open file descriptors to be used for data blocks. If -1, Kudu will use 40% of its resource limit as per getrlimit(). This is a soft limit. It is an error to use a value of 0.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>-1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_fs_data_dirs_full_disk_cache_seconds"><a class="link" href="#kudu-tserver_fs_data_dirs_full_disk_cache_seconds"><code>--fs_data_dirs_full_disk_cache_seconds</code></a></h4>
+<div class="paragraph">
+<p>Number of seconds we cache the full-disk status in the block manager. During this time, writes to the corresponding root path will not be attempted.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>30</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_fs_data_dirs_reserved_bytes"><a class="link" href="#kudu-tserver_fs_data_dirs_reserved_bytes"><code>--fs_data_dirs_reserved_bytes</code></a></h4>
+<div class="paragraph">
+<p>Number of bytes to reserve on each data directory filesystem for non-Kudu usage. The default, which is represented by -1, is that 1% of the disk space on each disk will be reserved. Any other value specified represents the number of bytes reserved and must be greater than or equal to 0. Explicit percentages to reserve are not currently supported</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>-1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving,runtime</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_block_manager"><a class="link" href="#kudu-tserver_block_manager"><code>--block_manager</code></a></h4>
+<div class="paragraph">
+<p>Which block manager to use for storage. Valid options are 'file' and 'log'.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>log</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_log_container_excess_space_before_cleanup_fraction"><a class="link" href="#kudu-tserver_log_container_excess_space_before_cleanup_fraction"><code>--log_container_excess_space_before_cleanup_fraction</code></a></h4>
+<div class="paragraph">
+<p>Additional fraction of a log container&#8217;s calculated size that must be consumed on disk before the container is considered to be inconsistent and subject to excess space cleanup at block manager startup.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0.10000000000000001</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_log_container_max_blocks"><a class="link" href="#kudu-tserver_log_container_max_blocks"><code>--log_container_max_blocks</code></a></h4>
+<div class="paragraph">
+<p>Maximum number of blocks (soft) of a log container. Use 0 for no limit. Use -1 for no limit except in the case of a kernel bug with hole punching on ext4 (see KUDU-1508 for details).</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>-1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_log_container_max_size"><a class="link" href="#kudu-tserver_log_container_max_size"><code>--log_container_max_size</code></a></h4>
+<div class="paragraph">
+<p>Maximum size (soft) of a log container</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">uint64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10737418240</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_log_container_preallocate_bytes"><a class="link" href="#kudu-tserver_log_container_preallocate_bytes"><code>--log_container_preallocate_bytes</code></a></h4>
+<div class="paragraph">
+<p>Number of bytes to preallocate in a log container when creating new blocks. Set to 0 to disable preallocation</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">uint64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>33554432</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_rpc_acceptor_listen_backlog"><a class="link" href="#kudu-tserver_rpc_acceptor_listen_backlog"><code>--rpc_acceptor_listen_backlog</code></a></h4>
+<div class="paragraph">
+<p>Socket backlog parameter used when listening for RPC connections. This defines the maximum length to which the queue of pending TCP connections inbound to the RPC server may grow. If a connection request arrives when the queue is full, the client may receive an error. Higher values may help the server ride over bursts of new inbound connection requests.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>128</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_rpc_authentication"><a class="link" href="#kudu-tserver_rpc_authentication"><code>--rpc_authentication</code></a></h4>
+<div class="paragraph">
+<p>Whether to require RPC connections to authenticate. Must be one of 'disabled', 'optional', or 'required'. If 'optional', authentication will be used when the remote end supports it. If 'required', connections which are not able to authenticate (because the remote end lacks support) are rejected. Secure clusters should use 'required'.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>optional</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_rpc_default_keepalive_time_ms"><a class="link" href="#kudu-tserver_rpc_default_keepalive_time_ms"><code>--rpc_default_keepalive_time_ms</code></a></h4>
+<div class="paragraph">
+<p>If an RPC connection from a client is idle for this amount of time, the server will disconnect the client.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>65000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_rpc_encryption"><a class="link" href="#kudu-tserver_rpc_encryption"><code>--rpc_encryption</code></a></h4>
+<div class="paragraph">
+<p>Whether to require RPC connections to be encrypted. Must be one of 'disabled', 'optional', or 'required'. If 'optional', encryption will be used when the remote end supports it. If 'required', connections which are not able to use encryption (because the remote end lacks support) are rejected. If 'disabled', encryption will not be used, and RPC authentication (--rpc_authentication) must also be disabled as well. Secure clusters should use 'required'.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>optional</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_rpc_encrypt_loopback_connections"><a class="link" href="#kudu-tserver_rpc_encrypt_loopback_connections"><code>--rpc_encrypt_loopback_connections</code></a></h4>
+<div class="paragraph">
+<p>Whether to encrypt data transfer on RPC connections that stay within a single host. Encryption here is likely to offer no additional security benefit since only a local 'root' user could intercept the traffic, and wire encryption does not suitably protect against such an attacker.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_rpc_callback_max_cycles"><a class="link" href="#kudu-tserver_rpc_callback_max_cycles"><code>--rpc_callback_max_cycles</code></a></h4>
+<div class="paragraph">
+<p>The maximum number of cycles for which an RPC callback should be allowed to run without emitting a warning. (Advanced debugging option)</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>100000000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_rpc_negotiation_timeout_ms"><a class="link" href="#kudu-tserver_rpc_negotiation_timeout_ms"><code>--rpc_negotiation_timeout_ms</code></a></h4>
+<div class="paragraph">
+<p>Timeout for negotiating an RPC connection.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>3000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_remember_clients_ttl_ms"><a class="link" href="#kudu-tserver_remember_clients_ttl_ms"><code>--remember_clients_ttl_ms</code></a></h4>
+<div class="paragraph">
+<p>Maximum amount of time, in milliseconds, the server "remembers" a client for the purpose of caching its responses. After this period without hearing from it, the client is no longer remembered and the memory occupied by its responses is reclaimed. Retries of requests older than 'remember_clients_ttl_ms' are treated as new ones.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>3600000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_remember_responses_ttl_ms"><a class="link" href="#kudu-tserver_remember_responses_ttl_ms"><code>--remember_responses_ttl_ms</code></a></h4>
+<div class="paragraph">
+<p>Maximum amount of time, in milliseconds, the server "remembers" a response to a specific request for a client. After this period has elapsed, the response may have been garbage collected and the client might get a response indicating the request is STALE.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>600000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_rpc_dump_all_traces"><a class="link" href="#kudu-tserver_rpc_dump_all_traces"><code>--rpc_dump_all_traces</code></a></h4>
+<div class="paragraph">
+<p>If true, dump all RPC traces at INFO level</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_trusted_subnets"><a class="link" href="#kudu-tserver_trusted_subnets"><code>--trusted_subnets</code></a></h4>
+<div class="paragraph">
+<p>A trusted subnet whitelist. If set explicitly, all unauthenticated or unencrypted connections are prohibited except the ones from the specified address blocks. Otherwise, private network (127.0.0.0/8, etc.) and local subnets of all local network interfaces will be used. Set it to '0.0.0.0/0' to allow unauthenticated/unencrypted connections from all remote IP addresses. However, if network access is not otherwise restricted by a firewall, malicious users may be able to gain unauthorized access.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>127.0.0.0/8,10.0.0.0/8,172.16.0.0/12,192.168.0.0/16,169.254.0.0/16</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_rpc_max_message_size"><a class="link" href="#kudu-tserver_rpc_max_message_size"><code>--rpc_max_message_size</code></a></h4>
+<div class="paragraph">
+<p>The maximum size of a message that any RPC that the server will accept. Must be at least 1MB.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>52428800</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_rpc_tls_ciphers"><a class="link" href="#kudu-tserver_rpc_tls_ciphers"><code>--rpc_tls_ciphers</code></a></h4>
+<div class="paragraph">
+<p>The cipher suite preferences to use for TLS-secured RPC connections. Uses the OpenSSL cipher preference list format. See man (1) ciphers for more information.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256AES256-GCM-SHA384:AES128-GCM-SHA256:AES256-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_rpc_tls_min_protocol"><a class="link" href="#kudu-tserver_rpc_tls_min_protocol"><code>--rpc_tls_min_protocol</code></a></h4>
+<div class="paragraph">
+<p>The minimum protocol version to allow when for securing RPC connections with TLS. May be one of 'TLSv1', 'TLSv1.1', or 'TLSv1.2'.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>TLSv1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_web_log_bytes"><a class="link" href="#kudu-tserver_web_log_bytes"><code>--web_log_bytes</code></a></h4>
+<div class="paragraph">
+<p>The maximum number of bytes to display on the debug webserver&#8217;s log page</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1048576</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_max_clock_sync_error_usec"><a class="link" href="#kudu-tserver_max_clock_sync_error_usec"><code>--max_clock_sync_error_usec</code></a></h4>
+<div class="paragraph">
+<p>Maximum allowed clock synchronization error as reported by NTP before the server will abort.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10000000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_rpc_advertised_addresses"><a class="link" href="#kudu-tserver_rpc_advertised_addresses"><code>--rpc_advertised_addresses</code></a></h4>
+<div class="paragraph">
+<p>Comma-separated list of addresses to advertise externally for RPC connections. Ephemeral ports (i.e. port 0) are not allowed. This should be configured when the locally bound RPC addresses specified in --rpc_bind_addresses are not externally resolvable, for example, if Kudu is deployed in a container.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_rpc_num_acceptors_per_address"><a class="link" href="#kudu-tserver_rpc_num_acceptors_per_address"><code>--rpc_num_acceptors_per_address</code></a></h4>
+<div class="paragraph">
+<p>Number of RPC acceptor threads for each bound address</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_rpc_num_service_threads"><a class="link" href="#kudu-tserver_rpc_num_service_threads"><code>--rpc_num_service_threads</code></a></h4>
+<div class="paragraph">
+<p>Number of RPC worker threads to run</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_rpc_service_queue_length"><a class="link" href="#kudu-tserver_rpc_service_queue_length"><code>--rpc_service_queue_length</code></a></h4>
+<div class="paragraph">
+<p>Default length of queue for incoming RPC requests</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>50</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_max_negotiation_threads"><a class="link" href="#kudu-tserver_max_negotiation_threads"><code>--max_negotiation_threads</code></a></h4>
+<div class="paragraph">
+<p>Maximum number of connection negotiation threads.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>50</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_min_negotiation_threads"><a class="link" href="#kudu-tserver_min_negotiation_threads"><code>--min_negotiation_threads</code></a></h4>
+<div class="paragraph">
+<p>Minimum number of connection negotiation threads.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_num_reactor_threads"><a class="link" href="#kudu-tserver_num_reactor_threads"><code>--num_reactor_threads</code></a></h4>
+<div class="paragraph">
+<p>Number of libev reactor threads to start.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>4</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_webserver_enabled"><a class="link" href="#kudu-tserver_webserver_enabled"><code>--webserver_enabled</code></a></h4>
+<div class="paragraph">
+<p>Whether to enable the web server on this daemon. NOTE: disabling the web server is also likely to prevent monitoring systems from properly capturing metrics.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_metrics_log_interval_ms"><a class="link" href="#kudu-tserver_metrics_log_interval_ms"><code>--metrics_log_interval_ms</code></a></h4>
+<div class="paragraph">
+<p>Interval (in milliseconds) at which the server will dump its metrics to a local log file. The log files are located in the same directory as specified by the -log_dir flag. If this is not a positive value, then metrics logging will be disabled.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_webserver_max_post_length_bytes"><a class="link" href="#kudu-tserver_webserver_max_post_length_bytes"><code>--webserver_max_post_length_bytes</code></a></h4>
+<div class="paragraph">
+<p>The maximum length of a POST request that will be accepted by the embedded web server.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1048576</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_webserver_x_frame_options"><a class="link" href="#kudu-tserver_webserver_x_frame_options"><code>--webserver_x_frame_options</code></a></h4>
+<div class="paragraph">
+<p>The webserver will add an 'X-Frame-Options' HTTP header with this value to all responses. This can help prevent clickjacking attacks.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>DENY</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_webserver_advertised_addresses"><a class="link" href="#kudu-tserver_webserver_advertised_addresses"><code>--webserver_advertised_addresses</code></a></h4>
+<div class="paragraph">
+<p>Comma-separated list of addresses to advertise externally for HTTP(S) connections. Ephemeral ports (i.e. port 0) are not allowed. This should be configured when the locally bound webserver address specified in --webserver_interface and --webserver_port are not externally resolvable, for example, if Kudu is deployed in a container.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_webserver_authentication_domain"><a class="link" href="#kudu-tserver_webserver_authentication_domain"><code>--webserver_authentication_domain</code></a></h4>
+<div class="paragraph">
+<p>Domain used for debug webserver authentication</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_webserver_doc_root"><a class="link" href="#kudu-tserver_webserver_doc_root"><code>--webserver_doc_root</code></a></h4>
+<div class="paragraph">
+<p>Files under &lt;webserver_doc_root&gt; are accessible via the debug webserver. Defaults to $KUDU_HOME/www, or if $KUDU_HOME is not set, disables the document root</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_webserver_enable_doc_root"><a class="link" href="#kudu-tserver_webserver_enable_doc_root"><code>--webserver_enable_doc_root</code></a></h4>
+<div class="paragraph">
+<p>If true, webserver may serve static files from the webserver_doc_root</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_webserver_interface"><a class="link" href="#kudu-tserver_webserver_interface"><code>--webserver_interface</code></a></h4>
+<div class="paragraph">
+<p>Interface to start debug webserver on. If blank, webserver binds to 0.0.0.0</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_webserver_num_worker_threads"><a class="link" href="#kudu-tserver_webserver_num_worker_threads"><code>--webserver_num_worker_threads</code></a></h4>
+<div class="paragraph">
+<p>Maximum number of threads to start for handling web server requests</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>50</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_webserver_password_file"><a class="link" href="#kudu-tserver_webserver_password_file"><code>--webserver_password_file</code></a></h4>
+<div class="paragraph">
+<p>(Optional) Location of .htpasswd file containing user names and hashed passwords for debug webserver authentication</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_enable_undo_delta_block_gc"><a class="link" href="#kudu-tserver_enable_undo_delta_block_gc"><code>--enable_undo_delta_block_gc</code></a></h4>
+<div class="paragraph">
+<p>Whether to enable undo delta block garbage collection. This only affects the undo delta block deletion background task, and doesn&#8217;t control whether compactions delete ancient history. To change what is considered ancient history use --tablet_history_max_age_sec</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_tablet_bloom_block_size"><a class="link" href="#kudu-tserver_tablet_bloom_block_size"><code>--tablet_bloom_block_size</code></a></h4>
+<div class="paragraph">
+<p>Block size of the bloom filters used for tablet keys.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>4096</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_tablet_bloom_target_fp_rate"><a class="link" href="#kudu-tserver_tablet_bloom_target_fp_rate"><code>--tablet_bloom_target_fp_rate</code></a></h4>
+<div class="paragraph">
+<p>Target false-positive rate (between 0 and 1) to size tablet key bloom filters. A lower false positive rate may reduce the number of disk seeks required in heavy insert workloads, at the expense of more space and RAM required for bloom filters.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>9.9999997473787516e-05</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_tablet_history_max_age_sec"><a class="link" href="#kudu-tserver_tablet_history_max_age_sec"><code>--tablet_history_max_age_sec</code></a></h4>
+<div class="paragraph">
+<p>Number of seconds to retain tablet history. Reads initiated at a snapshot that is older than this age will be rejected. To disable history removal, set to -1.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>900</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_undo_delta_block_gc_init_budget_millis"><a class="link" href="#kudu-tserver_undo_delta_block_gc_init_budget_millis"><code>--undo_delta_block_gc_init_budget_millis</code></a></h4>
+<div class="paragraph">
+<p>The maximum number of milliseconds we will spend initializing UNDO delta blocks per invocation of UndoDeltaBlockGCOp. Existing delta blocks must be initialized once per process startup to determine when they can be deleted.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,evolving</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_tablet_transaction_memory_limit_mb"><a class="link" href="#kudu-tserver_tablet_transaction_memory_limit_mb"><code>--tablet_transaction_memory_limit_mb</code></a></h4>
+<div class="paragraph">
+<p>Maximum amount of memory that may be consumed by all in-flight transactions belonging to a particular tablet. When this limit is reached, new transactions will be rejected and clients will be forced to retry them. If -1, transaction memory tracking is disabled.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>64</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_heartbeat_interval_ms"><a class="link" href="#kudu-tserver_heartbeat_interval_ms"><code>--heartbeat_interval_ms</code></a></h4>
+<div class="paragraph">
+<p>Interval at which the TS heartbeats to the master.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_heartbeat_max_failures_before_backoff"><a class="link" href="#kudu-tserver_heartbeat_max_failures_before_backoff"><code>--heartbeat_max_failures_before_backoff</code></a></h4>
+<div class="paragraph">
+<p>Maximum number of consecutive heartbeat failures until the Tablet Server backs off to the normal heartbeat interval, rather than retrying.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>3</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_heartbeat_rpc_timeout_ms"><a class="link" href="#kudu-tserver_heartbeat_rpc_timeout_ms"><code>--heartbeat_rpc_timeout_ms</code></a></h4>
+<div class="paragraph">
+<p>Timeout used for the TS&#8594;Master heartbeat RPCs.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>15000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_scanner_ttl_ms"><a class="link" href="#kudu-tserver_scanner_ttl_ms"><code>--scanner_ttl_ms</code></a></h4>
+<div class="paragraph">
+<p>Number of milliseconds of inactivity allowed for a scannerbefore it may be expired</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>60000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_scanner_batch_size_rows"><a class="link" href="#kudu-tserver_scanner_batch_size_rows"><code>--scanner_batch_size_rows</code></a></h4>
+<div class="paragraph">
+<p>The number of rows to batch for servicing scan requests.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>100</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_scanner_default_batch_size_bytes"><a class="link" href="#kudu-tserver_scanner_default_batch_size_bytes"><code>--scanner_default_batch_size_bytes</code></a></h4>
+<div class="paragraph">
+<p>The default size for batches of scan results</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1048576</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_scanner_max_batch_size_bytes"><a class="link" href="#kudu-tserver_scanner_max_batch_size_bytes"><code>--scanner_max_batch_size_bytes</code></a></h4>
+<div class="paragraph">
+<p>The maximum batch size that a client may request for scan results.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>8388608</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_scanner_max_wait_ms"><a class="link" href="#kudu-tserver_scanner_max_wait_ms"><code>--scanner_max_wait_ms</code></a></h4>
+<div class="paragraph">
+<p>The maximum amount of time (in milliseconds) we&#8217;ll hang a scanner thread waiting for safe time to advance or transactions to commit, even if its deadline allows waiting longer.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_num_tablets_to_copy_simultaneously"><a class="link" href="#kudu-tserver_num_tablets_to_copy_simultaneously"><code>--num_tablets_to_copy_simultaneously</code></a></h4>
+<div class="paragraph">
+<p>Number of threads available to copy tablets from remote servers.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_num_tablets_to_open_simultaneously"><a class="link" href="#kudu-tserver_num_tablets_to_open_simultaneously"><code>--num_tablets_to_open_simultaneously</code></a></h4>
+<div class="paragraph">
+<p>Number of threads available to open tablets during startup. If this is set to 0 (the default), then the number of bootstrap threads will be set based on the number of data directories. If the data directories are on some very fast storage device such as SSD or a RAID array, it may make sense to manually tune this.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_env_use_fsync"><a class="link" href="#kudu-tserver_env_use_fsync"><code>--env_use_fsync</code></a></h4>
+<div class="paragraph">
+<p>Use fsync(2) instead of fdatasync(2) for synchronizing dirty data to disk.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_suicide_on_eio"><a class="link" href="#kudu-tserver_suicide_on_eio"><code>--suicide_on_eio</code></a></h4>
+<div class="paragraph">
+<p>Kill the process if an I/O operation results in EIO</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_file_cache_expiry_period_ms"><a class="link" href="#kudu-tserver_file_cache_expiry_period_ms"><code>--file_cache_expiry_period_ms</code></a></h4>
+<div class="paragraph">
+<p>Period of time (in ms) between removing expired file cache descriptors</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>60000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_disable_core_dumps"><a class="link" href="#kudu-tserver_disable_core_dumps"><code>--disable_core_dumps</code></a></h4>
+<div class="paragraph">
+<p>Disable core dumps when this process crashes.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_redact"><a class="link" href="#kudu-tserver_redact"><code>--redact</code></a></h4>
+<div class="paragraph">
+<p>Comma-separated list of redactions. Supported options are 'flag', 'log', 'all', and 'none'. If 'flag' is specified, configuration flags which may include sensitive data will be redacted whenever server configuration is emitted. If 'log' is specified, row data will be redacted from log and error messages. If 'all' is specified, all of above will be redacted. If 'none' is specified, no redaction will occur.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>all</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_umask"><a class="link" href="#kudu-tserver_umask"><code>--umask</code></a></h4>
+<div class="paragraph">
+<p>The umask that will be used when creating files and directories. Permissions of top-level data directories will also be modified at start-up to conform to the given umask. Changing this value may enable unauthorized local users to read or modify data stored by Kudu.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>077</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_metrics_retirement_age_ms"><a class="link" href="#kudu-tserver_metrics_retirement_age_ms"><code>--metrics_retirement_age_ms</code></a></h4>
+<div class="paragraph">
+<p>The minimum number of milliseconds a metric will be kept for after it is no longer active. (Advanced option)</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>120000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,runtime</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_enable_minidumps"><a class="link" href="#kudu-tserver_enable_minidumps"><code>--enable_minidumps</code></a></h4>
+<div class="paragraph">
+<p>Whether to enable minidump generation upon process crash or SIGUSR1. Currently only supported on Linux systems.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_max_minidumps"><a class="link" href="#kudu-tserver_max_minidumps"><code>--max_minidumps</code></a></h4>
+<div class="paragraph">
+<p>Maximum number of minidump files to keep per daemon. Older files are removed first. Set to 0 to keep all minidump files.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>9</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_minidump_path"><a class="link" href="#kudu-tserver_minidump_path"><code>--minidump_path</code></a></h4>
+<div class="paragraph">
+<p>Directory to write minidump files to. This can be either an absolute path or a path relative to --log_dir. Each daemon will create an additional sub-directory to prevent naming conflicts and to make it easier to identify a crashing daemon. Minidump files contain crash-related information in a compressed format. Minidumps will be written when a daemon exits unexpectedly, for example on an unhandled exception or signal, or when a SIGUSR1 signal is sent to the process. Cannot be set to an empty value.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>minidumps</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_minidump_size_limit_hint_kb"><a class="link" href="#kudu-tserver_minidump_size_limit_hint_kb"><code>--minidump_size_limit_hint_kb</code></a></h4>
+<div class="paragraph">
+<p>Size limit hint for minidump files in KB. If a minidump exceeds this value, then breakpad will reduce the stack memory it collects for each thread from 8KB to 2KB. However it will always include the full stack memory for the first 20 threads, including the thread that crashed.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>20480</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_memory_limit_soft_percentage"><a class="link" href="#kudu-tserver_memory_limit_soft_percentage"><code>--memory_limit_soft_percentage</code></a></h4>
+<div class="paragraph">
+<p>Percentage of the hard memory limit that this daemon may consume before memory throttling of writes begins. The greater the excess, the higher the chance of throttling. In general, a lower soft limit leads to smoother write latencies but decreased throughput, and vice versa for a higher soft limit.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>80</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_memory_limit_warn_threshold_percentage"><a class="link" href="#kudu-tserver_memory_limit_warn_threshold_percentage"><code>--memory_limit_warn_threshold_percentage</code></a></h4>
+<div class="paragraph">
+<p>Percentage of the hard memory limit that this daemon may consume before WARNING level messages are periodically logged.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>98</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_memory_pressure_percentage"><a class="link" href="#kudu-tserver_memory_pressure_percentage"><code>--memory_pressure_percentage</code></a></h4>
+<div class="paragraph">
+<p>Percentage of the hard memory limit that this daemon may consume before flushing of in-memory data becomes prioritized.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>60</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_tcmalloc_max_free_bytes_percentage"><a class="link" href="#kudu-tserver_tcmalloc_max_free_bytes_percentage"><code>--tcmalloc_max_free_bytes_percentage</code></a></h4>
+<div class="paragraph">
+<p>Maximum percentage of the RSS that tcmalloc is allowed to use for reserved but unallocated memory.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_drop_log_memory"><a class="link" href="#kudu-tserver_drop_log_memory"><code>--drop_log_memory</code></a></h4>
+<div class="paragraph">
+<p>Drop in-memory buffers of log contents. Logs can grow very quickly and they are rarely read before they need to be evicted from memory. Instead, drop them from memory as soon as they are flushed to disk.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_log_backtrace_at"><a class="link" href="#kudu-tserver_log_backtrace_at"><code>--log_backtrace_at</code></a></h4>
+<div class="paragraph">
+<p>Emit a backtrace when logging at file:linenum.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_logbuflevel"><a class="link" href="#kudu-tserver_logbuflevel"><code>--logbuflevel</code></a></h4>
+<div class="paragraph">
+<p>Buffer log messages logged at this level or lower (-1 means don&#8217;t buffer; 0 means buffer INFO only; &#8230;&#8203;)</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_logbufsecs"><a class="link" href="#kudu-tserver_logbufsecs"><code>--logbufsecs</code></a></h4>
+<div class="paragraph">
+<p>Buffer log messages for at most this many seconds</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>5</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_logfile_mode"><a class="link" href="#kudu-tserver_logfile_mode"><code>--logfile_mode</code></a></h4>
+<div class="paragraph">
+<p>Log file mode/permissions.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>436</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+<hr>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="configuration_reference_unsupported"><a class="link" href="#configuration_reference_unsupported">Apache Kudu Unsupported Configuration Flags</a></h2>
+<div class="sectionbody">
+<div class="admonitionblock warning">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-warning" title="Warning"></i>
+</td>
+<td class="content">
+These flags are unsupported and are included for informational purposes only.
+They are subject to being changed or removed at any time.
+</td>
+</tr>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_unsupported"><a class="link" href="#kudu-master_unsupported"><code>kudu-master</code> Unsupported Flags</a></h3>
+<div class="paragraph">
+<p>Flags not marked <code>stable</code> or <code>evolving</code> are considered experimental and are
+<strong>unsupported</strong>. They are included here for informational purposes only and are
+subject to being changed or removed without notice.</p>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_block_cache_type"><a class="link" href="#kudu-master_block_cache_type"><code>--block_cache_type</code></a></h4>
+<div class="paragraph">
+<p>Which type of block cache to use for caching data. Valid choices are 'DRAM' or 'NVM'. DRAM, the default, caches data in regular memory. 'NVM' caches data in a memory-mapped file using the NVML library.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>DRAM</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_min_compression_ratio"><a class="link" href="#kudu-master_min_compression_ratio"><code>--min_compression_ratio</code></a></h4>
+<div class="paragraph">
+<p>If a column compression codec is configured, but the codec is unable to achieve a compression ratio at least as good as the configured value, then the data will be written uncompressed. This will reduce CPU overhead on the read side at the expense of a small amount of extra space if the codec encounters portions of data that are not easily compressible.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0.90000000000000002</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_cfile_default_block_size"><a class="link" href="#kudu-master_cfile_default_block_size"><code>--cfile_default_block_size</code></a></h4>
+<div class="paragraph">
+<p>The default block size to use in cfiles</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>262144</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_cfile_default_compression_codec"><a class="link" href="#kudu-master_cfile_default_compression_codec"><code>--cfile_default_compression_codec</code></a></h4>
+<div class="paragraph">
+<p>Default cfile block compression codec.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>none</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_cfile_do_on_finish"><a class="link" href="#kudu-master_cfile_do_on_finish"><code>--cfile_do_on_finish</code></a></h4>
+<div class="paragraph">
+<p>What to do to cfile blocks when writing is finished. Possible values are 'close', 'flush', or 'nothing'.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>flush</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_codegen_dump_functions"><a class="link" href="#kudu-master_codegen_dump_functions"><code>--codegen_dump_functions</code></a></h4>
+<div class="paragraph">
+<p>Whether to print the LLVM IR for generated functions</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_codegen_dump_mc"><a class="link" href="#kudu-master_codegen_dump_mc"><code>--codegen_dump_mc</code></a></h4>
+<div class="paragraph">
+<p>Whether to dump the disassembly of the machine code for generated functions.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_codegen_cache_capacity"><a class="link" href="#kudu-master_codegen_cache_capacity"><code>--codegen_cache_capacity</code></a></h4>
+<div class="paragraph">
+<p>Number of entries which may be stored in the code generation cache.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>100</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_codegen_time_compilation"><a class="link" href="#kudu-master_codegen_time_compilation"><code>--codegen_time_compilation</code></a></h4>
+<div class="paragraph">
+<p>Whether to print time that each code generation request took.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_consensus_rpc_timeout_ms"><a class="link" href="#kudu-master_consensus_rpc_timeout_ms"><code>--consensus_rpc_timeout_ms</code></a></h4>
+<div class="paragraph">
+<p>Timeout used for all consensus internal RPC communications.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_consensus_max_batch_size_bytes"><a class="link" href="#kudu-master_consensus_max_batch_size_bytes"><code>--consensus_max_batch_size_bytes</code></a></h4>
+<div class="paragraph">
+<p>The maximum per-tablet RPC batch size when updating peers.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1048576</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_follower_unavailable_considered_failed_sec"><a class="link" href="#kudu-master_follower_unavailable_considered_failed_sec"><code>--follower_unavailable_considered_failed_sec</code></a></h4>
+<div class="paragraph">
+<p>Seconds that a leader is unable to successfully heartbeat to a follower after which the follower is considered to be failed and evicted from the config.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>300</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_group_commit_queue_size_bytes"><a class="link" href="#kudu-master_group_commit_queue_size_bytes"><code>--group_commit_queue_size_bytes</code></a></h4>
+<div class="paragraph">
+<p>Maximum size of the group commit queue in bytes</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>4194304</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_log_compression_codec"><a class="link" href="#kudu-master_log_compression_codec"><code>--log_compression_codec</code></a></h4>
+<div class="paragraph">
+<p>Codec to use for compressing WAL segments.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>LZ4</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_log_max_segments_to_retain"><a class="link" href="#kudu-master_log_max_segments_to_retain"><code>--log_max_segments_to_retain</code></a></h4>
+<div class="paragraph">
+<p>The maximum number of past log segments to keep at all times for the purposes of catching up other peers.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>80</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental,advanced,runtime</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_log_min_segments_to_retain"><a class="link" href="#kudu-master_log_min_segments_to_retain"><code>--log_min_segments_to_retain</code></a></h4>
+<div class="paragraph">
+<p>The minimum number of past log segments to keep at all times, regardless of what is required for durability. Must be at least 1.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,runtime</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_global_log_cache_size_limit_mb"><a class="link" href="#kudu-master_global_log_cache_size_limit_mb"><code>--global_log_cache_size_limit_mb</code></a></h4>
+<div class="paragraph">
+<p>Server-wide version of 'log_cache_size_limit_mb'. The total memory used for caching log entries across all tablets is kept under this threshold.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1024</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_log_cache_size_limit_mb"><a class="link" href="#kudu-master_log_cache_size_limit_mb"><code>--log_cache_size_limit_mb</code></a></h4>
+<div class="paragraph">
+<p>The total per-tablet size of consensus entries which may be kept in memory. The log cache attempts to keep all entries which have not yet been replicated to all followers in memory, but if the total size of those entries exceeds this limit within an individual tablet, the oldest will be evicted.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>128</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_log_async_preallocate_segments"><a class="link" href="#kudu-master_log_async_preallocate_segments"><code>--log_async_preallocate_segments</code></a></h4>
+<div class="paragraph">
+<p>Whether the WAL segments preallocation should happen asynchronously</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_log_preallocate_segments"><a class="link" href="#kudu-master_log_preallocate_segments"><code>--log_preallocate_segments</code></a></h4>
+<div class="paragraph">
+<p>Whether the WAL should preallocate the entire segment before writing to it</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_log_segment_size_mb"><a class="link" href="#kudu-master_log_segment_size_mb"><code>--log_segment_size_mb</code></a></h4>
+<div class="paragraph">
+<p>The default size for log segments, in MB</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>8</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_evict_failed_followers"><a class="link" href="#kudu-master_evict_failed_followers"><code>--evict_failed_followers</code></a></h4>
+<div class="paragraph">
+<p>Whether to evict followers from the Raft config that have fallen too far behind the leader&#8217;s log to catch up normally or have been unreachable by the leader for longer than follower_unavailable_considered_failed_sec</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_leader_failure_exp_backoff_max_delta_ms"><a class="link" href="#kudu-master_leader_failure_exp_backoff_max_delta_ms"><code>--leader_failure_exp_backoff_max_delta_ms</code></a></h4>
+<div class="paragraph">
+<p>Maximum time to sleep in between leader election retries, in addition to the regular timeout. When leader election fails the interval in between retries increases exponentially, up to this value.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>20000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_leader_failure_max_missed_heartbeat_periods"><a class="link" href="#kudu-master_leader_failure_max_missed_heartbeat_periods"><code>--leader_failure_max_missed_heartbeat_periods</code></a></h4>
+<div class="paragraph">
+<p>Maximum heartbeat periods that the leader can fail to heartbeat in before we consider the leader to be failed. The total failure timeout in milliseconds is raft_heartbeat_interval_ms times leader_failure_max_missed_heartbeat_periods. The value passed to this flag may be fractional.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>3</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_leader_failure_monitor_check_mean_ms"><a class="link" href="#kudu-master_leader_failure_monitor_check_mean_ms"><code>--leader_failure_monitor_check_mean_ms</code></a></h4>
+<div class="paragraph">
+<p>The mean failure-checking interval of the randomized failure monitor. If this is configured to -1 (the default), uses the value of 'raft_heartbeat_interval_ms'.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>-1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_leader_failure_monitor_check_stddev_ms"><a class="link" href="#kudu-master_leader_failure_monitor_check_stddev_ms"><code>--leader_failure_monitor_check_stddev_ms</code></a></h4>
+<div class="paragraph">
+<p>The standard deviation of the failure-checking interval of the randomized failure monitor. If this is configured to -1 (the default), this is set to half of the mean check interval.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>-1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_raft_enable_pre_election"><a class="link" href="#kudu-master_raft_enable_pre_election"><code>--raft_enable_pre_election</code></a></h4>
+<div class="paragraph">
+<p>When enabled, candidates will call a pre-election before running a real leader election.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_raft_heartbeat_interval_ms"><a class="link" href="#kudu-master_raft_heartbeat_interval_ms"><code>--raft_heartbeat_interval_ms</code></a></h4>
+<div class="paragraph">
+<p>The heartbeat interval for Raft replication. The leader produces heartbeats to followers at this interval. The followers expect a heartbeat at this interval and consider a leader to have failed if it misses several in a row.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>500</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_missed_heartbeats_before_rejecting_snapshot_scans"><a class="link" href="#kudu-master_missed_heartbeats_before_rejecting_snapshot_scans"><code>--missed_heartbeats_before_rejecting_snapshot_scans</code></a></h4>
+<div class="paragraph">
+<p>The maximum raft heartbeat periods since the tablet has seen safe time advanced before refusing scans at snapshots that aren&#8217;t yet safe and forcing clients to try again.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1.5</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_safe_time_advancement_without_writes"><a class="link" href="#kudu-master_safe_time_advancement_without_writes"><code>--safe_time_advancement_without_writes</code></a></h4>
+<div class="paragraph">
+<p>Whether to enable the advancement of "safe" time in the absense of write operations</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_safe_time_max_lag_ms"><a class="link" href="#kudu-master_safe_time_max_lag_ms"><code>--safe_time_max_lag_ms</code></a></h4>
+<div class="paragraph">
+<p>The maximum amount of time we allow safe time to lag behind the requested timestampbefore forcing the client to retry, in milliseconds.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>30000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_block_coalesce_close"><a class="link" href="#kudu-master_block_coalesce_close"><code>--block_coalesce_close</code></a></h4>
+<div class="paragraph">
+<p>Coalesce synchronization of data during CloseBlocks()</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_block_manager"><a class="link" href="#kudu-master_block_manager"><code>--block_manager</code></a></h4>
+<div class="paragraph">
+<p>Which block manager to use for storage. Valid options are 'file' and 'log'.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>log</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_log_container_excess_space_before_cleanup_fraction"><a class="link" href="#kudu-master_log_container_excess_space_before_cleanup_fraction"><code>--log_container_excess_space_before_cleanup_fraction</code></a></h4>
+<div class="paragraph">
+<p>Additional fraction of a log container&#8217;s calculated size that must be consumed on disk before the container is considered to be inconsistent and subject to excess space cleanup at block manager startup.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0.10000000000000001</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_log_container_live_metadata_before_compact_ratio"><a class="link" href="#kudu-master_log_container_live_metadata_before_compact_ratio"><code>--log_container_live_metadata_before_compact_ratio</code></a></h4>
+<div class="paragraph">
+<p>Desired ratio of live block metadata in log containers. If a container&#8217;s live to total block ratio dips below this value, the container&#8217;s metadata file will be compacted at startup.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0.5</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_log_container_max_blocks"><a class="link" href="#kudu-master_log_container_max_blocks"><code>--log_container_max_blocks</code></a></h4>
+<div class="paragraph">
+<p>Maximum number of blocks (soft) of a log container. Use 0 for no limit. Use -1 for no limit except in the case of a kernel bug with hole punching on ext4 (see KUDU-1508 for details).</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>-1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_log_container_max_size"><a class="link" href="#kudu-master_log_container_max_size"><code>--log_container_max_size</code></a></h4>
+<div class="paragraph">
+<p>Maximum size (soft) of a log container</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">uint64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10737418240</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_log_container_preallocate_bytes"><a class="link" href="#kudu-master_log_container_preallocate_bytes"><code>--log_container_preallocate_bytes</code></a></h4>
+<div class="paragraph">
+<p>Number of bytes to preallocate in a log container when creating new blocks. Set to 0 to disable preallocation</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">uint64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>33554432</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_catalog_manager_delete_orphaned_tablets"><a class="link" href="#kudu-master_catalog_manager_delete_orphaned_tablets"><code>--catalog_manager_delete_orphaned_tablets</code></a></h4>
+<div class="paragraph">
+<p>Whether the master should delete tablets reported by tablet servers for which there are no corresponding records in the master&#8217;s metadata. Use this option with care; it may cause permanent tablet data loss under specific (and rare) cases of master failures!</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_default_num_replicas"><a class="link" href="#kudu-master_default_num_replicas"><code>--default_num_replicas</code></a></h4>
+<div class="paragraph">
+<p>Default number of replicas for tables that do not have the num_replicas set.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>3</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_master_failover_catchup_timeout_ms"><a class="link" href="#kudu-master_master_failover_catchup_timeout_ms"><code>--master_failover_catchup_timeout_ms</code></a></h4>
+<div class="paragraph">
+<p>Amount of time to give a newly-elected leader master to load the previous master&#8217;s metadata and become active. If this time is exceeded, the node crashes.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>30000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_master_ts_rpc_timeout_ms"><a class="link" href="#kudu-master_master_ts_rpc_timeout_ms"><code>--master_ts_rpc_timeout_ms</code></a></h4>
+<div class="paragraph">
+<p>Timeout used for the master&#8594;TS async rpc calls.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>30000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_max_create_tablets_per_ts"><a class="link" href="#kudu-master_max_create_tablets_per_ts"><code>--max_create_tablets_per_ts</code></a></h4>
+<div class="paragraph">
+<p>The number of tablets per TS that can be requested for a new table.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>20</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_table_locations_ttl_ms"><a class="link" href="#kudu-master_table_locations_ttl_ms"><code>--table_locations_ttl_ms</code></a></h4>
+<div class="paragraph">
+<p>Maximum time in milliseconds which clients may cache table locations. New range partitions may not be visible to existing client instances until after waiting for the ttl period.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>300000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_tablet_creation_timeout_ms"><a class="link" href="#kudu-master_tablet_creation_timeout_ms"><code>--tablet_creation_timeout_ms</code></a></h4>
+<div class="paragraph">
+<p>Timeout used by the master when attempting to create tablet replicas during table creation.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>30000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_unresponsive_ts_rpc_timeout_ms"><a class="link" href="#kudu-master_unresponsive_ts_rpc_timeout_ms"><code>--unresponsive_ts_rpc_timeout_ms</code></a></h4>
+<div class="paragraph">
+<p>After this amount of time, the master will stop attempting to contact a tablet server in order to perform operations such as deleting a tablet.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>3600000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_authn_token_validity_seconds"><a class="link" href="#kudu-master_authn_token_validity_seconds"><code>--authn_token_validity_seconds</code></a></h4>
+<div class="paragraph">
+<p>Period of time for which an issued authentication token is valid. It&#8217;s not possible to renew a token, hence the token validity interval defines the longest possible lifetime of an external job which uses a token for authentication.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>604800</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_master_registration_rpc_timeout_ms"><a class="link" href="#kudu-master_master_registration_rpc_timeout_ms"><code>--master_registration_rpc_timeout_ms</code></a></h4>
+<div class="paragraph">
+<p>Timeout for retrieving master registration over RPC.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1500</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_tsk_rotation_seconds"><a class="link" href="#kudu-master_tsk_rotation_seconds"><code>--tsk_rotation_seconds</code></a></h4>
+<div class="paragraph">
+<p>Number of seconds between consecutive activations of newly generated TSKs (Token Signing Keys).</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>86400</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_ipki_ca_cert_expiration_seconds"><a class="link" href="#kudu-master_ipki_ca_cert_expiration_seconds"><code>--ipki_ca_cert_expiration_seconds</code></a></h4>
+<div class="paragraph">
+<p>validity interval for self-signed root CA certifcate issued by Kudu IPKI (Internal Private Key Infrastructure, a.k.a. Internal Kudu CA)</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>315360000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_ipki_ca_key_size"><a class="link" href="#kudu-master_ipki_ca_key_size"><code>--ipki_ca_key_size</code></a></h4>
+<div class="paragraph">
+<p>the number of bits for self-signed root CA cert used by Kudu IPKI (Internal Private Key Infrastructure, a.k.a. Internal Kudu CA)</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>2048</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_ipki_server_cert_expiration_seconds"><a class="link" href="#kudu-master_ipki_server_cert_expiration_seconds"><code>--ipki_server_cert_expiration_seconds</code></a></h4>
+<div class="paragraph">
+<p>validity interval for server certificates issued by Kudu IPKI (Internal Private Key Infrastructure, a.k.a. Internal Kudu CA)</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>315360000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_tserver_unresponsive_timeout_ms"><a class="link" href="#kudu-master_tserver_unresponsive_timeout_ms"><code>--tserver_unresponsive_timeout_ms</code></a></h4>
+<div class="paragraph">
+<p>The period of time that a Master can go without receiving a heartbeat from a tablet server before considering it unresponsive. Unresponsive servers are not selected when assigning replicas during table creation or re-replication.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>60000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_rpc_acceptor_listen_backlog"><a class="link" href="#kudu-master_rpc_acceptor_listen_backlog"><code>--rpc_acceptor_listen_backlog</code></a></h4>
+<div class="paragraph">
+<p>Socket backlog parameter used when listening for RPC connections. This defines the maximum length to which the queue of pending TCP connections inbound to the RPC server may grow. If a connection request arrives when the queue is full, the client may receive an error. Higher values may help the server ride over bursts of new inbound connection requests.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>128</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_rpc_ca_certificate_file"><a class="link" href="#kudu-master_rpc_ca_certificate_file"><code>--rpc_ca_certificate_file</code></a></h4>
+<div class="paragraph">
+<p>Path to the PEM encoded X509 certificate of the trusted external certificate authority. The provided certificate should be the root issuer of the certificate passed in '--rpc_certificate_file'.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_rpc_certificate_file"><a class="link" href="#kudu-master_rpc_certificate_file"><code>--rpc_certificate_file</code></a></h4>
+<div class="paragraph">
+<p>Path to a PEM encoded X509 certificate to use for securing RPC connections with SSL/TLS. If set, '--rpc_private_key_file' and '--rpc_ca_certificate_file' must be set as well.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_rpc_default_keepalive_time_ms"><a class="link" href="#kudu-master_rpc_default_keepalive_time_ms"><code>--rpc_default_keepalive_time_ms</code></a></h4>
+<div class="paragraph">
+<p>If an RPC connection from a client is idle for this amount of time, the server will disconnect the client.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>65000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_rpc_private_key_file"><a class="link" href="#kudu-master_rpc_private_key_file"><code>--rpc_private_key_file</code></a></h4>
+<div class="paragraph">
+<p>Path to a PEM encoded private key paired with the certificate from '--rpc_certificate_file'</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_rpc_encrypt_loopback_connections"><a class="link" href="#kudu-master_rpc_encrypt_loopback_connections"><code>--rpc_encrypt_loopback_connections</code></a></h4>
+<div class="paragraph">
+<p>Whether to encrypt data transfer on RPC connections that stay within a single host. Encryption here is likely to offer no additional security benefit since only a local 'root' user could intercept the traffic, and wire encryption does not suitably protect against such an attacker.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_rpc_trace_negotiation"><a class="link" href="#kudu-master_rpc_trace_negotiation"><code>--rpc_trace_negotiation</code></a></h4>
+<div class="paragraph">
+<p>If enabled, dump traces of all RPC negotiations to the log</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental,advanced,runtime</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_rpc_callback_max_cycles"><a class="link" href="#kudu-master_rpc_callback_max_cycles"><code>--rpc_callback_max_cycles</code></a></h4>
+<div class="paragraph">
+<p>The maximum number of cycles for which an RPC callback should be allowed to run without emitting a warning. (Advanced debugging option)</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>100000000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_rpc_negotiation_timeout_ms"><a class="link" href="#kudu-master_rpc_negotiation_timeout_ms"><code>--rpc_negotiation_timeout_ms</code></a></h4>
+<div class="paragraph">
+<p>Timeout for negotiating an RPC connection.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>3000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_remember_clients_ttl_ms"><a class="link" href="#kudu-master_remember_clients_ttl_ms"><code>--remember_clients_ttl_ms</code></a></h4>
+<div class="paragraph">
+<p>Maximum amount of time, in milliseconds, the server "remembers" a client for the purpose of caching its responses. After this period without hearing from it, the client is no longer remembered and the memory occupied by its responses is reclaimed. Retries of requests older than 'remember_clients_ttl_ms' are treated as new ones.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>3600000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_remember_responses_ttl_ms"><a class="link" href="#kudu-master_remember_responses_ttl_ms"><code>--remember_responses_ttl_ms</code></a></h4>
+<div class="paragraph">
+<p>Maximum amount of time, in milliseconds, the server "remembers" a response to a specific request for a client. After this period has elapsed, the response may have been garbage collected and the client might get a response indicating the request is STALE.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>600000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_rpc_dump_all_traces"><a class="link" href="#kudu-master_rpc_dump_all_traces"><code>--rpc_dump_all_traces</code></a></h4>
+<div class="paragraph">
+<p>If true, dump all RPC traces at INFO level</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_rpc_max_message_size"><a class="link" href="#kudu-master_rpc_max_message_size"><code>--rpc_max_message_size</code></a></h4>
+<div class="paragraph">
+<p>The maximum size of a message that any RPC that the server will accept. Must be at least 1MB.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>52428800</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_ipki_server_key_size"><a class="link" href="#kudu-master_ipki_server_key_size"><code>--ipki_server_key_size</code></a></h4>
+<div class="paragraph">
+<p>the number of bits for server cert&#8217;s private key. The server cert is used for TLS connections to and from clients and other servers.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>2048</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_rpc_tls_ciphers"><a class="link" href="#kudu-master_rpc_tls_ciphers"><code>--rpc_tls_ciphers</code></a></h4>
+<div class="paragraph">
+<p>The cipher suite preferences to use for TLS-secured RPC connections. Uses the OpenSSL cipher preference list format. See man (1) ciphers for more information.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256AES256-GCM-SHA384:AES128-GCM-SHA256:AES256-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_rpc_tls_min_protocol"><a class="link" href="#kudu-master_rpc_tls_min_protocol"><code>--rpc_tls_min_protocol</code></a></h4>
+<div class="paragraph">
+<p>The minimum protocol version to allow when for securing RPC connections with TLS. May be one of 'TLSv1', 'TLSv1.1', or 'TLSv1.2'.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>TLSv1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_tsk_num_rsa_bits"><a class="link" href="#kudu-master_tsk_num_rsa_bits"><code>--tsk_num_rsa_bits</code></a></h4>
+<div class="paragraph">
+<p>Number of bits in RSA keys used for token signing.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>2048</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_web_log_bytes"><a class="link" href="#kudu-master_web_log_bytes"><code>--web_log_bytes</code></a></h4>
+<div class="paragraph">
+<p>The maximum number of bytes to display on the debug webserver&#8217;s log page</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1048576</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_max_clock_sync_error_usec"><a class="link" href="#kudu-master_max_clock_sync_error_usec"><code>--max_clock_sync_error_usec</code></a></h4>
+<div class="paragraph">
+<p>Maximum allowed clock synchronization error as reported by NTP before the server will abort.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10000000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_rpc_advertised_addresses"><a class="link" href="#kudu-master_rpc_advertised_addresses"><code>--rpc_advertised_addresses</code></a></h4>
+<div class="paragraph">
+<p>Comma-separated list of addresses to advertise externally for RPC connections. Ephemeral ports (i.e. port 0) are not allowed. This should be configured when the locally bound RPC addresses specified in --rpc_bind_addresses are not externally resolvable, for example, if Kudu is deployed in a container.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_rpc_num_acceptors_per_address"><a class="link" href="#kudu-master_rpc_num_acceptors_per_address"><code>--rpc_num_acceptors_per_address</code></a></h4>
+<div class="paragraph">
+<p>Number of RPC acceptor threads for each bound address</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_rpc_num_service_threads"><a class="link" href="#kudu-master_rpc_num_service_threads"><code>--rpc_num_service_threads</code></a></h4>
+<div class="paragraph">
+<p>Number of RPC worker threads to run</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_rpc_service_queue_length"><a class="link" href="#kudu-master_rpc_service_queue_length"><code>--rpc_service_queue_length</code></a></h4>
+<div class="paragraph">
+<p>Default length of queue for incoming RPC requests</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>50</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_max_negotiation_threads"><a class="link" href="#kudu-master_max_negotiation_threads"><code>--max_negotiation_threads</code></a></h4>
+<div class="paragraph">
+<p>Maximum number of connection negotiation threads.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>50</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_min_negotiation_threads"><a class="link" href="#kudu-master_min_negotiation_threads"><code>--min_negotiation_threads</code></a></h4>
+<div class="paragraph">
+<p>Minimum number of connection negotiation threads.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_num_reactor_threads"><a class="link" href="#kudu-master_num_reactor_threads"><code>--num_reactor_threads</code></a></h4>
+<div class="paragraph">
+<p>Number of libev reactor threads to start.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>4</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_webserver_enabled"><a class="link" href="#kudu-master_webserver_enabled"><code>--webserver_enabled</code></a></h4>
+<div class="paragraph">
+<p>Whether to enable the web server on this daemon. NOTE: disabling the web server is also likely to prevent monitoring systems from properly capturing metrics.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_metrics_log_interval_ms"><a class="link" href="#kudu-master_metrics_log_interval_ms"><code>--metrics_log_interval_ms</code></a></h4>
+<div class="paragraph">
+<p>Interval (in milliseconds) at which the server will dump its metrics to a local log file. The log files are located in the same directory as specified by the -log_dir flag. If this is not a positive value, then metrics logging will be disabled.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_webserver_max_post_length_bytes"><a class="link" href="#kudu-master_webserver_max_post_length_bytes"><code>--webserver_max_post_length_bytes</code></a></h4>
+<div class="paragraph">
+<p>The maximum length of a POST request that will be accepted by the embedded web server.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1048576</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_webserver_x_frame_options"><a class="link" href="#kudu-master_webserver_x_frame_options"><code>--webserver_x_frame_options</code></a></h4>
+<div class="paragraph">
+<p>The webserver will add an 'X-Frame-Options' HTTP header with this value to all responses. This can help prevent clickjacking attacks.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>DENY</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_webserver_advertised_addresses"><a class="link" href="#kudu-master_webserver_advertised_addresses"><code>--webserver_advertised_addresses</code></a></h4>
+<div class="paragraph">
+<p>Comma-separated list of addresses to advertise externally for HTTP(S) connections. Ephemeral ports (i.e. port 0) are not allowed. This should be configured when the locally bound webserver address specified in --webserver_interface and --webserver_port are not externally resolvable, for example, if Kudu is deployed in a container.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_webserver_authentication_domain"><a class="link" href="#kudu-master_webserver_authentication_domain"><code>--webserver_authentication_domain</code></a></h4>
+<div class="paragraph">
+<p>Domain used for debug webserver authentication</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_webserver_doc_root"><a class="link" href="#kudu-master_webserver_doc_root"><code>--webserver_doc_root</code></a></h4>
+<div class="paragraph">
+<p>Files under &lt;webserver_doc_root&gt; are accessible via the debug webserver. Defaults to $KUDU_HOME/www, or if $KUDU_HOME is not set, disables the document root</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_webserver_enable_doc_root"><a class="link" href="#kudu-master_webserver_enable_doc_root"><code>--webserver_enable_doc_root</code></a></h4>
+<div class="paragraph">
+<p>If true, webserver may serve static files from the webserver_doc_root</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_webserver_interface"><a class="link" href="#kudu-master_webserver_interface"><code>--webserver_interface</code></a></h4>
+<div class="paragraph">
+<p>Interface to start debug webserver on. If blank, webserver binds to 0.0.0.0</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_webserver_num_worker_threads"><a class="link" href="#kudu-master_webserver_num_worker_threads"><code>--webserver_num_worker_threads</code></a></h4>
+<div class="paragraph">
+<p>Maximum number of threads to start for handling web server requests</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>50</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_webserver_password_file"><a class="link" href="#kudu-master_webserver_password_file"><code>--webserver_password_file</code></a></h4>
+<div class="paragraph">
+<p>(Optional) Location of .htpasswd file containing user names and hashed passwords for debug webserver authentication</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_budgeted_compaction_target_rowset_size"><a class="link" href="#kudu-master_budgeted_compaction_target_rowset_size"><code>--budgeted_compaction_target_rowset_size</code></a></h4>
+<div class="paragraph">
+<p>The target size for DiskRowSets during flush/compact when the budgeted compaction policy is used</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>33554432</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_compaction_approximation_ratio"><a class="link" href="#kudu-master_compaction_approximation_ratio"><code>--compaction_approximation_ratio</code></a></h4>
+<div class="paragraph">
+<p>Approximation ratio allowed for optimal compaction calculation. A value of 1.05 indicates that the policy may use an approximate result if it is known to be within 5% of the optimal solution.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1.0499999523162842</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_deltafile_default_block_size"><a class="link" href="#kudu-master_deltafile_default_block_size"><code>--deltafile_default_block_size</code></a></h4>
+<div class="paragraph">
+<p>Block size for delta files. In the future, this may become configurable on a per-table basis.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>32768</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_deltafile_default_compression_codec"><a class="link" href="#kudu-master_deltafile_default_compression_codec"><code>--deltafile_default_compression_codec</code></a></h4>
+<div class="paragraph">
+<p>The compression codec used when writing deltafiles.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>lz4</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_default_composite_key_index_block_size_bytes"><a class="link" href="#kudu-master_default_composite_key_index_block_size_bytes"><code>--default_composite_key_index_block_size_bytes</code></a></h4>
+<div class="paragraph">
+<p>Block size used for composite key indexes.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>4096</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_tablet_delta_store_major_compact_min_ratio"><a class="link" href="#kudu-master_tablet_delta_store_major_compact_min_ratio"><code>--tablet_delta_store_major_compact_min_ratio</code></a></h4>
+<div class="paragraph">
+<p>Minimum ratio of sizeof(deltas) to sizeof(base data) before a major compaction can run (Advanced option)</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0.10000000149011612</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_tablet_delta_store_minor_compact_max"><a class="link" href="#kudu-master_tablet_delta_store_minor_compact_max"><code>--tablet_delta_store_minor_compact_max</code></a></h4>
+<div class="paragraph">
+<p>How many delta stores are required before forcing a minor delta compaction (Advanced option)</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_tablet_bloom_block_size"><a class="link" href="#kudu-master_tablet_bloom_block_size"><code>--tablet_bloom_block_size</code></a></h4>
+<div class="paragraph">
+<p>Block size of the bloom filters used for tablet keys.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>4096</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_tablet_bloom_target_fp_rate"><a class="link" href="#kudu-master_tablet_bloom_target_fp_rate"><code>--tablet_bloom_target_fp_rate</code></a></h4>
+<div class="paragraph">
+<p>Target false-positive rate (between 0 and 1) to size tablet key bloom filters. A lower false positive rate may reduce the number of disk seeks required in heavy insert workloads, at the expense of more space and RAM required for bloom filters.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>9.9999997473787516e-05</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_tablet_compaction_budget_mb"><a class="link" href="#kudu-master_tablet_compaction_budget_mb"><code>--tablet_compaction_budget_mb</code></a></h4>
+<div class="paragraph">
+<p>Budget for a single compaction</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>128</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_tablet_history_max_age_sec"><a class="link" href="#kudu-master_tablet_history_max_age_sec"><code>--tablet_history_max_age_sec</code></a></h4>
+<div class="paragraph">
+<p>Number of seconds to retain tablet history. Reads initiated at a snapshot that is older than this age will be rejected. To disable history removal, set to -1.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>900</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_tablet_throttler_burst_factor"><a class="link" href="#kudu-master_tablet_throttler_burst_factor"><code>--tablet_throttler_burst_factor</code></a></h4>
+<div class="paragraph">
+<p>Burst factor for write RPC throttling. The maximum rate the throttler allows within a token refill period (100ms) equals burst factor multiply base rate.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_tablet_throttler_bytes_per_sec"><a class="link" href="#kudu-master_tablet_throttler_bytes_per_sec"><code>--tablet_throttler_bytes_per_sec</code></a></h4>
+<div class="paragraph">
+<p>Maximum write RPC IO rate (byte/s) allowed for a tablet, write RPC exceeding this limit will be throttled. 0 means no limit.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_tablet_throttler_rpc_per_sec"><a class="link" href="#kudu-master_tablet_throttler_rpc_per_sec"><code>--tablet_throttler_rpc_per_sec</code></a></h4>
+<div class="paragraph">
+<p>Maximum write RPC rate (op/s) allowed for a tablet, write RPC exceeding this limit will be throttled. 0 means no limit.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_flush_threshold_mb"><a class="link" href="#kudu-master_flush_threshold_mb"><code>--flush_threshold_mb</code></a></h4>
+<div class="paragraph">
+<p>Size at which MemRowSet flushes are triggered. A MRS can still flush below this threshold if it if hasn&#8217;t flushed in a while, or if the server-wide memory limit has been reached.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1024</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_flush_threshold_secs"><a class="link" href="#kudu-master_flush_threshold_secs"><code>--flush_threshold_secs</code></a></h4>
+<div class="paragraph">
+<p>Number of seconds after which a non-empty MemRowSet will become flushable even if it is not large.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>120</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_tablet_transaction_memory_limit_mb"><a class="link" href="#kudu-master_tablet_transaction_memory_limit_mb"><code>--tablet_transaction_memory_limit_mb</code></a></h4>
+<div class="paragraph">
+<p>Maximum amount of memory that may be consumed by all in-flight transactions belonging to a particular tablet. When this limit is reached, new transactions will be rejected and clients will be forced to retry them. If -1, transaction memory tracking is disabled.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>64</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_heartbeat_interval_ms"><a class="link" href="#kudu-master_heartbeat_interval_ms"><code>--heartbeat_interval_ms</code></a></h4>
+<div class="paragraph">
+<p>Interval at which the TS heartbeats to the master.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_heartbeat_max_failures_before_backoff"><a class="link" href="#kudu-master_heartbeat_max_failures_before_backoff"><code>--heartbeat_max_failures_before_backoff</code></a></h4>
+<div class="paragraph">
+<p>Maximum number of consecutive heartbeat failures until the Tablet Server backs off to the normal heartbeat interval, rather than retrying.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>3</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_heartbeat_rpc_timeout_ms"><a class="link" href="#kudu-master_heartbeat_rpc_timeout_ms"><code>--heartbeat_rpc_timeout_ms</code></a></h4>
+<div class="paragraph">
+<p>Timeout used for the TS&#8594;Master heartbeat RPCs.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>15000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_scanner_ttl_ms"><a class="link" href="#kudu-master_scanner_ttl_ms"><code>--scanner_ttl_ms</code></a></h4>
+<div class="paragraph">
+<p>Number of milliseconds of inactivity allowed for a scannerbefore it may be expired</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>60000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_scanner_batch_size_rows"><a class="link" href="#kudu-master_scanner_batch_size_rows"><code>--scanner_batch_size_rows</code></a></h4>
+<div class="paragraph">
+<p>The number of rows to batch for servicing scan requests.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>100</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_scanner_default_batch_size_bytes"><a class="link" href="#kudu-master_scanner_default_batch_size_bytes"><code>--scanner_default_batch_size_bytes</code></a></h4>
+<div class="paragraph">
+<p>The default size for batches of scan results</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1048576</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_scanner_max_batch_size_bytes"><a class="link" href="#kudu-master_scanner_max_batch_size_bytes"><code>--scanner_max_batch_size_bytes</code></a></h4>
+<div class="paragraph">
+<p>The maximum batch size that a client may request for scan results.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>8388608</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_scanner_max_wait_ms"><a class="link" href="#kudu-master_scanner_max_wait_ms"><code>--scanner_max_wait_ms</code></a></h4>
+<div class="paragraph">
+<p>The maximum amount of time (in milliseconds) we&#8217;ll hang a scanner thread waiting for safe time to advance or transactions to commit, even if its deadline allows waiting longer.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_num_tablets_to_copy_simultaneously"><a class="link" href="#kudu-master_num_tablets_to_copy_simultaneously"><code>--num_tablets_to_copy_simultaneously</code></a></h4>
+<div class="paragraph">
+<p>Number of threads available to copy tablets from remote servers.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_num_tablets_to_open_simultaneously"><a class="link" href="#kudu-master_num_tablets_to_open_simultaneously"><code>--num_tablets_to_open_simultaneously</code></a></h4>
+<div class="paragraph">
+<p>Number of threads available to open tablets during startup. If this is set to 0 (the default), then the number of bootstrap threads will be set based on the number of data directories. If the data directories are on some very fast storage device such as SSD or a RAID array, it may make sense to manually tune this.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_trace_to_console"><a class="link" href="#kudu-master_trace_to_console"><code>--trace_to_console</code></a></h4>
+<div class="paragraph">
+<p>Trace pattern specifying which trace events should be dumped directly to the console</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_suicide_on_eio"><a class="link" href="#kudu-master_suicide_on_eio"><code>--suicide_on_eio</code></a></h4>
+<div class="paragraph">
+<p>Kill the process if an I/O operation results in EIO</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_file_cache_expiry_period_ms"><a class="link" href="#kudu-master_file_cache_expiry_period_ms"><code>--file_cache_expiry_period_ms</code></a></h4>
+<div class="paragraph">
+<p>Period of time (in ms) between removing expired file cache descriptors</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>60000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_umask"><a class="link" href="#kudu-master_umask"><code>--umask</code></a></h4>
+<div class="paragraph">
+<p>The umask that will be used when creating files and directories. Permissions of top-level data directories will also be modified at start-up to conform to the given umask. Changing this value may enable unauthorized local users to read or modify data stored by Kudu.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>077</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_max_log_files"><a class="link" href="#kudu-master_max_log_files"><code>--max_log_files</code></a></h4>
+<div class="paragraph">
+<p>Maximum number of log files to retain per severity level. The most recent log files are retained. If set to 0, all log files are retained.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental,runtime</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_data_gc_min_size_mb"><a class="link" href="#kudu-master_data_gc_min_size_mb"><code>--data_gc_min_size_mb</code></a></h4>
+<div class="paragraph">
+<p>The (exclusive) minimum number of megabytes of ancient data on disk, per tablet, needed to prioritize deletion of that data.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_data_gc_prioritization_prob"><a class="link" href="#kudu-master_data_gc_prioritization_prob"><code>--data_gc_prioritization_prob</code></a></h4>
+<div class="paragraph">
+<p>The probability that we will prioritize data GC over performance improvement operations. If set to 1.0, we will always prefer to delete old data before running performance improvement operations such as delta compaction.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0.5</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_log_target_replay_size_mb"><a class="link" href="#kudu-master_log_target_replay_size_mb"><code>--log_target_replay_size_mb</code></a></h4>
+<div class="paragraph">
+<p>The target maximum size of logs to be replayed at startup. If a tablet has in-memory operations that are causing more than this size of logs to be retained, then the maintenance manager will prioritize flushing these operations to disk.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1024</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_metrics_retirement_age_ms"><a class="link" href="#kudu-master_metrics_retirement_age_ms"><code>--metrics_retirement_age_ms</code></a></h4>
+<div class="paragraph">
+<p>The minimum number of milliseconds a metric will be kept for after it is no longer active. (Advanced option)</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>120000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,runtime</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_local_ip_for_outbound_sockets"><a class="link" href="#kudu-master_local_ip_for_outbound_sockets"><code>--local_ip_for_outbound_sockets</code></a></h4>
+<div class="paragraph">
+<p>IP to bind to when making outgoing socket connections. This must be an IP address of the form A.B.C.D, not a hostname. Advanced parameter, subject to change.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_nvm_cache_allocation_retry_count"><a class="link" href="#kudu-master_nvm_cache_allocation_retry_count"><code>--nvm_cache_allocation_retry_count</code></a></h4>
+<div class="paragraph">
+<p>The number of times that the NVM cache will retry attempts to allocate memory for new entries. In between attempts, a cache entry will be evicted.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_nvm_cache_path"><a class="link" href="#kudu-master_nvm_cache_path"><code>--nvm_cache_path</code></a></h4>
+<div class="paragraph">
+<p>The path at which the NVM cache will try to allocate its memory. This can be a tmpfs or ramfs for testing purposes.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>/vmem</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_memory_limit_soft_percentage"><a class="link" href="#kudu-master_memory_limit_soft_percentage"><code>--memory_limit_soft_percentage</code></a></h4>
+<div class="paragraph">
+<p>Percentage of the hard memory limit that this daemon may consume before memory throttling of writes begins. The greater the excess, the higher the chance of throttling. In general, a lower soft limit leads to smoother write latencies but decreased throughput, and vice versa for a higher soft limit.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>80</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_memory_limit_warn_threshold_percentage"><a class="link" href="#kudu-master_memory_limit_warn_threshold_percentage"><code>--memory_limit_warn_threshold_percentage</code></a></h4>
+<div class="paragraph">
+<p>Percentage of the hard memory limit that this daemon may consume before WARNING level messages are periodically logged.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>98</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_memory_pressure_percentage"><a class="link" href="#kudu-master_memory_pressure_percentage"><code>--memory_pressure_percentage</code></a></h4>
+<div class="paragraph">
+<p>Percentage of the hard memory limit that this daemon may consume before flushing of in-memory data becomes prioritized.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>60</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_tcmalloc_max_free_bytes_percentage"><a class="link" href="#kudu-master_tcmalloc_max_free_bytes_percentage"><code>--tcmalloc_max_free_bytes_percentage</code></a></h4>
+<div class="paragraph">
+<p>Maximum percentage of the RSS that tcmalloc is allowed to use for reserved but unallocated memory.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_drop_log_memory"><a class="link" href="#kudu-master_drop_log_memory"><code>--drop_log_memory</code></a></h4>
+<div class="paragraph">
+<p>Drop in-memory buffers of log contents. Logs can grow very quickly and they are rarely read before they need to be evicted from memory. Instead, drop them from memory as soon as they are flushed to disk.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_log_backtrace_at"><a class="link" href="#kudu-master_log_backtrace_at"><code>--log_backtrace_at</code></a></h4>
+<div class="paragraph">
+<p>Emit a backtrace when logging at file:linenum.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_logbuflevel"><a class="link" href="#kudu-master_logbuflevel"><code>--logbuflevel</code></a></h4>
+<div class="paragraph">
+<p>Buffer log messages logged at this level or lower (-1 means don&#8217;t buffer; 0 means buffer INFO only; &#8230;&#8203;)</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_logbufsecs"><a class="link" href="#kudu-master_logbufsecs"><code>--logbufsecs</code></a></h4>
+<div class="paragraph">
+<p>Buffer log messages for at most this many seconds</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>5</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-master_logfile_mode"><a class="link" href="#kudu-master_logfile_mode"><code>--logfile_mode</code></a></h4>
+<div class="paragraph">
+<p>Log file mode/permissions.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>436</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"></td>
+</tr>
+</tbody>
+</table>
+<hr>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_unsupported"><a class="link" href="#kudu-tserver_unsupported"><code>kudu-tserver</code> Unsupported Flags</a></h3>
+<div class="paragraph">
+<p>Flags not marked <code>stable</code> or <code>evolving</code> are considered experimental and are
+<strong>unsupported</strong>. They are included here for informational purposes only and are
+subject to being changed or removed without notice.</p>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_block_cache_type"><a class="link" href="#kudu-tserver_block_cache_type"><code>--block_cache_type</code></a></h4>
+<div class="paragraph">
+<p>Which type of block cache to use for caching data. Valid choices are 'DRAM' or 'NVM'. DRAM, the default, caches data in regular memory. 'NVM' caches data in a memory-mapped file using the NVML library.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>DRAM</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_min_compression_ratio"><a class="link" href="#kudu-tserver_min_compression_ratio"><code>--min_compression_ratio</code></a></h4>
+<div class="paragraph">
+<p>If a column compression codec is configured, but the codec is unable to achieve a compression ratio at least as good as the configured value, then the data will be written uncompressed. This will reduce CPU overhead on the read side at the expense of a small amount of extra space if the codec encounters portions of data that are not easily compressible.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0.90000000000000002</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_cfile_default_block_size"><a class="link" href="#kudu-tserver_cfile_default_block_size"><code>--cfile_default_block_size</code></a></h4>
+<div class="paragraph">
+<p>The default block size to use in cfiles</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>262144</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_cfile_default_compression_codec"><a class="link" href="#kudu-tserver_cfile_default_compression_codec"><code>--cfile_default_compression_codec</code></a></h4>
+<div class="paragraph">
+<p>Default cfile block compression codec.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>none</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_cfile_do_on_finish"><a class="link" href="#kudu-tserver_cfile_do_on_finish"><code>--cfile_do_on_finish</code></a></h4>
+<div class="paragraph">
+<p>What to do to cfile blocks when writing is finished. Possible values are 'close', 'flush', or 'nothing'.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>flush</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_codegen_dump_functions"><a class="link" href="#kudu-tserver_codegen_dump_functions"><code>--codegen_dump_functions</code></a></h4>
+<div class="paragraph">
+<p>Whether to print the LLVM IR for generated functions</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_codegen_dump_mc"><a class="link" href="#kudu-tserver_codegen_dump_mc"><code>--codegen_dump_mc</code></a></h4>
+<div class="paragraph">
+<p>Whether to dump the disassembly of the machine code for generated functions.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_codegen_cache_capacity"><a class="link" href="#kudu-tserver_codegen_cache_capacity"><code>--codegen_cache_capacity</code></a></h4>
+<div class="paragraph">
+<p>Number of entries which may be stored in the code generation cache.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>100</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_codegen_time_compilation"><a class="link" href="#kudu-tserver_codegen_time_compilation"><code>--codegen_time_compilation</code></a></h4>
+<div class="paragraph">
+<p>Whether to print time that each code generation request took.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_consensus_rpc_timeout_ms"><a class="link" href="#kudu-tserver_consensus_rpc_timeout_ms"><code>--consensus_rpc_timeout_ms</code></a></h4>
+<div class="paragraph">
+<p>Timeout used for all consensus internal RPC communications.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_consensus_max_batch_size_bytes"><a class="link" href="#kudu-tserver_consensus_max_batch_size_bytes"><code>--consensus_max_batch_size_bytes</code></a></h4>
+<div class="paragraph">
+<p>The maximum per-tablet RPC batch size when updating peers.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1048576</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_follower_unavailable_considered_failed_sec"><a class="link" href="#kudu-tserver_follower_unavailable_considered_failed_sec"><code>--follower_unavailable_considered_failed_sec</code></a></h4>
+<div class="paragraph">
+<p>Seconds that a leader is unable to successfully heartbeat to a follower after which the follower is considered to be failed and evicted from the config.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>300</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_group_commit_queue_size_bytes"><a class="link" href="#kudu-tserver_group_commit_queue_size_bytes"><code>--group_commit_queue_size_bytes</code></a></h4>
+<div class="paragraph">
+<p>Maximum size of the group commit queue in bytes</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>4194304</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_log_compression_codec"><a class="link" href="#kudu-tserver_log_compression_codec"><code>--log_compression_codec</code></a></h4>
+<div class="paragraph">
+<p>Codec to use for compressing WAL segments.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>LZ4</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_log_max_segments_to_retain"><a class="link" href="#kudu-tserver_log_max_segments_to_retain"><code>--log_max_segments_to_retain</code></a></h4>
+<div class="paragraph">
+<p>The maximum number of past log segments to keep at all times for the purposes of catching up other peers.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>80</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental,advanced,runtime</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_log_min_segments_to_retain"><a class="link" href="#kudu-tserver_log_min_segments_to_retain"><code>--log_min_segments_to_retain</code></a></h4>
+<div class="paragraph">
+<p>The minimum number of past log segments to keep at all times, regardless of what is required for durability. Must be at least 1.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,runtime</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_global_log_cache_size_limit_mb"><a class="link" href="#kudu-tserver_global_log_cache_size_limit_mb"><code>--global_log_cache_size_limit_mb</code></a></h4>
+<div class="paragraph">
+<p>Server-wide version of 'log_cache_size_limit_mb'. The total memory used for caching log entries across all tablets is kept under this threshold.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1024</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_log_cache_size_limit_mb"><a class="link" href="#kudu-tserver_log_cache_size_limit_mb"><code>--log_cache_size_limit_mb</code></a></h4>
+<div class="paragraph">
+<p>The total per-tablet size of consensus entries which may be kept in memory. The log cache attempts to keep all entries which have not yet been replicated to all followers in memory, but if the total size of those entries exceeds this limit within an individual tablet, the oldest will be evicted.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>128</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_log_async_preallocate_segments"><a class="link" href="#kudu-tserver_log_async_preallocate_segments"><code>--log_async_preallocate_segments</code></a></h4>
+<div class="paragraph">
+<p>Whether the WAL segments preallocation should happen asynchronously</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_log_preallocate_segments"><a class="link" href="#kudu-tserver_log_preallocate_segments"><code>--log_preallocate_segments</code></a></h4>
+<div class="paragraph">
+<p>Whether the WAL should preallocate the entire segment before writing to it</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_log_segment_size_mb"><a class="link" href="#kudu-tserver_log_segment_size_mb"><code>--log_segment_size_mb</code></a></h4>
+<div class="paragraph">
+<p>The default size for log segments, in MB</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>8</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_evict_failed_followers"><a class="link" href="#kudu-tserver_evict_failed_followers"><code>--evict_failed_followers</code></a></h4>
+<div class="paragraph">
+<p>Whether to evict followers from the Raft config that have fallen too far behind the leader&#8217;s log to catch up normally or have been unreachable by the leader for longer than follower_unavailable_considered_failed_sec</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_leader_failure_exp_backoff_max_delta_ms"><a class="link" href="#kudu-tserver_leader_failure_exp_backoff_max_delta_ms"><code>--leader_failure_exp_backoff_max_delta_ms</code></a></h4>
+<div class="paragraph">
+<p>Maximum time to sleep in between leader election retries, in addition to the regular timeout. When leader election fails the interval in between retries increases exponentially, up to this value.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>20000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_leader_failure_max_missed_heartbeat_periods"><a class="link" href="#kudu-tserver_leader_failure_max_missed_heartbeat_periods"><code>--leader_failure_max_missed_heartbeat_periods</code></a></h4>
+<div class="paragraph">
+<p>Maximum heartbeat periods that the leader can fail to heartbeat in before we consider the leader to be failed. The total failure timeout in milliseconds is raft_heartbeat_interval_ms times leader_failure_max_missed_heartbeat_periods. The value passed to this flag may be fractional.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>3</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_leader_failure_monitor_check_mean_ms"><a class="link" href="#kudu-tserver_leader_failure_monitor_check_mean_ms"><code>--leader_failure_monitor_check_mean_ms</code></a></h4>
+<div class="paragraph">
+<p>The mean failure-checking interval of the randomized failure monitor. If this is configured to -1 (the default), uses the value of 'raft_heartbeat_interval_ms'.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>-1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_leader_failure_monitor_check_stddev_ms"><a class="link" href="#kudu-tserver_leader_failure_monitor_check_stddev_ms"><code>--leader_failure_monitor_check_stddev_ms</code></a></h4>
+<div class="paragraph">
+<p>The standard deviation of the failure-checking interval of the randomized failure monitor. If this is configured to -1 (the default), this is set to half of the mean check interval.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>-1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_raft_enable_pre_election"><a class="link" href="#kudu-tserver_raft_enable_pre_election"><code>--raft_enable_pre_election</code></a></h4>
+<div class="paragraph">
+<p>When enabled, candidates will call a pre-election before running a real leader election.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_raft_heartbeat_interval_ms"><a class="link" href="#kudu-tserver_raft_heartbeat_interval_ms"><code>--raft_heartbeat_interval_ms</code></a></h4>
+<div class="paragraph">
+<p>The heartbeat interval for Raft replication. The leader produces heartbeats to followers at this interval. The followers expect a heartbeat at this interval and consider a leader to have failed if it misses several in a row.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>500</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_missed_heartbeats_before_rejecting_snapshot_scans"><a class="link" href="#kudu-tserver_missed_heartbeats_before_rejecting_snapshot_scans"><code>--missed_heartbeats_before_rejecting_snapshot_scans</code></a></h4>
+<div class="paragraph">
+<p>The maximum raft heartbeat periods since the tablet has seen safe time advanced before refusing scans at snapshots that aren&#8217;t yet safe and forcing clients to try again.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1.5</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_safe_time_advancement_without_writes"><a class="link" href="#kudu-tserver_safe_time_advancement_without_writes"><code>--safe_time_advancement_without_writes</code></a></h4>
+<div class="paragraph">
+<p>Whether to enable the advancement of "safe" time in the absense of write operations</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_safe_time_max_lag_ms"><a class="link" href="#kudu-tserver_safe_time_max_lag_ms"><code>--safe_time_max_lag_ms</code></a></h4>
+<div class="paragraph">
+<p>The maximum amount of time we allow safe time to lag behind the requested timestampbefore forcing the client to retry, in milliseconds.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>30000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_block_coalesce_close"><a class="link" href="#kudu-tserver_block_coalesce_close"><code>--block_coalesce_close</code></a></h4>
+<div class="paragraph">
+<p>Coalesce synchronization of data during CloseBlocks()</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_block_manager"><a class="link" href="#kudu-tserver_block_manager"><code>--block_manager</code></a></h4>
+<div class="paragraph">
+<p>Which block manager to use for storage. Valid options are 'file' and 'log'.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>log</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_log_container_excess_space_before_cleanup_fraction"><a class="link" href="#kudu-tserver_log_container_excess_space_before_cleanup_fraction"><code>--log_container_excess_space_before_cleanup_fraction</code></a></h4>
+<div class="paragraph">
+<p>Additional fraction of a log container&#8217;s calculated size that must be consumed on disk before the container is considered to be inconsistent and subject to excess space cleanup at block manager startup.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0.10000000000000001</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_log_container_live_metadata_before_compact_ratio"><a class="link" href="#kudu-tserver_log_container_live_metadata_before_compact_ratio"><code>--log_container_live_metadata_before_compact_ratio</code></a></h4>
+<div class="paragraph">
+<p>Desired ratio of live block metadata in log containers. If a container&#8217;s live to total block ratio dips below this value, the container&#8217;s metadata file will be compacted at startup.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0.5</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_log_container_max_blocks"><a class="link" href="#kudu-tserver_log_container_max_blocks"><code>--log_container_max_blocks</code></a></h4>
+<div class="paragraph">
+<p>Maximum number of blocks (soft) of a log container. Use 0 for no limit. Use -1 for no limit except in the case of a kernel bug with hole punching on ext4 (see KUDU-1508 for details).</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>-1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_log_container_max_size"><a class="link" href="#kudu-tserver_log_container_max_size"><code>--log_container_max_size</code></a></h4>
+<div class="paragraph">
+<p>Maximum size (soft) of a log container</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">uint64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10737418240</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_log_container_preallocate_bytes"><a class="link" href="#kudu-tserver_log_container_preallocate_bytes"><code>--log_container_preallocate_bytes</code></a></h4>
+<div class="paragraph">
+<p>Number of bytes to preallocate in a log container when creating new blocks. Set to 0 to disable preallocation</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">uint64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>33554432</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_rpc_acceptor_listen_backlog"><a class="link" href="#kudu-tserver_rpc_acceptor_listen_backlog"><code>--rpc_acceptor_listen_backlog</code></a></h4>
+<div class="paragraph">
+<p>Socket backlog parameter used when listening for RPC connections. This defines the maximum length to which the queue of pending TCP connections inbound to the RPC server may grow. If a connection request arrives when the queue is full, the client may receive an error. Higher values may help the server ride over bursts of new inbound connection requests.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>128</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_rpc_ca_certificate_file"><a class="link" href="#kudu-tserver_rpc_ca_certificate_file"><code>--rpc_ca_certificate_file</code></a></h4>
+<div class="paragraph">
+<p>Path to the PEM encoded X509 certificate of the trusted external certificate authority. The provided certificate should be the root issuer of the certificate passed in '--rpc_certificate_file'.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_rpc_certificate_file"><a class="link" href="#kudu-tserver_rpc_certificate_file"><code>--rpc_certificate_file</code></a></h4>
+<div class="paragraph">
+<p>Path to a PEM encoded X509 certificate to use for securing RPC connections with SSL/TLS. If set, '--rpc_private_key_file' and '--rpc_ca_certificate_file' must be set as well.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_rpc_default_keepalive_time_ms"><a class="link" href="#kudu-tserver_rpc_default_keepalive_time_ms"><code>--rpc_default_keepalive_time_ms</code></a></h4>
+<div class="paragraph">
+<p>If an RPC connection from a client is idle for this amount of time, the server will disconnect the client.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>65000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_rpc_private_key_file"><a class="link" href="#kudu-tserver_rpc_private_key_file"><code>--rpc_private_key_file</code></a></h4>
+<div class="paragraph">
+<p>Path to a PEM encoded private key paired with the certificate from '--rpc_certificate_file'</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_rpc_encrypt_loopback_connections"><a class="link" href="#kudu-tserver_rpc_encrypt_loopback_connections"><code>--rpc_encrypt_loopback_connections</code></a></h4>
+<div class="paragraph">
+<p>Whether to encrypt data transfer on RPC connections that stay within a single host. Encryption here is likely to offer no additional security benefit since only a local 'root' user could intercept the traffic, and wire encryption does not suitably protect against such an attacker.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_rpc_trace_negotiation"><a class="link" href="#kudu-tserver_rpc_trace_negotiation"><code>--rpc_trace_negotiation</code></a></h4>
+<div class="paragraph">
+<p>If enabled, dump traces of all RPC negotiations to the log</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental,advanced,runtime</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_rpc_callback_max_cycles"><a class="link" href="#kudu-tserver_rpc_callback_max_cycles"><code>--rpc_callback_max_cycles</code></a></h4>
+<div class="paragraph">
+<p>The maximum number of cycles for which an RPC callback should be allowed to run without emitting a warning. (Advanced debugging option)</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>100000000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_rpc_negotiation_timeout_ms"><a class="link" href="#kudu-tserver_rpc_negotiation_timeout_ms"><code>--rpc_negotiation_timeout_ms</code></a></h4>
+<div class="paragraph">
+<p>Timeout for negotiating an RPC connection.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>3000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_remember_clients_ttl_ms"><a class="link" href="#kudu-tserver_remember_clients_ttl_ms"><code>--remember_clients_ttl_ms</code></a></h4>
+<div class="paragraph">
+<p>Maximum amount of time, in milliseconds, the server "remembers" a client for the purpose of caching its responses. After this period without hearing from it, the client is no longer remembered and the memory occupied by its responses is reclaimed. Retries of requests older than 'remember_clients_ttl_ms' are treated as new ones.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>3600000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_remember_responses_ttl_ms"><a class="link" href="#kudu-tserver_remember_responses_ttl_ms"><code>--remember_responses_ttl_ms</code></a></h4>
+<div class="paragraph">
+<p>Maximum amount of time, in milliseconds, the server "remembers" a response to a specific request for a client. After this period has elapsed, the response may have been garbage collected and the client might get a response indicating the request is STALE.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>600000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_rpc_dump_all_traces"><a class="link" href="#kudu-tserver_rpc_dump_all_traces"><code>--rpc_dump_all_traces</code></a></h4>
+<div class="paragraph">
+<p>If true, dump all RPC traces at INFO level</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_rpc_max_message_size"><a class="link" href="#kudu-tserver_rpc_max_message_size"><code>--rpc_max_message_size</code></a></h4>
+<div class="paragraph">
+<p>The maximum size of a message that any RPC that the server will accept. Must be at least 1MB.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>52428800</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_ipki_server_key_size"><a class="link" href="#kudu-tserver_ipki_server_key_size"><code>--ipki_server_key_size</code></a></h4>
+<div class="paragraph">
+<p>the number of bits for server cert&#8217;s private key. The server cert is used for TLS connections to and from clients and other servers.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>2048</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_rpc_tls_ciphers"><a class="link" href="#kudu-tserver_rpc_tls_ciphers"><code>--rpc_tls_ciphers</code></a></h4>
+<div class="paragraph">
+<p>The cipher suite preferences to use for TLS-secured RPC connections. Uses the OpenSSL cipher preference list format. See man (1) ciphers for more information.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256AES256-GCM-SHA384:AES128-GCM-SHA256:AES256-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_rpc_tls_min_protocol"><a class="link" href="#kudu-tserver_rpc_tls_min_protocol"><code>--rpc_tls_min_protocol</code></a></h4>
+<div class="paragraph">
+<p>The minimum protocol version to allow when for securing RPC connections with TLS. May be one of 'TLSv1', 'TLSv1.1', or 'TLSv1.2'.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>TLSv1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_web_log_bytes"><a class="link" href="#kudu-tserver_web_log_bytes"><code>--web_log_bytes</code></a></h4>
+<div class="paragraph">
+<p>The maximum number of bytes to display on the debug webserver&#8217;s log page</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1048576</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_max_clock_sync_error_usec"><a class="link" href="#kudu-tserver_max_clock_sync_error_usec"><code>--max_clock_sync_error_usec</code></a></h4>
+<div class="paragraph">
+<p>Maximum allowed clock synchronization error as reported by NTP before the server will abort.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10000000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_rpc_advertised_addresses"><a class="link" href="#kudu-tserver_rpc_advertised_addresses"><code>--rpc_advertised_addresses</code></a></h4>
+<div class="paragraph">
+<p>Comma-separated list of addresses to advertise externally for RPC connections. Ephemeral ports (i.e. port 0) are not allowed. This should be configured when the locally bound RPC addresses specified in --rpc_bind_addresses are not externally resolvable, for example, if Kudu is deployed in a container.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_rpc_num_acceptors_per_address"><a class="link" href="#kudu-tserver_rpc_num_acceptors_per_address"><code>--rpc_num_acceptors_per_address</code></a></h4>
+<div class="paragraph">
+<p>Number of RPC acceptor threads for each bound address</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_rpc_num_service_threads"><a class="link" href="#kudu-tserver_rpc_num_service_threads"><code>--rpc_num_service_threads</code></a></h4>
+<div class="paragraph">
+<p>Number of RPC worker threads to run</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_rpc_service_queue_length"><a class="link" href="#kudu-tserver_rpc_service_queue_length"><code>--rpc_service_queue_length</code></a></h4>
+<div class="paragraph">
+<p>Default length of queue for incoming RPC requests</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>50</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_max_negotiation_threads"><a class="link" href="#kudu-tserver_max_negotiation_threads"><code>--max_negotiation_threads</code></a></h4>
+<div class="paragraph">
+<p>Maximum number of connection negotiation threads.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>50</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_min_negotiation_threads"><a class="link" href="#kudu-tserver_min_negotiation_threads"><code>--min_negotiation_threads</code></a></h4>
+<div class="paragraph">
+<p>Minimum number of connection negotiation threads.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_num_reactor_threads"><a class="link" href="#kudu-tserver_num_reactor_threads"><code>--num_reactor_threads</code></a></h4>
+<div class="paragraph">
+<p>Number of libev reactor threads to start.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>4</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_webserver_enabled"><a class="link" href="#kudu-tserver_webserver_enabled"><code>--webserver_enabled</code></a></h4>
+<div class="paragraph">
+<p>Whether to enable the web server on this daemon. NOTE: disabling the web server is also likely to prevent monitoring systems from properly capturing metrics.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_metrics_log_interval_ms"><a class="link" href="#kudu-tserver_metrics_log_interval_ms"><code>--metrics_log_interval_ms</code></a></h4>
+<div class="paragraph">
+<p>Interval (in milliseconds) at which the server will dump its metrics to a local log file. The log files are located in the same directory as specified by the -log_dir flag. If this is not a positive value, then metrics logging will be disabled.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_webserver_max_post_length_bytes"><a class="link" href="#kudu-tserver_webserver_max_post_length_bytes"><code>--webserver_max_post_length_bytes</code></a></h4>
+<div class="paragraph">
+<p>The maximum length of a POST request that will be accepted by the embedded web server.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1048576</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_webserver_x_frame_options"><a class="link" href="#kudu-tserver_webserver_x_frame_options"><code>--webserver_x_frame_options</code></a></h4>
+<div class="paragraph">
+<p>The webserver will add an 'X-Frame-Options' HTTP header with this value to all responses. This can help prevent clickjacking attacks.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>DENY</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_webserver_advertised_addresses"><a class="link" href="#kudu-tserver_webserver_advertised_addresses"><code>--webserver_advertised_addresses</code></a></h4>
+<div class="paragraph">
+<p>Comma-separated list of addresses to advertise externally for HTTP(S) connections. Ephemeral ports (i.e. port 0) are not allowed. This should be configured when the locally bound webserver address specified in --webserver_interface and --webserver_port are not externally resolvable, for example, if Kudu is deployed in a container.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_webserver_authentication_domain"><a class="link" href="#kudu-tserver_webserver_authentication_domain"><code>--webserver_authentication_domain</code></a></h4>
+<div class="paragraph">
+<p>Domain used for debug webserver authentication</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_webserver_doc_root"><a class="link" href="#kudu-tserver_webserver_doc_root"><code>--webserver_doc_root</code></a></h4>
+<div class="paragraph">
+<p>Files under &lt;webserver_doc_root&gt; are accessible via the debug webserver. Defaults to $KUDU_HOME/www, or if $KUDU_HOME is not set, disables the document root</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_webserver_enable_doc_root"><a class="link" href="#kudu-tserver_webserver_enable_doc_root"><code>--webserver_enable_doc_root</code></a></h4>
+<div class="paragraph">
+<p>If true, webserver may serve static files from the webserver_doc_root</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_webserver_interface"><a class="link" href="#kudu-tserver_webserver_interface"><code>--webserver_interface</code></a></h4>
+<div class="paragraph">
+<p>Interface to start debug webserver on. If blank, webserver binds to 0.0.0.0</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_webserver_num_worker_threads"><a class="link" href="#kudu-tserver_webserver_num_worker_threads"><code>--webserver_num_worker_threads</code></a></h4>
+<div class="paragraph">
+<p>Maximum number of threads to start for handling web server requests</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>50</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_webserver_password_file"><a class="link" href="#kudu-tserver_webserver_password_file"><code>--webserver_password_file</code></a></h4>
+<div class="paragraph">
+<p>(Optional) Location of .htpasswd file containing user names and hashed passwords for debug webserver authentication</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_budgeted_compaction_target_rowset_size"><a class="link" href="#kudu-tserver_budgeted_compaction_target_rowset_size"><code>--budgeted_compaction_target_rowset_size</code></a></h4>
+<div class="paragraph">
+<p>The target size for DiskRowSets during flush/compact when the budgeted compaction policy is used</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>33554432</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_compaction_approximation_ratio"><a class="link" href="#kudu-tserver_compaction_approximation_ratio"><code>--compaction_approximation_ratio</code></a></h4>
+<div class="paragraph">
+<p>Approximation ratio allowed for optimal compaction calculation. A value of 1.05 indicates that the policy may use an approximate result if it is known to be within 5% of the optimal solution.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1.0499999523162842</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_deltafile_default_block_size"><a class="link" href="#kudu-tserver_deltafile_default_block_size"><code>--deltafile_default_block_size</code></a></h4>
+<div class="paragraph">
+<p>Block size for delta files. In the future, this may become configurable on a per-table basis.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>32768</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_deltafile_default_compression_codec"><a class="link" href="#kudu-tserver_deltafile_default_compression_codec"><code>--deltafile_default_compression_codec</code></a></h4>
+<div class="paragraph">
+<p>The compression codec used when writing deltafiles.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>lz4</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_default_composite_key_index_block_size_bytes"><a class="link" href="#kudu-tserver_default_composite_key_index_block_size_bytes"><code>--default_composite_key_index_block_size_bytes</code></a></h4>
+<div class="paragraph">
+<p>Block size used for composite key indexes.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>4096</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_tablet_delta_store_major_compact_min_ratio"><a class="link" href="#kudu-tserver_tablet_delta_store_major_compact_min_ratio"><code>--tablet_delta_store_major_compact_min_ratio</code></a></h4>
+<div class="paragraph">
+<p>Minimum ratio of sizeof(deltas) to sizeof(base data) before a major compaction can run (Advanced option)</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0.10000000149011612</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_tablet_delta_store_minor_compact_max"><a class="link" href="#kudu-tserver_tablet_delta_store_minor_compact_max"><code>--tablet_delta_store_minor_compact_max</code></a></h4>
+<div class="paragraph">
+<p>How many delta stores are required before forcing a minor delta compaction (Advanced option)</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_tablet_bloom_block_size"><a class="link" href="#kudu-tserver_tablet_bloom_block_size"><code>--tablet_bloom_block_size</code></a></h4>
+<div class="paragraph">
+<p>Block size of the bloom filters used for tablet keys.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>4096</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_tablet_bloom_target_fp_rate"><a class="link" href="#kudu-tserver_tablet_bloom_target_fp_rate"><code>--tablet_bloom_target_fp_rate</code></a></h4>
+<div class="paragraph">
+<p>Target false-positive rate (between 0 and 1) to size tablet key bloom filters. A lower false positive rate may reduce the number of disk seeks required in heavy insert workloads, at the expense of more space and RAM required for bloom filters.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>9.9999997473787516e-05</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_tablet_compaction_budget_mb"><a class="link" href="#kudu-tserver_tablet_compaction_budget_mb"><code>--tablet_compaction_budget_mb</code></a></h4>
+<div class="paragraph">
+<p>Budget for a single compaction</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>128</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_tablet_history_max_age_sec"><a class="link" href="#kudu-tserver_tablet_history_max_age_sec"><code>--tablet_history_max_age_sec</code></a></h4>
+<div class="paragraph">
+<p>Number of seconds to retain tablet history. Reads initiated at a snapshot that is older than this age will be rejected. To disable history removal, set to -1.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>900</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_tablet_throttler_burst_factor"><a class="link" href="#kudu-tserver_tablet_throttler_burst_factor"><code>--tablet_throttler_burst_factor</code></a></h4>
+<div class="paragraph">
+<p>Burst factor for write RPC throttling. The maximum rate the throttler allows within a token refill period (100ms) equals burst factor multiply base rate.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_tablet_throttler_bytes_per_sec"><a class="link" href="#kudu-tserver_tablet_throttler_bytes_per_sec"><code>--tablet_throttler_bytes_per_sec</code></a></h4>
+<div class="paragraph">
+<p>Maximum write RPC IO rate (byte/s) allowed for a tablet, write RPC exceeding this limit will be throttled. 0 means no limit.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_tablet_throttler_rpc_per_sec"><a class="link" href="#kudu-tserver_tablet_throttler_rpc_per_sec"><code>--tablet_throttler_rpc_per_sec</code></a></h4>
+<div class="paragraph">
+<p>Maximum write RPC rate (op/s) allowed for a tablet, write RPC exceeding this limit will be throttled. 0 means no limit.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_flush_threshold_mb"><a class="link" href="#kudu-tserver_flush_threshold_mb"><code>--flush_threshold_mb</code></a></h4>
+<div class="paragraph">
+<p>Size at which MemRowSet flushes are triggered. A MRS can still flush below this threshold if it if hasn&#8217;t flushed in a while, or if the server-wide memory limit has been reached.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1024</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_flush_threshold_secs"><a class="link" href="#kudu-tserver_flush_threshold_secs"><code>--flush_threshold_secs</code></a></h4>
+<div class="paragraph">
+<p>Number of seconds after which a non-empty MemRowSet will become flushable even if it is not large.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>120</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_tablet_transaction_memory_limit_mb"><a class="link" href="#kudu-tserver_tablet_transaction_memory_limit_mb"><code>--tablet_transaction_memory_limit_mb</code></a></h4>
+<div class="paragraph">
+<p>Maximum amount of memory that may be consumed by all in-flight transactions belonging to a particular tablet. When this limit is reached, new transactions will be rejected and clients will be forced to retry them. If -1, transaction memory tracking is disabled.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>64</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_heartbeat_interval_ms"><a class="link" href="#kudu-tserver_heartbeat_interval_ms"><code>--heartbeat_interval_ms</code></a></h4>
+<div class="paragraph">
+<p>Interval at which the TS heartbeats to the master.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_heartbeat_max_failures_before_backoff"><a class="link" href="#kudu-tserver_heartbeat_max_failures_before_backoff"><code>--heartbeat_max_failures_before_backoff</code></a></h4>
+<div class="paragraph">
+<p>Maximum number of consecutive heartbeat failures until the Tablet Server backs off to the normal heartbeat interval, rather than retrying.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>3</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_heartbeat_rpc_timeout_ms"><a class="link" href="#kudu-tserver_heartbeat_rpc_timeout_ms"><code>--heartbeat_rpc_timeout_ms</code></a></h4>
+<div class="paragraph">
+<p>Timeout used for the TS&#8594;Master heartbeat RPCs.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>15000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_scanner_ttl_ms"><a class="link" href="#kudu-tserver_scanner_ttl_ms"><code>--scanner_ttl_ms</code></a></h4>
+<div class="paragraph">
+<p>Number of milliseconds of inactivity allowed for a scannerbefore it may be expired</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>60000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_scanner_batch_size_rows"><a class="link" href="#kudu-tserver_scanner_batch_size_rows"><code>--scanner_batch_size_rows</code></a></h4>
+<div class="paragraph">
+<p>The number of rows to batch for servicing scan requests.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>100</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_scanner_default_batch_size_bytes"><a class="link" href="#kudu-tserver_scanner_default_batch_size_bytes"><code>--scanner_default_batch_size_bytes</code></a></h4>
+<div class="paragraph">
+<p>The default size for batches of scan results</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1048576</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_scanner_max_batch_size_bytes"><a class="link" href="#kudu-tserver_scanner_max_batch_size_bytes"><code>--scanner_max_batch_size_bytes</code></a></h4>
+<div class="paragraph">
+<p>The maximum batch size that a client may request for scan results.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>8388608</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_scanner_max_wait_ms"><a class="link" href="#kudu-tserver_scanner_max_wait_ms"><code>--scanner_max_wait_ms</code></a></h4>
+<div class="paragraph">
+<p>The maximum amount of time (in milliseconds) we&#8217;ll hang a scanner thread waiting for safe time to advance or transactions to commit, even if its deadline allows waiting longer.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_num_tablets_to_copy_simultaneously"><a class="link" href="#kudu-tserver_num_tablets_to_copy_simultaneously"><code>--num_tablets_to_copy_simultaneously</code></a></h4>
+<div class="paragraph">
+<p>Number of threads available to copy tablets from remote servers.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_num_tablets_to_open_simultaneously"><a class="link" href="#kudu-tserver_num_tablets_to_open_simultaneously"><code>--num_tablets_to_open_simultaneously</code></a></h4>
+<div class="paragraph">
+<p>Number of threads available to open tablets during startup. If this is set to 0 (the default), then the number of bootstrap threads will be set based on the number of data directories. If the data directories are on some very fast storage device such as SSD or a RAID array, it may make sense to manually tune this.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_trace_to_console"><a class="link" href="#kudu-tserver_trace_to_console"><code>--trace_to_console</code></a></h4>
+<div class="paragraph">
+<p>Trace pattern specifying which trace events should be dumped directly to the console</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_suicide_on_eio"><a class="link" href="#kudu-tserver_suicide_on_eio"><code>--suicide_on_eio</code></a></h4>
+<div class="paragraph">
+<p>Kill the process if an I/O operation results in EIO</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_file_cache_expiry_period_ms"><a class="link" href="#kudu-tserver_file_cache_expiry_period_ms"><code>--file_cache_expiry_period_ms</code></a></h4>
+<div class="paragraph">
+<p>Period of time (in ms) between removing expired file cache descriptors</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>60000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_umask"><a class="link" href="#kudu-tserver_umask"><code>--umask</code></a></h4>
+<div class="paragraph">
+<p>The umask that will be used when creating files and directories. Permissions of top-level data directories will also be modified at start-up to conform to the given umask. Changing this value may enable unauthorized local users to read or modify data stored by Kudu.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>077</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_max_log_files"><a class="link" href="#kudu-tserver_max_log_files"><code>--max_log_files</code></a></h4>
+<div class="paragraph">
+<p>Maximum number of log files to retain per severity level. The most recent log files are retained. If set to 0, all log files are retained.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental,runtime</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_data_gc_min_size_mb"><a class="link" href="#kudu-tserver_data_gc_min_size_mb"><code>--data_gc_min_size_mb</code></a></h4>
+<div class="paragraph">
+<p>The (exclusive) minimum number of megabytes of ancient data on disk, per tablet, needed to prioritize deletion of that data.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_data_gc_prioritization_prob"><a class="link" href="#kudu-tserver_data_gc_prioritization_prob"><code>--data_gc_prioritization_prob</code></a></h4>
+<div class="paragraph">
+<p>The probability that we will prioritize data GC over performance improvement operations. If set to 1.0, we will always prefer to delete old data before running performance improvement operations such as delta compaction.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0.5</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_log_target_replay_size_mb"><a class="link" href="#kudu-tserver_log_target_replay_size_mb"><code>--log_target_replay_size_mb</code></a></h4>
+<div class="paragraph">
+<p>The target maximum size of logs to be replayed at startup. If a tablet has in-memory operations that are causing more than this size of logs to be retained, then the maintenance manager will prioritize flushing these operations to disk.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1024</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_metrics_retirement_age_ms"><a class="link" href="#kudu-tserver_metrics_retirement_age_ms"><code>--metrics_retirement_age_ms</code></a></h4>
+<div class="paragraph">
+<p>The minimum number of milliseconds a metric will be kept for after it is no longer active. (Advanced option)</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>120000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,runtime</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_local_ip_for_outbound_sockets"><a class="link" href="#kudu-tserver_local_ip_for_outbound_sockets"><code>--local_ip_for_outbound_sockets</code></a></h4>
+<div class="paragraph">
+<p>IP to bind to when making outgoing socket connections. This must be an IP address of the form A.B.C.D, not a hostname. Advanced parameter, subject to change.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_nvm_cache_allocation_retry_count"><a class="link" href="#kudu-tserver_nvm_cache_allocation_retry_count"><code>--nvm_cache_allocation_retry_count</code></a></h4>
+<div class="paragraph">
+<p>The number of times that the NVM cache will retry attempts to allocate memory for new entries. In between attempts, a cache entry will be evicted.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_nvm_cache_path"><a class="link" href="#kudu-tserver_nvm_cache_path"><code>--nvm_cache_path</code></a></h4>
+<div class="paragraph">
+<p>The path at which the NVM cache will try to allocate its memory. This can be a tmpfs or ramfs for testing purposes.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>/vmem</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_memory_limit_soft_percentage"><a class="link" href="#kudu-tserver_memory_limit_soft_percentage"><code>--memory_limit_soft_percentage</code></a></h4>
+<div class="paragraph">
+<p>Percentage of the hard memory limit that this daemon may consume before memory throttling of writes begins. The greater the excess, the higher the chance of throttling. In general, a lower soft limit leads to smoother write latencies but decreased throughput, and vice versa for a higher soft limit.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>80</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_memory_limit_warn_threshold_percentage"><a class="link" href="#kudu-tserver_memory_limit_warn_threshold_percentage"><code>--memory_limit_warn_threshold_percentage</code></a></h4>
+<div class="paragraph">
+<p>Percentage of the hard memory limit that this daemon may consume before WARNING level messages are periodically logged.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>98</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_memory_pressure_percentage"><a class="link" href="#kudu-tserver_memory_pressure_percentage"><code>--memory_pressure_percentage</code></a></h4>
+<div class="paragraph">
+<p>Percentage of the hard memory limit that this daemon may consume before flushing of in-memory data becomes prioritized.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>60</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_tcmalloc_max_free_bytes_percentage"><a class="link" href="#kudu-tserver_tcmalloc_max_free_bytes_percentage"><code>--tcmalloc_max_free_bytes_percentage</code></a></h4>
+<div class="paragraph">
+<p>Maximum percentage of the RSS that tcmalloc is allowed to use for reserved but unallocated memory.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_drop_log_memory"><a class="link" href="#kudu-tserver_drop_log_memory"><code>--drop_log_memory</code></a></h4>
+<div class="paragraph">
+<p>Drop in-memory buffers of log contents. Logs can grow very quickly and they are rarely read before they need to be evicted from memory. Instead, drop them from memory as soon as they are flushed to disk.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_log_backtrace_at"><a class="link" href="#kudu-tserver_log_backtrace_at"><code>--log_backtrace_at</code></a></h4>
+<div class="paragraph">
+<p>Emit a backtrace when logging at file:linenum.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_logbuflevel"><a class="link" href="#kudu-tserver_logbuflevel"><code>--logbuflevel</code></a></h4>
+<div class="paragraph">
+<p>Buffer log messages logged at this level or lower (-1 means don&#8217;t buffer; 0 means buffer INFO only; &#8230;&#8203;)</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_logbufsecs"><a class="link" href="#kudu-tserver_logbufsecs"><code>--logbufsecs</code></a></h4>
+<div class="paragraph">
+<p>Buffer log messages for at most this many seconds</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>5</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect3">
+<h4 id="kudu-tserver_logfile_mode"><a class="link" href="#kudu-tserver_logfile_mode"><code>--logfile_mode</code></a></h4>
+<div class="paragraph">
+<p>Log file mode/permissions.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>436</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"></td>
+</tr>
+</tbody>
+</table>
+<hr>
+</div>
+</div>
+</div>
+</div>
+    </div>
+    <div class="col-md-3">
+
+  <div id="toc" data-spy="affix" data-offset-top="70">
+  <ul>
+
+      <li>
+
+          <a href="index.html">Introducing Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="release_notes.html">Kudu Release Notes</a> 
+      </li> 
+      <li>
+
+          <a href="quickstart.html">Getting Started with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="installation.html">Installation Guide</a> 
+      </li> 
+      <li>
+
+          <a href="configuration.html">Configuring Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="kudu_impala_integration.html">Using Impala with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="administration.html">Administering Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="troubleshooting.html">Troubleshooting Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="developing.html">Developing Applications with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="schema_design.html">Kudu Schema Design</a> 
+      </li> 
+      <li>
+
+          <a href="security.html">Kudu Security</a> 
+      </li> 
+      <li>
+
+          <a href="transaction_semantics.html">Kudu Transaction Semantics</a> 
+      </li> 
+      <li>
+
+          <a href="background_tasks.html">Background Maintenance Tasks</a> 
+      </li> 
+      <li>
+<span class="active-toc">Kudu Configuration Reference</span>
+            <ul class="sectlevel1">
+<li><a href="#kudu-master_supported"><code>kudu-master</code> Flags</a>
+<ul class="sectlevel2">
+<li><a href="#kudu-master_stable">Stable Flags</a></li>
+<li><a href="#kudu-master_stable_advanced">Stable, Advanced Flags</a></li>
+<li><a href="#kudu-master_evolving">Evolving Flags</a></li>
+</ul>
+</li>
+<li><a href="#kudu-tserver_supported"><code>kudu-tserver</code> Flags</a>
+<ul class="sectlevel2">
+<li><a href="#kudu-tserver_stable">Stable Flags</a></li>
+<li><a href="#kudu-tserver_stable_advanced">Stable, Advanced Flags</a></li>
+<li><a href="#kudu-tserver_evolving">Evolving Flags</a></li>
+</ul>
+</li>
+<li><a href="#configuration_reference_unsupported">Apache Kudu Unsupported Configuration Flags</a>
+<ul class="sectlevel2">
+<li><a href="#kudu-master_unsupported"><code>kudu-master</code> Unsupported Flags</a></li>
+<li><a href="#kudu-tserver_unsupported"><code>kudu-tserver</code> Unsupported Flags</a></li>
+</ul>
+</li>
+</ul> 
+      </li> 
+      <li>
+
+          <a href="command_line_tools_reference.html">Kudu Command Line Tools Reference</a> 
+      </li> 
+      <li>
+
+          <a href="known_issues.html">Known Issues and Limitations</a> 
+      </li> 
+      <li>
+
+          <a href="contributing.html">Contributing to Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="export_control.html">Export Control Notice</a> 
+      </li> 
+  </ul>
+  </div>
+    </div>
+  </div>
+</div>
+      <footer class="footer">
+        <p class="small">
+        Copyright &copy; 2016 The Apache Software Foundation.  Last updated 2017-06-13 10:50:35 PDT 
+        </p>
+      </footer>
+    </div>
+    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
+    <script>
+      // Try to detect touch-screen devices. Note: Many laptops have touch screens.
+      $(document).ready(function() {
+        if ("ontouchstart" in document.documentElement) {
+          $(document.documentElement).addClass("touch");
+        } else {
+          $(document.documentElement).addClass("no-touch");
+        }
+      });
+    </script>
+    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"
+            integrity="sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS"
+            crossorigin="anonymous"></script>
+    <script>
+      (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+      (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+      m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+      })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+
+      ga('create', 'UA-68448017-1', 'auto');
+      ga('send', 'pageview');
+    </script>
+    <script src="https://cdnjs.cloudflare.com/ajax/libs/anchor-js/3.1.0/anchor.js"></script>
+    <script>
+      anchors.options = {
+        placement: 'right',
+        visible: 'touch',
+      };
+      anchors.add();
+    </script>
+  </body>
+</html>
+
diff --git a/releases/1.4.0/docs/configuration_reference_unsupported.html b/releases/1.4.0/docs/configuration_reference_unsupported.html
new file mode 100644
index 0000000..2d6b0cc
--- /dev/null
+++ b/releases/1.4.0/docs/configuration_reference_unsupported.html
@@ -0,0 +1,7039 @@
+<!DOCTYPE html>
+<html lang="en">
+  <head>
+    <meta charset="utf-8" />
+    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
+    <meta name="viewport" content="width=device-width, initial-scale=1" />
+    <!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
+    <meta name="description" content="A new open source Apache Hadoop ecosystem project, Apache Kudu completes Hadoop's storage layer to enable fast analytics on fast data" />
+    <meta name="author" content="Cloudera" />
+    <title>Apache Kudu - Apache Kudu Unsupported Configuration Flags</title>
+    <!-- Bootstrap core CSS -->
+    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css"
+          integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7"
+          crossorigin="anonymous">
+
+    <!-- Custom styles for this template -->
+    <link href="/css/kudu.css" rel="stylesheet"/>
+    <link href="/css/asciidoc.css" rel="stylesheet"/>
+    <link rel="shortcut icon" href="/img/logo-favicon.ico" />
+    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.6.1/css/font-awesome.min.css" />
+
+    
+
+    <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+        <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+        <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+        <![endif]-->
+  </head>
+  <body>
+    <div class="kudu-site container-fluid">
+      <!-- Static navbar -->
+        <nav class="navbar navbar-default">
+          <div class="container-fluid">
+            <div class="navbar-header">
+              <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
+                <span class="sr-only">Toggle navigation</span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+              </button>
+              
+              <a class="logo" href="/"><img
+                src="//d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_80px.png"
+                srcset="//d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_80px.png 1x, //d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_160px.png 2x"
+                alt="Apache Kudu"/></a>
+              
+            </div>
+            <div id="navbar" class="collapse navbar-collapse">
+              <ul class="nav navbar-nav navbar-right">
+                <li >
+                  <a href="/">Home</a>
+                </li>
+                <li >
+                  <a href="/overview.html">Overview</a>
+                </li>
+                <li class="active">
+                  <a href="/docs/">Documentation</a>
+                </li>
+                <li >
+                  <a href="/releases/">Download</a>
+                </li>
+                <li >
+                  <a href="/blog/">Blog</a>
+                </li>
+                <!-- NOTE: this dropdown menu does not appear on Mobile, so don't add anything here
+                     that doesn't also appear elsewhere on the site. -->
+                <li class="dropdown">
+                  <a href="/community.html" role="button" aria-haspopup="true" aria-expanded="false">Community <span class="caret"></span></a>
+                  <ul class="dropdown-menu">
+                    <li class="dropdown-header">GET IN TOUCH</li>
+                    <li><a class="icon email" href="/community.html">Mailing Lists</a></li>
+                    <li><a class="icon slack" href="https://getkudu-slack.herokuapp.com/">Slack Channel</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li><a href="/community.html#meetups-user-groups-and-conference-presentations">Events and Meetups</a></li>
+                    <li><a href="/committers.html">Project Committers</a></li>
+                    <!--<li><a href="/roadmap.html">Roadmap</a></li>-->
+                    <li><a href="/community.html#contributions">How to Contribute</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li class="dropdown-header">DEVELOPER RESOURCES</li>
+                    <li><a class="icon github" href="https://github.com/apache/incubator-kudu">GitHub</a></li>
+                    <li><a class="icon gerrit" href="http://gerrit.cloudera.org:8080/#/q/status:open+project:kudu">Gerrit Code Review</a></li>
+                    <li><a class="icon jira" href="https://issues.apache.org/jira/browse/KUDU">JIRA Issue Tracker</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li class="dropdown-header">SOCIAL MEDIA</li>
+                    <li><a class="icon twitter" href="https://twitter.com/ApacheKudu">Twitter</a></li>
+                  </ul>
+                </li>
+                <li >
+                  <a href="/faq.html">FAQ</a>
+                </li>
+              </ul><!-- /.nav -->
+            </div><!-- /#navbar -->
+          </div><!-- /.container-fluid -->
+        </nav>
+
+<!--
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
+
+
+<div class="container">
+  <div class="row">
+    <div class="col-md-9">
+
+<h1>Apache Kudu Unsupported Configuration Flags</h1>
+      <div id="preamble">
+<div class="sectionbody">
+<div class="admonitionblock warning">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-warning" title="Warning"></i>
+</td>
+<td class="content">
+These flags are unsupported and are included for informational purposes only.
+They are subject to being changed or removed at any time.
+</td>
+</tr>
+</table>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_unsupported"><a class="link" href="#kudu-master_unsupported"><code>kudu-master</code> Unsupported Flags</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Flags not marked <code>stable</code> or <code>evolving</code> are considered experimental and are
+<strong>unsupported</strong>. They are included here for informational purposes only and are
+subject to being changed or removed without notice.</p>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_block_cache_type"><a class="link" href="#kudu-master_block_cache_type"><code>--block_cache_type</code></a></h3>
+<div class="paragraph">
+<p>Which type of block cache to use for caching data. Valid choices are 'DRAM' or 'NVM'. DRAM, the default, caches data in regular memory. 'NVM' caches data in a memory-mapped file using the NVML library.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>DRAM</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_min_compression_ratio"><a class="link" href="#kudu-master_min_compression_ratio"><code>--min_compression_ratio</code></a></h3>
+<div class="paragraph">
+<p>If a column compression codec is configured, but the codec is unable to achieve a compression ratio at least as good as the configured value, then the data will be written uncompressed. This will reduce CPU overhead on the read side at the expense of a small amount of extra space if the codec encounters portions of data that are not easily compressible.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0.90000000000000002</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_cfile_default_block_size"><a class="link" href="#kudu-master_cfile_default_block_size"><code>--cfile_default_block_size</code></a></h3>
+<div class="paragraph">
+<p>The default block size to use in cfiles</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>262144</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_cfile_default_compression_codec"><a class="link" href="#kudu-master_cfile_default_compression_codec"><code>--cfile_default_compression_codec</code></a></h3>
+<div class="paragraph">
+<p>Default cfile block compression codec.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>none</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_cfile_do_on_finish"><a class="link" href="#kudu-master_cfile_do_on_finish"><code>--cfile_do_on_finish</code></a></h3>
+<div class="paragraph">
+<p>What to do to cfile blocks when writing is finished. Possible values are 'close', 'flush', or 'nothing'.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>flush</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_codegen_dump_functions"><a class="link" href="#kudu-master_codegen_dump_functions"><code>--codegen_dump_functions</code></a></h3>
+<div class="paragraph">
+<p>Whether to print the LLVM IR for generated functions</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_codegen_dump_mc"><a class="link" href="#kudu-master_codegen_dump_mc"><code>--codegen_dump_mc</code></a></h3>
+<div class="paragraph">
+<p>Whether to dump the disassembly of the machine code for generated functions.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_codegen_cache_capacity"><a class="link" href="#kudu-master_codegen_cache_capacity"><code>--codegen_cache_capacity</code></a></h3>
+<div class="paragraph">
+<p>Number of entries which may be stored in the code generation cache.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>100</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_codegen_time_compilation"><a class="link" href="#kudu-master_codegen_time_compilation"><code>--codegen_time_compilation</code></a></h3>
+<div class="paragraph">
+<p>Whether to print time that each code generation request took.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_consensus_rpc_timeout_ms"><a class="link" href="#kudu-master_consensus_rpc_timeout_ms"><code>--consensus_rpc_timeout_ms</code></a></h3>
+<div class="paragraph">
+<p>Timeout used for all consensus internal RPC communications.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_consensus_max_batch_size_bytes"><a class="link" href="#kudu-master_consensus_max_batch_size_bytes"><code>--consensus_max_batch_size_bytes</code></a></h3>
+<div class="paragraph">
+<p>The maximum per-tablet RPC batch size when updating peers.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1048576</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_follower_unavailable_considered_failed_sec"><a class="link" href="#kudu-master_follower_unavailable_considered_failed_sec"><code>--follower_unavailable_considered_failed_sec</code></a></h3>
+<div class="paragraph">
+<p>Seconds that a leader is unable to successfully heartbeat to a follower after which the follower is considered to be failed and evicted from the config.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>300</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_group_commit_queue_size_bytes"><a class="link" href="#kudu-master_group_commit_queue_size_bytes"><code>--group_commit_queue_size_bytes</code></a></h3>
+<div class="paragraph">
+<p>Maximum size of the group commit queue in bytes</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>4194304</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_log_compression_codec"><a class="link" href="#kudu-master_log_compression_codec"><code>--log_compression_codec</code></a></h3>
+<div class="paragraph">
+<p>Codec to use for compressing WAL segments.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>LZ4</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_log_max_segments_to_retain"><a class="link" href="#kudu-master_log_max_segments_to_retain"><code>--log_max_segments_to_retain</code></a></h3>
+<div class="paragraph">
+<p>The maximum number of past log segments to keep at all times for the purposes of catching up other peers.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>80</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental,advanced,runtime</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_log_min_segments_to_retain"><a class="link" href="#kudu-master_log_min_segments_to_retain"><code>--log_min_segments_to_retain</code></a></h3>
+<div class="paragraph">
+<p>The minimum number of past log segments to keep at all times, regardless of what is required for durability. Must be at least 1.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,runtime</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_global_log_cache_size_limit_mb"><a class="link" href="#kudu-master_global_log_cache_size_limit_mb"><code>--global_log_cache_size_limit_mb</code></a></h3>
+<div class="paragraph">
+<p>Server-wide version of 'log_cache_size_limit_mb'. The total memory used for caching log entries across all tablets is kept under this threshold.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1024</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_log_cache_size_limit_mb"><a class="link" href="#kudu-master_log_cache_size_limit_mb"><code>--log_cache_size_limit_mb</code></a></h3>
+<div class="paragraph">
+<p>The total per-tablet size of consensus entries which may be kept in memory. The log cache attempts to keep all entries which have not yet been replicated to all followers in memory, but if the total size of those entries exceeds this limit within an individual tablet, the oldest will be evicted.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>128</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_log_async_preallocate_segments"><a class="link" href="#kudu-master_log_async_preallocate_segments"><code>--log_async_preallocate_segments</code></a></h3>
+<div class="paragraph">
+<p>Whether the WAL segments preallocation should happen asynchronously</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_log_preallocate_segments"><a class="link" href="#kudu-master_log_preallocate_segments"><code>--log_preallocate_segments</code></a></h3>
+<div class="paragraph">
+<p>Whether the WAL should preallocate the entire segment before writing to it</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_log_segment_size_mb"><a class="link" href="#kudu-master_log_segment_size_mb"><code>--log_segment_size_mb</code></a></h3>
+<div class="paragraph">
+<p>The default size for log segments, in MB</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>8</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_evict_failed_followers"><a class="link" href="#kudu-master_evict_failed_followers"><code>--evict_failed_followers</code></a></h3>
+<div class="paragraph">
+<p>Whether to evict followers from the Raft config that have fallen too far behind the leader&#8217;s log to catch up normally or have been unreachable by the leader for longer than follower_unavailable_considered_failed_sec</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_leader_failure_exp_backoff_max_delta_ms"><a class="link" href="#kudu-master_leader_failure_exp_backoff_max_delta_ms"><code>--leader_failure_exp_backoff_max_delta_ms</code></a></h3>
+<div class="paragraph">
+<p>Maximum time to sleep in between leader election retries, in addition to the regular timeout. When leader election fails the interval in between retries increases exponentially, up to this value.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>20000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_leader_failure_max_missed_heartbeat_periods"><a class="link" href="#kudu-master_leader_failure_max_missed_heartbeat_periods"><code>--leader_failure_max_missed_heartbeat_periods</code></a></h3>
+<div class="paragraph">
+<p>Maximum heartbeat periods that the leader can fail to heartbeat in before we consider the leader to be failed. The total failure timeout in milliseconds is raft_heartbeat_interval_ms times leader_failure_max_missed_heartbeat_periods. The value passed to this flag may be fractional.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>3</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_leader_failure_monitor_check_mean_ms"><a class="link" href="#kudu-master_leader_failure_monitor_check_mean_ms"><code>--leader_failure_monitor_check_mean_ms</code></a></h3>
+<div class="paragraph">
+<p>The mean failure-checking interval of the randomized failure monitor. If this is configured to -1 (the default), uses the value of 'raft_heartbeat_interval_ms'.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>-1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_leader_failure_monitor_check_stddev_ms"><a class="link" href="#kudu-master_leader_failure_monitor_check_stddev_ms"><code>--leader_failure_monitor_check_stddev_ms</code></a></h3>
+<div class="paragraph">
+<p>The standard deviation of the failure-checking interval of the randomized failure monitor. If this is configured to -1 (the default), this is set to half of the mean check interval.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>-1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_raft_enable_pre_election"><a class="link" href="#kudu-master_raft_enable_pre_election"><code>--raft_enable_pre_election</code></a></h3>
+<div class="paragraph">
+<p>When enabled, candidates will call a pre-election before running a real leader election.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_raft_heartbeat_interval_ms"><a class="link" href="#kudu-master_raft_heartbeat_interval_ms"><code>--raft_heartbeat_interval_ms</code></a></h3>
+<div class="paragraph">
+<p>The heartbeat interval for Raft replication. The leader produces heartbeats to followers at this interval. The followers expect a heartbeat at this interval and consider a leader to have failed if it misses several in a row.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>500</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_missed_heartbeats_before_rejecting_snapshot_scans"><a class="link" href="#kudu-master_missed_heartbeats_before_rejecting_snapshot_scans"><code>--missed_heartbeats_before_rejecting_snapshot_scans</code></a></h3>
+<div class="paragraph">
+<p>The maximum raft heartbeat periods since the tablet has seen safe time advanced before refusing scans at snapshots that aren&#8217;t yet safe and forcing clients to try again.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1.5</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_safe_time_advancement_without_writes"><a class="link" href="#kudu-master_safe_time_advancement_without_writes"><code>--safe_time_advancement_without_writes</code></a></h3>
+<div class="paragraph">
+<p>Whether to enable the advancement of "safe" time in the absense of write operations</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_safe_time_max_lag_ms"><a class="link" href="#kudu-master_safe_time_max_lag_ms"><code>--safe_time_max_lag_ms</code></a></h3>
+<div class="paragraph">
+<p>The maximum amount of time we allow safe time to lag behind the requested timestampbefore forcing the client to retry, in milliseconds.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>30000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_block_coalesce_close"><a class="link" href="#kudu-master_block_coalesce_close"><code>--block_coalesce_close</code></a></h3>
+<div class="paragraph">
+<p>Coalesce synchronization of data during CloseBlocks()</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_block_manager"><a class="link" href="#kudu-master_block_manager"><code>--block_manager</code></a></h3>
+<div class="paragraph">
+<p>Which block manager to use for storage. Valid options are 'file' and 'log'.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>log</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_log_container_excess_space_before_cleanup_fraction"><a class="link" href="#kudu-master_log_container_excess_space_before_cleanup_fraction"><code>--log_container_excess_space_before_cleanup_fraction</code></a></h3>
+<div class="paragraph">
+<p>Additional fraction of a log container&#8217;s calculated size that must be consumed on disk before the container is considered to be inconsistent and subject to excess space cleanup at block manager startup.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0.10000000000000001</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_log_container_live_metadata_before_compact_ratio"><a class="link" href="#kudu-master_log_container_live_metadata_before_compact_ratio"><code>--log_container_live_metadata_before_compact_ratio</code></a></h3>
+<div class="paragraph">
+<p>Desired ratio of live block metadata in log containers. If a container&#8217;s live to total block ratio dips below this value, the container&#8217;s metadata file will be compacted at startup.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0.5</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_log_container_max_blocks"><a class="link" href="#kudu-master_log_container_max_blocks"><code>--log_container_max_blocks</code></a></h3>
+<div class="paragraph">
+<p>Maximum number of blocks (soft) of a log container. Use 0 for no limit. Use -1 for no limit except in the case of a kernel bug with hole punching on ext4 (see KUDU-1508 for details).</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>-1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_log_container_max_size"><a class="link" href="#kudu-master_log_container_max_size"><code>--log_container_max_size</code></a></h3>
+<div class="paragraph">
+<p>Maximum size (soft) of a log container</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">uint64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10737418240</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_log_container_preallocate_bytes"><a class="link" href="#kudu-master_log_container_preallocate_bytes"><code>--log_container_preallocate_bytes</code></a></h3>
+<div class="paragraph">
+<p>Number of bytes to preallocate in a log container when creating new blocks. Set to 0 to disable preallocation</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">uint64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>33554432</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_catalog_manager_delete_orphaned_tablets"><a class="link" href="#kudu-master_catalog_manager_delete_orphaned_tablets"><code>--catalog_manager_delete_orphaned_tablets</code></a></h3>
+<div class="paragraph">
+<p>Whether the master should delete tablets reported by tablet servers for which there are no corresponding records in the master&#8217;s metadata. Use this option with care; it may cause permanent tablet data loss under specific (and rare) cases of master failures!</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_default_num_replicas"><a class="link" href="#kudu-master_default_num_replicas"><code>--default_num_replicas</code></a></h3>
+<div class="paragraph">
+<p>Default number of replicas for tables that do not have the num_replicas set.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>3</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_master_failover_catchup_timeout_ms"><a class="link" href="#kudu-master_master_failover_catchup_timeout_ms"><code>--master_failover_catchup_timeout_ms</code></a></h3>
+<div class="paragraph">
+<p>Amount of time to give a newly-elected leader master to load the previous master&#8217;s metadata and become active. If this time is exceeded, the node crashes.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>30000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_master_ts_rpc_timeout_ms"><a class="link" href="#kudu-master_master_ts_rpc_timeout_ms"><code>--master_ts_rpc_timeout_ms</code></a></h3>
+<div class="paragraph">
+<p>Timeout used for the master&#8594;TS async rpc calls.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>30000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_max_create_tablets_per_ts"><a class="link" href="#kudu-master_max_create_tablets_per_ts"><code>--max_create_tablets_per_ts</code></a></h3>
+<div class="paragraph">
+<p>The number of tablets per TS that can be requested for a new table.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>20</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_table_locations_ttl_ms"><a class="link" href="#kudu-master_table_locations_ttl_ms"><code>--table_locations_ttl_ms</code></a></h3>
+<div class="paragraph">
+<p>Maximum time in milliseconds which clients may cache table locations. New range partitions may not be visible to existing client instances until after waiting for the ttl period.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>300000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_tablet_creation_timeout_ms"><a class="link" href="#kudu-master_tablet_creation_timeout_ms"><code>--tablet_creation_timeout_ms</code></a></h3>
+<div class="paragraph">
+<p>Timeout used by the master when attempting to create tablet replicas during table creation.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>30000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_unresponsive_ts_rpc_timeout_ms"><a class="link" href="#kudu-master_unresponsive_ts_rpc_timeout_ms"><code>--unresponsive_ts_rpc_timeout_ms</code></a></h3>
+<div class="paragraph">
+<p>After this amount of time, the master will stop attempting to contact a tablet server in order to perform operations such as deleting a tablet.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>3600000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_authn_token_validity_seconds"><a class="link" href="#kudu-master_authn_token_validity_seconds"><code>--authn_token_validity_seconds</code></a></h3>
+<div class="paragraph">
+<p>Period of time for which an issued authentication token is valid. It&#8217;s not possible to renew a token, hence the token validity interval defines the longest possible lifetime of an external job which uses a token for authentication.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>604800</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_master_registration_rpc_timeout_ms"><a class="link" href="#kudu-master_master_registration_rpc_timeout_ms"><code>--master_registration_rpc_timeout_ms</code></a></h3>
+<div class="paragraph">
+<p>Timeout for retrieving master registration over RPC.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1500</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_tsk_rotation_seconds"><a class="link" href="#kudu-master_tsk_rotation_seconds"><code>--tsk_rotation_seconds</code></a></h3>
+<div class="paragraph">
+<p>Number of seconds between consecutive activations of newly generated TSKs (Token Signing Keys).</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>86400</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_ipki_ca_cert_expiration_seconds"><a class="link" href="#kudu-master_ipki_ca_cert_expiration_seconds"><code>--ipki_ca_cert_expiration_seconds</code></a></h3>
+<div class="paragraph">
+<p>validity interval for self-signed root CA certifcate issued by Kudu IPKI (Internal Private Key Infrastructure, a.k.a. Internal Kudu CA)</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>315360000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_ipki_ca_key_size"><a class="link" href="#kudu-master_ipki_ca_key_size"><code>--ipki_ca_key_size</code></a></h3>
+<div class="paragraph">
+<p>the number of bits for self-signed root CA cert used by Kudu IPKI (Internal Private Key Infrastructure, a.k.a. Internal Kudu CA)</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>2048</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_ipki_server_cert_expiration_seconds"><a class="link" href="#kudu-master_ipki_server_cert_expiration_seconds"><code>--ipki_server_cert_expiration_seconds</code></a></h3>
+<div class="paragraph">
+<p>validity interval for server certificates issued by Kudu IPKI (Internal Private Key Infrastructure, a.k.a. Internal Kudu CA)</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>315360000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_tserver_unresponsive_timeout_ms"><a class="link" href="#kudu-master_tserver_unresponsive_timeout_ms"><code>--tserver_unresponsive_timeout_ms</code></a></h3>
+<div class="paragraph">
+<p>The period of time that a Master can go without receiving a heartbeat from a tablet server before considering it unresponsive. Unresponsive servers are not selected when assigning replicas during table creation or re-replication.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>60000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_rpc_acceptor_listen_backlog"><a class="link" href="#kudu-master_rpc_acceptor_listen_backlog"><code>--rpc_acceptor_listen_backlog</code></a></h3>
+<div class="paragraph">
+<p>Socket backlog parameter used when listening for RPC connections. This defines the maximum length to which the queue of pending TCP connections inbound to the RPC server may grow. If a connection request arrives when the queue is full, the client may receive an error. Higher values may help the server ride over bursts of new inbound connection requests.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>128</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_rpc_ca_certificate_file"><a class="link" href="#kudu-master_rpc_ca_certificate_file"><code>--rpc_ca_certificate_file</code></a></h3>
+<div class="paragraph">
+<p>Path to the PEM encoded X509 certificate of the trusted external certificate authority. The provided certificate should be the root issuer of the certificate passed in '--rpc_certificate_file'.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_rpc_certificate_file"><a class="link" href="#kudu-master_rpc_certificate_file"><code>--rpc_certificate_file</code></a></h3>
+<div class="paragraph">
+<p>Path to a PEM encoded X509 certificate to use for securing RPC connections with SSL/TLS. If set, '--rpc_private_key_file' and '--rpc_ca_certificate_file' must be set as well.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_rpc_default_keepalive_time_ms"><a class="link" href="#kudu-master_rpc_default_keepalive_time_ms"><code>--rpc_default_keepalive_time_ms</code></a></h3>
+<div class="paragraph">
+<p>If an RPC connection from a client is idle for this amount of time, the server will disconnect the client.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>65000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_rpc_private_key_file"><a class="link" href="#kudu-master_rpc_private_key_file"><code>--rpc_private_key_file</code></a></h3>
+<div class="paragraph">
+<p>Path to a PEM encoded private key paired with the certificate from '--rpc_certificate_file'</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_rpc_encrypt_loopback_connections"><a class="link" href="#kudu-master_rpc_encrypt_loopback_connections"><code>--rpc_encrypt_loopback_connections</code></a></h3>
+<div class="paragraph">
+<p>Whether to encrypt data transfer on RPC connections that stay within a single host. Encryption here is likely to offer no additional security benefit since only a local 'root' user could intercept the traffic, and wire encryption does not suitably protect against such an attacker.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_rpc_trace_negotiation"><a class="link" href="#kudu-master_rpc_trace_negotiation"><code>--rpc_trace_negotiation</code></a></h3>
+<div class="paragraph">
+<p>If enabled, dump traces of all RPC negotiations to the log</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental,advanced,runtime</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_rpc_callback_max_cycles"><a class="link" href="#kudu-master_rpc_callback_max_cycles"><code>--rpc_callback_max_cycles</code></a></h3>
+<div class="paragraph">
+<p>The maximum number of cycles for which an RPC callback should be allowed to run without emitting a warning. (Advanced debugging option)</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>100000000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_rpc_negotiation_timeout_ms"><a class="link" href="#kudu-master_rpc_negotiation_timeout_ms"><code>--rpc_negotiation_timeout_ms</code></a></h3>
+<div class="paragraph">
+<p>Timeout for negotiating an RPC connection.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>3000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_remember_clients_ttl_ms"><a class="link" href="#kudu-master_remember_clients_ttl_ms"><code>--remember_clients_ttl_ms</code></a></h3>
+<div class="paragraph">
+<p>Maximum amount of time, in milliseconds, the server "remembers" a client for the purpose of caching its responses. After this period without hearing from it, the client is no longer remembered and the memory occupied by its responses is reclaimed. Retries of requests older than 'remember_clients_ttl_ms' are treated as new ones.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>3600000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_remember_responses_ttl_ms"><a class="link" href="#kudu-master_remember_responses_ttl_ms"><code>--remember_responses_ttl_ms</code></a></h3>
+<div class="paragraph">
+<p>Maximum amount of time, in milliseconds, the server "remembers" a response to a specific request for a client. After this period has elapsed, the response may have been garbage collected and the client might get a response indicating the request is STALE.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>600000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_rpc_dump_all_traces"><a class="link" href="#kudu-master_rpc_dump_all_traces"><code>--rpc_dump_all_traces</code></a></h3>
+<div class="paragraph">
+<p>If true, dump all RPC traces at INFO level</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_rpc_max_message_size"><a class="link" href="#kudu-master_rpc_max_message_size"><code>--rpc_max_message_size</code></a></h3>
+<div class="paragraph">
+<p>The maximum size of a message that any RPC that the server will accept. Must be at least 1MB.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>52428800</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_ipki_server_key_size"><a class="link" href="#kudu-master_ipki_server_key_size"><code>--ipki_server_key_size</code></a></h3>
+<div class="paragraph">
+<p>the number of bits for server cert&#8217;s private key. The server cert is used for TLS connections to and from clients and other servers.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>2048</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_rpc_tls_ciphers"><a class="link" href="#kudu-master_rpc_tls_ciphers"><code>--rpc_tls_ciphers</code></a></h3>
+<div class="paragraph">
+<p>The cipher suite preferences to use for TLS-secured RPC connections. Uses the OpenSSL cipher preference list format. See man (1) ciphers for more information.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256AES256-GCM-SHA384:AES128-GCM-SHA256:AES256-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_rpc_tls_min_protocol"><a class="link" href="#kudu-master_rpc_tls_min_protocol"><code>--rpc_tls_min_protocol</code></a></h3>
+<div class="paragraph">
+<p>The minimum protocol version to allow when for securing RPC connections with TLS. May be one of 'TLSv1', 'TLSv1.1', or 'TLSv1.2'.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>TLSv1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_tsk_num_rsa_bits"><a class="link" href="#kudu-master_tsk_num_rsa_bits"><code>--tsk_num_rsa_bits</code></a></h3>
+<div class="paragraph">
+<p>Number of bits in RSA keys used for token signing.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>2048</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_web_log_bytes"><a class="link" href="#kudu-master_web_log_bytes"><code>--web_log_bytes</code></a></h3>
+<div class="paragraph">
+<p>The maximum number of bytes to display on the debug webserver&#8217;s log page</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1048576</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_max_clock_sync_error_usec"><a class="link" href="#kudu-master_max_clock_sync_error_usec"><code>--max_clock_sync_error_usec</code></a></h3>
+<div class="paragraph">
+<p>Maximum allowed clock synchronization error as reported by NTP before the server will abort.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10000000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_rpc_advertised_addresses"><a class="link" href="#kudu-master_rpc_advertised_addresses"><code>--rpc_advertised_addresses</code></a></h3>
+<div class="paragraph">
+<p>Comma-separated list of addresses to advertise externally for RPC connections. Ephemeral ports (i.e. port 0) are not allowed. This should be configured when the locally bound RPC addresses specified in --rpc_bind_addresses are not externally resolvable, for example, if Kudu is deployed in a container.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_rpc_num_acceptors_per_address"><a class="link" href="#kudu-master_rpc_num_acceptors_per_address"><code>--rpc_num_acceptors_per_address</code></a></h3>
+<div class="paragraph">
+<p>Number of RPC acceptor threads for each bound address</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_rpc_num_service_threads"><a class="link" href="#kudu-master_rpc_num_service_threads"><code>--rpc_num_service_threads</code></a></h3>
+<div class="paragraph">
+<p>Number of RPC worker threads to run</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_rpc_service_queue_length"><a class="link" href="#kudu-master_rpc_service_queue_length"><code>--rpc_service_queue_length</code></a></h3>
+<div class="paragraph">
+<p>Default length of queue for incoming RPC requests</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>50</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_max_negotiation_threads"><a class="link" href="#kudu-master_max_negotiation_threads"><code>--max_negotiation_threads</code></a></h3>
+<div class="paragraph">
+<p>Maximum number of connection negotiation threads.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>50</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_min_negotiation_threads"><a class="link" href="#kudu-master_min_negotiation_threads"><code>--min_negotiation_threads</code></a></h3>
+<div class="paragraph">
+<p>Minimum number of connection negotiation threads.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_num_reactor_threads"><a class="link" href="#kudu-master_num_reactor_threads"><code>--num_reactor_threads</code></a></h3>
+<div class="paragraph">
+<p>Number of libev reactor threads to start.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>4</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_webserver_enabled"><a class="link" href="#kudu-master_webserver_enabled"><code>--webserver_enabled</code></a></h3>
+<div class="paragraph">
+<p>Whether to enable the web server on this daemon. NOTE: disabling the web server is also likely to prevent monitoring systems from properly capturing metrics.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_metrics_log_interval_ms"><a class="link" href="#kudu-master_metrics_log_interval_ms"><code>--metrics_log_interval_ms</code></a></h3>
+<div class="paragraph">
+<p>Interval (in milliseconds) at which the server will dump its metrics to a local log file. The log files are located in the same directory as specified by the -log_dir flag. If this is not a positive value, then metrics logging will be disabled.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_webserver_max_post_length_bytes"><a class="link" href="#kudu-master_webserver_max_post_length_bytes"><code>--webserver_max_post_length_bytes</code></a></h3>
+<div class="paragraph">
+<p>The maximum length of a POST request that will be accepted by the embedded web server.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1048576</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_webserver_x_frame_options"><a class="link" href="#kudu-master_webserver_x_frame_options"><code>--webserver_x_frame_options</code></a></h3>
+<div class="paragraph">
+<p>The webserver will add an 'X-Frame-Options' HTTP header with this value to all responses. This can help prevent clickjacking attacks.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>DENY</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_webserver_advertised_addresses"><a class="link" href="#kudu-master_webserver_advertised_addresses"><code>--webserver_advertised_addresses</code></a></h3>
+<div class="paragraph">
+<p>Comma-separated list of addresses to advertise externally for HTTP(S) connections. Ephemeral ports (i.e. port 0) are not allowed. This should be configured when the locally bound webserver address specified in --webserver_interface and --webserver_port are not externally resolvable, for example, if Kudu is deployed in a container.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_webserver_authentication_domain"><a class="link" href="#kudu-master_webserver_authentication_domain"><code>--webserver_authentication_domain</code></a></h3>
+<div class="paragraph">
+<p>Domain used for debug webserver authentication</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_webserver_doc_root"><a class="link" href="#kudu-master_webserver_doc_root"><code>--webserver_doc_root</code></a></h3>
+<div class="paragraph">
+<p>Files under &lt;webserver_doc_root&gt; are accessible via the debug webserver. Defaults to $KUDU_HOME/www, or if $KUDU_HOME is not set, disables the document root</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_webserver_enable_doc_root"><a class="link" href="#kudu-master_webserver_enable_doc_root"><code>--webserver_enable_doc_root</code></a></h3>
+<div class="paragraph">
+<p>If true, webserver may serve static files from the webserver_doc_root</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_webserver_interface"><a class="link" href="#kudu-master_webserver_interface"><code>--webserver_interface</code></a></h3>
+<div class="paragraph">
+<p>Interface to start debug webserver on. If blank, webserver binds to 0.0.0.0</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_webserver_num_worker_threads"><a class="link" href="#kudu-master_webserver_num_worker_threads"><code>--webserver_num_worker_threads</code></a></h3>
+<div class="paragraph">
+<p>Maximum number of threads to start for handling web server requests</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>50</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_webserver_password_file"><a class="link" href="#kudu-master_webserver_password_file"><code>--webserver_password_file</code></a></h3>
+<div class="paragraph">
+<p>(Optional) Location of .htpasswd file containing user names and hashed passwords for debug webserver authentication</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_budgeted_compaction_target_rowset_size"><a class="link" href="#kudu-master_budgeted_compaction_target_rowset_size"><code>--budgeted_compaction_target_rowset_size</code></a></h3>
+<div class="paragraph">
+<p>The target size for DiskRowSets during flush/compact when the budgeted compaction policy is used</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>33554432</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_compaction_approximation_ratio"><a class="link" href="#kudu-master_compaction_approximation_ratio"><code>--compaction_approximation_ratio</code></a></h3>
+<div class="paragraph">
+<p>Approximation ratio allowed for optimal compaction calculation. A value of 1.05 indicates that the policy may use an approximate result if it is known to be within 5% of the optimal solution.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1.0499999523162842</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_deltafile_default_block_size"><a class="link" href="#kudu-master_deltafile_default_block_size"><code>--deltafile_default_block_size</code></a></h3>
+<div class="paragraph">
+<p>Block size for delta files. In the future, this may become configurable on a per-table basis.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>32768</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_deltafile_default_compression_codec"><a class="link" href="#kudu-master_deltafile_default_compression_codec"><code>--deltafile_default_compression_codec</code></a></h3>
+<div class="paragraph">
+<p>The compression codec used when writing deltafiles.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>lz4</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_default_composite_key_index_block_size_bytes"><a class="link" href="#kudu-master_default_composite_key_index_block_size_bytes"><code>--default_composite_key_index_block_size_bytes</code></a></h3>
+<div class="paragraph">
+<p>Block size used for composite key indexes.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>4096</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_tablet_delta_store_major_compact_min_ratio"><a class="link" href="#kudu-master_tablet_delta_store_major_compact_min_ratio"><code>--tablet_delta_store_major_compact_min_ratio</code></a></h3>
+<div class="paragraph">
+<p>Minimum ratio of sizeof(deltas) to sizeof(base data) before a major compaction can run (Advanced option)</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0.10000000149011612</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_tablet_delta_store_minor_compact_max"><a class="link" href="#kudu-master_tablet_delta_store_minor_compact_max"><code>--tablet_delta_store_minor_compact_max</code></a></h3>
+<div class="paragraph">
+<p>How many delta stores are required before forcing a minor delta compaction (Advanced option)</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_tablet_bloom_block_size"><a class="link" href="#kudu-master_tablet_bloom_block_size"><code>--tablet_bloom_block_size</code></a></h3>
+<div class="paragraph">
+<p>Block size of the bloom filters used for tablet keys.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>4096</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_tablet_bloom_target_fp_rate"><a class="link" href="#kudu-master_tablet_bloom_target_fp_rate"><code>--tablet_bloom_target_fp_rate</code></a></h3>
+<div class="paragraph">
+<p>Target false-positive rate (between 0 and 1) to size tablet key bloom filters. A lower false positive rate may reduce the number of disk seeks required in heavy insert workloads, at the expense of more space and RAM required for bloom filters.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>9.9999997473787516e-05</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_tablet_compaction_budget_mb"><a class="link" href="#kudu-master_tablet_compaction_budget_mb"><code>--tablet_compaction_budget_mb</code></a></h3>
+<div class="paragraph">
+<p>Budget for a single compaction</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>128</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_tablet_history_max_age_sec"><a class="link" href="#kudu-master_tablet_history_max_age_sec"><code>--tablet_history_max_age_sec</code></a></h3>
+<div class="paragraph">
+<p>Number of seconds to retain tablet history. Reads initiated at a snapshot that is older than this age will be rejected. To disable history removal, set to -1.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>900</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_tablet_throttler_burst_factor"><a class="link" href="#kudu-master_tablet_throttler_burst_factor"><code>--tablet_throttler_burst_factor</code></a></h3>
+<div class="paragraph">
+<p>Burst factor for write RPC throttling. The maximum rate the throttler allows within a token refill period (100ms) equals burst factor multiply base rate.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_tablet_throttler_bytes_per_sec"><a class="link" href="#kudu-master_tablet_throttler_bytes_per_sec"><code>--tablet_throttler_bytes_per_sec</code></a></h3>
+<div class="paragraph">
+<p>Maximum write RPC IO rate (byte/s) allowed for a tablet, write RPC exceeding this limit will be throttled. 0 means no limit.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_tablet_throttler_rpc_per_sec"><a class="link" href="#kudu-master_tablet_throttler_rpc_per_sec"><code>--tablet_throttler_rpc_per_sec</code></a></h3>
+<div class="paragraph">
+<p>Maximum write RPC rate (op/s) allowed for a tablet, write RPC exceeding this limit will be throttled. 0 means no limit.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_flush_threshold_mb"><a class="link" href="#kudu-master_flush_threshold_mb"><code>--flush_threshold_mb</code></a></h3>
+<div class="paragraph">
+<p>Size at which MemRowSet flushes are triggered. A MRS can still flush below this threshold if it if hasn&#8217;t flushed in a while, or if the server-wide memory limit has been reached.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1024</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_flush_threshold_secs"><a class="link" href="#kudu-master_flush_threshold_secs"><code>--flush_threshold_secs</code></a></h3>
+<div class="paragraph">
+<p>Number of seconds after which a non-empty MemRowSet will become flushable even if it is not large.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>120</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_tablet_transaction_memory_limit_mb"><a class="link" href="#kudu-master_tablet_transaction_memory_limit_mb"><code>--tablet_transaction_memory_limit_mb</code></a></h3>
+<div class="paragraph">
+<p>Maximum amount of memory that may be consumed by all in-flight transactions belonging to a particular tablet. When this limit is reached, new transactions will be rejected and clients will be forced to retry them. If -1, transaction memory tracking is disabled.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>64</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_heartbeat_interval_ms"><a class="link" href="#kudu-master_heartbeat_interval_ms"><code>--heartbeat_interval_ms</code></a></h3>
+<div class="paragraph">
+<p>Interval at which the TS heartbeats to the master.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_heartbeat_max_failures_before_backoff"><a class="link" href="#kudu-master_heartbeat_max_failures_before_backoff"><code>--heartbeat_max_failures_before_backoff</code></a></h3>
+<div class="paragraph">
+<p>Maximum number of consecutive heartbeat failures until the Tablet Server backs off to the normal heartbeat interval, rather than retrying.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>3</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_heartbeat_rpc_timeout_ms"><a class="link" href="#kudu-master_heartbeat_rpc_timeout_ms"><code>--heartbeat_rpc_timeout_ms</code></a></h3>
+<div class="paragraph">
+<p>Timeout used for the TS&#8594;Master heartbeat RPCs.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>15000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_scanner_ttl_ms"><a class="link" href="#kudu-master_scanner_ttl_ms"><code>--scanner_ttl_ms</code></a></h3>
+<div class="paragraph">
+<p>Number of milliseconds of inactivity allowed for a scannerbefore it may be expired</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>60000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_scanner_batch_size_rows"><a class="link" href="#kudu-master_scanner_batch_size_rows"><code>--scanner_batch_size_rows</code></a></h3>
+<div class="paragraph">
+<p>The number of rows to batch for servicing scan requests.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>100</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_scanner_default_batch_size_bytes"><a class="link" href="#kudu-master_scanner_default_batch_size_bytes"><code>--scanner_default_batch_size_bytes</code></a></h3>
+<div class="paragraph">
+<p>The default size for batches of scan results</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1048576</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_scanner_max_batch_size_bytes"><a class="link" href="#kudu-master_scanner_max_batch_size_bytes"><code>--scanner_max_batch_size_bytes</code></a></h3>
+<div class="paragraph">
+<p>The maximum batch size that a client may request for scan results.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>8388608</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_scanner_max_wait_ms"><a class="link" href="#kudu-master_scanner_max_wait_ms"><code>--scanner_max_wait_ms</code></a></h3>
+<div class="paragraph">
+<p>The maximum amount of time (in milliseconds) we&#8217;ll hang a scanner thread waiting for safe time to advance or transactions to commit, even if its deadline allows waiting longer.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_num_tablets_to_copy_simultaneously"><a class="link" href="#kudu-master_num_tablets_to_copy_simultaneously"><code>--num_tablets_to_copy_simultaneously</code></a></h3>
+<div class="paragraph">
+<p>Number of threads available to copy tablets from remote servers.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_num_tablets_to_open_simultaneously"><a class="link" href="#kudu-master_num_tablets_to_open_simultaneously"><code>--num_tablets_to_open_simultaneously</code></a></h3>
+<div class="paragraph">
+<p>Number of threads available to open tablets during startup. If this is set to 0 (the default), then the number of bootstrap threads will be set based on the number of data directories. If the data directories are on some very fast storage device such as SSD or a RAID array, it may make sense to manually tune this.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_trace_to_console"><a class="link" href="#kudu-master_trace_to_console"><code>--trace_to_console</code></a></h3>
+<div class="paragraph">
+<p>Trace pattern specifying which trace events should be dumped directly to the console</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_suicide_on_eio"><a class="link" href="#kudu-master_suicide_on_eio"><code>--suicide_on_eio</code></a></h3>
+<div class="paragraph">
+<p>Kill the process if an I/O operation results in EIO</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_file_cache_expiry_period_ms"><a class="link" href="#kudu-master_file_cache_expiry_period_ms"><code>--file_cache_expiry_period_ms</code></a></h3>
+<div class="paragraph">
+<p>Period of time (in ms) between removing expired file cache descriptors</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>60000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_umask"><a class="link" href="#kudu-master_umask"><code>--umask</code></a></h3>
+<div class="paragraph">
+<p>The umask that will be used when creating files and directories. Permissions of top-level data directories will also be modified at start-up to conform to the given umask. Changing this value may enable unauthorized local users to read or modify data stored by Kudu.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>077</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_max_log_files"><a class="link" href="#kudu-master_max_log_files"><code>--max_log_files</code></a></h3>
+<div class="paragraph">
+<p>Maximum number of log files to retain per severity level. The most recent log files are retained. If set to 0, all log files are retained.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental,runtime</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_data_gc_min_size_mb"><a class="link" href="#kudu-master_data_gc_min_size_mb"><code>--data_gc_min_size_mb</code></a></h3>
+<div class="paragraph">
+<p>The (exclusive) minimum number of megabytes of ancient data on disk, per tablet, needed to prioritize deletion of that data.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_data_gc_prioritization_prob"><a class="link" href="#kudu-master_data_gc_prioritization_prob"><code>--data_gc_prioritization_prob</code></a></h3>
+<div class="paragraph">
+<p>The probability that we will prioritize data GC over performance improvement operations. If set to 1.0, we will always prefer to delete old data before running performance improvement operations such as delta compaction.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0.5</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_log_target_replay_size_mb"><a class="link" href="#kudu-master_log_target_replay_size_mb"><code>--log_target_replay_size_mb</code></a></h3>
+<div class="paragraph">
+<p>The target maximum size of logs to be replayed at startup. If a tablet has in-memory operations that are causing more than this size of logs to be retained, then the maintenance manager will prioritize flushing these operations to disk.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1024</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_metrics_retirement_age_ms"><a class="link" href="#kudu-master_metrics_retirement_age_ms"><code>--metrics_retirement_age_ms</code></a></h3>
+<div class="paragraph">
+<p>The minimum number of milliseconds a metric will be kept for after it is no longer active. (Advanced option)</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>120000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,runtime</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_local_ip_for_outbound_sockets"><a class="link" href="#kudu-master_local_ip_for_outbound_sockets"><code>--local_ip_for_outbound_sockets</code></a></h3>
+<div class="paragraph">
+<p>IP to bind to when making outgoing socket connections. This must be an IP address of the form A.B.C.D, not a hostname. Advanced parameter, subject to change.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_nvm_cache_allocation_retry_count"><a class="link" href="#kudu-master_nvm_cache_allocation_retry_count"><code>--nvm_cache_allocation_retry_count</code></a></h3>
+<div class="paragraph">
+<p>The number of times that the NVM cache will retry attempts to allocate memory for new entries. In between attempts, a cache entry will be evicted.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_nvm_cache_path"><a class="link" href="#kudu-master_nvm_cache_path"><code>--nvm_cache_path</code></a></h3>
+<div class="paragraph">
+<p>The path at which the NVM cache will try to allocate its memory. This can be a tmpfs or ramfs for testing purposes.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>/vmem</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_memory_limit_soft_percentage"><a class="link" href="#kudu-master_memory_limit_soft_percentage"><code>--memory_limit_soft_percentage</code></a></h3>
+<div class="paragraph">
+<p>Percentage of the hard memory limit that this daemon may consume before memory throttling of writes begins. The greater the excess, the higher the chance of throttling. In general, a lower soft limit leads to smoother write latencies but decreased throughput, and vice versa for a higher soft limit.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>80</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_memory_limit_warn_threshold_percentage"><a class="link" href="#kudu-master_memory_limit_warn_threshold_percentage"><code>--memory_limit_warn_threshold_percentage</code></a></h3>
+<div class="paragraph">
+<p>Percentage of the hard memory limit that this daemon may consume before WARNING level messages are periodically logged.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>98</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_memory_pressure_percentage"><a class="link" href="#kudu-master_memory_pressure_percentage"><code>--memory_pressure_percentage</code></a></h3>
+<div class="paragraph">
+<p>Percentage of the hard memory limit that this daemon may consume before flushing of in-memory data becomes prioritized.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>60</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_tcmalloc_max_free_bytes_percentage"><a class="link" href="#kudu-master_tcmalloc_max_free_bytes_percentage"><code>--tcmalloc_max_free_bytes_percentage</code></a></h3>
+<div class="paragraph">
+<p>Maximum percentage of the RSS that tcmalloc is allowed to use for reserved but unallocated memory.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_drop_log_memory"><a class="link" href="#kudu-master_drop_log_memory"><code>--drop_log_memory</code></a></h3>
+<div class="paragraph">
+<p>Drop in-memory buffers of log contents. Logs can grow very quickly and they are rarely read before they need to be evicted from memory. Instead, drop them from memory as soon as they are flushed to disk.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_log_backtrace_at"><a class="link" href="#kudu-master_log_backtrace_at"><code>--log_backtrace_at</code></a></h3>
+<div class="paragraph">
+<p>Emit a backtrace when logging at file:linenum.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_logbuflevel"><a class="link" href="#kudu-master_logbuflevel"><code>--logbuflevel</code></a></h3>
+<div class="paragraph">
+<p>Buffer log messages logged at this level or lower (-1 means don&#8217;t buffer; 0 means buffer INFO only; &#8230;&#8203;)</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_logbufsecs"><a class="link" href="#kudu-master_logbufsecs"><code>--logbufsecs</code></a></h3>
+<div class="paragraph">
+<p>Buffer log messages for at most this many seconds</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>5</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_logfile_mode"><a class="link" href="#kudu-master_logfile_mode"><code>--logfile_mode</code></a></h3>
+<div class="paragraph">
+<p>Log file mode/permissions.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>436</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"></td>
+</tr>
+</tbody>
+</table>
+<hr>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_unsupported"><a class="link" href="#kudu-tserver_unsupported"><code>kudu-tserver</code> Unsupported Flags</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Flags not marked <code>stable</code> or <code>evolving</code> are considered experimental and are
+<strong>unsupported</strong>. They are included here for informational purposes only and are
+subject to being changed or removed without notice.</p>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_block_cache_type"><a class="link" href="#kudu-tserver_block_cache_type"><code>--block_cache_type</code></a></h3>
+<div class="paragraph">
+<p>Which type of block cache to use for caching data. Valid choices are 'DRAM' or 'NVM'. DRAM, the default, caches data in regular memory. 'NVM' caches data in a memory-mapped file using the NVML library.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>DRAM</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_min_compression_ratio"><a class="link" href="#kudu-tserver_min_compression_ratio"><code>--min_compression_ratio</code></a></h3>
+<div class="paragraph">
+<p>If a column compression codec is configured, but the codec is unable to achieve a compression ratio at least as good as the configured value, then the data will be written uncompressed. This will reduce CPU overhead on the read side at the expense of a small amount of extra space if the codec encounters portions of data that are not easily compressible.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0.90000000000000002</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_cfile_default_block_size"><a class="link" href="#kudu-tserver_cfile_default_block_size"><code>--cfile_default_block_size</code></a></h3>
+<div class="paragraph">
+<p>The default block size to use in cfiles</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>262144</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_cfile_default_compression_codec"><a class="link" href="#kudu-tserver_cfile_default_compression_codec"><code>--cfile_default_compression_codec</code></a></h3>
+<div class="paragraph">
+<p>Default cfile block compression codec.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>none</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_cfile_do_on_finish"><a class="link" href="#kudu-tserver_cfile_do_on_finish"><code>--cfile_do_on_finish</code></a></h3>
+<div class="paragraph">
+<p>What to do to cfile blocks when writing is finished. Possible values are 'close', 'flush', or 'nothing'.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>flush</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_codegen_dump_functions"><a class="link" href="#kudu-tserver_codegen_dump_functions"><code>--codegen_dump_functions</code></a></h3>
+<div class="paragraph">
+<p>Whether to print the LLVM IR for generated functions</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_codegen_dump_mc"><a class="link" href="#kudu-tserver_codegen_dump_mc"><code>--codegen_dump_mc</code></a></h3>
+<div class="paragraph">
+<p>Whether to dump the disassembly of the machine code for generated functions.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_codegen_cache_capacity"><a class="link" href="#kudu-tserver_codegen_cache_capacity"><code>--codegen_cache_capacity</code></a></h3>
+<div class="paragraph">
+<p>Number of entries which may be stored in the code generation cache.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>100</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_codegen_time_compilation"><a class="link" href="#kudu-tserver_codegen_time_compilation"><code>--codegen_time_compilation</code></a></h3>
+<div class="paragraph">
+<p>Whether to print time that each code generation request took.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_consensus_rpc_timeout_ms"><a class="link" href="#kudu-tserver_consensus_rpc_timeout_ms"><code>--consensus_rpc_timeout_ms</code></a></h3>
+<div class="paragraph">
+<p>Timeout used for all consensus internal RPC communications.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_consensus_max_batch_size_bytes"><a class="link" href="#kudu-tserver_consensus_max_batch_size_bytes"><code>--consensus_max_batch_size_bytes</code></a></h3>
+<div class="paragraph">
+<p>The maximum per-tablet RPC batch size when updating peers.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1048576</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_follower_unavailable_considered_failed_sec"><a class="link" href="#kudu-tserver_follower_unavailable_considered_failed_sec"><code>--follower_unavailable_considered_failed_sec</code></a></h3>
+<div class="paragraph">
+<p>Seconds that a leader is unable to successfully heartbeat to a follower after which the follower is considered to be failed and evicted from the config.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>300</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_group_commit_queue_size_bytes"><a class="link" href="#kudu-tserver_group_commit_queue_size_bytes"><code>--group_commit_queue_size_bytes</code></a></h3>
+<div class="paragraph">
+<p>Maximum size of the group commit queue in bytes</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>4194304</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_log_compression_codec"><a class="link" href="#kudu-tserver_log_compression_codec"><code>--log_compression_codec</code></a></h3>
+<div class="paragraph">
+<p>Codec to use for compressing WAL segments.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>LZ4</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_log_max_segments_to_retain"><a class="link" href="#kudu-tserver_log_max_segments_to_retain"><code>--log_max_segments_to_retain</code></a></h3>
+<div class="paragraph">
+<p>The maximum number of past log segments to keep at all times for the purposes of catching up other peers.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>80</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental,advanced,runtime</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_log_min_segments_to_retain"><a class="link" href="#kudu-tserver_log_min_segments_to_retain"><code>--log_min_segments_to_retain</code></a></h3>
+<div class="paragraph">
+<p>The minimum number of past log segments to keep at all times, regardless of what is required for durability. Must be at least 1.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,runtime</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_global_log_cache_size_limit_mb"><a class="link" href="#kudu-tserver_global_log_cache_size_limit_mb"><code>--global_log_cache_size_limit_mb</code></a></h3>
+<div class="paragraph">
+<p>Server-wide version of 'log_cache_size_limit_mb'. The total memory used for caching log entries across all tablets is kept under this threshold.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1024</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_log_cache_size_limit_mb"><a class="link" href="#kudu-tserver_log_cache_size_limit_mb"><code>--log_cache_size_limit_mb</code></a></h3>
+<div class="paragraph">
+<p>The total per-tablet size of consensus entries which may be kept in memory. The log cache attempts to keep all entries which have not yet been replicated to all followers in memory, but if the total size of those entries exceeds this limit within an individual tablet, the oldest will be evicted.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>128</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_log_async_preallocate_segments"><a class="link" href="#kudu-tserver_log_async_preallocate_segments"><code>--log_async_preallocate_segments</code></a></h3>
+<div class="paragraph">
+<p>Whether the WAL segments preallocation should happen asynchronously</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_log_preallocate_segments"><a class="link" href="#kudu-tserver_log_preallocate_segments"><code>--log_preallocate_segments</code></a></h3>
+<div class="paragraph">
+<p>Whether the WAL should preallocate the entire segment before writing to it</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_log_segment_size_mb"><a class="link" href="#kudu-tserver_log_segment_size_mb"><code>--log_segment_size_mb</code></a></h3>
+<div class="paragraph">
+<p>The default size for log segments, in MB</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>8</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_evict_failed_followers"><a class="link" href="#kudu-tserver_evict_failed_followers"><code>--evict_failed_followers</code></a></h3>
+<div class="paragraph">
+<p>Whether to evict followers from the Raft config that have fallen too far behind the leader&#8217;s log to catch up normally or have been unreachable by the leader for longer than follower_unavailable_considered_failed_sec</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_leader_failure_exp_backoff_max_delta_ms"><a class="link" href="#kudu-tserver_leader_failure_exp_backoff_max_delta_ms"><code>--leader_failure_exp_backoff_max_delta_ms</code></a></h3>
+<div class="paragraph">
+<p>Maximum time to sleep in between leader election retries, in addition to the regular timeout. When leader election fails the interval in between retries increases exponentially, up to this value.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>20000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_leader_failure_max_missed_heartbeat_periods"><a class="link" href="#kudu-tserver_leader_failure_max_missed_heartbeat_periods"><code>--leader_failure_max_missed_heartbeat_periods</code></a></h3>
+<div class="paragraph">
+<p>Maximum heartbeat periods that the leader can fail to heartbeat in before we consider the leader to be failed. The total failure timeout in milliseconds is raft_heartbeat_interval_ms times leader_failure_max_missed_heartbeat_periods. The value passed to this flag may be fractional.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>3</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_leader_failure_monitor_check_mean_ms"><a class="link" href="#kudu-tserver_leader_failure_monitor_check_mean_ms"><code>--leader_failure_monitor_check_mean_ms</code></a></h3>
+<div class="paragraph">
+<p>The mean failure-checking interval of the randomized failure monitor. If this is configured to -1 (the default), uses the value of 'raft_heartbeat_interval_ms'.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>-1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_leader_failure_monitor_check_stddev_ms"><a class="link" href="#kudu-tserver_leader_failure_monitor_check_stddev_ms"><code>--leader_failure_monitor_check_stddev_ms</code></a></h3>
+<div class="paragraph">
+<p>The standard deviation of the failure-checking interval of the randomized failure monitor. If this is configured to -1 (the default), this is set to half of the mean check interval.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>-1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_raft_enable_pre_election"><a class="link" href="#kudu-tserver_raft_enable_pre_election"><code>--raft_enable_pre_election</code></a></h3>
+<div class="paragraph">
+<p>When enabled, candidates will call a pre-election before running a real leader election.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_raft_heartbeat_interval_ms"><a class="link" href="#kudu-tserver_raft_heartbeat_interval_ms"><code>--raft_heartbeat_interval_ms</code></a></h3>
+<div class="paragraph">
+<p>The heartbeat interval for Raft replication. The leader produces heartbeats to followers at this interval. The followers expect a heartbeat at this interval and consider a leader to have failed if it misses several in a row.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>500</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_missed_heartbeats_before_rejecting_snapshot_scans"><a class="link" href="#kudu-tserver_missed_heartbeats_before_rejecting_snapshot_scans"><code>--missed_heartbeats_before_rejecting_snapshot_scans</code></a></h3>
+<div class="paragraph">
+<p>The maximum raft heartbeat periods since the tablet has seen safe time advanced before refusing scans at snapshots that aren&#8217;t yet safe and forcing clients to try again.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1.5</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_safe_time_advancement_without_writes"><a class="link" href="#kudu-tserver_safe_time_advancement_without_writes"><code>--safe_time_advancement_without_writes</code></a></h3>
+<div class="paragraph">
+<p>Whether to enable the advancement of "safe" time in the absense of write operations</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_safe_time_max_lag_ms"><a class="link" href="#kudu-tserver_safe_time_max_lag_ms"><code>--safe_time_max_lag_ms</code></a></h3>
+<div class="paragraph">
+<p>The maximum amount of time we allow safe time to lag behind the requested timestampbefore forcing the client to retry, in milliseconds.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>30000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_block_coalesce_close"><a class="link" href="#kudu-tserver_block_coalesce_close"><code>--block_coalesce_close</code></a></h3>
+<div class="paragraph">
+<p>Coalesce synchronization of data during CloseBlocks()</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_block_manager"><a class="link" href="#kudu-tserver_block_manager"><code>--block_manager</code></a></h3>
+<div class="paragraph">
+<p>Which block manager to use for storage. Valid options are 'file' and 'log'.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>log</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_log_container_excess_space_before_cleanup_fraction"><a class="link" href="#kudu-tserver_log_container_excess_space_before_cleanup_fraction"><code>--log_container_excess_space_before_cleanup_fraction</code></a></h3>
+<div class="paragraph">
+<p>Additional fraction of a log container&#8217;s calculated size that must be consumed on disk before the container is considered to be inconsistent and subject to excess space cleanup at block manager startup.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0.10000000000000001</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_log_container_live_metadata_before_compact_ratio"><a class="link" href="#kudu-tserver_log_container_live_metadata_before_compact_ratio"><code>--log_container_live_metadata_before_compact_ratio</code></a></h3>
+<div class="paragraph">
+<p>Desired ratio of live block metadata in log containers. If a container&#8217;s live to total block ratio dips below this value, the container&#8217;s metadata file will be compacted at startup.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0.5</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_log_container_max_blocks"><a class="link" href="#kudu-tserver_log_container_max_blocks"><code>--log_container_max_blocks</code></a></h3>
+<div class="paragraph">
+<p>Maximum number of blocks (soft) of a log container. Use 0 for no limit. Use -1 for no limit except in the case of a kernel bug with hole punching on ext4 (see KUDU-1508 for details).</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>-1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_log_container_max_size"><a class="link" href="#kudu-tserver_log_container_max_size"><code>--log_container_max_size</code></a></h3>
+<div class="paragraph">
+<p>Maximum size (soft) of a log container</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">uint64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10737418240</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_log_container_preallocate_bytes"><a class="link" href="#kudu-tserver_log_container_preallocate_bytes"><code>--log_container_preallocate_bytes</code></a></h3>
+<div class="paragraph">
+<p>Number of bytes to preallocate in a log container when creating new blocks. Set to 0 to disable preallocation</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">uint64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>33554432</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_rpc_acceptor_listen_backlog"><a class="link" href="#kudu-tserver_rpc_acceptor_listen_backlog"><code>--rpc_acceptor_listen_backlog</code></a></h3>
+<div class="paragraph">
+<p>Socket backlog parameter used when listening for RPC connections. This defines the maximum length to which the queue of pending TCP connections inbound to the RPC server may grow. If a connection request arrives when the queue is full, the client may receive an error. Higher values may help the server ride over bursts of new inbound connection requests.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>128</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_rpc_ca_certificate_file"><a class="link" href="#kudu-tserver_rpc_ca_certificate_file"><code>--rpc_ca_certificate_file</code></a></h3>
+<div class="paragraph">
+<p>Path to the PEM encoded X509 certificate of the trusted external certificate authority. The provided certificate should be the root issuer of the certificate passed in '--rpc_certificate_file'.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_rpc_certificate_file"><a class="link" href="#kudu-tserver_rpc_certificate_file"><code>--rpc_certificate_file</code></a></h3>
+<div class="paragraph">
+<p>Path to a PEM encoded X509 certificate to use for securing RPC connections with SSL/TLS. If set, '--rpc_private_key_file' and '--rpc_ca_certificate_file' must be set as well.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_rpc_default_keepalive_time_ms"><a class="link" href="#kudu-tserver_rpc_default_keepalive_time_ms"><code>--rpc_default_keepalive_time_ms</code></a></h3>
+<div class="paragraph">
+<p>If an RPC connection from a client is idle for this amount of time, the server will disconnect the client.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>65000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_rpc_private_key_file"><a class="link" href="#kudu-tserver_rpc_private_key_file"><code>--rpc_private_key_file</code></a></h3>
+<div class="paragraph">
+<p>Path to a PEM encoded private key paired with the certificate from '--rpc_certificate_file'</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_rpc_encrypt_loopback_connections"><a class="link" href="#kudu-tserver_rpc_encrypt_loopback_connections"><code>--rpc_encrypt_loopback_connections</code></a></h3>
+<div class="paragraph">
+<p>Whether to encrypt data transfer on RPC connections that stay within a single host. Encryption here is likely to offer no additional security benefit since only a local 'root' user could intercept the traffic, and wire encryption does not suitably protect against such an attacker.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_rpc_trace_negotiation"><a class="link" href="#kudu-tserver_rpc_trace_negotiation"><code>--rpc_trace_negotiation</code></a></h3>
+<div class="paragraph">
+<p>If enabled, dump traces of all RPC negotiations to the log</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental,advanced,runtime</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_rpc_callback_max_cycles"><a class="link" href="#kudu-tserver_rpc_callback_max_cycles"><code>--rpc_callback_max_cycles</code></a></h3>
+<div class="paragraph">
+<p>The maximum number of cycles for which an RPC callback should be allowed to run without emitting a warning. (Advanced debugging option)</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>100000000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_rpc_negotiation_timeout_ms"><a class="link" href="#kudu-tserver_rpc_negotiation_timeout_ms"><code>--rpc_negotiation_timeout_ms</code></a></h3>
+<div class="paragraph">
+<p>Timeout for negotiating an RPC connection.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>3000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_remember_clients_ttl_ms"><a class="link" href="#kudu-tserver_remember_clients_ttl_ms"><code>--remember_clients_ttl_ms</code></a></h3>
+<div class="paragraph">
+<p>Maximum amount of time, in milliseconds, the server "remembers" a client for the purpose of caching its responses. After this period without hearing from it, the client is no longer remembered and the memory occupied by its responses is reclaimed. Retries of requests older than 'remember_clients_ttl_ms' are treated as new ones.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>3600000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_remember_responses_ttl_ms"><a class="link" href="#kudu-tserver_remember_responses_ttl_ms"><code>--remember_responses_ttl_ms</code></a></h3>
+<div class="paragraph">
+<p>Maximum amount of time, in milliseconds, the server "remembers" a response to a specific request for a client. After this period has elapsed, the response may have been garbage collected and the client might get a response indicating the request is STALE.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>600000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_rpc_dump_all_traces"><a class="link" href="#kudu-tserver_rpc_dump_all_traces"><code>--rpc_dump_all_traces</code></a></h3>
+<div class="paragraph">
+<p>If true, dump all RPC traces at INFO level</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_rpc_max_message_size"><a class="link" href="#kudu-tserver_rpc_max_message_size"><code>--rpc_max_message_size</code></a></h3>
+<div class="paragraph">
+<p>The maximum size of a message that any RPC that the server will accept. Must be at least 1MB.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>52428800</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_ipki_server_key_size"><a class="link" href="#kudu-tserver_ipki_server_key_size"><code>--ipki_server_key_size</code></a></h3>
+<div class="paragraph">
+<p>the number of bits for server cert&#8217;s private key. The server cert is used for TLS connections to and from clients and other servers.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>2048</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_rpc_tls_ciphers"><a class="link" href="#kudu-tserver_rpc_tls_ciphers"><code>--rpc_tls_ciphers</code></a></h3>
+<div class="paragraph">
+<p>The cipher suite preferences to use for TLS-secured RPC connections. Uses the OpenSSL cipher preference list format. See man (1) ciphers for more information.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256AES256-GCM-SHA384:AES128-GCM-SHA256:AES256-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_rpc_tls_min_protocol"><a class="link" href="#kudu-tserver_rpc_tls_min_protocol"><code>--rpc_tls_min_protocol</code></a></h3>
+<div class="paragraph">
+<p>The minimum protocol version to allow when for securing RPC connections with TLS. May be one of 'TLSv1', 'TLSv1.1', or 'TLSv1.2'.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>TLSv1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_web_log_bytes"><a class="link" href="#kudu-tserver_web_log_bytes"><code>--web_log_bytes</code></a></h3>
+<div class="paragraph">
+<p>The maximum number of bytes to display on the debug webserver&#8217;s log page</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1048576</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_max_clock_sync_error_usec"><a class="link" href="#kudu-tserver_max_clock_sync_error_usec"><code>--max_clock_sync_error_usec</code></a></h3>
+<div class="paragraph">
+<p>Maximum allowed clock synchronization error as reported by NTP before the server will abort.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10000000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_rpc_advertised_addresses"><a class="link" href="#kudu-tserver_rpc_advertised_addresses"><code>--rpc_advertised_addresses</code></a></h3>
+<div class="paragraph">
+<p>Comma-separated list of addresses to advertise externally for RPC connections. Ephemeral ports (i.e. port 0) are not allowed. This should be configured when the locally bound RPC addresses specified in --rpc_bind_addresses are not externally resolvable, for example, if Kudu is deployed in a container.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_rpc_num_acceptors_per_address"><a class="link" href="#kudu-tserver_rpc_num_acceptors_per_address"><code>--rpc_num_acceptors_per_address</code></a></h3>
+<div class="paragraph">
+<p>Number of RPC acceptor threads for each bound address</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_rpc_num_service_threads"><a class="link" href="#kudu-tserver_rpc_num_service_threads"><code>--rpc_num_service_threads</code></a></h3>
+<div class="paragraph">
+<p>Number of RPC worker threads to run</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_rpc_service_queue_length"><a class="link" href="#kudu-tserver_rpc_service_queue_length"><code>--rpc_service_queue_length</code></a></h3>
+<div class="paragraph">
+<p>Default length of queue for incoming RPC requests</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>50</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_max_negotiation_threads"><a class="link" href="#kudu-tserver_max_negotiation_threads"><code>--max_negotiation_threads</code></a></h3>
+<div class="paragraph">
+<p>Maximum number of connection negotiation threads.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>50</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_min_negotiation_threads"><a class="link" href="#kudu-tserver_min_negotiation_threads"><code>--min_negotiation_threads</code></a></h3>
+<div class="paragraph">
+<p>Minimum number of connection negotiation threads.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_num_reactor_threads"><a class="link" href="#kudu-tserver_num_reactor_threads"><code>--num_reactor_threads</code></a></h3>
+<div class="paragraph">
+<p>Number of libev reactor threads to start.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>4</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_webserver_enabled"><a class="link" href="#kudu-tserver_webserver_enabled"><code>--webserver_enabled</code></a></h3>
+<div class="paragraph">
+<p>Whether to enable the web server on this daemon. NOTE: disabling the web server is also likely to prevent monitoring systems from properly capturing metrics.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_metrics_log_interval_ms"><a class="link" href="#kudu-tserver_metrics_log_interval_ms"><code>--metrics_log_interval_ms</code></a></h3>
+<div class="paragraph">
+<p>Interval (in milliseconds) at which the server will dump its metrics to a local log file. The log files are located in the same directory as specified by the -log_dir flag. If this is not a positive value, then metrics logging will be disabled.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_webserver_max_post_length_bytes"><a class="link" href="#kudu-tserver_webserver_max_post_length_bytes"><code>--webserver_max_post_length_bytes</code></a></h3>
+<div class="paragraph">
+<p>The maximum length of a POST request that will be accepted by the embedded web server.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1048576</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_webserver_x_frame_options"><a class="link" href="#kudu-tserver_webserver_x_frame_options"><code>--webserver_x_frame_options</code></a></h3>
+<div class="paragraph">
+<p>The webserver will add an 'X-Frame-Options' HTTP header with this value to all responses. This can help prevent clickjacking attacks.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>DENY</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_webserver_advertised_addresses"><a class="link" href="#kudu-tserver_webserver_advertised_addresses"><code>--webserver_advertised_addresses</code></a></h3>
+<div class="paragraph">
+<p>Comma-separated list of addresses to advertise externally for HTTP(S) connections. Ephemeral ports (i.e. port 0) are not allowed. This should be configured when the locally bound webserver address specified in --webserver_interface and --webserver_port are not externally resolvable, for example, if Kudu is deployed in a container.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_webserver_authentication_domain"><a class="link" href="#kudu-tserver_webserver_authentication_domain"><code>--webserver_authentication_domain</code></a></h3>
+<div class="paragraph">
+<p>Domain used for debug webserver authentication</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_webserver_doc_root"><a class="link" href="#kudu-tserver_webserver_doc_root"><code>--webserver_doc_root</code></a></h3>
+<div class="paragraph">
+<p>Files under &lt;webserver_doc_root&gt; are accessible via the debug webserver. Defaults to $KUDU_HOME/www, or if $KUDU_HOME is not set, disables the document root</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_webserver_enable_doc_root"><a class="link" href="#kudu-tserver_webserver_enable_doc_root"><code>--webserver_enable_doc_root</code></a></h3>
+<div class="paragraph">
+<p>If true, webserver may serve static files from the webserver_doc_root</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_webserver_interface"><a class="link" href="#kudu-tserver_webserver_interface"><code>--webserver_interface</code></a></h3>
+<div class="paragraph">
+<p>Interface to start debug webserver on. If blank, webserver binds to 0.0.0.0</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_webserver_num_worker_threads"><a class="link" href="#kudu-tserver_webserver_num_worker_threads"><code>--webserver_num_worker_threads</code></a></h3>
+<div class="paragraph">
+<p>Maximum number of threads to start for handling web server requests</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>50</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_webserver_password_file"><a class="link" href="#kudu-tserver_webserver_password_file"><code>--webserver_password_file</code></a></h3>
+<div class="paragraph">
+<p>(Optional) Location of .htpasswd file containing user names and hashed passwords for debug webserver authentication</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_budgeted_compaction_target_rowset_size"><a class="link" href="#kudu-tserver_budgeted_compaction_target_rowset_size"><code>--budgeted_compaction_target_rowset_size</code></a></h3>
+<div class="paragraph">
+<p>The target size for DiskRowSets during flush/compact when the budgeted compaction policy is used</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>33554432</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_compaction_approximation_ratio"><a class="link" href="#kudu-tserver_compaction_approximation_ratio"><code>--compaction_approximation_ratio</code></a></h3>
+<div class="paragraph">
+<p>Approximation ratio allowed for optimal compaction calculation. A value of 1.05 indicates that the policy may use an approximate result if it is known to be within 5% of the optimal solution.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1.0499999523162842</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_deltafile_default_block_size"><a class="link" href="#kudu-tserver_deltafile_default_block_size"><code>--deltafile_default_block_size</code></a></h3>
+<div class="paragraph">
+<p>Block size for delta files. In the future, this may become configurable on a per-table basis.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>32768</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_deltafile_default_compression_codec"><a class="link" href="#kudu-tserver_deltafile_default_compression_codec"><code>--deltafile_default_compression_codec</code></a></h3>
+<div class="paragraph">
+<p>The compression codec used when writing deltafiles.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>lz4</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_default_composite_key_index_block_size_bytes"><a class="link" href="#kudu-tserver_default_composite_key_index_block_size_bytes"><code>--default_composite_key_index_block_size_bytes</code></a></h3>
+<div class="paragraph">
+<p>Block size used for composite key indexes.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>4096</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_tablet_delta_store_major_compact_min_ratio"><a class="link" href="#kudu-tserver_tablet_delta_store_major_compact_min_ratio"><code>--tablet_delta_store_major_compact_min_ratio</code></a></h3>
+<div class="paragraph">
+<p>Minimum ratio of sizeof(deltas) to sizeof(base data) before a major compaction can run (Advanced option)</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0.10000000149011612</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_tablet_delta_store_minor_compact_max"><a class="link" href="#kudu-tserver_tablet_delta_store_minor_compact_max"><code>--tablet_delta_store_minor_compact_max</code></a></h3>
+<div class="paragraph">
+<p>How many delta stores are required before forcing a minor delta compaction (Advanced option)</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_tablet_bloom_block_size"><a class="link" href="#kudu-tserver_tablet_bloom_block_size"><code>--tablet_bloom_block_size</code></a></h3>
+<div class="paragraph">
+<p>Block size of the bloom filters used for tablet keys.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>4096</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_tablet_bloom_target_fp_rate"><a class="link" href="#kudu-tserver_tablet_bloom_target_fp_rate"><code>--tablet_bloom_target_fp_rate</code></a></h3>
+<div class="paragraph">
+<p>Target false-positive rate (between 0 and 1) to size tablet key bloom filters. A lower false positive rate may reduce the number of disk seeks required in heavy insert workloads, at the expense of more space and RAM required for bloom filters.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>9.9999997473787516e-05</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_tablet_compaction_budget_mb"><a class="link" href="#kudu-tserver_tablet_compaction_budget_mb"><code>--tablet_compaction_budget_mb</code></a></h3>
+<div class="paragraph">
+<p>Budget for a single compaction</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>128</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_tablet_history_max_age_sec"><a class="link" href="#kudu-tserver_tablet_history_max_age_sec"><code>--tablet_history_max_age_sec</code></a></h3>
+<div class="paragraph">
+<p>Number of seconds to retain tablet history. Reads initiated at a snapshot that is older than this age will be rejected. To disable history removal, set to -1.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>900</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_tablet_throttler_burst_factor"><a class="link" href="#kudu-tserver_tablet_throttler_burst_factor"><code>--tablet_throttler_burst_factor</code></a></h3>
+<div class="paragraph">
+<p>Burst factor for write RPC throttling. The maximum rate the throttler allows within a token refill period (100ms) equals burst factor multiply base rate.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_tablet_throttler_bytes_per_sec"><a class="link" href="#kudu-tserver_tablet_throttler_bytes_per_sec"><code>--tablet_throttler_bytes_per_sec</code></a></h3>
+<div class="paragraph">
+<p>Maximum write RPC IO rate (byte/s) allowed for a tablet, write RPC exceeding this limit will be throttled. 0 means no limit.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_tablet_throttler_rpc_per_sec"><a class="link" href="#kudu-tserver_tablet_throttler_rpc_per_sec"><code>--tablet_throttler_rpc_per_sec</code></a></h3>
+<div class="paragraph">
+<p>Maximum write RPC rate (op/s) allowed for a tablet, write RPC exceeding this limit will be throttled. 0 means no limit.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_flush_threshold_mb"><a class="link" href="#kudu-tserver_flush_threshold_mb"><code>--flush_threshold_mb</code></a></h3>
+<div class="paragraph">
+<p>Size at which MemRowSet flushes are triggered. A MRS can still flush below this threshold if it if hasn&#8217;t flushed in a while, or if the server-wide memory limit has been reached.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1024</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_flush_threshold_secs"><a class="link" href="#kudu-tserver_flush_threshold_secs"><code>--flush_threshold_secs</code></a></h3>
+<div class="paragraph">
+<p>Number of seconds after which a non-empty MemRowSet will become flushable even if it is not large.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>120</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_tablet_transaction_memory_limit_mb"><a class="link" href="#kudu-tserver_tablet_transaction_memory_limit_mb"><code>--tablet_transaction_memory_limit_mb</code></a></h3>
+<div class="paragraph">
+<p>Maximum amount of memory that may be consumed by all in-flight transactions belonging to a particular tablet. When this limit is reached, new transactions will be rejected and clients will be forced to retry them. If -1, transaction memory tracking is disabled.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>64</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_heartbeat_interval_ms"><a class="link" href="#kudu-tserver_heartbeat_interval_ms"><code>--heartbeat_interval_ms</code></a></h3>
+<div class="paragraph">
+<p>Interval at which the TS heartbeats to the master.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_heartbeat_max_failures_before_backoff"><a class="link" href="#kudu-tserver_heartbeat_max_failures_before_backoff"><code>--heartbeat_max_failures_before_backoff</code></a></h3>
+<div class="paragraph">
+<p>Maximum number of consecutive heartbeat failures until the Tablet Server backs off to the normal heartbeat interval, rather than retrying.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>3</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_heartbeat_rpc_timeout_ms"><a class="link" href="#kudu-tserver_heartbeat_rpc_timeout_ms"><code>--heartbeat_rpc_timeout_ms</code></a></h3>
+<div class="paragraph">
+<p>Timeout used for the TS&#8594;Master heartbeat RPCs.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>15000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_scanner_ttl_ms"><a class="link" href="#kudu-tserver_scanner_ttl_ms"><code>--scanner_ttl_ms</code></a></h3>
+<div class="paragraph">
+<p>Number of milliseconds of inactivity allowed for a scannerbefore it may be expired</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>60000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_scanner_batch_size_rows"><a class="link" href="#kudu-tserver_scanner_batch_size_rows"><code>--scanner_batch_size_rows</code></a></h3>
+<div class="paragraph">
+<p>The number of rows to batch for servicing scan requests.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>100</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_scanner_default_batch_size_bytes"><a class="link" href="#kudu-tserver_scanner_default_batch_size_bytes"><code>--scanner_default_batch_size_bytes</code></a></h3>
+<div class="paragraph">
+<p>The default size for batches of scan results</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1048576</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_scanner_max_batch_size_bytes"><a class="link" href="#kudu-tserver_scanner_max_batch_size_bytes"><code>--scanner_max_batch_size_bytes</code></a></h3>
+<div class="paragraph">
+<p>The maximum batch size that a client may request for scan results.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>8388608</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_scanner_max_wait_ms"><a class="link" href="#kudu-tserver_scanner_max_wait_ms"><code>--scanner_max_wait_ms</code></a></h3>
+<div class="paragraph">
+<p>The maximum amount of time (in milliseconds) we&#8217;ll hang a scanner thread waiting for safe time to advance or transactions to commit, even if its deadline allows waiting longer.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_num_tablets_to_copy_simultaneously"><a class="link" href="#kudu-tserver_num_tablets_to_copy_simultaneously"><code>--num_tablets_to_copy_simultaneously</code></a></h3>
+<div class="paragraph">
+<p>Number of threads available to copy tablets from remote servers.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_num_tablets_to_open_simultaneously"><a class="link" href="#kudu-tserver_num_tablets_to_open_simultaneously"><code>--num_tablets_to_open_simultaneously</code></a></h3>
+<div class="paragraph">
+<p>Number of threads available to open tablets during startup. If this is set to 0 (the default), then the number of bootstrap threads will be set based on the number of data directories. If the data directories are on some very fast storage device such as SSD or a RAID array, it may make sense to manually tune this.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_trace_to_console"><a class="link" href="#kudu-tserver_trace_to_console"><code>--trace_to_console</code></a></h3>
+<div class="paragraph">
+<p>Trace pattern specifying which trace events should be dumped directly to the console</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_suicide_on_eio"><a class="link" href="#kudu-tserver_suicide_on_eio"><code>--suicide_on_eio</code></a></h3>
+<div class="paragraph">
+<p>Kill the process if an I/O operation results in EIO</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_file_cache_expiry_period_ms"><a class="link" href="#kudu-tserver_file_cache_expiry_period_ms"><code>--file_cache_expiry_period_ms</code></a></h3>
+<div class="paragraph">
+<p>Period of time (in ms) between removing expired file cache descriptors</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>60000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_umask"><a class="link" href="#kudu-tserver_umask"><code>--umask</code></a></h3>
+<div class="paragraph">
+<p>The umask that will be used when creating files and directories. Permissions of top-level data directories will also be modified at start-up to conform to the given umask. Changing this value may enable unauthorized local users to read or modify data stored by Kudu.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>077</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_max_log_files"><a class="link" href="#kudu-tserver_max_log_files"><code>--max_log_files</code></a></h3>
+<div class="paragraph">
+<p>Maximum number of log files to retain per severity level. The most recent log files are retained. If set to 0, all log files are retained.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental,runtime</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_data_gc_min_size_mb"><a class="link" href="#kudu-tserver_data_gc_min_size_mb"><code>--data_gc_min_size_mb</code></a></h3>
+<div class="paragraph">
+<p>The (exclusive) minimum number of megabytes of ancient data on disk, per tablet, needed to prioritize deletion of that data.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_data_gc_prioritization_prob"><a class="link" href="#kudu-tserver_data_gc_prioritization_prob"><code>--data_gc_prioritization_prob</code></a></h3>
+<div class="paragraph">
+<p>The probability that we will prioritize data GC over performance improvement operations. If set to 1.0, we will always prefer to delete old data before running performance improvement operations such as delta compaction.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0.5</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_log_target_replay_size_mb"><a class="link" href="#kudu-tserver_log_target_replay_size_mb"><code>--log_target_replay_size_mb</code></a></h3>
+<div class="paragraph">
+<p>The target maximum size of logs to be replayed at startup. If a tablet has in-memory operations that are causing more than this size of logs to be retained, then the maintenance manager will prioritize flushing these operations to disk.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1024</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_metrics_retirement_age_ms"><a class="link" href="#kudu-tserver_metrics_retirement_age_ms"><code>--metrics_retirement_age_ms</code></a></h3>
+<div class="paragraph">
+<p>The minimum number of milliseconds a metric will be kept for after it is no longer active. (Advanced option)</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>120000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,runtime</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_local_ip_for_outbound_sockets"><a class="link" href="#kudu-tserver_local_ip_for_outbound_sockets"><code>--local_ip_for_outbound_sockets</code></a></h3>
+<div class="paragraph">
+<p>IP to bind to when making outgoing socket connections. This must be an IP address of the form A.B.C.D, not a hostname. Advanced parameter, subject to change.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_nvm_cache_allocation_retry_count"><a class="link" href="#kudu-tserver_nvm_cache_allocation_retry_count"><code>--nvm_cache_allocation_retry_count</code></a></h3>
+<div class="paragraph">
+<p>The number of times that the NVM cache will retry attempts to allocate memory for new entries. In between attempts, a cache entry will be evicted.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_nvm_cache_path"><a class="link" href="#kudu-tserver_nvm_cache_path"><code>--nvm_cache_path</code></a></h3>
+<div class="paragraph">
+<p>The path at which the NVM cache will try to allocate its memory. This can be a tmpfs or ramfs for testing purposes.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>/vmem</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_memory_limit_soft_percentage"><a class="link" href="#kudu-tserver_memory_limit_soft_percentage"><code>--memory_limit_soft_percentage</code></a></h3>
+<div class="paragraph">
+<p>Percentage of the hard memory limit that this daemon may consume before memory throttling of writes begins. The greater the excess, the higher the chance of throttling. In general, a lower soft limit leads to smoother write latencies but decreased throughput, and vice versa for a higher soft limit.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>80</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_memory_limit_warn_threshold_percentage"><a class="link" href="#kudu-tserver_memory_limit_warn_threshold_percentage"><code>--memory_limit_warn_threshold_percentage</code></a></h3>
+<div class="paragraph">
+<p>Percentage of the hard memory limit that this daemon may consume before WARNING level messages are periodically logged.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>98</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_memory_pressure_percentage"><a class="link" href="#kudu-tserver_memory_pressure_percentage"><code>--memory_pressure_percentage</code></a></h3>
+<div class="paragraph">
+<p>Percentage of the hard memory limit that this daemon may consume before flushing of in-memory data becomes prioritized.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>60</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_tcmalloc_max_free_bytes_percentage"><a class="link" href="#kudu-tserver_tcmalloc_max_free_bytes_percentage"><code>--tcmalloc_max_free_bytes_percentage</code></a></h3>
+<div class="paragraph">
+<p>Maximum percentage of the RSS that tcmalloc is allowed to use for reserved but unallocated memory.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_drop_log_memory"><a class="link" href="#kudu-tserver_drop_log_memory"><code>--drop_log_memory</code></a></h3>
+<div class="paragraph">
+<p>Drop in-memory buffers of log contents. Logs can grow very quickly and they are rarely read before they need to be evicted from memory. Instead, drop them from memory as soon as they are flushed to disk.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_log_backtrace_at"><a class="link" href="#kudu-tserver_log_backtrace_at"><code>--log_backtrace_at</code></a></h3>
+<div class="paragraph">
+<p>Emit a backtrace when logging at file:linenum.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_logbuflevel"><a class="link" href="#kudu-tserver_logbuflevel"><code>--logbuflevel</code></a></h3>
+<div class="paragraph">
+<p>Buffer log messages logged at this level or lower (-1 means don&#8217;t buffer; 0 means buffer INFO only; &#8230;&#8203;)</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_logbufsecs"><a class="link" href="#kudu-tserver_logbufsecs"><code>--logbufsecs</code></a></h3>
+<div class="paragraph">
+<p>Buffer log messages for at most this many seconds</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>5</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_logfile_mode"><a class="link" href="#kudu-tserver_logfile_mode"><code>--logfile_mode</code></a></h3>
+<div class="paragraph">
+<p>Log file mode/permissions.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>436</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"></td>
+</tr>
+</tbody>
+</table>
+<hr>
+</div>
+</div>
+</div>
+    </div>
+    <div class="col-md-3">
+
+  <div id="toc" data-spy="affix" data-offset-top="70">
+  <ul>
+
+      <li>
+
+          <a href="index.html">Introducing Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="release_notes.html">Kudu Release Notes</a> 
+      </li> 
+      <li>
+
+          <a href="quickstart.html">Getting Started with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="installation.html">Installation Guide</a> 
+      </li> 
+      <li>
+
+          <a href="configuration.html">Configuring Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="kudu_impala_integration.html">Using Impala with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="administration.html">Administering Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="troubleshooting.html">Troubleshooting Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="developing.html">Developing Applications with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="schema_design.html">Kudu Schema Design</a> 
+      </li> 
+      <li>
+
+          <a href="security.html">Kudu Security</a> 
+      </li> 
+      <li>
+
+          <a href="transaction_semantics.html">Kudu Transaction Semantics</a> 
+      </li> 
+      <li>
+
+          <a href="background_tasks.html">Background Maintenance Tasks</a> 
+      </li> 
+      <li>
+
+          <a href="configuration_reference.html">Kudu Configuration Reference</a> 
+      </li> 
+      <li>
+
+          <a href="command_line_tools_reference.html">Kudu Command Line Tools Reference</a> 
+      </li> 
+      <li>
+
+          <a href="known_issues.html">Known Issues and Limitations</a> 
+      </li> 
+      <li>
+
+          <a href="contributing.html">Contributing to Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="export_control.html">Export Control Notice</a> 
+      </li> 
+  </ul>
+  </div>
+    </div>
+  </div>
+</div>
+      <footer class="footer">
+        <p class="small">
+        Copyright &copy; 2016 The Apache Software Foundation.  Last updated 2017-06-13 10:50:35 PDT 
+        </p>
+      </footer>
+    </div>
+    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
+    <script>
+      // Try to detect touch-screen devices. Note: Many laptops have touch screens.
+      $(document).ready(function() {
+        if ("ontouchstart" in document.documentElement) {
+          $(document.documentElement).addClass("touch");
+        } else {
+          $(document.documentElement).addClass("no-touch");
+        }
+      });
+    </script>
+    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"
+            integrity="sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS"
+            crossorigin="anonymous"></script>
+    <script>
+      (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+      (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+      m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+      })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+
+      ga('create', 'UA-68448017-1', 'auto');
+      ga('send', 'pageview');
+    </script>
+    <script src="https://cdnjs.cloudflare.com/ajax/libs/anchor-js/3.1.0/anchor.js"></script>
+    <script>
+      anchors.options = {
+        placement: 'right',
+        visible: 'touch',
+      };
+      anchors.add();
+    </script>
+  </body>
+</html>
+
diff --git a/releases/1.4.0/docs/contributing.html b/releases/1.4.0/docs/contributing.html
new file mode 100644
index 0000000..a9e17e3
--- /dev/null
+++ b/releases/1.4.0/docs/contributing.html
@@ -0,0 +1,862 @@
+<!DOCTYPE html>
+<html lang="en">
+  <head>
+    <meta charset="utf-8" />
+    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
+    <meta name="viewport" content="width=device-width, initial-scale=1" />
+    <!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
+    <meta name="description" content="A new open source Apache Hadoop ecosystem project, Apache Kudu completes Hadoop's storage layer to enable fast analytics on fast data" />
+    <meta name="author" content="Cloudera" />
+    <title>Apache Kudu - Contributing to Apache Kudu</title>
+    <!-- Bootstrap core CSS -->
+    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css"
+          integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7"
+          crossorigin="anonymous">
+
+    <!-- Custom styles for this template -->
+    <link href="/css/kudu.css" rel="stylesheet"/>
+    <link href="/css/asciidoc.css" rel="stylesheet"/>
+    <link rel="shortcut icon" href="/img/logo-favicon.ico" />
+    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.6.1/css/font-awesome.min.css" />
+
+    
+
+    <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+        <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+        <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+        <![endif]-->
+  </head>
+  <body>
+    <div class="kudu-site container-fluid">
+      <!-- Static navbar -->
+        <nav class="navbar navbar-default">
+          <div class="container-fluid">
+            <div class="navbar-header">
+              <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
+                <span class="sr-only">Toggle navigation</span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+              </button>
+              
+              <a class="logo" href="/"><img
+                src="//d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_80px.png"
+                srcset="//d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_80px.png 1x, //d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_160px.png 2x"
+                alt="Apache Kudu"/></a>
+              
+            </div>
+            <div id="navbar" class="collapse navbar-collapse">
+              <ul class="nav navbar-nav navbar-right">
+                <li >
+                  <a href="/">Home</a>
+                </li>
+                <li >
+                  <a href="/overview.html">Overview</a>
+                </li>
+                <li class="active">
+                  <a href="/docs/">Documentation</a>
+                </li>
+                <li >
+                  <a href="/releases/">Download</a>
+                </li>
+                <li >
+                  <a href="/blog/">Blog</a>
+                </li>
+                <!-- NOTE: this dropdown menu does not appear on Mobile, so don't add anything here
+                     that doesn't also appear elsewhere on the site. -->
+                <li class="dropdown">
+                  <a href="/community.html" role="button" aria-haspopup="true" aria-expanded="false">Community <span class="caret"></span></a>
+                  <ul class="dropdown-menu">
+                    <li class="dropdown-header">GET IN TOUCH</li>
+                    <li><a class="icon email" href="/community.html">Mailing Lists</a></li>
+                    <li><a class="icon slack" href="https://getkudu-slack.herokuapp.com/">Slack Channel</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li><a href="/community.html#meetups-user-groups-and-conference-presentations">Events and Meetups</a></li>
+                    <li><a href="/committers.html">Project Committers</a></li>
+                    <!--<li><a href="/roadmap.html">Roadmap</a></li>-->
+                    <li><a href="/community.html#contributions">How to Contribute</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li class="dropdown-header">DEVELOPER RESOURCES</li>
+                    <li><a class="icon github" href="https://github.com/apache/incubator-kudu">GitHub</a></li>
+                    <li><a class="icon gerrit" href="http://gerrit.cloudera.org:8080/#/q/status:open+project:kudu">Gerrit Code Review</a></li>
+                    <li><a class="icon jira" href="https://issues.apache.org/jira/browse/KUDU">JIRA Issue Tracker</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li class="dropdown-header">SOCIAL MEDIA</li>
+                    <li><a class="icon twitter" href="https://twitter.com/ApacheKudu">Twitter</a></li>
+                  </ul>
+                </li>
+                <li >
+                  <a href="/faq.html">FAQ</a>
+                </li>
+              </ul><!-- /.nav -->
+            </div><!-- /#navbar -->
+          </div><!-- /.container-fluid -->
+        </nav>
+
+<!--
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
+
+
+<div class="container">
+  <div class="row">
+    <div class="col-md-9">
+
+<h1>Contributing to Apache Kudu</h1>
+      <div class="sect1">
+<h2 id="_contributing_patches_using_gerrit"><a class="link" href="#_contributing_patches_using_gerrit">Contributing Patches Using Gerrit</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The Kudu team uses Gerrit for code review, rather than Github pull requests. Typically,
+you pull from Github but push to Gerrit, and Gerrit is used to review code and merge
+it into Github.</p>
+</div>
+<div class="paragraph">
+<p>See the <a href="https://www.mediawiki.org/wiki/Gerrit/Tutorial">Gerrit Tutorial</a>
+for an overview of using Gerrit for code review.</p>
+</div>
+<div class="sect2">
+<h3 id="_initial_setup_for_gerrit"><a class="link" href="#_initial_setup_for_gerrit">Initial Setup for Gerrit</a></h3>
+<div class="olist arabic">
+<ol class="arabic">
+<li>
+<p>Sign in to <a href="http://gerrit.cloudera.org:8080">Gerrit</a> using your Github username.</p>
+</li>
+<li>
+<p>Go to <a href="http://gerrit.cloudera.org:8080/#/settings/">Settings</a>. Update your name
+and email address on the <strong>Contact Information</strong> page, and upload a SSH public key.
+If you do not update your name, it will show up as "Anonymous Coward" in Gerrit reviews.</p>
+</li>
+<li>
+<p>If you have not done so, clone the main Kudu repository. By default, the main remote
+is called <code>origin</code>. When you fetch or pull, you will do so from <code>origin</code>.</p>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-bash" data-lang="bash">git clone https://github.com/apache/kudu</code></pre>
+</div>
+</div>
+</li>
+<li>
+<p>Change to the new <code>kudu</code> directory.</p>
+</li>
+<li>
+<p>Add a <code>gerrit</code> remote. In the following command, substitute &lt;username&gt; with your
+Github username.</p>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-bash" data-lang="bash">git remote add gerrit ssh://&lt;username&gt;@gerrit.cloudera.org:29418/kudu</code></pre>
+</div>
+</div>
+</li>
+<li>
+<p>Run the following command to install the
+Gerrit <code>commit-msg</code> hook. Use the following command, replacing <code>&lt;username&gt;</code> with your
+Github username.</p>
+<div class="listingblock">
+<div class="content">
+<pre>gitdir=$(git rev-parse --git-dir); scp -p -P 29418 &lt;username&gt;@gerrit.cloudera.org:hooks/commit-msg ${gitdir}/hooks/</pre>
+</div>
+</div>
+</li>
+<li>
+<p>Be sure you have set the Kudu repository to use <code>pull --rebase</code> by default. You
+can use the following two commands, assuming you have only ever checked out <code>master</code>
+so far:</p>
+<div class="listingblock">
+<div class="content">
+<pre>git config branch.autosetuprebase always
+git config branch.master.rebase true</pre>
+</div>
+</div>
+<div class="paragraph">
+<p>If for some reason you had already checked out branches other than <code>master</code>, substitute
+<code>master</code> for the other branch names in the second command above.</p>
+</div>
+</li>
+</ol>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_submitting_patches"><a class="link" href="#_submitting_patches">Submitting Patches</a></h3>
+<div class="paragraph">
+<p>To submit a patch, first commit your change (using a descriptive multi-line
+commit message if possible), then push the request to the <code>gerrit</code> remote. For instance, to push a change
+to the <code>master</code> branch:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre>git push gerrit HEAD:refs/for/master --no-thin</pre>
+</div>
+</div>
+<div class="paragraph">
+<p>or to push a change to the <code>gh-pages</code> branch (to update the website):</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre>git push gerrit HEAD:refs/for/gh-pages --no-thin</pre>
+</div>
+</div>
+<div class="admonitionblock tip">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-tip" title="Tip"></i>
+</td>
+<td class="content">
+While preparing a patch for review, it&#8217;s a good idea to follow
+<a href="https://git-scm.com/book/en/v2/Distributed-Git-Contributing-to-a-Project#_commit_guidelines">generic git commit guidelines and good practices</a>.
+</td>
+</tr>
+</table>
+</div>
+<div class="admonitionblock note">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-note" title="Note"></i>
+</td>
+<td class="content">
+The <code>--no-thin</code> argument is a workaround to prevent an error in Gerrit. See
+<a href="https://code.google.com/p/gerrit/issues/detail?id=1582" class="bare">https://code.google.com/p/gerrit/issues/detail?id=1582</a>.
+</td>
+</tr>
+</table>
+</div>
+<div class="admonitionblock tip">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-tip" title="Tip"></i>
+</td>
+<td class="content">
+Consider creating Git aliases for the above commands. Gerrit also includes
+a command-line tool called
+<a href="https://www.mediawiki.org/wiki/Gerrit/Tutorial#Installing_git-review">git-review</a>,
+which you may find helpful.
+</td>
+</tr>
+</table>
+</div>
+<div class="paragraph">
+<p>Gerrit will add a change ID to your commit message and will create a Gerrit review,
+whose URL will be emitted as part of the push reply. If desired, you can send a message
+to the <code>kudu-dev</code> mailing list, explaining your patch and requesting review.</p>
+</div>
+<div class="paragraph">
+<p>After getting feedback, you can update or amend your commit, (for instance, using
+a command like <code>git commit --amend</code>) while leaving the Change
+ID intact. Push your change to Gerrit again, and this will create a new patch set
+in Gerrit and notify all reviewers about the change.</p>
+</div>
+<div class="paragraph">
+<p>When your code has been reviewed and is ready to be merged into the Kudu code base,
+a Kudu committer will merge it using Gerrit. You can discard your local branch.</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_abandoning_a_review"><a class="link" href="#_abandoning_a_review">Abandoning a Review</a></h3>
+<div class="paragraph">
+<p>If your patch is not accepted or you decide to pull it from consideration, you can
+use the Gerrit UI to <strong>Abandon</strong> the patch. It will still show in Gerrit&#8217;s history,
+but will not be listed as a pending review.</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_reviewing_patches_in_gerrit"><a class="link" href="#_reviewing_patches_in_gerrit">Reviewing Patches In Gerrit</a></h3>
+<div class="paragraph">
+<p>You can view a unified or side-by-side diff of changes in Gerrit using the web UI.
+To leave a comment, click the relevant line number or highlight the relevant part
+of the line, and type 'c' to bring up a comment box. To submit your comments and/or
+your review status, go up to the top level of the review and click <strong>Reply</strong>. You can
+add additional top-level comments here, and submit them.</p>
+</div>
+<div class="paragraph">
+<p>To check out code from a Gerrit review, click <strong>Download</strong> and paste the relevant Git
+commands into your Git client. You can then update the commit and push to Gerrit to
+submit a patch to the review, even if you were not the original reviewer.</p>
+</div>
+<div class="paragraph">
+<p>Gerrit allows you to vote on a review. A vote of <code>+2</code> from at least one committer
+(besides the submitter) is required before the patch can be merged.</p>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_code_style"><a class="link" href="#_code_style">Code Style</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Get familiar with these guidelines so that your contributions can be reviewed and
+integrated quickly and easily.</p>
+</div>
+<div class="paragraph">
+<p>In general, Kudu follows the
+<a href="https://google.github.io/styleguide/cppguide.html">Google C++ Style Guide</a>,
+with the following exceptions:</p>
+</div>
+<div class="sect2">
+<h3 id="_notes_on_c_11"><a class="link" href="#_notes_on_c_11">Notes on C++ 11</a></h3>
+<div class="paragraph">
+<p>Kudu uses C++ 11. Check out this handy guide to C++ 11 move semantics and rvalue
+references: <a href="https://www.chromium.org/rvalue-references" class="bare">https://www.chromium.org/rvalue-references</a></p>
+</div>
+<div class="paragraph">
+<p>We aim to follow most of the same guidelines, such as, where possible, migrating
+away from <code>foo.Pass()</code> in favor of <code>std::move(foo)</code>.</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_limitations_on_code_boost_code_use"><a class="link" href="#_limitations_on_code_boost_code_use">Limitations on <code>boost</code> Use</a></h3>
+<div class="paragraph">
+<p><code>boost</code> classes from header-only libraries can be used in cases where a suitable
+replacement does not exist in the Kudu code base. However:</p>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p>Do not introduce dependencies on <code>boost</code> classes where equivalent functionality
+exists in the standard C++ library or in <code>src/kudu/gutil/</code>. For example, prefer
+<code>strings::Split()</code> from <code>gutil</code> rather than <code>boost::split</code>.</p>
+</li>
+<li>
+<p>Prefer using functionality from  <code>boost</code> rather than re-implementing the same
+functionality, <em>unless</em> using the <code>boost</code> functionality requires excessive use of
+C++ features which are disallowed by our style guidelines. For example,
+<code>boost::spirit</code> is heavily based on template metaprogramming and should not be used.</p>
+</li>
+<li>
+<p>Do not use <code>boost</code> in any public headers for the Kudu C++ client, because
+<code>boost</code> commonly breaks backward compatibility, and passing data between two
+<code>boost</code> versions (one by the user, one by Kudu) causes serious issues.</p>
+</li>
+</ul>
+</div>
+<div class="paragraph">
+<p>When in doubt about introducing a new dependency on any <code>boost</code> functionality,
+it is best to email <code>dev@kudu.apache.org</code> to start a discussion.</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_line_length"><a class="link" href="#_line_length">Line length</a></h3>
+<div class="paragraph">
+<p>The Kudu team allows line lengths of 100 characters per line, rather than Google&#8217;s standard of 80. Try to
+keep under 80 where possible, but you can spill over to 100 or so if necessary.</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_pointers"><a class="link" href="#_pointers">Pointers</a></h3>
+<div class="paragraph">
+<div class="title">Smart Pointers and Singly-Owned Pointers</div>
+<p>Generally, most objects should have clear "single-owner" semantics.
+Most of the time, singly-owned objects can be wrapped in a <code>unique_ptr&lt;&gt;</code>
+which ensures deletion on scope exit and prevents accidental copying.</p>
+</div>
+<div class="paragraph">
+<p>If an object is singly owned, but referenced from multiple places, such as when
+the pointed-to object is known to be valid at least as long as the pointer itself,
+associate a comment with the constructor which takes and stores the raw pointer,
+as in the following example.</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-c++" data-lang="c++">  // 'blah' must remain valid for the lifetime of this class
+  MyClass(const Blah* blah) :
+    blah_(blah) {
+  }</code></pre>
+</div>
+</div>
+<div class="admonitionblock note">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-note" title="Note"></i>
+</td>
+<td class="content">
+Older parts of the Kudu code base use <code>gscoped_ptr</code> instead of
+<code>unique_ptr</code>. These are hold-overs from before Kudu adopted C++11.
+New code should not use <code>gscoped_ptr</code> except when necessary to interface
+with existing code. Alternatively, consider updating usages as you come
+across them.
+</td>
+</tr>
+</table>
+</div>
+<div class="admonitionblock warning">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-warning" title="Warning"></i>
+</td>
+<td class="content">
+Using <code>std::auto_ptr</code> is strictly disallowed because of its difficult and
+bug-prone semantics. Besides, <code>std::auto_ptr</code> is declared deprecated
+since C++11.
+</td>
+</tr>
+</table>
+</div>
+<div class="paragraph">
+<div class="title">Smart Pointers for Multiply-Owned Pointers:</div>
+<p>Although single ownership is ideal, sometimes it is not possible, particularly
+when multiple threads are in play and the lifetimes of the pointers are not
+clearly defined. In these cases, you can use either <code>std::shared_ptr</code> or
+Kudu&#8217;s own <code>scoped_refptr</code> from <em>gutil/ref_counted.hpp</em>. Each of these mechanisms
+relies on reference counting to automatically delete the referent once no more
+pointers remain. The key difference between these two types of pointers is that
+<code>scoped_refptr</code> requires that the object extend a <code>RefCounted</code> base class, and
+stores its reference count inside the object storage itself, while <code>shared_ptr</code>
+maintains a separate reference count on the heap.</p>
+</div>
+<div class="paragraph">
+<p>The pros and cons are:</p>
+</div>
+<div class="ulist none">
+<div class="title"><code>shared_ptr</code></div>
+<ul class="none">
+<li>
+<p><span class="icon green"><i class="fa fa-plus-circle"></i></span> can be used with any type of object, without the
+object deriving from a special base class</p>
+</li>
+<li>
+<p><span class="icon green"><i class="fa fa-plus-circle"></i></span> part of the standard library and familiar to most
+C++ developers</p>
+</li>
+<li>
+<p><span class="icon green"><i class="fa fa-plus-circle"></i></span> supports the <code>weak_ptr</code> use cases:</p>
+<div class="ulist">
+<ul>
+<li>
+<p>a temporary ownership when an object needs to be accessed only if it exists</p>
+</li>
+<li>
+<p>break circular references of <code>shared_ptr</code>, if any exists due to aggregation</p>
+</li>
+</ul>
+</div>
+</li>
+<li>
+<p><span class="icon green"><i class="fa fa-plus-circle"></i></span> you can convert from the
+<code>shared_ptr</code> into the <code>weak_ptr</code> and back</p>
+</li>
+<li>
+<p><span class="icon green"><i class="fa fa-plus-circle"></i></span> if creating an instance with
+<code>std::make_shared&lt;&gt;()</code> only one allocation is made (since C++11;
+a non-binding requirement in the Standard, though)</p>
+</li>
+<li>
+<p><span class="icon red"><i class="fa fa-minus-circle"></i></span> if creating a new object with
+<code>shared_ptr&lt;T&gt; p(new T)</code> requires two allocations (one to create the ref count,
+and one to create the object)</p>
+</li>
+<li>
+<p><span class="icon red"><i class="fa fa-minus-circle"></i></span> the ref count may not be near the object on the heap,
+so extra cache misses may be incurred on access</p>
+</li>
+<li>
+<p><span class="icon red"><i class="fa fa-minus-circle"></i></span> the <code>shared_ptr</code> instance itself requires 16 bytes
+(pointer to the ref count and pointer to the object)</p>
+</li>
+</ul>
+</div>
+<div class="ulist none">
+<div class="title"><code>scoped_refptr</code></div>
+<ul class="none">
+<li>
+<p><span class="icon green"><i class="fa fa-plus-circle fa-pro"></i></span> only requires a single allocation, and ref count
+is on the same cache line as the object</p>
+</li>
+<li>
+<p><span class="icon green"><i class="fa fa-plus-circle fa-pro"></i></span> the pointer only requires 8 bytes (since
+the ref count is within the object)</p>
+</li>
+<li>
+<p><span class="icon green"><i class="fa fa-plus-circle fa-pro"></i></span> you can manually increase or decrease
+reference counts when more control is required</p>
+</li>
+<li>
+<p><span class="icon green"><i class="fa fa-plus-circle fa-pro"></i></span> you can convert from a raw pointer back
+to a <code>scoped_refptr</code> safely without worrying about double freeing</p>
+</li>
+<li>
+<p><span class="icon green"><i class="fa fa-plus-circle fa-pro"></i></span> since we control the implementation, we
+can implement features, such as debug builds that capture the stack trace of every
+referent to help debug leaks.</p>
+</li>
+<li>
+<p><span class="icon red"><i class="fa fa-minus-circle fa-con"></i></span> the referred-to object must inherit
+from <code>RefCounted</code></p>
+</li>
+<li>
+<p><span class="icon red"><i class="fa fa-minus-circle fa-con"></i></span> does not support the <code>weak_ptr</code> use cases</p>
+</li>
+</ul>
+</div>
+<div class="paragraph">
+<p>Since <code>scoped_refptr</code> is generally faster and smaller, try to use it
+rather than <code>shared_ptr</code> in new code. Existing code uses <code>shared_ptr</code>
+in many places. When interfacing with that code, you can continue to use <code>shared_ptr</code>.</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_function_binding_and_callbacks"><a class="link" href="#_function_binding_and_callbacks">Function Binding and Callbacks</a></h3>
+<div class="paragraph">
+<p>Existing code uses <code>boost::bind</code> and <code>boost::function</code> for function binding and
+callbacks. For new code, use the <code>Callback</code> and <code>Bind</code> classes in <code>gutil</code> instead.
+While less full-featured (<code>Bind</code> doesn&#8217;t support argument
+place holders, wrapped function pointers, or function objects), they provide
+more options by the way of argument lifecycle management. For example, a
+bound argument whose class extends <code>RefCounted</code> will be incremented during <code>Bind</code>
+and decremented when the <code>Callback</code> goes out of scope.</p>
+</div>
+<div class="paragraph">
+<p>See the large file comment in <em>gutil/callback.h</em> for more details, and
+<em>util/callback_bind-test.cc</em> for examples.</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="__code_cmake_code_style_guide"><a class="link" href="#__code_cmake_code_style_guide"><code>CMake</code> Style Guide</a></h3>
+<div class="paragraph">
+<p><code>CMake</code> allows commands in lower, upper, or mixed case. To keep
+the CMake files consistent, please use the following guidelines:</p>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p><strong>built-in commands</strong> in lowercase</p>
+</li>
+</ul>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre>add_subdirectory(some/path)</pre>
+</div>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p><strong>built-in arguments</strong> in uppercase</p>
+</li>
+</ul>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre>message(STATUS "message goes here")</pre>
+</div>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p><strong>custom commands or macros</strong> in uppercase</p>
+</li>
+</ul>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre>ADD_KUDU_TEST(some-test)</pre>
+</div>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_gflags"><a class="link" href="#_gflags">GFlags</a></h3>
+<div class="paragraph">
+<p>Kudu uses gflags for both command-line and file-based configuration. Use these guidelines
+to add a new gflag. All new gflags must conform to these
+guidelines. Existing non-conformant ones will be made conformant in time.</p>
+</div>
+<div class="paragraph">
+<div class="title">Name</div>
+<p>The gflag&#8217;s name conveys a lot of information, so choose a good name. The name
+will propagate into other systems, such as the
+<a href="configuration_reference.html">Configuration Reference</a>.</p>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p>The different parts of a multi-word name should be separated by underscores.
+For example, <code>fs_data_dirs</code>.</p>
+</li>
+<li>
+<p>The name should be prefixed with the context that it affects. For example,
+<code>webserver_num_worker_threads</code> and <code>cfile_default_block_size</code>. Context can be
+difficult to define, so bear in mind that this prefix will be
+used to group similar gflags together. If the gflag affects the entire
+process, it should not be prefixed.</p>
+</li>
+<li>
+<p>If the gflag is for a quantity, the name should be suffixed with the units.
+For example, <code>tablet_copy_idle_timeout_ms</code>.</p>
+</li>
+<li>
+<p>Where possible, use short names. This will save time for those entering
+command line options by hand.</p>
+</li>
+<li>
+<p>The name is part of Kudu&#8217;s compatibility contract, and should not change
+without very good reason.</p>
+</li>
+</ul>
+</div>
+<div class="paragraph">
+<div class="title">Default value</div>
+<p>Choosing a default value is generally simple, but like the name, it propagates
+into other systems.</p>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p>The default value is part of Kudu&#8217;s compatibility contract, and should not
+change without very good reason.</p>
+</li>
+</ul>
+</div>
+<div class="paragraph">
+<div class="title">Description</div>
+<p>The gflag&#8217;s description should supplement the name and provide additional
+context and information. Like the name, the description propagates into other
+systems.</p>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p>The description may include multiple sentences. Each should begin with a
+capital letter, end with a period, and begin one space after the previous.</p>
+</li>
+<li>
+<p>The description should NOT include the gflag&#8217;s type or default value; they are
+provided out-of-band.</p>
+</li>
+<li>
+<p>The description should be in the third person. Do not use words like <code>you</code>.</p>
+</li>
+<li>
+<p>A gflag description can be changed freely; it is not expected to remain the
+same across Kudu releases.</p>
+</li>
+</ul>
+</div>
+<div class="paragraph">
+<div class="title">Tags</div>
+<p>Kudu&#8217;s gflag tagging mechanism adds machine-readable context to each gflag, for
+use in consuming systems such as documentation or management tools. See the large block
+comment in <em>flag_tags.h</em> for guidelines.</p>
+</div>
+<div class="ulist">
+<div class="title">Miscellaneous</div>
+<ul>
+<li>
+<p>Avoid creating multiple gflags for the same logical parameter. For
+example, many Kudu binaries need to configure a WAL directory. Rather than
+creating <code>foo_wal_dir</code> and <code>bar_wal_dir</code> gflags, better to have a single
+<code>kudu_wal_dir</code> gflag for use universally.</p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_testing"><a class="link" href="#_testing">Testing</a></h2>
+<div class="sectionbody">
+<div class="dlist">
+<dl>
+<dt class="hdlist1">All new code should have tests.</dt>
+<dd>
+<p>Add new tests either in existing files, or create new test files as necessary.</p>
+</dd>
+<dt class="hdlist1">All bug fixes should have tests.</dt>
+<dd>
+<p>It&#8217;s OK to fix a bug without adding a
+new test if it&#8217;s triggered by an existing test case. For example, if a
+race shows up when running a multi-threaded system test after 20
+minutes or so, it&#8217;s worth trying to make a more targeted test case to
+trigger the bug. But if that&#8217;s hard to do, the existing system test
+should be enough.</p>
+</dd>
+<dt class="hdlist1">Tests should run quickly (&lt; 1s).</dt>
+<dd>
+<p>If you want to write a time-intensive
+test, make the runtime dependent on <code>KuduTest#AllowSlowTests</code>, which is
+enabled via the <code>KUDU_ALLOW_SLOW_TESTS</code> environment variable and is
+used by Jenkins test execution.</p>
+</dd>
+<dt class="hdlist1">Tests which run a number of iterations of some task should use a <code>gflags</code> command-line argument for the number of iterations.</dt>
+<dd>
+<p>This is handy for writing quick stress tests or performance tests.</p>
+</dd>
+<dt class="hdlist1">Commits which may affect performance should include before/after <code>perf-stat(1)</code> output.</dt>
+<dd>
+<p>This will show performance improvement or non-regression.
+Performance-sensitive code should include some test case which can be used as a
+targeted benchmark.</p>
+</dd>
+</dl>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_documentation"><a class="link" href="#_documentation">Documentation</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>See the
+<a href="https://github.com/apache/kudu/blob/master/docs/design-docs/doc-style-guide.adoc">Documentation Style Guide</a>
+for guidelines about contributing to the official Kudu documentation.</p>
+</div>
+</div>
+</div>
+    </div>
+    <div class="col-md-3">
+
+  <div id="toc" data-spy="affix" data-offset-top="70">
+  <ul>
+
+      <li>
+
+          <a href="index.html">Introducing Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="release_notes.html">Kudu Release Notes</a> 
+      </li> 
+      <li>
+
+          <a href="quickstart.html">Getting Started with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="installation.html">Installation Guide</a> 
+      </li> 
+      <li>
+
+          <a href="configuration.html">Configuring Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="kudu_impala_integration.html">Using Impala with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="administration.html">Administering Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="troubleshooting.html">Troubleshooting Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="developing.html">Developing Applications with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="schema_design.html">Kudu Schema Design</a> 
+      </li> 
+      <li>
+
+          <a href="security.html">Kudu Security</a> 
+      </li> 
+      <li>
+
+          <a href="transaction_semantics.html">Kudu Transaction Semantics</a> 
+      </li> 
+      <li>
+
+          <a href="background_tasks.html">Background Maintenance Tasks</a> 
+      </li> 
+      <li>
+
+          <a href="configuration_reference.html">Kudu Configuration Reference</a> 
+      </li> 
+      <li>
+
+          <a href="command_line_tools_reference.html">Kudu Command Line Tools Reference</a> 
+      </li> 
+      <li>
+
+          <a href="known_issues.html">Known Issues and Limitations</a> 
+      </li> 
+      <li>
+<span class="active-toc">Contributing to Kudu</span>
+            <ul class="sectlevel1">
+<li><a href="#_contributing_patches_using_gerrit">Contributing Patches Using Gerrit</a>
+<ul class="sectlevel2">
+<li><a href="#_initial_setup_for_gerrit">Initial Setup for Gerrit</a></li>
+<li><a href="#_submitting_patches">Submitting Patches</a></li>
+<li><a href="#_abandoning_a_review">Abandoning a Review</a></li>
+<li><a href="#_reviewing_patches_in_gerrit">Reviewing Patches In Gerrit</a></li>
+</ul>
+</li>
+<li><a href="#_code_style">Code Style</a>
+<ul class="sectlevel2">
+<li><a href="#_notes_on_c_11">Notes on C++ 11</a></li>
+<li><a href="#_limitations_on_code_boost_code_use">Limitations on <code>boost</code> Use</a></li>
+<li><a href="#_line_length">Line length</a></li>
+<li><a href="#_pointers">Pointers</a></li>
+<li><a href="#_function_binding_and_callbacks">Function Binding and Callbacks</a></li>
+<li><a href="#__code_cmake_code_style_guide"><code>CMake</code> Style Guide</a></li>
+<li><a href="#_gflags">GFlags</a></li>
+</ul>
+</li>
+<li><a href="#_testing">Testing</a></li>
+<li><a href="#_documentation">Documentation</a></li>
+</ul> 
+      </li> 
+      <li>
+
+          <a href="export_control.html">Export Control Notice</a> 
+      </li> 
+  </ul>
+  </div>
+    </div>
+  </div>
+</div>
+      <footer class="footer">
+        <p class="small">
+        Copyright &copy; 2016 The Apache Software Foundation.  Last updated 2017-05-15 17:12:37 PDT 
+        </p>
+      </footer>
+    </div>
+    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
+    <script>
+      // Try to detect touch-screen devices. Note: Many laptops have touch screens.
+      $(document).ready(function() {
+        if ("ontouchstart" in document.documentElement) {
+          $(document.documentElement).addClass("touch");
+        } else {
+          $(document.documentElement).addClass("no-touch");
+        }
+      });
+    </script>
+    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"
+            integrity="sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS"
+            crossorigin="anonymous"></script>
+    <script>
+      (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+      (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+      m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+      })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+
+      ga('create', 'UA-68448017-1', 'auto');
+      ga('send', 'pageview');
+    </script>
+    <script src="https://cdnjs.cloudflare.com/ajax/libs/anchor-js/3.1.0/anchor.js"></script>
+    <script>
+      anchors.options = {
+        placement: 'right',
+        visible: 'touch',
+      };
+      anchors.add();
+    </script>
+  </body>
+</html>
+
diff --git a/releases/1.4.0/docs/developing.html b/releases/1.4.0/docs/developing.html
new file mode 100644
index 0000000..94bc845
--- /dev/null
+++ b/releases/1.4.0/docs/developing.html
@@ -0,0 +1,579 @@
+<!DOCTYPE html>
+<html lang="en">
+  <head>
+    <meta charset="utf-8" />
+    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
+    <meta name="viewport" content="width=device-width, initial-scale=1" />
+    <!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
+    <meta name="description" content="A new open source Apache Hadoop ecosystem project, Apache Kudu completes Hadoop's storage layer to enable fast analytics on fast data" />
+    <meta name="author" content="Cloudera" />
+    <title>Apache Kudu - Developing Applications With Apache Kudu</title>
+    <!-- Bootstrap core CSS -->
+    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css"
+          integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7"
+          crossorigin="anonymous">
+
+    <!-- Custom styles for this template -->
+    <link href="/css/kudu.css" rel="stylesheet"/>
+    <link href="/css/asciidoc.css" rel="stylesheet"/>
+    <link rel="shortcut icon" href="/img/logo-favicon.ico" />
+    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.6.1/css/font-awesome.min.css" />
+
+    
+
+    <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+        <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+        <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+        <![endif]-->
+  </head>
+  <body>
+    <div class="kudu-site container-fluid">
+      <!-- Static navbar -->
+        <nav class="navbar navbar-default">
+          <div class="container-fluid">
+            <div class="navbar-header">
+              <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
+                <span class="sr-only">Toggle navigation</span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+              </button>
+              
+              <a class="logo" href="/"><img
+                src="//d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_80px.png"
+                srcset="//d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_80px.png 1x, //d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_160px.png 2x"
+                alt="Apache Kudu"/></a>
+              
+            </div>
+            <div id="navbar" class="collapse navbar-collapse">
+              <ul class="nav navbar-nav navbar-right">
+                <li >
+                  <a href="/">Home</a>
+                </li>
+                <li >
+                  <a href="/overview.html">Overview</a>
+                </li>
+                <li class="active">
+                  <a href="/docs/">Documentation</a>
+                </li>
+                <li >
+                  <a href="/releases/">Download</a>
+                </li>
+                <li >
+                  <a href="/blog/">Blog</a>
+                </li>
+                <!-- NOTE: this dropdown menu does not appear on Mobile, so don't add anything here
+                     that doesn't also appear elsewhere on the site. -->
+                <li class="dropdown">
+                  <a href="/community.html" role="button" aria-haspopup="true" aria-expanded="false">Community <span class="caret"></span></a>
+                  <ul class="dropdown-menu">
+                    <li class="dropdown-header">GET IN TOUCH</li>
+                    <li><a class="icon email" href="/community.html">Mailing Lists</a></li>
+                    <li><a class="icon slack" href="https://getkudu-slack.herokuapp.com/">Slack Channel</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li><a href="/community.html#meetups-user-groups-and-conference-presentations">Events and Meetups</a></li>
+                    <li><a href="/committers.html">Project Committers</a></li>
+                    <!--<li><a href="/roadmap.html">Roadmap</a></li>-->
+                    <li><a href="/community.html#contributions">How to Contribute</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li class="dropdown-header">DEVELOPER RESOURCES</li>
+                    <li><a class="icon github" href="https://github.com/apache/incubator-kudu">GitHub</a></li>
+                    <li><a class="icon gerrit" href="http://gerrit.cloudera.org:8080/#/q/status:open+project:kudu">Gerrit Code Review</a></li>
+                    <li><a class="icon jira" href="https://issues.apache.org/jira/browse/KUDU">JIRA Issue Tracker</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li class="dropdown-header">SOCIAL MEDIA</li>
+                    <li><a class="icon twitter" href="https://twitter.com/ApacheKudu">Twitter</a></li>
+                  </ul>
+                </li>
+                <li >
+                  <a href="/faq.html">FAQ</a>
+                </li>
+              </ul><!-- /.nav -->
+            </div><!-- /#navbar -->
+          </div><!-- /.container-fluid -->
+        </nav>
+
+<!--
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
+
+
+<div class="container">
+  <div class="row">
+    <div class="col-md-9">
+
+<h1>Developing Applications With Apache Kudu</h1>
+      <div id="preamble">
+<div class="sectionbody">
+<div class="paragraph">
+<p>Kudu provides C++, Java and Python client APIs, as well as reference examples to illustrate
+their use.</p>
+</div>
+<div class="admonitionblock warning">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-warning" title="Warning"></i>
+</td>
+<td class="content">
+Use of server-side or private interfaces is not supported, and interfaces
+which are not part of public APIs have no stability guarantees.
+</td>
+</tr>
+</table>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_viewing_the_api_documentation"><a class="link" href="#_viewing_the_api_documentation">Viewing the API Documentation</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<div class="title">C++ API Documentation</div>
+<p>You can view the <a href="../cpp-client-api/index.html">C++ client API documentation</a>
+online. Alternatively, after <a href="#build_from_source">building Kudu from source</a>,
+you can additionally build the <code>doxygen</code> target (e.g., run <code>make doxygen</code>
+if using make) and use the locally generated API documentation by opening
+<code>docs/doxygen/client_api/html/index.html</code> file in your favorite Web browser.</p>
+</div>
+<div class="admonitionblock note">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-note" title="Note"></i>
+</td>
+<td class="content">
+In order to build the <code>doxygen</code> target, it&#8217;s necessary to have
+doxygen with Dot (graphviz) support installed at your build machine. If
+you installed doxygen after building Kudu from source, you will need to run
+<code>cmake</code> again to pick up the doxygen location and generate appropriate
+targets.
+</td>
+</tr>
+</table>
+</div>
+<div class="paragraph">
+<div class="title">Java API Documentation</div>
+<p>You can view the <a href="../apidocs/index.html">Java API documentation</a> online. Alternatively,
+after <a href="#build_java_client">building the Java client</a>, Java API documentation is available
+in <code>java/kudu-client/target/apidocs/index.html</code>.</p>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_working_examples"><a class="link" href="#_working_examples">Working Examples</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Several example applications are provided in the
+<a href="https://github.com/cloudera/kudu-examples">kudu-examples</a> Github
+repository. Each example includes a <code>README</code> that shows how to compile and run
+it. These examples illustrate correct usage of the Kudu APIs, as well as how to
+set up a virtual machine to run Kudu. The following list includes some of the
+examples that are available today. Check the repository itself in case this list goes
+out of date.</p>
+</div>
+<div class="dlist">
+<dl>
+<dt class="hdlist1"><code>java/java-example</code></dt>
+<dd>
+<p>A simple Java application which connects to a Kudu instance, creates a table, writes data to it, then drops the table.</p>
+</dd>
+<dt class="hdlist1"><code>java/collectl</code></dt>
+<dd>
+<p>A small Java application which listens on a TCP socket for time series data corresponding to the Collectl wire protocol.
+The commonly-available collectl tool can be used to send example data to the server.</p>
+</dd>
+<dt class="hdlist1"><code>java/insert-loadgen</code></dt>
+<dd>
+<p>A Java application that generates random insert load.</p>
+</dd>
+<dt class="hdlist1"><code>python/dstat-kudu</code></dt>
+<dd>
+<p>An example program that shows how to use the Kudu Python API to load data into a new / existing Kudu table
+generated by an external program, <code>dstat</code> in this case.</p>
+</dd>
+<dt class="hdlist1"><code>python/graphite-kudu</code></dt>
+<dd>
+<p>An experimental plugin for using graphite-web with Kudu as a backend.</p>
+</dd>
+<dt class="hdlist1"><code>demo-vm-setup</code></dt>
+<dd>
+<p>Scripts to download and run a VirtualBox virtual machine with Kudu already installed.
+See <a href="quickstart.html">Quickstart</a> for more information.</p>
+</dd>
+</dl>
+</div>
+<div class="paragraph">
+<p>These examples should serve as helpful starting points for your own Kudu applications and integrations.</p>
+</div>
+<div class="sect2">
+<h3 id="_maven_artifacts"><a class="link" href="#_maven_artifacts">Maven Artifacts</a></h3>
+<div class="paragraph">
+<p>The following Maven <code>&lt;dependency&gt;</code> element is valid for the Apache Kudu public release
+(since 1.0.0):</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-xml" data-lang="xml">&lt;dependency&gt;
+  &lt;groupId&gt;org.apache.kudu&lt;/groupId&gt;
+  &lt;artifactId&gt;kudu-client&lt;/artifactId&gt;
+  &lt;version&gt;1.1.0&lt;/version&gt;
+&lt;/dependency&gt;</code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>Convenience binary artifacts for the Java client and various Java integrations (e.g. Spark, Flume)
+are also now available via the <a href="http://repository.apache.org">ASF Maven repository</a> and
+<a href="https://mvnrepository.com/artifact/org.apache.kudu">Maven Central repository</a>.</p>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_example_impala_commands_with_kudu"><a class="link" href="#_example_impala_commands_with_kudu">Example Impala Commands With Kudu</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>See <a href="kudu_impala_integration.html">Using Impala With Kudu</a> for guidance on installing
+and using Impala with Kudu, including several <code>impala-shell</code> examples.</p>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_kudu_integration_with_spark"><a class="link" href="#_kudu_integration_with_spark">Kudu Integration with Spark</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Kudu integrates with Spark through the Data Source API as of version 1.0.0.
+Include the kudu-spark dependency using the --packages option:</p>
+</div>
+<div class="paragraph">
+<p>Use the kudu-spark_2.10 artifact if using Spark with Scala 2.10</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code>spark-shell --packages org.apache.kudu:kudu-spark_2.10:1.1.0</code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>Use kudu-spark2_2.11 artifact if using Spark 2 with Scala 2.11</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code>spark-shell --packages org.apache.kudu:kudu-spark2_2.11:1.1.0</code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>then import kudu-spark and create a dataframe:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-scala" data-lang="scala">import org.apache.kudu.spark.kudu._
+import org.apache.kudu.client._
+import collection.JavaConverters._
+
+// Read a table from Kudu
+val df = sqlContext.read.options(Map("kudu.master" -&gt; "kudu.master:7051","kudu.table" -&gt; "kudu_table")).kudu
+
+// Query using the Spark API...
+df.select("id").filter("id" &gt;= 5).show()
+
+// ...or register a temporary table and use SQL
+df.registerTempTable("kudu_table")
+val filteredDF = sqlContext.sql("select id from kudu_table where id &gt;= 5").show()
+
+// Use KuduContext to create, delete, or write to Kudu tables
+val kuduContext = new KuduContext("kudu.master:7051", sqlContext.sparkContext)
+
+// Create a new Kudu table from a dataframe schema
+// NB: No rows from the dataframe are inserted into the table
+kuduContext.createTable(
+    "test_table", df.schema, Seq("key"),
+    new CreateTableOptions()
+        .setNumReplicas(1)
+        .addHashPartitions(List("key").asJava, 3))
+
+// Insert data
+kuduContext.insertRows(df, "test_table")
+
+// Delete data
+kuduContext.deleteRows(filteredDF, "test_table")
+
+// Upsert data
+kuduContext.upsertRows(df, "test_table")
+
+// Update data
+val alteredDF = df.select("id", $"count" + 1)
+kuduContext.updateRows(filteredRows, "test_table"
+
+// Data can also be inserted into the Kudu table using the data source, though the methods on KuduContext are preferred
+// NB: The default is to upsert rows; to perform standard inserts instead, set operation = insert in the options map
+// NB: Only mode Append is supported
+df.write.options(Map("kudu.master"-&gt; "kudu.master:7051", "kudu.table"-&gt; "test_table")).mode("append").kudu
+
+// Check for the existence of a Kudu table
+kuduContext.tableExists("another_table")
+
+// Delete a Kudu table
+kuduContext.deleteTable("unwanted_table")</code></pre>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_spark_integration_known_issues_and_limitations"><a class="link" href="#_spark_integration_known_issues_and_limitations">Spark Integration Known Issues and Limitations</a></h3>
+<div class="ulist">
+<ul>
+<li>
+<p>Kudu tables with a name containing upper case or non-ascii characters must be
+assigned an alternate name when registered as a temporary table.</p>
+</li>
+<li>
+<p>Kudu tables with a column name containing upper case or non-ascii characters
+may not be used with SparkSQL. Columns may be renamed in Kudu to work around
+this issue.</p>
+</li>
+<li>
+<p><code>&lt;&gt;</code> and <code>OR</code> predicates are not pushed to Kudu, and instead will be evaluated
+by the Spark task. Only <code>LIKE</code> predicates with a suffix wildcard are pushed to
+Kudu, meaning that <code>LIKE "FOO%"</code> is pushed down but <code>LIKE "FOO%BAR"</code> isn&#8217;t.</p>
+</li>
+<li>
+<p>Kudu does not support all types supported by Spark SQL, such as <code>Date</code>,
+<code>Decimal</code> and complex types.</p>
+</li>
+<li>
+<p>Kudu tables may only be registered as temporary tables in SparkSQL.
+Kudu tables may not be queried using HiveContext.</p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_kudu_python_client"><a class="link" href="#_kudu_python_client">Kudu Python Client</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The Kudu Python client provides a Python friendly interface to the C++ client API.
+The sample below demonstrates the use of part of the Python client.</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-python" data-lang="python">import kudu
+from kudu.client import Partitioning
+from datetime import datetime
+
+# Connect to Kudu master server
+client = kudu.connect(host='kudu.master', port=7051)
+
+# Define a schema for a new table
+builder = kudu.schema_builder()
+builder.add_column('key').type(kudu.int64).nullable(False).primary_key()
+builder.add_column('ts_val', type_=kudu.unixtime_micros, nullable=False, compression='lz4')
+schema = builder.build()
+
+# Define partitioning schema
+partitioning = Partitioning().add_hash_partitions(column_names=['key'], num_buckets=3)
+
+# Create new table
+client.create_table('python-example', schema, partitioning)
+
+# Open a table
+table = client.table('python-example')
+
+# Create a new session so that we can apply write operations
+session = client.new_session()
+
+# Insert a row
+op = table.new_insert({'key': 1, 'ts_val': datetime.utcnow()})
+session.apply(op)
+
+# Upsert a row
+op = table.new_upsert({'key': 2, 'ts_val': "2016-01-01T00:00:00.000000"})
+session.apply(op)
+
+# Updating a row
+op = table.new_update({'key': 1, 'ts_val': ("2017-01-01", "%Y-%m-%d")})
+session.apply(op)
+
+# Delete a row
+op = table.new_delete({'key': 2})
+session.apply(op)
+
+# Flush write operations, if failures occur, capture print them.
+try:
+    session.flush()
+except kudu.KuduBadStatus as e:
+    print(session.get_pending_errors())
+
+# Create a scanner and add a predicate
+scanner = table.scanner()
+scanner.add_predicate(table['ts_val'] == datetime(2017, 1, 1))
+
+# Open Scanner and read all tuples
+# Note: This doesn't scale for large scans
+result = scanner.open().read_all_tuples()</code></pre>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_integration_with_mapreduce_yarn_and_other_frameworks"><a class="link" href="#_integration_with_mapreduce_yarn_and_other_frameworks">Integration with MapReduce, YARN, and Other Frameworks</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Kudu was designed to integrate with MapReduce, YARN, Spark, and other frameworks in
+the Hadoop ecosystem. See
+<a href="https://github.com/apache/kudu/blob/master/java/kudu-client-tools/src/main/java/org/apache/kudu/mapreduce/tools/RowCounter.java">RowCounter.java</a>
+and
+<a href="https://github.com/apache/kudu/blob/master/java/kudu-client-tools/src/main/java/org/apache/kudu/mapreduce/tools/ImportCsv.java">ImportCsv.java</a>
+for examples which you can model your own integrations on. Stay tuned for more examples
+using YARN and Spark in the future.</p>
+</div>
+</div>
+</div>
+    </div>
+    <div class="col-md-3">
+
+  <div id="toc" data-spy="affix" data-offset-top="70">
+  <ul>
+
+      <li>
+
+          <a href="index.html">Introducing Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="release_notes.html">Kudu Release Notes</a> 
+      </li> 
+      <li>
+
+          <a href="quickstart.html">Getting Started with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="installation.html">Installation Guide</a> 
+      </li> 
+      <li>
+
+          <a href="configuration.html">Configuring Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="kudu_impala_integration.html">Using Impala with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="administration.html">Administering Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="troubleshooting.html">Troubleshooting Kudu</a> 
+      </li> 
+      <li>
+<span class="active-toc">Developing Applications with Kudu</span>
+            <ul class="sectlevel1">
+<li><a href="#_viewing_the_api_documentation">Viewing the API Documentation</a></li>
+<li><a href="#_working_examples">Working Examples</a>
+<ul class="sectlevel2">
+<li><a href="#_maven_artifacts">Maven Artifacts</a></li>
+</ul>
+</li>
+<li><a href="#_example_impala_commands_with_kudu">Example Impala Commands With Kudu</a></li>
+<li><a href="#_kudu_integration_with_spark">Kudu Integration with Spark</a>
+<ul class="sectlevel2">
+<li><a href="#_spark_integration_known_issues_and_limitations">Spark Integration Known Issues and Limitations</a></li>
+</ul>
+</li>
+<li><a href="#_kudu_python_client">Kudu Python Client</a></li>
+<li><a href="#_integration_with_mapreduce_yarn_and_other_frameworks">Integration with MapReduce, YARN, and Other Frameworks</a></li>
+</ul> 
+      </li> 
+      <li>
+
+          <a href="schema_design.html">Kudu Schema Design</a> 
+      </li> 
+      <li>
+
+          <a href="security.html">Kudu Security</a> 
+      </li> 
+      <li>
+
+          <a href="transaction_semantics.html">Kudu Transaction Semantics</a> 
+      </li> 
+      <li>
+
+          <a href="background_tasks.html">Background Maintenance Tasks</a> 
+      </li> 
+      <li>
+
+          <a href="configuration_reference.html">Kudu Configuration Reference</a> 
+      </li> 
+      <li>
+
+          <a href="command_line_tools_reference.html">Kudu Command Line Tools Reference</a> 
+      </li> 
+      <li>
+
+          <a href="known_issues.html">Known Issues and Limitations</a> 
+      </li> 
+      <li>
+
+          <a href="contributing.html">Contributing to Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="export_control.html">Export Control Notice</a> 
+      </li> 
+  </ul>
+  </div>
+    </div>
+  </div>
+</div>
+      <footer class="footer">
+        <p class="small">
+        Copyright &copy; 2016 The Apache Software Foundation.  Last updated 2017-05-18 13:38:03 PDT 
+        </p>
+      </footer>
+    </div>
+    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
+    <script>
+      // Try to detect touch-screen devices. Note: Many laptops have touch screens.
+      $(document).ready(function() {
+        if ("ontouchstart" in document.documentElement) {
+          $(document.documentElement).addClass("touch");
+        } else {
+          $(document.documentElement).addClass("no-touch");
+        }
+      });
+    </script>
+    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"
+            integrity="sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS"
+            crossorigin="anonymous"></script>
+    <script>
+      (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+      (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+      m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+      })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+
+      ga('create', 'UA-68448017-1', 'auto');
+      ga('send', 'pageview');
+    </script>
+    <script src="https://cdnjs.cloudflare.com/ajax/libs/anchor-js/3.1.0/anchor.js"></script>
+    <script>
+      anchors.options = {
+        placement: 'right',
+        visible: 'touch',
+      };
+      anchors.add();
+    </script>
+  </body>
+</html>
+
diff --git a/releases/1.4.0/docs/export_control.html b/releases/1.4.0/docs/export_control.html
new file mode 100644
index 0000000..4511df3
--- /dev/null
+++ b/releases/1.4.0/docs/export_control.html
@@ -0,0 +1,284 @@
+<!DOCTYPE html>
+<html lang="en">
+  <head>
+    <meta charset="utf-8" />
+    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
+    <meta name="viewport" content="width=device-width, initial-scale=1" />
+    <!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
+    <meta name="description" content="A new open source Apache Hadoop ecosystem project, Apache Kudu completes Hadoop's storage layer to enable fast analytics on fast data" />
+    <meta name="author" content="Cloudera" />
+    <title>Apache Kudu - Export Control Notice</title>
+    <!-- Bootstrap core CSS -->
+    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css"
+          integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7"
+          crossorigin="anonymous">
+
+    <!-- Custom styles for this template -->
+    <link href="/css/kudu.css" rel="stylesheet"/>
+    <link href="/css/asciidoc.css" rel="stylesheet"/>
+    <link rel="shortcut icon" href="/img/logo-favicon.ico" />
+    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.6.1/css/font-awesome.min.css" />
+
+    
+
+    <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+        <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+        <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+        <![endif]-->
+  </head>
+  <body>
+    <div class="kudu-site container-fluid">
+      <!-- Static navbar -->
+        <nav class="navbar navbar-default">
+          <div class="container-fluid">
+            <div class="navbar-header">
+              <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
+                <span class="sr-only">Toggle navigation</span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+              </button>
+              
+              <a class="logo" href="/"><img
+                src="//d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_80px.png"
+                srcset="//d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_80px.png 1x, //d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_160px.png 2x"
+                alt="Apache Kudu"/></a>
+              
+            </div>
+            <div id="navbar" class="collapse navbar-collapse">
+              <ul class="nav navbar-nav navbar-right">
+                <li >
+                  <a href="/">Home</a>
+                </li>
+                <li >
+                  <a href="/overview.html">Overview</a>
+                </li>
+                <li class="active">
+                  <a href="/docs/">Documentation</a>
+                </li>
+                <li >
+                  <a href="/releases/">Download</a>
+                </li>
+                <li >
+                  <a href="/blog/">Blog</a>
+                </li>
+                <!-- NOTE: this dropdown menu does not appear on Mobile, so don't add anything here
+                     that doesn't also appear elsewhere on the site. -->
+                <li class="dropdown">
+                  <a href="/community.html" role="button" aria-haspopup="true" aria-expanded="false">Community <span class="caret"></span></a>
+                  <ul class="dropdown-menu">
+                    <li class="dropdown-header">GET IN TOUCH</li>
+                    <li><a class="icon email" href="/community.html">Mailing Lists</a></li>
+                    <li><a class="icon slack" href="https://getkudu-slack.herokuapp.com/">Slack Channel</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li><a href="/community.html#meetups-user-groups-and-conference-presentations">Events and Meetups</a></li>
+                    <li><a href="/committers.html">Project Committers</a></li>
+                    <!--<li><a href="/roadmap.html">Roadmap</a></li>-->
+                    <li><a href="/community.html#contributions">How to Contribute</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li class="dropdown-header">DEVELOPER RESOURCES</li>
+                    <li><a class="icon github" href="https://github.com/apache/incubator-kudu">GitHub</a></li>
+                    <li><a class="icon gerrit" href="http://gerrit.cloudera.org:8080/#/q/status:open+project:kudu">Gerrit Code Review</a></li>
+                    <li><a class="icon jira" href="https://issues.apache.org/jira/browse/KUDU">JIRA Issue Tracker</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li class="dropdown-header">SOCIAL MEDIA</li>
+                    <li><a class="icon twitter" href="https://twitter.com/ApacheKudu">Twitter</a></li>
+                  </ul>
+                </li>
+                <li >
+                  <a href="/faq.html">FAQ</a>
+                </li>
+              </ul><!-- /.nav -->
+            </div><!-- /#navbar -->
+          </div><!-- /.container-fluid -->
+        </nav>
+
+<!--
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
+
+
+<div class="container">
+  <div class="row">
+    <div class="col-md-9">
+
+<h1>Export Control Notice</h1>
+      <div id="preamble">
+<div class="sectionbody">
+<div class="paragraph">
+<p>This distribution includes cryptographic software.  The country in
+which you currently reside may have restrictions on the import,
+possession, use, and/or re-export to another country, of
+encryption software.  BEFORE using any encryption software, please
+check your country&#8217;s laws, regulations and policies concerning the
+import, possession, or use, and re-export of encryption software, to
+see if this is permitted.  See <a href="http://www.wassenaar.org/" class="bare">http://www.wassenaar.org/</a> for more
+information.</p>
+</div>
+<div class="paragraph">
+<p>The U.S. Government Department of Commerce, Bureau of Industry and
+Security (BIS), has classified this software as Export Commodity
+Control Number (ECCN) 5D002.C.1, which includes information security
+software using or performing cryptographic functions with asymmetric
+algorithms.  The form and manner of this Apache Software Foundation
+distribution makes it eligible for export under the License Exception
+ENC Technology Software Unrestricted (TSU) exception (see the BIS
+Export Administration Regulations, Section 740.13) for both object
+code and source code.</p>
+</div>
+<div class="paragraph">
+<p>The following provides more details on the included cryptographic
+software:</p>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p>This software uses OpenSSL to enable TLS-encrypted connections,
+generate keys for asymmetric cryptography, and generate and
+verify signatures using those keys.</p>
+</li>
+<li>
+<p>This software uses Java SE Security libraries including the
+Java Secure Socket Extension (JSSE), Java Generic Security Service
+(JGSS), and Java Authentication and Authorization APIs (JAAS)
+to provide secure authentication and TLS-protected transport.</p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+    </div>
+    <div class="col-md-3">
+
+  <div id="toc" data-spy="affix" data-offset-top="70">
+  <ul>
+
+      <li>
+
+          <a href="index.html">Introducing Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="release_notes.html">Kudu Release Notes</a> 
+      </li> 
+      <li>
+
+          <a href="quickstart.html">Getting Started with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="installation.html">Installation Guide</a> 
+      </li> 
+      <li>
+
+          <a href="configuration.html">Configuring Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="kudu_impala_integration.html">Using Impala with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="administration.html">Administering Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="troubleshooting.html">Troubleshooting Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="developing.html">Developing Applications with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="schema_design.html">Kudu Schema Design</a> 
+      </li> 
+      <li>
+
+          <a href="security.html">Kudu Security</a> 
+      </li> 
+      <li>
+
+          <a href="transaction_semantics.html">Kudu Transaction Semantics</a> 
+      </li> 
+      <li>
+
+          <a href="background_tasks.html">Background Maintenance Tasks</a> 
+      </li> 
+      <li>
+
+          <a href="configuration_reference.html">Kudu Configuration Reference</a> 
+      </li> 
+      <li>
+
+          <a href="command_line_tools_reference.html">Kudu Command Line Tools Reference</a> 
+      </li> 
+      <li>
+
+          <a href="known_issues.html">Known Issues and Limitations</a> 
+      </li> 
+      <li>
+
+          <a href="contributing.html">Contributing to Kudu</a> 
+      </li> 
+      <li>
+<span class="active-toc">Export Control Notice</span>
+             
+      </li> 
+  </ul>
+  </div>
+    </div>
+  </div>
+</div>
+      <footer class="footer">
+        <p class="small">
+        Copyright &copy; 2016 The Apache Software Foundation.  Last updated 2017-04-10 16:00:03 PDT 
+        </p>
+      </footer>
+    </div>
+    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
+    <script>
+      // Try to detect touch-screen devices. Note: Many laptops have touch screens.
+      $(document).ready(function() {
+        if ("ontouchstart" in document.documentElement) {
+          $(document.documentElement).addClass("touch");
+        } else {
+          $(document.documentElement).addClass("no-touch");
+        }
+      });
+    </script>
+    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"
+            integrity="sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS"
+            crossorigin="anonymous"></script>
+    <script>
+      (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+      (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+      m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+      })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+
+      ga('create', 'UA-68448017-1', 'auto');
+      ga('send', 'pageview');
+    </script>
+    <script src="https://cdnjs.cloudflare.com/ajax/libs/anchor-js/3.1.0/anchor.js"></script>
+    <script>
+      anchors.options = {
+        placement: 'right',
+        visible: 'touch',
+      };
+      anchors.add();
+    </script>
+  </body>
+</html>
+
diff --git a/releases/1.4.0/docs/images/hash-hash-partitioning-example.png b/releases/1.4.0/docs/images/hash-hash-partitioning-example.png
new file mode 100644
index 0000000..c843f73
--- /dev/null
+++ b/releases/1.4.0/docs/images/hash-hash-partitioning-example.png
Binary files differ
diff --git a/releases/1.4.0/docs/images/hash-partitioning-example.png b/releases/1.4.0/docs/images/hash-partitioning-example.png
new file mode 100644
index 0000000..56de4e8
--- /dev/null
+++ b/releases/1.4.0/docs/images/hash-partitioning-example.png
Binary files differ
diff --git a/releases/1.4.0/docs/images/hash-range-partitioning-example.png b/releases/1.4.0/docs/images/hash-range-partitioning-example.png
new file mode 100644
index 0000000..6e16ada
--- /dev/null
+++ b/releases/1.4.0/docs/images/hash-range-partitioning-example.png
Binary files differ
diff --git a/releases/1.4.0/docs/images/kudu-architecture-2.png b/releases/1.4.0/docs/images/kudu-architecture-2.png
new file mode 100644
index 0000000..fcaeba5
--- /dev/null
+++ b/releases/1.4.0/docs/images/kudu-architecture-2.png
Binary files differ
diff --git a/releases/1.4.0/docs/images/range-partitioning-example.png b/releases/1.4.0/docs/images/range-partitioning-example.png
new file mode 100644
index 0000000..23eac01
--- /dev/null
+++ b/releases/1.4.0/docs/images/range-partitioning-example.png
Binary files differ
diff --git a/releases/1.4.0/docs/index.html b/releases/1.4.0/docs/index.html
new file mode 100644
index 0000000..1b45575
--- /dev/null
+++ b/releases/1.4.0/docs/index.html
@@ -0,0 +1,600 @@
+<!DOCTYPE html>
+<html lang="en">
+  <head>
+    <meta charset="utf-8" />
+    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
+    <meta name="viewport" content="width=device-width, initial-scale=1" />
+    <!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
+    <meta name="description" content="A new open source Apache Hadoop ecosystem project, Apache Kudu completes Hadoop's storage layer to enable fast analytics on fast data" />
+    <meta name="author" content="Cloudera" />
+    <title>Apache Kudu - Introducing Apache Kudu</title>
+    <!-- Bootstrap core CSS -->
+    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css"
+          integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7"
+          crossorigin="anonymous">
+
+    <!-- Custom styles for this template -->
+    <link href="/css/kudu.css" rel="stylesheet"/>
+    <link href="/css/asciidoc.css" rel="stylesheet"/>
+    <link rel="shortcut icon" href="/img/logo-favicon.ico" />
+    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.6.1/css/font-awesome.min.css" />
+
+    
+
+    <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+        <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+        <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+        <![endif]-->
+  </head>
+  <body>
+    <div class="kudu-site container-fluid">
+      <!-- Static navbar -->
+        <nav class="navbar navbar-default">
+          <div class="container-fluid">
+            <div class="navbar-header">
+              <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
+                <span class="sr-only">Toggle navigation</span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+              </button>
+              
+              <a class="logo" href="/"><img
+                src="//d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_80px.png"
+                srcset="//d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_80px.png 1x, //d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_160px.png 2x"
+                alt="Apache Kudu"/></a>
+              
+            </div>
+            <div id="navbar" class="collapse navbar-collapse">
+              <ul class="nav navbar-nav navbar-right">
+                <li >
+                  <a href="/">Home</a>
+                </li>
+                <li >
+                  <a href="/overview.html">Overview</a>
+                </li>
+                <li class="active">
+                  <a href="/docs/">Documentation</a>
+                </li>
+                <li >
+                  <a href="/releases/">Download</a>
+                </li>
+                <li >
+                  <a href="/blog/">Blog</a>
+                </li>
+                <!-- NOTE: this dropdown menu does not appear on Mobile, so don't add anything here
+                     that doesn't also appear elsewhere on the site. -->
+                <li class="dropdown">
+                  <a href="/community.html" role="button" aria-haspopup="true" aria-expanded="false">Community <span class="caret"></span></a>
+                  <ul class="dropdown-menu">
+                    <li class="dropdown-header">GET IN TOUCH</li>
+                    <li><a class="icon email" href="/community.html">Mailing Lists</a></li>
+                    <li><a class="icon slack" href="https://getkudu-slack.herokuapp.com/">Slack Channel</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li><a href="/community.html#meetups-user-groups-and-conference-presentations">Events and Meetups</a></li>
+                    <li><a href="/committers.html">Project Committers</a></li>
+                    <!--<li><a href="/roadmap.html">Roadmap</a></li>-->
+                    <li><a href="/community.html#contributions">How to Contribute</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li class="dropdown-header">DEVELOPER RESOURCES</li>
+                    <li><a class="icon github" href="https://github.com/apache/incubator-kudu">GitHub</a></li>
+                    <li><a class="icon gerrit" href="http://gerrit.cloudera.org:8080/#/q/status:open+project:kudu">Gerrit Code Review</a></li>
+                    <li><a class="icon jira" href="https://issues.apache.org/jira/browse/KUDU">JIRA Issue Tracker</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li class="dropdown-header">SOCIAL MEDIA</li>
+                    <li><a class="icon twitter" href="https://twitter.com/ApacheKudu">Twitter</a></li>
+                  </ul>
+                </li>
+                <li >
+                  <a href="/faq.html">FAQ</a>
+                </li>
+              </ul><!-- /.nav -->
+            </div><!-- /#navbar -->
+          </div><!-- /.container-fluid -->
+        </nav>
+
+<!--
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
+
+
+<div class="container">
+  <div class="row">
+    <div class="col-md-9">
+
+<h1>Introducing Apache Kudu</h1>
+      <div id="preamble">
+<div class="sectionbody">
+<div class="paragraph">
+<p>Kudu is a columnar storage manager developed for the Apache Hadoop platform.  Kudu shares
+the common technical properties of Hadoop ecosystem applications: it runs on commodity
+hardware, is horizontally scalable, and supports highly available operation.</p>
+</div>
+<div class="paragraph">
+<p>Kudu&#8217;s design sets it apart. Some of Kudu&#8217;s benefits include:</p>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p>Fast processing of OLAP workloads.</p>
+</li>
+<li>
+<p>Integration with MapReduce, Spark and other Hadoop ecosystem components.</p>
+</li>
+<li>
+<p>Tight integration with Apache Impala (incubating), making it a good, mutable
+alternative to using HDFS with Apache Parquet.</p>
+</li>
+<li>
+<p>Strong but flexible consistency model, allowing you to choose consistency
+requirements on a per-request basis, including the option for strict-serializable consistency.</p>
+</li>
+<li>
+<p>Strong performance for running sequential and random workloads simultaneously.</p>
+</li>
+<li>
+<p>Easy to administer and manage with Cloudera Manager.</p>
+</li>
+<li>
+<p>High availability. Tablet Servers and Masters use the <a href="#raft">Raft Consensus Algorithm</a>, which ensures that
+as long as more than half the total number of replicas is available, the tablet is available for
+reads and writes. For instance, if 2 out of 3 replicas or 3 out of 5 replicas are available, the tablet
+is available.</p>
+<div class="paragraph">
+<p>Reads can be serviced by read-only follower tablets, even in the event of a
+leader tablet failure.</p>
+</div>
+</li>
+<li>
+<p>Structured data model.</p>
+</li>
+</ul>
+</div>
+<div class="paragraph">
+<p>By combining all of these properties, Kudu targets support for families of
+applications that are difficult or impossible to implement on current generation
+Hadoop storage technologies. A few examples of applications for which Kudu is a great
+solution are:</p>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p>Reporting applications where newly-arrived data needs to be immediately available for end users</p>
+</li>
+<li>
+<p>Time-series applications that must simultaneously support:</p>
+<div class="ulist">
+<ul>
+<li>
+<p>queries across large amounts of historic data</p>
+</li>
+<li>
+<p>granular queries about an individual entity that must return very quickly</p>
+</li>
+</ul>
+</div>
+</li>
+<li>
+<p>Applications that use predictive models to make real-time decisions with periodic
+refreshes of the predictive model based on all historic data</p>
+</li>
+</ul>
+</div>
+<div class="paragraph">
+<p>For more information about these and other scenarios, see <a href="#kudu_use_cases">Example Use Cases</a>.</p>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_kudu_impala_integration_features"><a class="link" href="#_kudu_impala_integration_features">Kudu-Impala Integration Features</a></h2>
+<div class="sectionbody">
+<div class="dlist">
+<dl>
+<dt class="hdlist1"><code>CREATE/ALTER/DROP TABLE</code></dt>
+<dd>
+<p>Impala supports creating, altering, and dropping tables using Kudu as the persistence layer.
+The tables follow the same internal / external approach as other tables in Impala,
+allowing for flexible data ingestion and querying.</p>
+</dd>
+<dt class="hdlist1"><code>INSERT</code></dt>
+<dd>
+<p>Data can be inserted into Kudu tables in Impala using the same syntax as
+any other Impala table like those using HDFS or HBase for persistence.</p>
+</dd>
+<dt class="hdlist1"><code>UPDATE</code> / <code>DELETE</code></dt>
+<dd>
+<p>Impala supports the <code>UPDATE</code> and <code>DELETE</code> SQL commands to modify existing data in
+a Kudu table row-by-row or as a batch. The syntax of the SQL commands is chosen
+to be as compatible as possible with existing standards. In addition to simple <code>DELETE</code>
+or <code>UPDATE</code> commands, you can specify complex joins with a <code>FROM</code> clause in a subquery.</p>
+</dd>
+<dt class="hdlist1">Flexible Partitioning</dt>
+<dd>
+<p>Similar to partitioning of tables in Hive, Kudu allows you to dynamically
+pre-split tables by hash or range into a predefined number of tablets, in order
+to distribute writes and queries evenly across your cluster. You can partition by
+any number of primary key columns, by any number of hashes, and an optional list of
+split rows. See <a href="schema_design.html">Schema Design</a>.</p>
+</dd>
+<dt class="hdlist1">Parallel Scan</dt>
+<dd>
+<p>To achieve the highest possible performance on modern hardware, the Kudu client
+used by Impala parallelizes scans across multiple tablets.</p>
+</dd>
+<dt class="hdlist1">High-efficiency queries</dt>
+<dd>
+<p>Where possible, Impala pushes down predicate evaluation to Kudu, so that predicates
+are evaluated as close as possible to the data. Query performance is comparable
+to Parquet in many workloads.</p>
+</dd>
+</dl>
+</div>
+<div class="paragraph">
+<p>For more details regarding querying data stored in Kudu using Impala, please
+refer to the Impala documentation.</p>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_concepts_and_terms"><a class="link" href="#_concepts_and_terms">Concepts and Terms</a></h2>
+<div class="sectionbody">
+<div id="kudu_columnar_data_store" class="paragraph">
+<div class="title">Columnar Data Store</div>
+<p>Kudu is a <em>columnar data store</em>. A columnar data store stores data in strongly-typed
+columns. With a proper design, it is superior for analytical or data warehousing
+workloads for several reasons.</p>
+</div>
+<div class="dlist">
+<dl>
+<dt class="hdlist1">Read Efficiency</dt>
+<dd>
+<p>For analytical queries, you can read a single column, or a portion
+of that column, while ignoring other columns. This means you can fulfill your query
+while reading a minimal number of blocks on disk. With a row-based store, you need
+to read the entire row, even if you only return values from a few columns.</p>
+</dd>
+<dt class="hdlist1">Data Compression</dt>
+<dd>
+<p>Because a given column contains only one type of data,
+pattern-based compression can be orders of magnitude more efficient than
+compressing mixed data types, which are used in row-based solutions. Combined
+with the efficiencies of reading data from columns, compression allows you to
+fulfill your query while reading even fewer blocks from disk. See
+<a href="schema_design.html#encoding">Data Compression</a></p>
+</dd>
+</dl>
+</div>
+<div class="paragraph">
+<div class="title">Table</div>
+<p>A <em>table</em> is where your data is stored in Kudu. A table has a schema and
+a totally ordered primary key. A table is split into segments called tablets.</p>
+</div>
+<div class="paragraph">
+<div class="title">Tablet</div>
+<p>A <em>tablet</em> is a contiguous segment of a table, similar to a <em>partition</em> in
+other data storage engines or relational databases. A given tablet is
+replicated on multiple tablet servers, and at any given point in time,
+one of these replicas is considered the leader tablet. Any replica can service
+reads, and writes require consensus among the set of tablet servers serving the tablet.</p>
+</div>
+<div class="paragraph">
+<div class="title">Tablet Server</div>
+<p>A <em>tablet server</em> stores and serves tablets to clients. For a
+given tablet, one tablet server acts as a leader, and the others act as
+follower replicas of that tablet. Only leaders service write requests, while
+leaders or followers each service read requests. Leaders are elected using
+<a href="#raft">Raft Consensus Algorithm</a>. One tablet server can serve multiple tablets, and one tablet can be served
+by multiple tablet servers.</p>
+</div>
+<div class="paragraph">
+<div class="title">Master</div>
+<p>The <em>master</em> keeps track of all the tablets, tablet servers, the
+<a href="#catalog_table">Catalog Table</a>, and other metadata related to the cluster. At a given point
+in time, there can only be one acting master (the leader). If the current leader
+disappears, a new master is elected using <a href="#raft">Raft Consensus Algorithm</a>.</p>
+</div>
+<div class="paragraph">
+<p>The master also coordinates metadata operations for clients. For example, when
+creating a new table, the client internally sends the request to the master. The
+master writes the metadata for the new table into the catalog table, and
+coordinates the process of creating tablets on the tablet servers.</p>
+</div>
+<div class="paragraph">
+<p>All the master&#8217;s data is stored in a tablet, which can be replicated to all the
+other candidate masters.</p>
+</div>
+<div class="paragraph">
+<p>Tablet servers heartbeat to the master at a set interval (the default is once
+per second).</p>
+</div>
+<div id="raft" class="paragraph">
+<div class="title">Raft Consensus Algorithm</div>
+<p>Kudu uses the <a href="https://raft.github.io/">Raft consensus algorithm</a> as
+a means to guarantee fault-tolerance and consistency, both for regular tablets and for master
+data. Through Raft, multiple replicas of a tablet elect a <em>leader</em>, which is responsible
+for accepting and replicating writes to <em>follower</em> replicas. Once a write is persisted
+in a majority of replicas it is acknowledged to the client. A given group of <code>N</code> replicas
+(usually 3 or 5) is able to accept writes with at most <code>(N - 1)/2</code> faulty replicas.</p>
+</div>
+<div id="catalog_table" class="paragraph">
+<div class="title">Catalog Table</div>
+<p>The <em>catalog table</em> is the central location for
+metadata of Kudu. It stores information about tables and tablets. The catalog
+table may not be read or written directly. Instead, it is accessible
+only via metadata operations exposed in the client API.</p>
+</div>
+<div class="paragraph">
+<p>The catalog table stores two categories of metadata:</p>
+</div>
+<div class="dlist">
+<dl>
+<dt class="hdlist1">Tables</dt>
+<dd>
+<p>table schemas, locations, and states</p>
+</dd>
+<dt class="hdlist1">Tablets</dt>
+<dd>
+<p>the list of existing tablets, which tablet servers have replicas of
+each tablet, the tablet&#8217;s current state, and start and end keys.</p>
+</dd>
+</dl>
+</div>
+<div class="paragraph">
+<div class="title">Logical Replication</div>
+<p>Kudu replicates operations, not on-disk data. This is referred to as <em>logical replication</em>,
+as opposed to <em>physical replication</em>. This has several advantages:</p>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p>Although inserts and updates do transmit data over the network, deletes do not need
+to move any data. The delete operation is sent to each tablet server, which performs
+the delete locally.</p>
+</li>
+<li>
+<p>Physical operations, such as compaction, do not need to transmit the data over the
+network in Kudu. This is different from storage systems that use HDFS, where
+the blocks need to be transmitted over the network to fulfill the required number of
+replicas.</p>
+</li>
+<li>
+<p>Tablets do not need to perform compactions at the same time or on the same schedule,
+or otherwise remain in sync on the physical storage layer. This decreases the chances
+of all tablet servers experiencing high latency at the same time, due to compactions
+or heavy write loads.</p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_architectural_overview"><a class="link" href="#_architectural_overview">Architectural Overview</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The following diagram shows a Kudu cluster with three masters and multiple tablet
+servers, each serving multiple tablets. It illustrates how Raft consensus is used
+to allow for both leaders and followers for both the masters and tablet servers. In
+addition, a tablet server can be a leader for some tablets, and a follower for others.
+Leaders are shown in gold, while followers are shown in blue.</p>
+</div>
+<div class="imageblock">
+<div class="content">
+<img src="./images/kudu-architecture-2.png" alt="Kudu Architecture" width="800">
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu_use_cases"><a class="link" href="#kudu_use_cases">Example Use Cases</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<div class="title">Streaming Input with Near Real Time Availability</div>
+<p>A common challenge in data analysis is one where new data arrives rapidly and constantly,
+and the same data needs to be available in near real time for reads, scans, and
+updates. Kudu offers the powerful combination of fast inserts and updates with
+efficient columnar scans to enable real-time analytics use cases on a single storage layer.</p>
+</div>
+<div class="paragraph">
+<div class="title">Time-series application with widely varying access patterns</div>
+<p>A time-series schema is one in which data points are organized and keyed according
+to the time at which they occurred. This can be useful for investigating the
+performance of metrics over time or attempting to predict future behavior based
+on past data. For instance, time-series customer data might be used both to store
+purchase click-stream history and to predict future purchases, or for use by a
+customer support representative. While these different types of analysis are occurring,
+inserts and mutations may also be occurring individually and in bulk, and become available
+immediately to read workloads. Kudu can handle all of these access patterns
+simultaneously in a scalable and efficient manner.</p>
+</div>
+<div class="paragraph">
+<p>Kudu is a good fit for time-series workloads for several reasons. With Kudu&#8217;s support for
+hash-based partitioning, combined with its native support for compound row keys, it is
+simple to set up a table spread across many servers without the risk of "hotspotting"
+that is commonly observed when range partitioning is used. Kudu&#8217;s columnar storage engine
+is also beneficial in this context, because many time-series workloads read only a few columns,
+as opposed to the whole row.</p>
+</div>
+<div class="paragraph">
+<p>In the past, you might have needed to use multiple data stores to handle different
+data access patterns. This practice adds complexity to your application and operations,
+and duplicates your data, doubling (or worse) the amount of storage
+required. Kudu can handle all of these access patterns natively and efficiently,
+without the need to off-load work to other data stores.</p>
+</div>
+<div class="paragraph">
+<div class="title">Predictive Modeling</div>
+<p>Data scientists often develop predictive learning models from large sets of data. The
+model and the data may need to be updated or modified often as the learning takes
+place or as the situation being modeled changes. In addition, the scientist may want
+to change one or more factors in the model to see what happens over time. Updating
+a large set of data stored in files in HDFS is resource-intensive, as each file needs
+to be completely rewritten. In Kudu, updates happen in near real time. The scientist
+can tweak the value, re-run the query, and refresh the graph in seconds or minutes,
+rather than hours or days. In addition, batch or incremental algorithms can be run
+across the data at any time, with near-real-time results.</p>
+</div>
+<div class="paragraph">
+<div class="title">Combining Data In Kudu With Legacy Systems</div>
+<p>Companies generate data from multiple sources and store it in a variety of systems
+and formats. For instance, some of your data may be stored in Kudu, some in a traditional
+RDBMS, and some in files in HDFS. You can access and query all of these sources and
+formats using Impala, without the need to change your legacy systems.</p>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_next_steps"><a class="link" href="#_next_steps">Next Steps</a></h2>
+<div class="sectionbody">
+<div class="ulist">
+<ul>
+<li>
+<p><a href="quickstart.html">Get Started With Kudu</a></p>
+</li>
+<li>
+<p><a href="installation.html">Installing Kudu</a></p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+    </div>
+    <div class="col-md-3">
+
+  <div id="toc" data-spy="affix" data-offset-top="70">
+  <ul>
+
+      <li>
+<span class="active-toc">Introducing Kudu</span>
+            <ul class="sectlevel1">
+<li><a href="#_kudu_impala_integration_features">Kudu-Impala Integration Features</a></li>
+<li><a href="#_concepts_and_terms">Concepts and Terms</a></li>
+<li><a href="#_architectural_overview">Architectural Overview</a></li>
+<li><a href="#kudu_use_cases">Example Use Cases</a></li>
+<li><a href="#_next_steps">Next Steps</a></li>
+</ul> 
+      </li> 
+      <li>
+
+          <a href="release_notes.html">Kudu Release Notes</a> 
+      </li> 
+      <li>
+
+          <a href="quickstart.html">Getting Started with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="installation.html">Installation Guide</a> 
+      </li> 
+      <li>
+
+          <a href="configuration.html">Configuring Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="kudu_impala_integration.html">Using Impala with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="administration.html">Administering Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="troubleshooting.html">Troubleshooting Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="developing.html">Developing Applications with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="schema_design.html">Kudu Schema Design</a> 
+      </li> 
+      <li>
+
+          <a href="security.html">Kudu Security</a> 
+      </li> 
+      <li>
+
+          <a href="transaction_semantics.html">Kudu Transaction Semantics</a> 
+      </li> 
+      <li>
+
+          <a href="background_tasks.html">Background Maintenance Tasks</a> 
+      </li> 
+      <li>
+
+          <a href="configuration_reference.html">Kudu Configuration Reference</a> 
+      </li> 
+      <li>
+
+          <a href="command_line_tools_reference.html">Kudu Command Line Tools Reference</a> 
+      </li> 
+      <li>
+
+          <a href="known_issues.html">Known Issues and Limitations</a> 
+      </li> 
+      <li>
+
+          <a href="contributing.html">Contributing to Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="export_control.html">Export Control Notice</a> 
+      </li> 
+  </ul>
+  </div>
+    </div>
+  </div>
+</div>
+      <footer class="footer">
+        <p class="small">
+        Copyright &copy; 2016 The Apache Software Foundation.  Last updated 2017-02-03 10:13:21 PST 
+        </p>
+      </footer>
+    </div>
+    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
+    <script>
+      // Try to detect touch-screen devices. Note: Many laptops have touch screens.
+      $(document).ready(function() {
+        if ("ontouchstart" in document.documentElement) {
+          $(document.documentElement).addClass("touch");
+        } else {
+          $(document.documentElement).addClass("no-touch");
+        }
+      });
+    </script>
+    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"
+            integrity="sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS"
+            crossorigin="anonymous"></script>
+    <script>
+      (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+      (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+      m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+      })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+
+      ga('create', 'UA-68448017-1', 'auto');
+      ga('send', 'pageview');
+    </script>
+    <script src="https://cdnjs.cloudflare.com/ajax/libs/anchor-js/3.1.0/anchor.js"></script>
+    <script>
+      anchors.options = {
+        placement: 'right',
+        visible: 'touch',
+      };
+      anchors.add();
+    </script>
+  </body>
+</html>
+
diff --git a/releases/1.4.0/docs/installation.html b/releases/1.4.0/docs/installation.html
new file mode 100644
index 0000000..bc46482
--- /dev/null
+++ b/releases/1.4.0/docs/installation.html
@@ -0,0 +1,1340 @@
+<!DOCTYPE html>
+<html lang="en">
+  <head>
+    <meta charset="utf-8" />
+    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
+    <meta name="viewport" content="width=device-width, initial-scale=1" />
+    <!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
+    <meta name="description" content="A new open source Apache Hadoop ecosystem project, Apache Kudu completes Hadoop's storage layer to enable fast analytics on fast data" />
+    <meta name="author" content="Cloudera" />
+    <title>Apache Kudu - Installing Apache Kudu</title>
+    <!-- Bootstrap core CSS -->
+    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css"
+          integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7"
+          crossorigin="anonymous">
+
+    <!-- Custom styles for this template -->
+    <link href="/css/kudu.css" rel="stylesheet"/>
+    <link href="/css/asciidoc.css" rel="stylesheet"/>
+    <link rel="shortcut icon" href="/img/logo-favicon.ico" />
+    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.6.1/css/font-awesome.min.css" />
+
+    
+
+    <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+        <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+        <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+        <![endif]-->
+  </head>
+  <body>
+    <div class="kudu-site container-fluid">
+      <!-- Static navbar -->
+        <nav class="navbar navbar-default">
+          <div class="container-fluid">
+            <div class="navbar-header">
+              <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
+                <span class="sr-only">Toggle navigation</span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+              </button>
+              
+              <a class="logo" href="/"><img
+                src="//d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_80px.png"
+                srcset="//d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_80px.png 1x, //d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_160px.png 2x"
+                alt="Apache Kudu"/></a>
+              
+            </div>
+            <div id="navbar" class="collapse navbar-collapse">
+              <ul class="nav navbar-nav navbar-right">
+                <li >
+                  <a href="/">Home</a>
+                </li>
+                <li >
+                  <a href="/overview.html">Overview</a>
+                </li>
+                <li class="active">
+                  <a href="/docs/">Documentation</a>
+                </li>
+                <li >
+                  <a href="/releases/">Download</a>
+                </li>
+                <li >
+                  <a href="/blog/">Blog</a>
+                </li>
+                <!-- NOTE: this dropdown menu does not appear on Mobile, so don't add anything here
+                     that doesn't also appear elsewhere on the site. -->
+                <li class="dropdown">
+                  <a href="/community.html" role="button" aria-haspopup="true" aria-expanded="false">Community <span class="caret"></span></a>
+                  <ul class="dropdown-menu">
+                    <li class="dropdown-header">GET IN TOUCH</li>
+                    <li><a class="icon email" href="/community.html">Mailing Lists</a></li>
+                    <li><a class="icon slack" href="https://getkudu-slack.herokuapp.com/">Slack Channel</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li><a href="/community.html#meetups-user-groups-and-conference-presentations">Events and Meetups</a></li>
+                    <li><a href="/committers.html">Project Committers</a></li>
+                    <!--<li><a href="/roadmap.html">Roadmap</a></li>-->
+                    <li><a href="/community.html#contributions">How to Contribute</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li class="dropdown-header">DEVELOPER RESOURCES</li>
+                    <li><a class="icon github" href="https://github.com/apache/incubator-kudu">GitHub</a></li>
+                    <li><a class="icon gerrit" href="http://gerrit.cloudera.org:8080/#/q/status:open+project:kudu">Gerrit Code Review</a></li>
+                    <li><a class="icon jira" href="https://issues.apache.org/jira/browse/KUDU">JIRA Issue Tracker</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li class="dropdown-header">SOCIAL MEDIA</li>
+                    <li><a class="icon twitter" href="https://twitter.com/ApacheKudu">Twitter</a></li>
+                  </ul>
+                </li>
+                <li >
+                  <a href="/faq.html">FAQ</a>
+                </li>
+              </ul><!-- /.nav -->
+            </div><!-- /#navbar -->
+          </div><!-- /.container-fluid -->
+        </nav>
+
+<!--
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
+
+
+<div class="container">
+  <div class="row">
+    <div class="col-md-9">
+
+<h1>Installing Apache Kudu</h1>
+      <div id="preamble">
+<div class="sectionbody">
+<div class="paragraph">
+<p>You can deploy Kudu on a cluster using packages or you can build Kudu
+from source. To run Kudu without installing anything, use the <a href="quickstart.html#quickstart_vm">Kudu Quickstart VM</a>.</p>
+</div>
+<div class="admonitionblock note">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-note" title="Note"></i>
+</td>
+<td class="content">
+Kudu is currently easier to install and manage with <a href="http://www.cloudera.com/content/www/en-us/products/cloudera-manager.html">Cloudera Manager</a>,
+version 5.4.7 or newer. If you use Cloudera Manager, see also Cloudera&#8217;s
+<a href="http://www.cloudera.com/documentation/kudu/latest/topics/kudu_installation.html">Kudu documentation</a>.
+</td>
+</tr>
+</table>
+</div>
+<div class="paragraph">
+<div class="title">Upgrading Kudu</div>
+<p>To upgrade Kudu from a previous version, see <a href="#upgrade">Upgrade from a Previous Version of Kudu</a>.</p>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_prerequisites_and_requirements"><a class="link" href="#_prerequisites_and_requirements">Prerequisites and Requirements</a></h2>
+<div class="sectionbody">
+<div class="ulist">
+<div class="title">Hardware</div>
+<ul>
+<li>
+<p>One or more hosts to run Kudu masters. It is recommended to have either one master
+(no fault tolerance), three masters (can tolerate one failure), or five masters (two failures).</p>
+</li>
+<li>
+<p>One or more hosts to run Kudu tablet servers. When using replication, a minimum of
+three tablet servers is necessary.</p>
+</li>
+</ul>
+</div>
+<div class="dlist">
+<div class="title">Operating System Requirements</div>
+<dl>
+<dt class="hdlist1">Linux</dt>
+<dd>
+<div class="ulist">
+<ul>
+<li>
+<p>RHEL 6, RHEL 7, CentOS 6, CentOS 7, Ubuntu 14.04 (Trusty), Ubuntu 16.04 (Xenial), Debian 8 (Jessie), or SLES 12.</p>
+</li>
+<li>
+<p>A kernel and filesystem that support <em>hole punching</em>. Hole punching is the use of the
+<code>fallocate(2)</code> system call with the <code>FALLOC_FL_PUNCH_HOLE</code> option set. See
+<a href="troubleshooting.html#req_hole_punching">troubleshooting hole punching</a> for more
+information.</p>
+</li>
+<li>
+<p>ntp.</p>
+</li>
+<li>
+<p>xfs or ext4 formatted drives.</p>
+</li>
+</ul>
+</div>
+</dd>
+<dt class="hdlist1">macOS</dt>
+<dd>
+<div class="ulist">
+<ul>
+<li>
+<p>OS X 10.10 Yosemite, OS X 10.11 El Capitan, or macOS Sierra.</p>
+</li>
+<li>
+<p>Prebuilt macOS packages are not provided.</p>
+</li>
+</ul>
+</div>
+</dd>
+<dt class="hdlist1">Windows</dt>
+<dd>
+<div class="ulist">
+<ul>
+<li>
+<p>Microsoft Windows is unsupported.</p>
+</li>
+</ul>
+</div>
+</dd>
+</dl>
+</div>
+<div class="ulist">
+<div class="title">Storage</div>
+<ul>
+<li>
+<p>If solid state storage is available, storing Kudu WALs on such high-performance
+media may significantly improve latency when Kudu is configured for its highest
+durability levels.</p>
+</li>
+</ul>
+</div>
+<div class="ulist">
+<div class="title">Management</div>
+<ul>
+<li>
+<p>If you use Cloudera Manager and CDH, Cloudera Manager 5.4.3 or newer is required.
+Cloudera Manager 5.4.7 and newer provide better monitoring and administration options.</p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="install_packages"><a class="link" href="#install_packages">Install Using Packages</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>You can install Kudu using packages managed by the operating system.</p>
+</div>
+<table id="kudu_package_locations" class="tableblock frame-all grid-all spread">
+<caption class="title">Table 1. Kudu Package Locations</caption>
+<colgroup>
+<col style="width: 33%;">
+<col style="width: 33%;">
+<col style="width: 33%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-right valign-top">OS</th>
+<th class="tableblock halign-left valign-top">Repository</th>
+<th class="tableblock halign-left valign-top">Individual Packages</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-right valign-top"><p class="tableblock"><strong>RHEL or CentOS</strong></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="http://archive.cloudera.com/kudu/redhat/6/x86_64/kudu/cloudera-kudu.repo">RHEL 6 or CentOS 6</a>,
+                   <a href="http://archive.cloudera.com/kudu/redhat/7/x86_64/kudu/cloudera-kudu.repo">RHEL 7 or CentOS 7</a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="http://archive.cloudera.com/kudu/redhat/6/x86_64/kudu/5/RPMS/x86_64/">RHEL 6 or CentOS 6</a>,
+                   <a href="http://archive.cloudera.com/kudu/redhat/7/x86_64/kudu/5/RPMS/x86_64/">RHEL 7 or CentOS 7</a></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-right valign-top"><p class="tableblock"><strong>SLES</strong></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="http://archive.cloudera.com/kudu/sles/12/x86_64/kudu/cloudera-kudu.repo">SLES 12</a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="http://archive.cloudera.com/kudu/sles/12/x86_64/kudu/5/RPMS/x86_64/">SLES 12</a></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-right valign-top"><p class="tableblock"><strong>Ubuntu</strong></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="http://archive.cloudera.com/kudu/ubuntu/trusty/amd64/kudu/cloudera.list">Trusty</a>,
+           <a href="http://archive.cloudera.com/kudu/ubuntu/xenial/amd64/kudu/cloudera.list">Xenial</a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="http://archive.cloudera.com/kudu/ubuntu/trusty/amd64/kudu/pool/contrib/k/kudu/">Trusty</a>,
+           <a href="http://archive.cloudera.com/kudu/ubuntu/xenial/amd64/kudu/pool/contrib/k/kudu/">Xenial</a></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-right valign-top"><p class="tableblock"><strong>Debian</strong></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="http://archive.cloudera.com/kudu/debian/jessie/amd64/kudu/cloudera.list">Jessie</a></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="http://archive.cloudera.com/kudu/debian/jessie/amd64/kudu/pool/contrib/k/kudu/">Jessie</a></p></td>
+</tr>
+</tbody>
+</table>
+<div class="sect2">
+<h3 id="_install_on_rhel_or_centos_hosts"><a class="link" href="#_install_on_rhel_or_centos_hosts">Install on RHEL or CentOS Hosts</a></h3>
+<div class="olist arabic">
+<ol class="arabic">
+<li>
+<p>Download and configure the Kudu repositories for your operating system, or manually
+download individual RPMs, using the appropriate link from <a href="#kudu_package_locations">Kudu Package Locations</a>.</p>
+</li>
+<li>
+<p>If using a Yum repository, use the following commands to install Kudu packages on
+each host, after saving the <code>cloudera-kudu.repo</code> file to <code>/etc/yum.repos.d/</code>.</p>
+<div class="listingblock">
+<div class="content">
+<pre>sudo yum install kudu                         # Base Kudu files
+sudo yum install kudu-master                  # Kudu master init.d service script and default configuration
+sudo yum install kudu-tserver                 # Kudu tablet server init.d service script and default configuration
+sudo yum install kudu-client0                 # Kudu C++ client shared library
+sudo yum install kudu-client-devel            # Kudu C++ client SDK</pre>
+</div>
+</div>
+</li>
+<li>
+<p>To manually install the Kudu RPMs, first download them, then use the command
+<code>sudo rpm -ivh &lt;RPM to install&gt;</code> to install them.</p>
+</li>
+<li>
+<p>Note: the <code>kudu-master</code> and <code>kudu-tserver</code> packages are only necessary on hosts
+where there is a master or tserver respectively (and completely unnecessary if
+using Cloudera Manager). Each provides configuration files and an init.d script to
+manage the corresponding Kudu process. Once installed, the Kudu process is started
+and stopped automatically when the host starts up and shuts down.</p>
+</li>
+</ol>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_install_on_sles_hosts"><a class="link" href="#_install_on_sles_hosts">Install on SLES Hosts</a></h3>
+<div class="olist arabic">
+<ol class="arabic">
+<li>
+<p>Download and configure the Kudu repositories for your operating system, or manually
+download individual RPMs, using the appropriate link from <a href="#kudu_package_locations">Kudu Package Locations</a>.</p>
+</li>
+<li>
+<p>If using a Zypper repository, use the following commands to install Kudu packages on
+each host, after saving the <code>cloudera-kudu.repo</code> file to <code>/etc/zypp/repos.d</code>.</p>
+<div class="listingblock">
+<div class="content">
+<pre>sudo zypper install kudu                      # Base Kudu files
+sudo zypper install kudu-master               # Kudu master init.d service script and default configuration
+sudo zypper install kudu-tserver              # Kudu tablet server init.d service script and default configuration
+sudo zypper install kudu-client0              # Kudu C++ client shared library
+sudo zypper install kudu-client-devel         # Kudu C++ client SDK</pre>
+</div>
+</div>
+</li>
+<li>
+<p>To manually install the Kudu RPMs, first download them, then use the command
+<code>sudo rpm -ivh &lt;RPM to install&gt;</code> to install them.</p>
+</li>
+<li>
+<p>Note: the <code>kudu-master</code> and <code>kudu-tserver</code> packages are only necessary on hosts
+where there is a master or tserver respectively (and completely unnecessary if
+using Cloudera Manager). Each provides configuration files and an init.d script to
+manage the corresponding Kudu process. Once installed, the Kudu process is started
+and stopped automatically when the host starts up and shuts down.</p>
+</li>
+</ol>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_install_on_ubuntu_or_debian_hosts"><a class="link" href="#_install_on_ubuntu_or_debian_hosts">Install on Ubuntu or Debian Hosts</a></h3>
+<div class="olist arabic">
+<ol class="arabic">
+<li>
+<p>If using an Ubuntu or Debian repository, use the following commands to install Kudu
+packages on each host after saving the <code>cloudera.list</code> file to <code>/etc/apt/sources.list.d/</code>.</p>
+<div class="listingblock">
+<div class="content">
+<pre>sudo apt-get install kudu                     # Base Kudu files
+sudo apt-get install kudu-master              # Service scripts for managing kudu-master
+sudo apt-get install kudu-tserver             # Service scripts for managing kudu-tserver
+sudo apt-get install libkuduclient0           # Kudu C++ client shared library
+sudo apt-get install libkuduclient-dev        # Kudu C++ client SDK</pre>
+</div>
+</div>
+</li>
+<li>
+<p>To manually install the Kudu RPMs, first download them, then use the command
+<code>sudo rpm -ivh &lt;RPM to install&gt;</code> to install them.</p>
+</li>
+<li>
+<p>Note: the <code>kudu-master</code> and <code>kudu-tserver</code> packages are only necessary on hosts
+where there is a master or tserver respectively (and completely unnecessary if
+using Cloudera Manager). Each provides configuration files and an init.d script to
+manage the corresponding Kudu process. Once installed, the Kudu process is started
+and stopped automatically when the host starts up and shuts down.</p>
+</li>
+</ol>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_verify_the_installation"><a class="link" href="#_verify_the_installation">Verify the Installation</a></h3>
+<div class="olist arabic">
+<ol class="arabic">
+<li>
+<p>Verify that services are running using one of the following methods:</p>
+<div class="ulist">
+<ul>
+<li>
+<p>Examine the output of the <code>ps</code> command on servers to verify one or both of <code>kudu-master</code>
+or <code>kudu-tserver</code> processes is running.</p>
+</li>
+<li>
+<p>Access the Master or Tablet Server web UI by opening <code>http://&lt;_host_name_&gt;:8051/</code>
+for masters
+or <code>http://&lt;_host_name_&gt;:8050/</code> for tablet servers.</p>
+</li>
+</ul>
+</div>
+</li>
+<li>
+<p>If Kudu isn&#8217;t running, have a look at the log files in '/var/log/kudu', and if there&#8217;s a file
+ending with '.FATAL' then it means Kudu wasn&#8217;t able to start.</p>
+<div class="ulist">
+<ul>
+<li>
+<p>If the error is 'Error during hole punch test', it might be a problem
+<a href="troubleshooting.html#req_hole_punching">with your OS</a>.</p>
+</li>
+<li>
+<p>If the error is 'Couldn&#8217;t get the current time', it&#8217;s a
+<a href="troubleshooting.html#ntp">problem with ntp</a>.</p>
+</li>
+<li>
+<p>If it&#8217;s something else that doesn&#8217;t seem obvious or if you&#8217;ve tried the above solutions without
+luck, you can ask for help on the
+<a href="http://kudu.apache.org/community.html">user mailing list</a>.</p>
+</li>
+</ul>
+</div>
+</li>
+</ol>
+</div>
+</div>
+<div class="sect2">
+<h3 id="required_config_without_cm"><a class="link" href="#required_config_without_cm">Required Configuration</a></h3>
+<div class="paragraph">
+<p>Additional configuration steps are required on each host before you can start Kudu services.</p>
+</div>
+<div class="olist arabic">
+<ol class="arabic">
+<li>
+<p>The packages create a <code>kudu-conf</code> entry in the operating system&#8217;s alternatives database,
+and they ship the built-in <code>conf.dist</code> alternative. To adjust your configuration,
+you can either edit the files in <code>/etc/kudu/conf/</code> directly, or create a new alternative
+using the operating system utilities, make sure it is the link pointed to by <code>/etc/kudu/conf/</code>,
+and create custom configuration files there. Some parts of the configuration are configured
+in <code>/etc/default/kudu-master</code> and <code>/etc/default/kudu-tserver</code> files as well. You
+should include or duplicate these configuration options if you create custom configuration files.</p>
+<div class="paragraph">
+<p>Review the configuration, including the default WAL and data directory locations,
+and adjust them according to your requirements.</p>
+</div>
+</li>
+</ol>
+</div>
+<div class="olist arabic">
+<ol class="arabic">
+<li>
+<p>Start Kudu services using the following commands:</p>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-bash" data-lang="bash">$ sudo service kudu-master start
+$ sudo service kudu-tserver start</code></pre>
+</div>
+</div>
+</li>
+<li>
+<p>To stop Kudu services, use the following commands:</p>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-bash" data-lang="bash">$ sudo service kudu-master stop
+$ sudo service kudu-tserver stop</code></pre>
+</div>
+</div>
+</li>
+<li>
+<p>Configure the Kudu services to start automatically when the server starts, by adding
+them to the default runlevel.</p>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-bash" data-lang="bash">$ sudo chkconfig kudu-master on                # RHEL / CentOS / SLES
+$ sudo chkconfig kudu-tserver on               # RHEL / CentOS / SLES
+
+$ sudo update-rc.d kudu-master defaults        # Debian / Ubuntu
+$ sudo update-rc.d kudu-tserver defaults       # Debian / Ubuntu</code></pre>
+</div>
+</div>
+</li>
+<li>
+<p>For additional configuration of Kudu services, see <a href="configuration.html">Configuring
+Kudu</a>.</p>
+</li>
+</ol>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="build_from_source"><a class="link" href="#build_from_source">Build From Source</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>If installing Kudu using parcels or packages does not provide the flexibility you
+need, you can build Kudu from source. You can build from source on any supported operating system.</p>
+</div>
+<div class="admonitionblock warning">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-warning" title="Warning"></i>
+</td>
+<td class="content">
+<div class="title">Known Build Issues</div>
+<div class="ulist">
+<ul>
+<li>
+<p>It is not possible to build Kudu on Microsoft Windows.</p>
+</li>
+<li>
+<p>A C+11 capable compiler (GCC 4.8) is required.</p>
+</li>
+</ul>
+</div>
+</td>
+</tr>
+</table>
+</div>
+<div class="sect2">
+<h3 id="rhel_from_source"><a class="link" href="#rhel_from_source">RHEL or CentOS</a></h3>
+<div class="paragraph">
+<p>RHEL or CentOS 6.6 or later is required to build Kudu from source. To build
+on a version older than 7.0, the Red Hat Developer Toolset must be installed
+(in order to have access to a C++11 capable compiler).</p>
+</div>
+<div class="olist arabic">
+<ol class="arabic">
+<li>
+<p>Install the prerequisite libraries, if they are not installed.</p>
+<div class="listingblock">
+<div class="content">
+<pre>$ sudo yum install autoconf automake cyrus-sasl-devel cyrus-sasl-gssapi \
+  cyrus-sasl-plain gcc gcc-c++ gdb git krb5-server krb5-workstation libtool \
+  make openssl-devel patch pkgconfig redhat-lsb-core rsync unzip vim-common which</pre>
+</div>
+</div>
+</li>
+<li>
+<p>If building on RHEL or CentOS older than 7.0, install the Red Hat Developer
+Toolset.</p>
+<div class="listingblock">
+<div class="content">
+<pre>$ DTLS_RPM=rhscl-devtoolset-3-epel-6-x86_64-1-2.noarch.rpm
+$ DTLS_RPM_URL=https://www.softwarecollections.org/repos/rhscl/devtoolset-3/epel-6-x86_64/noarch/${DTLS_RPM}
+$ wget ${DTLS_RPM_URL} -O ${DTLS_RPM}
+$ sudo yum install -y scl-utils ${DTLS_RPM}
+$ sudo yum install -y devtoolset-3-toolchain</pre>
+</div>
+</div>
+</li>
+<li>
+<p>Optional: Install some additional packages, including ruby, if you plan to build documentation.</p>
+<div class="listingblock">
+<div class="content">
+<pre>$ sudo yum install doxygen gem graphviz ruby-devel zlib-devel</pre>
+</div>
+</div>
+<div class="admonitionblock note">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-note" title="Note"></i>
+</td>
+<td class="content">
+If building on RHEL or CentOS older than 7.0, the gem package may need to be replaced with rubygems
+</td>
+</tr>
+</table>
+</div>
+</li>
+<li>
+<p>Clone the Git repository and change to the new <code>kudu</code> directory.</p>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-bash" data-lang="bash">$ git clone https://github.com/apache/kudu
+$ cd kudu</code></pre>
+</div>
+</div>
+</li>
+<li>
+<p>Build any missing third-party requirements using the <code>build-if-necessary.sh</code> script. Not using
+the devtoolset will result in <code>Host compiler appears to require libatomic, but cannot find it.</code></p>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-bash" data-lang="bash">$ build-support/enable_devtoolset.sh thirdparty/build-if-necessary.sh</code></pre>
+</div>
+</div>
+</li>
+<li>
+<p>Build Kudu, using the utilities installed in the previous step. Choose a build
+directory for the intermediate output, which can be anywhere in your filesystem
+except for the <code>kudu</code> directory itself. Notice that the devtoolset must still be specified,
+else you&#8217;ll get <code>cc1plus: error: unrecognized command line option "-std=c++11"</code>.</p>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-bash" data-lang="bash">mkdir -p build/release
+cd build/release
+../../build-support/enable_devtoolset.sh \
+  ../../thirdparty/installed/common/bin/cmake \
+  -DCMAKE_BUILD_TYPE=release \
+  ../..
+make -j4</code></pre>
+</div>
+</div>
+</li>
+<li>
+<p>Optional: Install Kudu binaries, libraries, and headers.
+If you do not specify an installation directory through the <code>DESTDIR</code>
+environment variable, <code>/usr/local/</code> is the default.</p>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-bash" data-lang="bash">sudo make DESTDIR=/opt/kudu install</code></pre>
+</div>
+</div>
+</li>
+<li>
+<p>Optional: Build the documentation. NOTE: This command builds local documentation that
+is not appropriate for uploading to the Kudu website.</p>
+<div class="listingblock">
+<div class="content">
+<pre>$ make docs</pre>
+</div>
+</div>
+</li>
+</ol>
+</div>
+<div class="exampleblock">
+<div class="title">Example 1. RHEL / CentOS Build Script</div>
+<div class="content">
+<div class="paragraph">
+<p>This script provides an overview of the procedure to build Kudu on a
+newly-installed RHEL or CentOS host, and can be used as the basis for an
+automated deployment scenario. It skips the steps marked <strong>Optional</strong> above.</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-bash" data-lang="bash">#!/bin/bash
+
+sudo yum -y install autoconf automake cyrus-sasl-devel cyrus-sasl-gssapi \
+  cyrus-sasl-plain gcc gcc-c++ gdb git krb5-server krb5-workstation libtool \
+  make openssl-devel patch pkgconfig redhat-lsb-core rsync unzip vim-common which
+DTLS_RPM=rhscl-devtoolset-3-epel-6-x86_64-1-2.noarch.rpm
+DTLS_RPM_URL=https://www.softwarecollections.org/repos/rhscl/devtoolset-3/epel-6-x86_64/noarch/${DTLS_RPM}
+wget ${DTLS_RPM_URL} -O ${DTLS_RPM}
+sudo yum install -y scl-utils ${DTLS_RPM}
+sudo yum install -y devtoolset-3-toolchain
+git clone https://github.com/apache/kudu
+cd kudu
+build-support/enable_devtoolset.sh thirdparty/build-if-necessary.sh
+mkdir -p build/release
+cd build/release
+../../build-support/enable_devtoolset.sh \
+  ../../thirdparty/installed/common/bin/cmake \
+  -DCMAKE_BUILD_TYPE=release \
+  ../..
+make -j4</code></pre>
+</div>
+</div>
+</div>
+</div>
+</div>
+<div class="sect2">
+<h3 id="ubuntu_from_source"><a class="link" href="#ubuntu_from_source">Ubuntu or Debian</a></h3>
+<div class="olist arabic">
+<ol class="arabic">
+<li>
+<p>Install the prerequisite libraries, if they are not installed.</p>
+<div class="listingblock">
+<div class="content">
+<pre>$ sudo apt-get install autoconf automake curl g++ gcc gdb git \
+  krb5-admin-server krb5-kdc krb5-user libkrb5-dev libsasl2-dev libsasl2-modules \
+  libsasl2-modules-gssapi-mit libssl-dev libtool lsb-release make ntp openssl \
+  patch pkg-config python rsync unzip vim-common</pre>
+</div>
+</div>
+</li>
+<li>
+<p>Optional: Install some additional packages, including ruby, if you plan to build documentation.</p>
+<div class="listingblock">
+<div class="content">
+<pre>$ sudo apt-get install doxygen gem graphviz ruby-dev xsltproc zlib1g-dev</pre>
+</div>
+</div>
+</li>
+<li>
+<p>Clone the Git repository and change to the new <code>kudu</code> directory.</p>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-bash" data-lang="bash">$ git clone https://github.com/apache/kudu
+$ cd kudu</code></pre>
+</div>
+</div>
+</li>
+<li>
+<p>Build any missing third-party requirements using the <code>build-if-necessary.sh</code> script.</p>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-bash" data-lang="bash">$ thirdparty/build-if-necessary.sh</code></pre>
+</div>
+</div>
+</li>
+<li>
+<p>Build Kudu, using the utilities installed in the previous step. Choose a build
+directory for the intermediate output, which can be anywhere in your filesystem
+except for the <code>kudu</code> directory itself.</p>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-bash" data-lang="bash">mkdir -p build/release
+cd build/release
+../../thirdparty/installed/common/bin/cmake -DCMAKE_BUILD_TYPE=release ../..
+make -j4</code></pre>
+</div>
+</div>
+</li>
+<li>
+<p>Optional: Install Kudu binaries, libraries, and headers.
+If you do not specify an installation directory through the <code>DESTDIR</code>
+environment variable, <code>/usr/local/</code> is the default.</p>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-bash" data-lang="bash">sudo make DESTDIR=/opt/kudu install</code></pre>
+</div>
+</div>
+</li>
+<li>
+<p>Optional: Build the documentation. NOTE: This command builds local documentation that
+is not appropriate for uploading to the Kudu website.</p>
+<div class="listingblock">
+<div class="content">
+<pre>$ make docs</pre>
+</div>
+</div>
+</li>
+</ol>
+</div>
+<div class="exampleblock">
+<div class="title">Example 2. Ubuntu / Debian Build Script</div>
+<div class="content">
+<div class="paragraph">
+<p>This script provides an overview of the procedure to build Kudu on Ubuntu, and
+can be used as the basis for an automated deployment scenario. It skips
+the steps marked <strong>Optional</strong> above.</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-bash" data-lang="bash">#!/bin/bash
+
+sudo apt-get -y install autoconf automake curl g++ gcc gdb git \
+  krb5-admin-server krb5-kdc krb5-user libkrb5-dev libsasl2-dev libsasl2-modules \
+  libsasl2-modules-gssapi-mit libssl-dev libtool lsb-release make ntp openssl \
+  patch pkg-config python rsync unzip vim-common
+git clone https://github.com/apache/kudu
+cd kudu
+thirdparty/build-if-necessary.sh
+mkdir -p build/release
+cd build/release
+../../thirdparty/installed/common/bin/cmake \
+  -DCMAKE_BUILD_TYPE=release \
+  ../..
+make -j4</code></pre>
+</div>
+</div>
+</div>
+</div>
+</div>
+<div class="sect2">
+<h3 id="sles_from_source"><a class="link" href="#sles_from_source">SUSE Linux Enterprise Server</a></h3>
+<div class="olist arabic">
+<ol class="arabic">
+<li>
+<p>Install the prerequisite libraries, if they are not installed.</p>
+<div class="listingblock">
+<div class="content">
+<pre>$ sudo zypper install autoconf automake curl cyrus-sasl-devel \
+  cyrus-sasl-gssapi gcc gcc-c++ gdb git krb5-devel libtool lsb-release make ntp \
+  openssl-devel patch pkg-config python rsync unzip vim</pre>
+</div>
+</div>
+</li>
+<li>
+<p>Clone the Git repository and change to the new <code>kudu</code> directory.</p>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-bash" data-lang="bash">$ git clone https://github.com/apache/kudu
+$ cd kudu</code></pre>
+</div>
+</div>
+</li>
+<li>
+<p>Build any missing third-party requirements using the <code>build-if-necessary.sh</code> script.</p>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-bash" data-lang="bash">$ thirdparty/build-if-necessary.sh</code></pre>
+</div>
+</div>
+</li>
+<li>
+<p>Build Kudu, using the utilities installed in the previous step. Choose a build
+directory for the intermediate output, which can be anywhere in your filesystem
+except for the <code>kudu</code> directory itself.</p>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-bash" data-lang="bash">mkdir -p build/release
+cd build/release
+../../thirdparty/installed/common/bin/cmake \
+  -DCMAKE_BUILD_TYPE=release \
+  ../..
+make -j4</code></pre>
+</div>
+</div>
+</li>
+<li>
+<p>Optional: Install Kudu binaries, libraries, and headers.
+If you do not specify an installation directory through the <code>DESTDIR</code>
+environment variable, <code>/usr/local/</code> is the default.</p>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-bash" data-lang="bash">sudo make DESTDIR=/opt/kudu install</code></pre>
+</div>
+</div>
+</li>
+</ol>
+</div>
+<div class="exampleblock">
+<div class="title">Example 3. SLES Build Script</div>
+<div class="content">
+<div class="paragraph">
+<p>This script provides an overview of the procedure to build Kudu on SLES, and
+can be used as the basis for an automated deployment scenario. It skips
+the steps marked <strong>Optional</strong> above.</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-bash" data-lang="bash">#!/bin/bash
+
+sudo zypper install -y autoconf automake curl cyrus-sasl-devel \
+  cyrus-sasl-gssapi gcc gcc-c++ gdb git krb5-devel libtool lsb-release make ntp \
+  openssl-devel patch pkg-config python rsync unzip vim
+git clone https://github.com/apache/kudu
+cd kudu
+thirdparty/build-if-necessary.sh
+mkdir -p build/release
+cd build/release
+../../thirdparty/installed/common/bin/cmake \
+  -DCMAKE_BUILD_TYPE=release \
+  ../..
+make -j4</code></pre>
+</div>
+</div>
+</div>
+</div>
+</div>
+<div class="sect2">
+<h3 id="osx_from_source"><a class="link" href="#osx_from_source">macOS</a></h3>
+<div class="paragraph">
+<p>The <a href="https://developer.apple.com/xcode/">Xcode</a> package is necessary for
+compiling Kudu. Some of the instructions below use <a href="http://brew.sh/">Homebrew</a>
+to install dependencies, but manual dependency installation is possible.</p>
+</div>
+<div class="admonitionblock warning">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-warning" title="Warning"></i>
+</td>
+<td class="content">
+<div class="title">macOS Known Issues</div>
+<div class="paragraph">
+<p>Kudu support for macOS is experimental, and should only be used for development.
+See <a href="https://issues.cloudera.org/browse/KUDU-1219">macOS Limitations &amp; Known Issues</a>
+for more information.</p>
+</div>
+</td>
+</tr>
+</table>
+</div>
+<div class="olist arabic">
+<ol class="arabic">
+<li>
+<p>Install the prerequisite libraries, if they are not installed.</p>
+<div class="listingblock">
+<div class="content">
+<pre>$ brew tap homebrew/dupes
+$ brew install autoconf automake cmake git krb5 libtool openssl pkg-config pstree</pre>
+</div>
+</div>
+</li>
+<li>
+<p>Optional: Install some additional packages, including ruby, if you plan to build documentation.</p>
+<div class="listingblock">
+<div class="content">
+<pre>$ brew install doxygen graphviz ruby
+$ brew install gnu-sed --with-default-names #The macOS default sed handles the -i parameter differently</pre>
+</div>
+</div>
+</li>
+<li>
+<p>Clone the Git repository and change to the new <code>kudu</code> directory.</p>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-bash" data-lang="bash">$ git clone https://github.com/apache/kudu
+$ cd kudu</code></pre>
+</div>
+</div>
+</li>
+<li>
+<p>Build any missing third-party requirements using the <code>build-if-necessary.sh</code> script.</p>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-bash" data-lang="bash">$ thirdparty/build-if-necessary.sh</code></pre>
+</div>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p>If different versions of the dependencies are installed and used when calling
+<code>thirdparty/build-if-necessary.sh</code>, you may get stuck with output similar to the
+following:</p>
+<div class="listingblock">
+<div class="content">
+<pre>./configure: line 16299: error near unexpected token `newline'
+./configure: line 16299: `  PKG_CHECK_MODULES('</pre>
+</div>
+</div>
+<div class="paragraph">
+<p>The thirdparty builds may be cached and may reflect the incorrect versions of the
+dependencies. Ensure that you have the correct dependencies listed in Step 1, clean
+the workspace, and then try to re-build.</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-bash" data-lang="bash">$ git clean -fdx
+$ thirdparty/build-if-necessary.sh</code></pre>
+</div>
+</div>
+</li>
+<li>
+<p>Some combinations of Homebrew installations and system upgrades can result with a
+different kind of error:</p>
+<div class="listingblock">
+<div class="content">
+<pre>libtool: Version mismatch error.  This is libtool 2.4.6, but the
+libtool: definition of this LT_INIT comes from libtool 2.4.2.
+libtool: You should recreate aclocal.m4 with macros from libtool 2.4.6
+libtool: and run autoconf again.</pre>
+</div>
+</div>
+<div class="paragraph">
+<p>As described in this <a href="https://github.com/Homebrew/legacy-homebrew/issues/43874">thread</a>,
+a possible fix is to uninstall and reinstall libtool:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-bash" data-lang="bash">$ brew uninstall libtool &amp;&amp; brew install libtool</code></pre>
+</div>
+</div>
+</li>
+</ul>
+</div>
+</li>
+<li>
+<p>Build Kudu. Choose a build directory for the intermediate output, which can be
+anywhere in your filesystem except for the <code>kudu</code> directory itself.</p>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-bash" data-lang="bash">mkdir -p build/release
+cd build/release
+../../thirdparty/installed/common/bin/cmake \
+  -DCMAKE_BUILD_TYPE=release \
+  -DOPENSSL_ROOT_DIR=/usr/local/opt/openssl \
+  ../..
+make -j4</code></pre>
+</div>
+</div>
+</li>
+</ol>
+</div>
+<div class="exampleblock">
+<div class="title">Example 4. macOS Build Script</div>
+<div class="content">
+<div class="paragraph">
+<p>This script provides an overview of the procedure to build Kudu on macOS, and can
+be used as the basis for an automated deployment scenario. It assumes Xcode and Homebrew
+are installed.</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre>#!/bin/bash
+
+brew tap homebrew/dupes
+brew install autoconf automake cmake git krb5 libtool openssl pkg-config pstree
+git clone https://github.com/apache/kudu
+cd kudu
+thirdparty/build-if-necessary.sh
+mkdir -p build/release
+cd build/release
+../../thirdparty/installed/common/bin/cmake \
+  -DCMAKE_BUILD_TYPE=release \
+  -DOPENSSL_ROOT_DIR=/usr/local/opt/openssl \
+  ../..
+make -j4</pre>
+</div>
+</div>
+</div>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="build_cpp_client"><a class="link" href="#build_cpp_client">Installing the C++ Client Libraries</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>If you need access to the Kudu client libraries for development,
+install the <code>kudu-client</code> and <code>kudu-client-devel</code> package for your platform.
+See <a href="#install_packages">Install Using Packages</a>.</p>
+</div>
+<div class="admonitionblock warning">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-warning" title="Warning"></i>
+</td>
+<td class="content">
+Only build against the client libraries and headers (<code>kudu_client.so</code> and <code>client.h</code>).
+Other libraries and headers are internal to Kudu and have no stability guarantees.
+</td>
+</tr>
+</table>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="build_java_client"><a class="link" href="#build_java_client">Build the Java Client</a></h2>
+<div class="sectionbody">
+<div class="ulist">
+<div class="title">Requirements</div>
+<ul>
+<li>
+<p>JDK 7</p>
+</li>
+<li>
+<p>Apache Maven 3.x</p>
+</li>
+</ul>
+</div>
+<div class="paragraph">
+<p>To build the Java client, clone the Kudu Git
+repository, change to the <code>java</code> directory, and issue the following command:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-bash" data-lang="bash">$ mvn install -DskipTests</code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>For more information about building the Java API, as well as Eclipse integration,
+see <code>java/README.md</code>.</p>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="view_api"><a class="link" href="#view_api">View API Documentation</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<div class="title">C++ API Documentation</div>
+<p>You can view the <a href="../cpp-client-api/index.html">C++ client API documentation</a>
+online. Alternatively, after <a href="#build_from_source">building Kudu from source</a>,
+you can additionally build the <code>doxygen</code> target (e.g., run <code>make doxygen</code>
+if using make) and use the locally generated API documentation by opening
+<code>docs/doxygen/client_api/html/index.html</code> file in your favorite Web browser.</p>
+</div>
+<div class="admonitionblock note">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-note" title="Note"></i>
+</td>
+<td class="content">
+In order to build the <code>doxygen</code> target, it&#8217;s necessary to have
+doxygen with Dot (graphviz) support installed at your build machine. If
+you installed doxygen after building Kudu from source, you will need to run
+<code>cmake</code> again to pick up the doxygen location and generate appropriate
+targets.
+</td>
+</tr>
+</table>
+</div>
+<div class="paragraph">
+<div class="title">Java API Documentation</div>
+<p>You can view the <a href="../apidocs/index.html">Java API documentation</a> online. Alternatively,
+after <a href="#build_java_client">building the Java client</a>, Java API documentation is available
+in <code>java/kudu-client/target/apidocs/index.html</code>.</p>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="upgrade"><a class="link" href="#upgrade">Upgrade from a Previous Version of Kudu</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Before upgrading, you should read the <a href="release_notes.html">Release Notes</a> for
+the version of Kudu that you are about to install. Pay close attention to the
+incompatibilities, upgrade, and downgrade notes that are documented there.</p>
+</div>
+<div class="admonitionblock note">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-note" title="Note"></i>
+</td>
+<td class="content">
+Currently rolling upgrades are not supported. Please shut down all Kudu services before
+  upgrading the software.
+</td>
+</tr>
+</table>
+</div>
+<div class="sect2">
+<h3 id="upgrade_procedure"><a class="link" href="#upgrade_procedure">Upgrade Procedure</a></h3>
+<div class="olist arabic">
+<ol class="arabic">
+<li>
+<p>Stop the Kudu master and tablet server services:</p>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-bash" data-lang="bash">$ sudo service kudu-master stop
+$ sudo service kudu-tserver stop</code></pre>
+</div>
+</div>
+</li>
+<li>
+<p>Upgrade the packages.</p>
+<div class="ulist">
+<ul>
+<li>
+<p>On RHEL or CentOS hosts:</p>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-bash" data-lang="bash">sudo yum clean all
+sudo yum upgrade kudu</code></pre>
+</div>
+</div>
+</li>
+<li>
+<p>On SLES hosts:</p>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-bash" data-lang="bash">sudo zypper clean --all
+sudo zypper update kudu</code></pre>
+</div>
+</div>
+</li>
+<li>
+<p>On Ubuntu or Debian hosts:</p>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-bash" data-lang="bash">sudo apt-get update
+sudo apt-get install kudu</code></pre>
+</div>
+</div>
+</li>
+</ul>
+</div>
+</li>
+<li>
+<p>Start the Kudu master and tablet server services:</p>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-bash" data-lang="bash">$ sudo service kudu-master start
+$ sudo service kudu-tserver start</code></pre>
+</div>
+</div>
+</li>
+</ol>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="next_steps"><a class="link" href="#next_steps">Next Steps</a></h2>
+<div class="sectionbody">
+<div class="ulist">
+<ul>
+<li>
+<p><a href="configuration.html">Configuring Kudu</a></p>
+</li>
+<li>
+<p><a href="administration.html">Kudu Administration</a></p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+    </div>
+    <div class="col-md-3">
+
+  <div id="toc" data-spy="affix" data-offset-top="70">
+  <ul>
+
+      <li>
+
+          <a href="index.html">Introducing Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="release_notes.html">Kudu Release Notes</a> 
+      </li> 
+      <li>
+
+          <a href="quickstart.html">Getting Started with Kudu</a> 
+      </li> 
+      <li>
+<span class="active-toc">Installation Guide</span>
+            <ul class="sectlevel1">
+<li><a href="#_prerequisites_and_requirements">Prerequisites and Requirements</a></li>
+<li><a href="#install_packages">Install Using Packages</a>
+<ul class="sectlevel2">
+<li><a href="#_install_on_rhel_or_centos_hosts">Install on RHEL or CentOS Hosts</a></li>
+<li><a href="#_install_on_sles_hosts">Install on SLES Hosts</a></li>
+<li><a href="#_install_on_ubuntu_or_debian_hosts">Install on Ubuntu or Debian Hosts</a></li>
+<li><a href="#_verify_the_installation">Verify the Installation</a></li>
+<li><a href="#required_config_without_cm">Required Configuration</a></li>
+</ul>
+</li>
+<li><a href="#build_from_source">Build From Source</a>
+<ul class="sectlevel2">
+<li><a href="#rhel_from_source">RHEL or CentOS</a></li>
+<li><a href="#ubuntu_from_source">Ubuntu or Debian</a></li>
+<li><a href="#sles_from_source">SUSE Linux Enterprise Server</a></li>
+<li><a href="#osx_from_source">macOS</a></li>
+</ul>
+</li>
+<li><a href="#build_cpp_client">Installing the C++ Client Libraries</a></li>
+<li><a href="#build_java_client">Build the Java Client</a></li>
+<li><a href="#view_api">View API Documentation</a></li>
+<li><a href="#upgrade">Upgrade from a Previous Version of Kudu</a>
+<ul class="sectlevel2">
+<li><a href="#upgrade_procedure">Upgrade Procedure</a></li>
+</ul>
+</li>
+<li><a href="#next_steps">Next Steps</a></li>
+</ul> 
+      </li> 
+      <li>
+
+          <a href="configuration.html">Configuring Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="kudu_impala_integration.html">Using Impala with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="administration.html">Administering Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="troubleshooting.html">Troubleshooting Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="developing.html">Developing Applications with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="schema_design.html">Kudu Schema Design</a> 
+      </li> 
+      <li>
+
+          <a href="security.html">Kudu Security</a> 
+      </li> 
+      <li>
+
+          <a href="transaction_semantics.html">Kudu Transaction Semantics</a> 
+      </li> 
+      <li>
+
+          <a href="background_tasks.html">Background Maintenance Tasks</a> 
+      </li> 
+      <li>
+
+          <a href="configuration_reference.html">Kudu Configuration Reference</a> 
+      </li> 
+      <li>
+
+          <a href="command_line_tools_reference.html">Kudu Command Line Tools Reference</a> 
+      </li> 
+      <li>
+
+          <a href="known_issues.html">Known Issues and Limitations</a> 
+      </li> 
+      <li>
+
+          <a href="contributing.html">Contributing to Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="export_control.html">Export Control Notice</a> 
+      </li> 
+  </ul>
+  </div>
+    </div>
+  </div>
+</div>
+      <footer class="footer">
+        <p class="small">
+        Copyright &copy; 2016 The Apache Software Foundation.  Last updated 2017-05-18 13:38:03 PDT 
+        </p>
+      </footer>
+    </div>
+    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
+    <script>
+      // Try to detect touch-screen devices. Note: Many laptops have touch screens.
+      $(document).ready(function() {
+        if ("ontouchstart" in document.documentElement) {
+          $(document.documentElement).addClass("touch");
+        } else {
+          $(document.documentElement).addClass("no-touch");
+        }
+      });
+    </script>
+    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"
+            integrity="sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS"
+            crossorigin="anonymous"></script>
+    <script>
+      (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+      (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+      m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+      })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+
+      ga('create', 'UA-68448017-1', 'auto');
+      ga('send', 'pageview');
+    </script>
+    <script src="https://cdnjs.cloudflare.com/ajax/libs/anchor-js/3.1.0/anchor.js"></script>
+    <script>
+      anchors.options = {
+        placement: 'right',
+        visible: 'touch',
+      };
+      anchors.add();
+    </script>
+  </body>
+</html>
+
diff --git a/releases/1.4.0/docs/known_issues.html b/releases/1.4.0/docs/known_issues.html
new file mode 100644
index 0000000..38e7edc
--- /dev/null
+++ b/releases/1.4.0/docs/known_issues.html
@@ -0,0 +1,548 @@
+<!DOCTYPE html>
+<html lang="en">
+  <head>
+    <meta charset="utf-8" />
+    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
+    <meta name="viewport" content="width=device-width, initial-scale=1" />
+    <!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
+    <meta name="description" content="A new open source Apache Hadoop ecosystem project, Apache Kudu completes Hadoop's storage layer to enable fast analytics on fast data" />
+    <meta name="author" content="Cloudera" />
+    <title>Apache Kudu - Known Issues and Limitations</title>
+    <!-- Bootstrap core CSS -->
+    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css"
+          integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7"
+          crossorigin="anonymous">
+
+    <!-- Custom styles for this template -->
+    <link href="/css/kudu.css" rel="stylesheet"/>
+    <link href="/css/asciidoc.css" rel="stylesheet"/>
+    <link rel="shortcut icon" href="/img/logo-favicon.ico" />
+    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.6.1/css/font-awesome.min.css" />
+
+    
+
+    <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+        <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+        <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+        <![endif]-->
+  </head>
+  <body>
+    <div class="kudu-site container-fluid">
+      <!-- Static navbar -->
+        <nav class="navbar navbar-default">
+          <div class="container-fluid">
+            <div class="navbar-header">
+              <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
+                <span class="sr-only">Toggle navigation</span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+              </button>
+              
+              <a class="logo" href="/"><img
+                src="//d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_80px.png"
+                srcset="//d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_80px.png 1x, //d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_160px.png 2x"
+                alt="Apache Kudu"/></a>
+              
+            </div>
+            <div id="navbar" class="collapse navbar-collapse">
+              <ul class="nav navbar-nav navbar-right">
+                <li >
+                  <a href="/">Home</a>
+                </li>
+                <li >
+                  <a href="/overview.html">Overview</a>
+                </li>
+                <li class="active">
+                  <a href="/docs/">Documentation</a>
+                </li>
+                <li >
+                  <a href="/releases/">Download</a>
+                </li>
+                <li >
+                  <a href="/blog/">Blog</a>
+                </li>
+                <!-- NOTE: this dropdown menu does not appear on Mobile, so don't add anything here
+                     that doesn't also appear elsewhere on the site. -->
+                <li class="dropdown">
+                  <a href="/community.html" role="button" aria-haspopup="true" aria-expanded="false">Community <span class="caret"></span></a>
+                  <ul class="dropdown-menu">
+                    <li class="dropdown-header">GET IN TOUCH</li>
+                    <li><a class="icon email" href="/community.html">Mailing Lists</a></li>
+                    <li><a class="icon slack" href="https://getkudu-slack.herokuapp.com/">Slack Channel</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li><a href="/community.html#meetups-user-groups-and-conference-presentations">Events and Meetups</a></li>
+                    <li><a href="/committers.html">Project Committers</a></li>
+                    <!--<li><a href="/roadmap.html">Roadmap</a></li>-->
+                    <li><a href="/community.html#contributions">How to Contribute</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li class="dropdown-header">DEVELOPER RESOURCES</li>
+                    <li><a class="icon github" href="https://github.com/apache/incubator-kudu">GitHub</a></li>
+                    <li><a class="icon gerrit" href="http://gerrit.cloudera.org:8080/#/q/status:open+project:kudu">Gerrit Code Review</a></li>
+                    <li><a class="icon jira" href="https://issues.apache.org/jira/browse/KUDU">JIRA Issue Tracker</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li class="dropdown-header">SOCIAL MEDIA</li>
+                    <li><a class="icon twitter" href="https://twitter.com/ApacheKudu">Twitter</a></li>
+                  </ul>
+                </li>
+                <li >
+                  <a href="/faq.html">FAQ</a>
+                </li>
+              </ul><!-- /.nav -->
+            </div><!-- /#navbar -->
+          </div><!-- /.container-fluid -->
+        </nav>
+
+<!--
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
+
+
+<div class="container">
+  <div class="row">
+    <div class="col-md-9">
+
+<h1>Known Issues and Limitations</h1>
+      <div class="sect1">
+<h2 id="_schema"><a class="link" href="#_schema">Schema</a></h2>
+<div class="sectionbody">
+<div class="sect2">
+<h3 id="_primary_keys"><a class="link" href="#_primary_keys">Primary keys</a></h3>
+<div class="ulist">
+<ul>
+<li>
+<p>The primary key may not be changed after the table is created.
+You must drop and recreate a table to select a new primary key.</p>
+</li>
+<li>
+<p>The columns which make up the primary key must be listed first in the schema.</p>
+</li>
+<li>
+<p>The primary key of a row may not be modified using the <code>UPDATE</code> functionality.
+To modify a row&#8217;s primary key, the row must be deleted and re-inserted with
+the modified key. Such a modification is non-atomic.</p>
+</li>
+<li>
+<p>Columns with <code>DOUBLE</code>, <code>FLOAT</code>, or <code>BOOL</code> types are not allowed as part of a
+primary key definition. Additionally, all columns that are part of a primary
+key definition must be <code>NOT NULL</code>.</p>
+</li>
+<li>
+<p>Auto-generated primary keys are not supported.</p>
+</li>
+<li>
+<p>Cells making up a composite primary key are limited to a total of 16KB after the internal
+composite-key encoding done by Kudu.</p>
+</li>
+</ul>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_columns"><a class="link" href="#_columns">Columns</a></h3>
+<div class="ulist">
+<ul>
+<li>
+<p>DECIMAL, CHAR, VARCHAR, DATE, and complex types like ARRAY are not supported.</p>
+</li>
+<li>
+<p>Type and nullability of existing columns cannot be changed by altering the table.</p>
+</li>
+<li>
+<p>Tables can have a maximum of 300 columns.</p>
+</li>
+</ul>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_tables"><a class="link" href="#_tables">Tables</a></h3>
+<div class="ulist">
+<ul>
+<li>
+<p>Tables must have an odd number of replicas, with a maximum of 7.</p>
+</li>
+<li>
+<p>Replication factor (set at table creation time) cannot be changed.</p>
+</li>
+</ul>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_cells_individual_values"><a class="link" href="#_cells_individual_values">Cells (individual values)</a></h3>
+<div class="ulist">
+<ul>
+<li>
+<p>Cells cannot be larger than 64KB before encoding or compression.</p>
+</li>
+</ul>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_other_usage_limitations"><a class="link" href="#_other_usage_limitations">Other usage limitations</a></h3>
+<div class="ulist">
+<ul>
+<li>
+<p>Kudu is primarily designed for analytic use cases. You are likely to encounter issues if
+a single row contains multiple kilobytes of data.</p>
+</li>
+<li>
+<p>Secondary indexes are not supported.</p>
+</li>
+<li>
+<p>Multi-row transactions are not supported.</p>
+</li>
+<li>
+<p>Relational features, like foreign keys, are not supported.</p>
+</li>
+<li>
+<p>Identifiers such as column and table names are restricted to be valid UTF-8 strings.
+Additionally, a maximum length of 256 characters is enforced.</p>
+</li>
+<li>
+<p>Dropping a column does not immediately reclaim space. Compaction must run first.</p>
+</li>
+<li>
+<p>There is no way to run compaction manually, but dropping the table will reclaim the
+space immediately.</p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_partitioning_limitations"><a class="link" href="#_partitioning_limitations">Partitioning Limitations</a></h2>
+<div class="sectionbody">
+<div class="ulist">
+<ul>
+<li>
+<p>Tables must be manually pre-split into tablets using simple or compound primary
+keys. Automatic splitting is not yet possible. Range partitions may be added
+or dropped after a table has been created. See
+<a href="schema_design.html">Schema Design</a> for more information.</p>
+</li>
+<li>
+<p>Data in existing tables cannot currently be automatically repartitioned. As a workaround,
+create a new table with the new partitioning and insert the contents of the old
+table.</p>
+</li>
+<li>
+<p>Tablets that lose a majority of replicas (such as 1 left out of 3) require manual
+intervention to be repaired.</p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_cluster_management"><a class="link" href="#_cluster_management">Cluster management</a></h2>
+<div class="sectionbody">
+<div class="ulist">
+<ul>
+<li>
+<p>Rack awareness is not supported.</p>
+</li>
+<li>
+<p>Multi-datacenter is not supported.</p>
+</li>
+<li>
+<p>Rolling restart is not supported.</p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_server_management"><a class="link" href="#_server_management">Server management</a></h2>
+<div class="sectionbody">
+<div class="ulist">
+<ul>
+<li>
+<p>Production deployments should configure a least 4GB of memory for tablet servers,
+and ideally more than 10GB.</p>
+</li>
+<li>
+<p>Write ahead logs (WAL) can only be stored on one disk.</p>
+</li>
+<li>
+<p>Disk failures are not tolerated and tablets servers will crash as soon as one is detected.</p>
+</li>
+<li>
+<p>Failed disks with unrecoverable data require the formatting of all the Kudu data for
+that tablet server before it can be started again.</p>
+</li>
+<li>
+<p>Data directories cannot be added/removed; all must be reformatted to change the set
+of directories.</p>
+</li>
+<li>
+<p>Tablet servers cannot be gracefully decommissioned.</p>
+</li>
+<li>
+<p>Tablet servers can’t change address/port.</p>
+</li>
+<li>
+<p>Kudu has a hard requirement on having up-to-date NTP. Kudu masters and tablet servers
+will crash when out of sync.</p>
+</li>
+<li>
+<p>Kudu releases are only tested with NTP. Other time synchronization providers like Chrony
+may or may not work.</p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_scale"><a class="link" href="#_scale">Scale</a></h2>
+<div class="sectionbody">
+<div class="ulist">
+<ul>
+<li>
+<p>Recommended maximum number of tablet servers is 100.</p>
+</li>
+<li>
+<p>Recommended maximum number of masters is 3.</p>
+</li>
+<li>
+<p>Recommended maximum amount of stored data, post-replication and post-compression,
+per tablet server is 4TB.</p>
+</li>
+<li>
+<p>Recommended maximum number of tablets per tablet server is 1000, post-replication.</p>
+</li>
+<li>
+<p>Maximum number of tablets per table for each tablet server is 60, post-replication,
+at table-creation time.</p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_replication_and_backup_limitations"><a class="link" href="#_replication_and_backup_limitations">Replication and Backup Limitations</a></h2>
+<div class="sectionbody">
+<div class="ulist">
+<ul>
+<li>
+<p>Kudu does not currently include any built-in features for backup and restore.
+Users are encouraged to use tools such as Spark or Impala to export or import
+tables as necessary.</p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_security_limitations"><a class="link" href="#_security_limitations">Security Limitations</a></h2>
+<div class="sectionbody">
+<div class="ulist">
+<ul>
+<li>
+<p>Authorization is only available at a system-wide, coarse-grained level. Table-level,
+column-level, and row-level authorization features are not available.</p>
+</li>
+<li>
+<p>Data encryption at rest is not built in. Kudu has been reported to run correctly
+on systems using local block device encryption (e.g. <code>dmcrypt</code>).</p>
+</li>
+<li>
+<p>Kudu server Kerberos principals must follow the pattern <code>kudu/&lt;HOST&gt;@DEFAULT.REALM</code>.
+Configuring an alternate Kerberos principal is not supported.</p>
+</li>
+<li>
+<p>Kudu&#8217;s integration with Apache Flume does not support writing to Kudu clusters that
+require Kerberos authentication.</p>
+</li>
+<li>
+<p>Kudu client instances retrieve authentication tokens upon first contact with the
+cluster. These tokens expire after one week. Use of a single Kudu client instance
+for more than one week is only supported by the C++ client but not by the Java client.</p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_other_known_issues"><a class="link" href="#_other_known_issues">Other Known Issues</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The following are known bugs and issues with the current release of Kudu. They will
+be addressed in later releases. Note that this list is not exhaustive, and is meant
+to communicate only the most important known issues.</p>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p>If the Kudu master is configured with the <code>-log_force_fsync_all</code> option, tablet servers
+and clients will experience frequent timeouts, and the cluster may become unusable.</p>
+</li>
+<li>
+<p>If a tablet server has a very large number of tablets, it may take several minutes
+to start up. It is recommended to limit the number of tablets per server to 100 or fewer.
+Consider this limitation when pre-splitting your tables. If you notice slow start-up times,
+you can monitor the number of tablets per server in the web UI.</p>
+</li>
+<li>
+<p>Kerberos authentication does not function correctly on hosts which contain
+capital letters in their hostname.</p>
+</li>
+<li>
+<p>Kerberos authentication does not function correctly if <code>rdns = false</code> is configured
+in <code>krb5.conf</code>.</p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+    </div>
+    <div class="col-md-3">
+
+  <div id="toc" data-spy="affix" data-offset-top="70">
+  <ul>
+
+      <li>
+
+          <a href="index.html">Introducing Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="release_notes.html">Kudu Release Notes</a> 
+      </li> 
+      <li>
+
+          <a href="quickstart.html">Getting Started with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="installation.html">Installation Guide</a> 
+      </li> 
+      <li>
+
+          <a href="configuration.html">Configuring Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="kudu_impala_integration.html">Using Impala with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="administration.html">Administering Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="troubleshooting.html">Troubleshooting Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="developing.html">Developing Applications with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="schema_design.html">Kudu Schema Design</a> 
+      </li> 
+      <li>
+
+          <a href="security.html">Kudu Security</a> 
+      </li> 
+      <li>
+
+          <a href="transaction_semantics.html">Kudu Transaction Semantics</a> 
+      </li> 
+      <li>
+
+          <a href="background_tasks.html">Background Maintenance Tasks</a> 
+      </li> 
+      <li>
+
+          <a href="configuration_reference.html">Kudu Configuration Reference</a> 
+      </li> 
+      <li>
+
+          <a href="command_line_tools_reference.html">Kudu Command Line Tools Reference</a> 
+      </li> 
+      <li>
+<span class="active-toc">Known Issues and Limitations</span>
+            <ul class="sectlevel1">
+<li><a href="#_schema">Schema</a>
+<ul class="sectlevel2">
+<li><a href="#_primary_keys">Primary keys</a></li>
+<li><a href="#_columns">Columns</a></li>
+<li><a href="#_tables">Tables</a></li>
+<li><a href="#_cells_individual_values">Cells (individual values)</a></li>
+<li><a href="#_other_usage_limitations">Other usage limitations</a></li>
+</ul>
+</li>
+<li><a href="#_partitioning_limitations">Partitioning Limitations</a></li>
+<li><a href="#_cluster_management">Cluster management</a></li>
+<li><a href="#_server_management">Server management</a></li>
+<li><a href="#_scale">Scale</a></li>
+<li><a href="#_replication_and_backup_limitations">Replication and Backup Limitations</a></li>
+<li><a href="#_security_limitations">Security Limitations</a></li>
+<li><a href="#_other_known_issues">Other Known Issues</a></li>
+</ul> 
+      </li> 
+      <li>
+
+          <a href="contributing.html">Contributing to Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="export_control.html">Export Control Notice</a> 
+      </li> 
+  </ul>
+  </div>
+    </div>
+  </div>
+</div>
+      <footer class="footer">
+        <p class="small">
+        Copyright &copy; 2016 The Apache Software Foundation.  Last updated 2017-06-08 18:46:50 PDT 
+        </p>
+      </footer>
+    </div>
+    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
+    <script>
+      // Try to detect touch-screen devices. Note: Many laptops have touch screens.
+      $(document).ready(function() {
+        if ("ontouchstart" in document.documentElement) {
+          $(document.documentElement).addClass("touch");
+        } else {
+          $(document.documentElement).addClass("no-touch");
+        }
+      });
+    </script>
+    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"
+            integrity="sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS"
+            crossorigin="anonymous"></script>
+    <script>
+      (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+      (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+      m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+      })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+
+      ga('create', 'UA-68448017-1', 'auto');
+      ga('send', 'pageview');
+    </script>
+    <script src="https://cdnjs.cloudflare.com/ajax/libs/anchor-js/3.1.0/anchor.js"></script>
+    <script>
+      anchors.options = {
+        placement: 'right',
+        visible: 'touch',
+      };
+      anchors.add();
+    </script>
+  </body>
+</html>
+
diff --git a/releases/1.4.0/docs/kudu-master_configuration_reference.html b/releases/1.4.0/docs/kudu-master_configuration_reference.html
new file mode 100644
index 0000000..f8bee71
--- /dev/null
+++ b/releases/1.4.0/docs/kudu-master_configuration_reference.html
@@ -0,0 +1,4561 @@
+<!DOCTYPE html>
+<html lang="en">
+  <head>
+    <meta charset="utf-8" />
+    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
+    <meta name="viewport" content="width=device-width, initial-scale=1" />
+    <!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
+    <meta name="description" content="A new open source Apache Hadoop ecosystem project, Apache Kudu completes Hadoop's storage layer to enable fast analytics on fast data" />
+    <meta name="author" content="Cloudera" />
+    <title>Apache Kudu - kudu-master Flags</title>
+    <!-- Bootstrap core CSS -->
+    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css"
+          integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7"
+          crossorigin="anonymous">
+
+    <!-- Custom styles for this template -->
+    <link href="/css/kudu.css" rel="stylesheet"/>
+    <link href="/css/asciidoc.css" rel="stylesheet"/>
+    <link rel="shortcut icon" href="/img/logo-favicon.ico" />
+    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.6.1/css/font-awesome.min.css" />
+
+    
+
+    <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+        <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+        <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+        <![endif]-->
+  </head>
+  <body>
+    <div class="kudu-site container-fluid">
+      <!-- Static navbar -->
+        <nav class="navbar navbar-default">
+          <div class="container-fluid">
+            <div class="navbar-header">
+              <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
+                <span class="sr-only">Toggle navigation</span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+              </button>
+              
+              <a class="logo" href="/"><img
+                src="//d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_80px.png"
+                srcset="//d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_80px.png 1x, //d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_160px.png 2x"
+                alt="Apache Kudu"/></a>
+              
+            </div>
+            <div id="navbar" class="collapse navbar-collapse">
+              <ul class="nav navbar-nav navbar-right">
+                <li >
+                  <a href="/">Home</a>
+                </li>
+                <li >
+                  <a href="/overview.html">Overview</a>
+                </li>
+                <li class="active">
+                  <a href="/docs/">Documentation</a>
+                </li>
+                <li >
+                  <a href="/releases/">Download</a>
+                </li>
+                <li >
+                  <a href="/blog/">Blog</a>
+                </li>
+                <!-- NOTE: this dropdown menu does not appear on Mobile, so don't add anything here
+                     that doesn't also appear elsewhere on the site. -->
+                <li class="dropdown">
+                  <a href="/community.html" role="button" aria-haspopup="true" aria-expanded="false">Community <span class="caret"></span></a>
+                  <ul class="dropdown-menu">
+                    <li class="dropdown-header">GET IN TOUCH</li>
+                    <li><a class="icon email" href="/community.html">Mailing Lists</a></li>
+                    <li><a class="icon slack" href="https://getkudu-slack.herokuapp.com/">Slack Channel</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li><a href="/community.html#meetups-user-groups-and-conference-presentations">Events and Meetups</a></li>
+                    <li><a href="/committers.html">Project Committers</a></li>
+                    <!--<li><a href="/roadmap.html">Roadmap</a></li>-->
+                    <li><a href="/community.html#contributions">How to Contribute</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li class="dropdown-header">DEVELOPER RESOURCES</li>
+                    <li><a class="icon github" href="https://github.com/apache/incubator-kudu">GitHub</a></li>
+                    <li><a class="icon gerrit" href="http://gerrit.cloudera.org:8080/#/q/status:open+project:kudu">Gerrit Code Review</a></li>
+                    <li><a class="icon jira" href="https://issues.apache.org/jira/browse/KUDU">JIRA Issue Tracker</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li class="dropdown-header">SOCIAL MEDIA</li>
+                    <li><a class="icon twitter" href="https://twitter.com/ApacheKudu">Twitter</a></li>
+                  </ul>
+                </li>
+                <li >
+                  <a href="/faq.html">FAQ</a>
+                </li>
+              </ul><!-- /.nav -->
+            </div><!-- /#navbar -->
+          </div><!-- /.container-fluid -->
+        </nav>
+
+<!--
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
+
+
+<div class="container">
+  <div class="row">
+    <div class="col-md-9">
+
+<h1><code>kudu-master</code> Flags</h1>
+      <div class="sect1">
+<h2 id="kudu-master_stable"><a class="link" href="#kudu-master_stable">Stable Flags</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Flags tagged <code>stable</code> and not <code>advanced</code> are safe to use for common
+configuration tasks.</p>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_block_cache_capacity_mb"><a class="link" href="#kudu-master_block_cache_capacity_mb"><code>--block_cache_capacity_mb</code></a></h3>
+<div class="paragraph">
+<p>block cache capacity in MB</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>512</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_log_force_fsync_all"><a class="link" href="#kudu-master_log_force_fsync_all"><code>--log_force_fsync_all</code></a></h3>
+<div class="paragraph">
+<p>Whether the Log/WAL should explicitly call fsync() after each write.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_fs_data_dirs"><a class="link" href="#kudu-master_fs_data_dirs"><code>--fs_data_dirs</code></a></h3>
+<div class="paragraph">
+<p>Comma-separated list of directories with data blocks. If this is not specified, fs_wal_dir will be used as the sole data block directory.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_fs_wal_dir"><a class="link" href="#kudu-master_fs_wal_dir"><code>--fs_wal_dir</code></a></h3>
+<div class="paragraph">
+<p>Directory with write-ahead logs. If this is not specified, the program will not start. May be the same as fs_data_dirs</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_master_addresses"><a class="link" href="#kudu-master_master_addresses"><code>--master_addresses</code></a></h3>
+<div class="paragraph">
+<p>Comma-separated list of the RPC addresses belonging to all Masters in this cluster. NOTE: if not specified, configures a non-replicated Master.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_keytab_file"><a class="link" href="#kudu-master_keytab_file"><code>--keytab_file</code></a></h3>
+<div class="paragraph">
+<p>Path to the Kerberos Keytab file for this server. Specifying a keytab file will cause the server to kinit, and enable Kerberos to be used to authenticate RPC connections.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_rpc_bind_addresses"><a class="link" href="#kudu-master_rpc_bind_addresses"><code>--rpc_bind_addresses</code></a></h3>
+<div class="paragraph">
+<p>Comma-separated list of addresses to bind to for RPC connections. Currently, ephemeral ports (i.e. port 0) are not allowed.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0.0.0.0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_superuser_acl"><a class="link" href="#kudu-master_superuser_acl"><code>--superuser_acl</code></a></h3>
+<div class="paragraph">
+<p>The list of usernames to allow as super users, comma-separated. A '*' entry indicates that all authenticated users are allowed. If this is left unset or blank, the default behavior is that the identity of the daemon itself determines the superuser. If the daemon is logged in from a Keytab, then the local username from the Kerberos principal is used; otherwise, the local Unix username is used.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">sensitive,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_user_acl"><a class="link" href="#kudu-master_user_acl"><code>--user_acl</code></a></h3>
+<div class="paragraph">
+<p>The list of usernames who may access the cluster, comma-separated. A '*' entry indicates that all authenticated users are allowed.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>*</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">sensitive,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_webserver_certificate_file"><a class="link" href="#kudu-master_webserver_certificate_file"><code>--webserver_certificate_file</code></a></h3>
+<div class="paragraph">
+<p>The location of the debug webserver&#8217;s SSL certificate file, in PEM format. If empty, webserver SSL support is not enabled. If --webserver_private_key_file is set, this option must be set as well.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_webserver_port"><a class="link" href="#kudu-master_webserver_port"><code>--webserver_port</code></a></h3>
+<div class="paragraph">
+<p>Port to bind to for the web server</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_webserver_private_key_file"><a class="link" href="#kudu-master_webserver_private_key_file"><code>--webserver_private_key_file</code></a></h3>
+<div class="paragraph">
+<p>The full path to the private key used as a counterpart to the public key contained in --webserver_certificate_file. If --webserver_certificate_file is set, this option must be set as well.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_webserver_private_key_password_cmd"><a class="link" href="#kudu-master_webserver_private_key_password_cmd"><code>--webserver_private_key_password_cmd</code></a></h3>
+<div class="paragraph">
+<p>A Unix command whose output returns the password used to decrypt the Webserver&#8217;s certificate private key file specified in --webserver_private_key_file. If the PEM key file is not password-protected, this command will not be invoked. The output of the command will be truncated to 1024 bytes, and then all trailing whitespace will be trimmed before it is used to decrypt the private key</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_log_filename"><a class="link" href="#kudu-master_log_filename"><code>--log_filename</code></a></h3>
+<div class="paragraph">
+<p>Prefix of log filename - full path is &lt;log_dir&gt;/&lt;log_filename&gt;.[INFO|WARN|ERROR|FATAL]</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_maintenance_manager_num_threads"><a class="link" href="#kudu-master_maintenance_manager_num_threads"><code>--maintenance_manager_num_threads</code></a></h3>
+<div class="paragraph">
+<p>Size of the maintenance manager thread pool. For spinning disks, the number of threads should not be above the number of devices.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_memory_limit_hard_bytes"><a class="link" href="#kudu-master_memory_limit_hard_bytes"><code>--memory_limit_hard_bytes</code></a></h3>
+<div class="paragraph">
+<p>Maximum amount of memory this daemon should use, in bytes. A value of 0 autosizes based on the total system memory. A value of -1 disables all memory limiting.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_flagfile"><a class="link" href="#kudu-master_flagfile"><code>--flagfile</code></a></h3>
+<div class="paragraph">
+<p>load flags from file</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_help"><a class="link" href="#kudu-master_help"><code>--help</code></a></h3>
+<div class="paragraph">
+<p>show help on all flags [tip: all flags can have two dashes]</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_version"><a class="link" href="#kudu-master_version"><code>--version</code></a></h3>
+<div class="paragraph">
+<p>show version and build info and exit</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_colorlogtostderr"><a class="link" href="#kudu-master_colorlogtostderr"><code>--colorlogtostderr</code></a></h3>
+<div class="paragraph">
+<p>color messages logged to stderr (if supported by terminal)</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_log_dir"><a class="link" href="#kudu-master_log_dir"><code>--log_dir</code></a></h3>
+<div class="paragraph">
+<p>If specified, logfiles are written into this directory instead of the default logging directory.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_logtostderr"><a class="link" href="#kudu-master_logtostderr"><code>--logtostderr</code></a></h3>
+<div class="paragraph">
+<p>log messages go to stderr instead of logfiles</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_max_log_size"><a class="link" href="#kudu-master_max_log_size"><code>--max_log_size</code></a></h3>
+<div class="paragraph">
+<p>approx. maximum log file size (in MB). A value of 0 will be silently overridden to 1.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1800</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_stable_advanced"><a class="link" href="#kudu-master_stable_advanced">Stable, Advanced Flags</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Flags tagged <code>stable</code> and <code>advanced</code> are supported, but should be considered
+"expert" options and should be used carefully and after thorough testing.</p>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_enable_process_lifetime_heap_profiling"><a class="link" href="#kudu-master_enable_process_lifetime_heap_profiling"><code>--enable_process_lifetime_heap_profiling</code></a></h3>
+<div class="paragraph">
+<p>Enables heap profiling for the lifetime of the process. Profile output will be stored in the directory specified by -heap_profile_path. Enabling this option will disable the on-demand/remote server profile handlers.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_heap_profile_path"><a class="link" href="#kudu-master_heap_profile_path"><code>--heap_profile_path</code></a></h3>
+<div class="paragraph">
+<p>Output path to store heap profiles. If not set profiles are stored in /tmp/&lt;process-name&gt;.&lt;pid&gt;.&lt;n&gt;.heap.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_unlock_experimental_flags"><a class="link" href="#kudu-master_unlock_experimental_flags"><code>--unlock_experimental_flags</code></a></h3>
+<div class="paragraph">
+<p>Unlock flags marked as 'experimental'. These flags are not guaranteed to be maintained across releases of Kudu, and may enable features or behavior known to be unstable. Use at your own risk.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_unlock_unsafe_flags"><a class="link" href="#kudu-master_unlock_unsafe_flags"><code>--unlock_unsafe_flags</code></a></h3>
+<div class="paragraph">
+<p>Unlock flags marked as 'unsafe'. These flags are not guaranteed to be maintained across releases of Kudu, and enable features or behavior known to be unsafe. Use at your own risk.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_fromenv"><a class="link" href="#kudu-master_fromenv"><code>--fromenv</code></a></h3>
+<div class="paragraph">
+<p>set flags from the environment [use 'export FLAGS_flag1=value']</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_tryfromenv"><a class="link" href="#kudu-master_tryfromenv"><code>--tryfromenv</code></a></h3>
+<div class="paragraph">
+<p>set flags from the environment if present</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_undefok"><a class="link" href="#kudu-master_undefok"><code>--undefok</code></a></h3>
+<div class="paragraph">
+<p>comma-separated list of flag names that it is okay to specify on the command line even if the program does not define a flag with that name.  IMPORTANT: flags in this list that have arguments MUST use the flag=value format</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_helpmatch"><a class="link" href="#kudu-master_helpmatch"><code>--helpmatch</code></a></h3>
+<div class="paragraph">
+<p>show help on modules whose name contains the specified substr</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_helpon"><a class="link" href="#kudu-master_helpon"><code>--helpon</code></a></h3>
+<div class="paragraph">
+<p>show help on the modules named by this flag value</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_helppackage"><a class="link" href="#kudu-master_helppackage"><code>--helppackage</code></a></h3>
+<div class="paragraph">
+<p>show help on all modules in the main package</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_helpshort"><a class="link" href="#kudu-master_helpshort"><code>--helpshort</code></a></h3>
+<div class="paragraph">
+<p>show help on only the main module for this program</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_helpxml"><a class="link" href="#kudu-master_helpxml"><code>--helpxml</code></a></h3>
+<div class="paragraph">
+<p>produce an xml version of help</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_log_link"><a class="link" href="#kudu-master_log_link"><code>--log_link</code></a></h3>
+<div class="paragraph">
+<p>Put additional links to the log files in this directory</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_log_prefix"><a class="link" href="#kudu-master_log_prefix"><code>--log_prefix</code></a></h3>
+<div class="paragraph">
+<p>Prepend the log prefix to the start of each log line</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_minloglevel"><a class="link" href="#kudu-master_minloglevel"><code>--minloglevel</code></a></h3>
+<div class="paragraph">
+<p>Messages logged at a lower level than this don&#8217;t actually get logged anywhere</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_stderrthreshold"><a class="link" href="#kudu-master_stderrthreshold"><code>--stderrthreshold</code></a></h3>
+<div class="paragraph">
+<p>log messages at or above this level are copied to stderr in addition to logfiles.  This flag obsoletes --alsologtostderr.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>2</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_stop_logging_if_full_disk"><a class="link" href="#kudu-master_stop_logging_if_full_disk"><code>--stop_logging_if_full_disk</code></a></h3>
+<div class="paragraph">
+<p>Stop attempting to log to disk if the disk is full.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_symbolize_stacktrace"><a class="link" href="#kudu-master_symbolize_stacktrace"><code>--symbolize_stacktrace</code></a></h3>
+<div class="paragraph">
+<p>Symbolize the stack trace in the tombstone</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,runtime,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_v"><a class="link" href="#kudu-master_v"><code>--v</code></a></h3>
+<div class="paragraph">
+<p>Show all VLOG(m) messages for m &#8656; this. Overridable by --vmodule.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_vmodule"><a class="link" href="#kudu-master_vmodule"><code>--vmodule</code></a></h3>
+<div class="paragraph">
+<p>per-module verbose level. Argument is a comma-separated list of &lt;module name&gt;=&lt;log level&gt;. &lt;module name&gt; is a glob pattern, matched against the filename base (that is, name ignoring .cc/.h./-inl.h). &lt;log level&gt; overrides any value given by --v.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_evolving"><a class="link" href="#kudu-master_evolving">Evolving Flags</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Flags tagged <code>evolving</code> (or not tagged with a stability tag) are not yet
+considered final, and while they may be useful for tuning, they are subject to
+being changed or removed without notice.</p>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_cfile_verify_checksums"><a class="link" href="#kudu-master_cfile_verify_checksums"><code>--cfile_verify_checksums</code></a></h3>
+<div class="paragraph">
+<p>Verify the checksum for each block on read if one exists</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_cfile_default_block_size"><a class="link" href="#kudu-master_cfile_default_block_size"><code>--cfile_default_block_size</code></a></h3>
+<div class="paragraph">
+<p>The default block size to use in cfiles</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>262144</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_cfile_default_compression_codec"><a class="link" href="#kudu-master_cfile_default_compression_codec"><code>--cfile_default_compression_codec</code></a></h3>
+<div class="paragraph">
+<p>Default cfile block compression codec.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>none</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_cfile_write_checksums"><a class="link" href="#kudu-master_cfile_write_checksums"><code>--cfile_write_checksums</code></a></h3>
+<div class="paragraph">
+<p>Write CRC32 checksums for each block</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_consensus_rpc_timeout_ms"><a class="link" href="#kudu-master_consensus_rpc_timeout_ms"><code>--consensus_rpc_timeout_ms</code></a></h3>
+<div class="paragraph">
+<p>Timeout used for all consensus internal RPC communications.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_consensus_max_batch_size_bytes"><a class="link" href="#kudu-master_consensus_max_batch_size_bytes"><code>--consensus_max_batch_size_bytes</code></a></h3>
+<div class="paragraph">
+<p>The maximum per-tablet RPC batch size when updating peers.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1048576</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_follower_unavailable_considered_failed_sec"><a class="link" href="#kudu-master_follower_unavailable_considered_failed_sec"><code>--follower_unavailable_considered_failed_sec</code></a></h3>
+<div class="paragraph">
+<p>Seconds that a leader is unable to successfully heartbeat to a follower after which the follower is considered to be failed and evicted from the config.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>300</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_fs_wal_dir_reserved_bytes"><a class="link" href="#kudu-master_fs_wal_dir_reserved_bytes"><code>--fs_wal_dir_reserved_bytes</code></a></h3>
+<div class="paragraph">
+<p>Number of bytes to reserve on the log directory filesystem for non-Kudu usage. The default, which is represented by -1, is that 1% of the disk space on each disk will be reserved. Any other value specified represents the number of bytes reserved and must be greater than or equal to 0. Explicit percentages to reserve are not currently supported</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>-1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving,runtime</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_group_commit_queue_size_bytes"><a class="link" href="#kudu-master_group_commit_queue_size_bytes"><code>--group_commit_queue_size_bytes</code></a></h3>
+<div class="paragraph">
+<p>Maximum size of the group commit queue in bytes</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>4194304</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_log_min_segments_to_retain"><a class="link" href="#kudu-master_log_min_segments_to_retain"><code>--log_min_segments_to_retain</code></a></h3>
+<div class="paragraph">
+<p>The minimum number of past log segments to keep at all times, regardless of what is required for durability. Must be at least 1.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,runtime</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_global_log_cache_size_limit_mb"><a class="link" href="#kudu-master_global_log_cache_size_limit_mb"><code>--global_log_cache_size_limit_mb</code></a></h3>
+<div class="paragraph">
+<p>Server-wide version of 'log_cache_size_limit_mb'. The total memory used for caching log entries across all tablets is kept under this threshold.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1024</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_log_cache_size_limit_mb"><a class="link" href="#kudu-master_log_cache_size_limit_mb"><code>--log_cache_size_limit_mb</code></a></h3>
+<div class="paragraph">
+<p>The total per-tablet size of consensus entries which may be kept in memory. The log cache attempts to keep all entries which have not yet been replicated to all followers in memory, but if the total size of those entries exceeds this limit within an individual tablet, the oldest will be evicted.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>128</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_log_async_preallocate_segments"><a class="link" href="#kudu-master_log_async_preallocate_segments"><code>--log_async_preallocate_segments</code></a></h3>
+<div class="paragraph">
+<p>Whether the WAL segments preallocation should happen asynchronously</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_log_preallocate_segments"><a class="link" href="#kudu-master_log_preallocate_segments"><code>--log_preallocate_segments</code></a></h3>
+<div class="paragraph">
+<p>Whether the WAL should preallocate the entire segment before writing to it</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_log_segment_size_mb"><a class="link" href="#kudu-master_log_segment_size_mb"><code>--log_segment_size_mb</code></a></h3>
+<div class="paragraph">
+<p>The default size for log segments, in MB</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>8</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_evict_failed_followers"><a class="link" href="#kudu-master_evict_failed_followers"><code>--evict_failed_followers</code></a></h3>
+<div class="paragraph">
+<p>Whether to evict followers from the Raft config that have fallen too far behind the leader&#8217;s log to catch up normally or have been unreachable by the leader for longer than follower_unavailable_considered_failed_sec</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_leader_failure_max_missed_heartbeat_periods"><a class="link" href="#kudu-master_leader_failure_max_missed_heartbeat_periods"><code>--leader_failure_max_missed_heartbeat_periods</code></a></h3>
+<div class="paragraph">
+<p>Maximum heartbeat periods that the leader can fail to heartbeat in before we consider the leader to be failed. The total failure timeout in milliseconds is raft_heartbeat_interval_ms times leader_failure_max_missed_heartbeat_periods. The value passed to this flag may be fractional.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>3</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_raft_heartbeat_interval_ms"><a class="link" href="#kudu-master_raft_heartbeat_interval_ms"><code>--raft_heartbeat_interval_ms</code></a></h3>
+<div class="paragraph">
+<p>The heartbeat interval for Raft replication. The leader produces heartbeats to followers at this interval. The followers expect a heartbeat at this interval and consider a leader to have failed if it misses several in a row.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>500</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_safe_time_advancement_without_writes"><a class="link" href="#kudu-master_safe_time_advancement_without_writes"><code>--safe_time_advancement_without_writes</code></a></h3>
+<div class="paragraph">
+<p>Whether to enable the advancement of "safe" time in the absense of write operations</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_block_manager_max_open_files"><a class="link" href="#kudu-master_block_manager_max_open_files"><code>--block_manager_max_open_files</code></a></h3>
+<div class="paragraph">
+<p>Maximum number of open file descriptors to be used for data blocks. If -1, Kudu will use 40% of its resource limit as per getrlimit(). This is a soft limit. It is an error to use a value of 0.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>-1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_fs_data_dirs_full_disk_cache_seconds"><a class="link" href="#kudu-master_fs_data_dirs_full_disk_cache_seconds"><code>--fs_data_dirs_full_disk_cache_seconds</code></a></h3>
+<div class="paragraph">
+<p>Number of seconds we cache the full-disk status in the block manager. During this time, writes to the corresponding root path will not be attempted.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>30</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_fs_data_dirs_reserved_bytes"><a class="link" href="#kudu-master_fs_data_dirs_reserved_bytes"><code>--fs_data_dirs_reserved_bytes</code></a></h3>
+<div class="paragraph">
+<p>Number of bytes to reserve on each data directory filesystem for non-Kudu usage. The default, which is represented by -1, is that 1% of the disk space on each disk will be reserved. Any other value specified represents the number of bytes reserved and must be greater than or equal to 0. Explicit percentages to reserve are not currently supported</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>-1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving,runtime</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_block_manager"><a class="link" href="#kudu-master_block_manager"><code>--block_manager</code></a></h3>
+<div class="paragraph">
+<p>Which block manager to use for storage. Valid options are 'file' and 'log'.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>log</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_log_container_excess_space_before_cleanup_fraction"><a class="link" href="#kudu-master_log_container_excess_space_before_cleanup_fraction"><code>--log_container_excess_space_before_cleanup_fraction</code></a></h3>
+<div class="paragraph">
+<p>Additional fraction of a log container&#8217;s calculated size that must be consumed on disk before the container is considered to be inconsistent and subject to excess space cleanup at block manager startup.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0.10000000000000001</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_log_container_max_blocks"><a class="link" href="#kudu-master_log_container_max_blocks"><code>--log_container_max_blocks</code></a></h3>
+<div class="paragraph">
+<p>Maximum number of blocks (soft) of a log container. Use 0 for no limit. Use -1 for no limit except in the case of a kernel bug with hole punching on ext4 (see KUDU-1508 for details).</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>-1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_log_container_max_size"><a class="link" href="#kudu-master_log_container_max_size"><code>--log_container_max_size</code></a></h3>
+<div class="paragraph">
+<p>Maximum size (soft) of a log container</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">uint64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10737418240</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_log_container_preallocate_bytes"><a class="link" href="#kudu-master_log_container_preallocate_bytes"><code>--log_container_preallocate_bytes</code></a></h3>
+<div class="paragraph">
+<p>Number of bytes to preallocate in a log container when creating new blocks. Set to 0 to disable preallocation</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">uint64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>33554432</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_catalog_manager_delete_orphaned_tablets"><a class="link" href="#kudu-master_catalog_manager_delete_orphaned_tablets"><code>--catalog_manager_delete_orphaned_tablets</code></a></h3>
+<div class="paragraph">
+<p>Whether the master should delete tablets reported by tablet servers for which there are no corresponding records in the master&#8217;s metadata. Use this option with care; it may cause permanent tablet data loss under specific (and rare) cases of master failures!</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_default_num_replicas"><a class="link" href="#kudu-master_default_num_replicas"><code>--default_num_replicas</code></a></h3>
+<div class="paragraph">
+<p>Default number of replicas for tables that do not have the num_replicas set.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>3</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_master_ts_rpc_timeout_ms"><a class="link" href="#kudu-master_master_ts_rpc_timeout_ms"><code>--master_ts_rpc_timeout_ms</code></a></h3>
+<div class="paragraph">
+<p>Timeout used for the master&#8594;TS async rpc calls.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>30000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_max_create_tablets_per_ts"><a class="link" href="#kudu-master_max_create_tablets_per_ts"><code>--max_create_tablets_per_ts</code></a></h3>
+<div class="paragraph">
+<p>The number of tablets per TS that can be requested for a new table.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>20</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_table_locations_ttl_ms"><a class="link" href="#kudu-master_table_locations_ttl_ms"><code>--table_locations_ttl_ms</code></a></h3>
+<div class="paragraph">
+<p>Maximum time in milliseconds which clients may cache table locations. New range partitions may not be visible to existing client instances until after waiting for the ttl period.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>300000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_tablet_creation_timeout_ms"><a class="link" href="#kudu-master_tablet_creation_timeout_ms"><code>--tablet_creation_timeout_ms</code></a></h3>
+<div class="paragraph">
+<p>Timeout used by the master when attempting to create tablet replicas during table creation.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>30000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_unresponsive_ts_rpc_timeout_ms"><a class="link" href="#kudu-master_unresponsive_ts_rpc_timeout_ms"><code>--unresponsive_ts_rpc_timeout_ms</code></a></h3>
+<div class="paragraph">
+<p>After this amount of time, the master will stop attempting to contact a tablet server in order to perform operations such as deleting a tablet.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>3600000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_tserver_unresponsive_timeout_ms"><a class="link" href="#kudu-master_tserver_unresponsive_timeout_ms"><code>--tserver_unresponsive_timeout_ms</code></a></h3>
+<div class="paragraph">
+<p>The period of time that a Master can go without receiving a heartbeat from a tablet server before considering it unresponsive. Unresponsive servers are not selected when assigning replicas during table creation or re-replication.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>60000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_rpc_acceptor_listen_backlog"><a class="link" href="#kudu-master_rpc_acceptor_listen_backlog"><code>--rpc_acceptor_listen_backlog</code></a></h3>
+<div class="paragraph">
+<p>Socket backlog parameter used when listening for RPC connections. This defines the maximum length to which the queue of pending TCP connections inbound to the RPC server may grow. If a connection request arrives when the queue is full, the client may receive an error. Higher values may help the server ride over bursts of new inbound connection requests.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>128</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_rpc_authentication"><a class="link" href="#kudu-master_rpc_authentication"><code>--rpc_authentication</code></a></h3>
+<div class="paragraph">
+<p>Whether to require RPC connections to authenticate. Must be one of 'disabled', 'optional', or 'required'. If 'optional', authentication will be used when the remote end supports it. If 'required', connections which are not able to authenticate (because the remote end lacks support) are rejected. Secure clusters should use 'required'.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>optional</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_rpc_default_keepalive_time_ms"><a class="link" href="#kudu-master_rpc_default_keepalive_time_ms"><code>--rpc_default_keepalive_time_ms</code></a></h3>
+<div class="paragraph">
+<p>If an RPC connection from a client is idle for this amount of time, the server will disconnect the client.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>65000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_rpc_encryption"><a class="link" href="#kudu-master_rpc_encryption"><code>--rpc_encryption</code></a></h3>
+<div class="paragraph">
+<p>Whether to require RPC connections to be encrypted. Must be one of 'disabled', 'optional', or 'required'. If 'optional', encryption will be used when the remote end supports it. If 'required', connections which are not able to use encryption (because the remote end lacks support) are rejected. If 'disabled', encryption will not be used, and RPC authentication (--rpc_authentication) must also be disabled as well. Secure clusters should use 'required'.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>optional</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_rpc_encrypt_loopback_connections"><a class="link" href="#kudu-master_rpc_encrypt_loopback_connections"><code>--rpc_encrypt_loopback_connections</code></a></h3>
+<div class="paragraph">
+<p>Whether to encrypt data transfer on RPC connections that stay within a single host. Encryption here is likely to offer no additional security benefit since only a local 'root' user could intercept the traffic, and wire encryption does not suitably protect against such an attacker.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_rpc_callback_max_cycles"><a class="link" href="#kudu-master_rpc_callback_max_cycles"><code>--rpc_callback_max_cycles</code></a></h3>
+<div class="paragraph">
+<p>The maximum number of cycles for which an RPC callback should be allowed to run without emitting a warning. (Advanced debugging option)</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>100000000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_rpc_negotiation_timeout_ms"><a class="link" href="#kudu-master_rpc_negotiation_timeout_ms"><code>--rpc_negotiation_timeout_ms</code></a></h3>
+<div class="paragraph">
+<p>Timeout for negotiating an RPC connection.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>3000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_remember_clients_ttl_ms"><a class="link" href="#kudu-master_remember_clients_ttl_ms"><code>--remember_clients_ttl_ms</code></a></h3>
+<div class="paragraph">
+<p>Maximum amount of time, in milliseconds, the server "remembers" a client for the purpose of caching its responses. After this period without hearing from it, the client is no longer remembered and the memory occupied by its responses is reclaimed. Retries of requests older than 'remember_clients_ttl_ms' are treated as new ones.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>3600000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_remember_responses_ttl_ms"><a class="link" href="#kudu-master_remember_responses_ttl_ms"><code>--remember_responses_ttl_ms</code></a></h3>
+<div class="paragraph">
+<p>Maximum amount of time, in milliseconds, the server "remembers" a response to a specific request for a client. After this period has elapsed, the response may have been garbage collected and the client might get a response indicating the request is STALE.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>600000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_rpc_dump_all_traces"><a class="link" href="#kudu-master_rpc_dump_all_traces"><code>--rpc_dump_all_traces</code></a></h3>
+<div class="paragraph">
+<p>If true, dump all RPC traces at INFO level</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_trusted_subnets"><a class="link" href="#kudu-master_trusted_subnets"><code>--trusted_subnets</code></a></h3>
+<div class="paragraph">
+<p>A trusted subnet whitelist. If set explicitly, all unauthenticated or unencrypted connections are prohibited except the ones from the specified address blocks. Otherwise, private network (127.0.0.0/8, etc.) and local subnets of all local network interfaces will be used. Set it to '0.0.0.0/0' to allow unauthenticated/unencrypted connections from all remote IP addresses. However, if network access is not otherwise restricted by a firewall, malicious users may be able to gain unauthorized access.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>127.0.0.0/8,10.0.0.0/8,172.16.0.0/12,192.168.0.0/16,169.254.0.0/16</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_rpc_max_message_size"><a class="link" href="#kudu-master_rpc_max_message_size"><code>--rpc_max_message_size</code></a></h3>
+<div class="paragraph">
+<p>The maximum size of a message that any RPC that the server will accept. Must be at least 1MB.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>52428800</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_rpc_tls_ciphers"><a class="link" href="#kudu-master_rpc_tls_ciphers"><code>--rpc_tls_ciphers</code></a></h3>
+<div class="paragraph">
+<p>The cipher suite preferences to use for TLS-secured RPC connections. Uses the OpenSSL cipher preference list format. See man (1) ciphers for more information.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256AES256-GCM-SHA384:AES128-GCM-SHA256:AES256-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_rpc_tls_min_protocol"><a class="link" href="#kudu-master_rpc_tls_min_protocol"><code>--rpc_tls_min_protocol</code></a></h3>
+<div class="paragraph">
+<p>The minimum protocol version to allow when for securing RPC connections with TLS. May be one of 'TLSv1', 'TLSv1.1', or 'TLSv1.2'.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>TLSv1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_web_log_bytes"><a class="link" href="#kudu-master_web_log_bytes"><code>--web_log_bytes</code></a></h3>
+<div class="paragraph">
+<p>The maximum number of bytes to display on the debug webserver&#8217;s log page</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1048576</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_max_clock_sync_error_usec"><a class="link" href="#kudu-master_max_clock_sync_error_usec"><code>--max_clock_sync_error_usec</code></a></h3>
+<div class="paragraph">
+<p>Maximum allowed clock synchronization error as reported by NTP before the server will abort.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10000000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_rpc_advertised_addresses"><a class="link" href="#kudu-master_rpc_advertised_addresses"><code>--rpc_advertised_addresses</code></a></h3>
+<div class="paragraph">
+<p>Comma-separated list of addresses to advertise externally for RPC connections. Ephemeral ports (i.e. port 0) are not allowed. This should be configured when the locally bound RPC addresses specified in --rpc_bind_addresses are not externally resolvable, for example, if Kudu is deployed in a container.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_rpc_num_acceptors_per_address"><a class="link" href="#kudu-master_rpc_num_acceptors_per_address"><code>--rpc_num_acceptors_per_address</code></a></h3>
+<div class="paragraph">
+<p>Number of RPC acceptor threads for each bound address</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_rpc_num_service_threads"><a class="link" href="#kudu-master_rpc_num_service_threads"><code>--rpc_num_service_threads</code></a></h3>
+<div class="paragraph">
+<p>Number of RPC worker threads to run</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_rpc_service_queue_length"><a class="link" href="#kudu-master_rpc_service_queue_length"><code>--rpc_service_queue_length</code></a></h3>
+<div class="paragraph">
+<p>Default length of queue for incoming RPC requests</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>50</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_max_negotiation_threads"><a class="link" href="#kudu-master_max_negotiation_threads"><code>--max_negotiation_threads</code></a></h3>
+<div class="paragraph">
+<p>Maximum number of connection negotiation threads.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>50</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_min_negotiation_threads"><a class="link" href="#kudu-master_min_negotiation_threads"><code>--min_negotiation_threads</code></a></h3>
+<div class="paragraph">
+<p>Minimum number of connection negotiation threads.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_num_reactor_threads"><a class="link" href="#kudu-master_num_reactor_threads"><code>--num_reactor_threads</code></a></h3>
+<div class="paragraph">
+<p>Number of libev reactor threads to start.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>4</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_webserver_enabled"><a class="link" href="#kudu-master_webserver_enabled"><code>--webserver_enabled</code></a></h3>
+<div class="paragraph">
+<p>Whether to enable the web server on this daemon. NOTE: disabling the web server is also likely to prevent monitoring systems from properly capturing metrics.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_metrics_log_interval_ms"><a class="link" href="#kudu-master_metrics_log_interval_ms"><code>--metrics_log_interval_ms</code></a></h3>
+<div class="paragraph">
+<p>Interval (in milliseconds) at which the server will dump its metrics to a local log file. The log files are located in the same directory as specified by the -log_dir flag. If this is not a positive value, then metrics logging will be disabled.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_webserver_max_post_length_bytes"><a class="link" href="#kudu-master_webserver_max_post_length_bytes"><code>--webserver_max_post_length_bytes</code></a></h3>
+<div class="paragraph">
+<p>The maximum length of a POST request that will be accepted by the embedded web server.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1048576</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_webserver_x_frame_options"><a class="link" href="#kudu-master_webserver_x_frame_options"><code>--webserver_x_frame_options</code></a></h3>
+<div class="paragraph">
+<p>The webserver will add an 'X-Frame-Options' HTTP header with this value to all responses. This can help prevent clickjacking attacks.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>DENY</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_webserver_advertised_addresses"><a class="link" href="#kudu-master_webserver_advertised_addresses"><code>--webserver_advertised_addresses</code></a></h3>
+<div class="paragraph">
+<p>Comma-separated list of addresses to advertise externally for HTTP(S) connections. Ephemeral ports (i.e. port 0) are not allowed. This should be configured when the locally bound webserver address specified in --webserver_interface and --webserver_port are not externally resolvable, for example, if Kudu is deployed in a container.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_webserver_authentication_domain"><a class="link" href="#kudu-master_webserver_authentication_domain"><code>--webserver_authentication_domain</code></a></h3>
+<div class="paragraph">
+<p>Domain used for debug webserver authentication</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_webserver_doc_root"><a class="link" href="#kudu-master_webserver_doc_root"><code>--webserver_doc_root</code></a></h3>
+<div class="paragraph">
+<p>Files under &lt;webserver_doc_root&gt; are accessible via the debug webserver. Defaults to $KUDU_HOME/www, or if $KUDU_HOME is not set, disables the document root</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_webserver_enable_doc_root"><a class="link" href="#kudu-master_webserver_enable_doc_root"><code>--webserver_enable_doc_root</code></a></h3>
+<div class="paragraph">
+<p>If true, webserver may serve static files from the webserver_doc_root</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_webserver_interface"><a class="link" href="#kudu-master_webserver_interface"><code>--webserver_interface</code></a></h3>
+<div class="paragraph">
+<p>Interface to start debug webserver on. If blank, webserver binds to 0.0.0.0</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_webserver_num_worker_threads"><a class="link" href="#kudu-master_webserver_num_worker_threads"><code>--webserver_num_worker_threads</code></a></h3>
+<div class="paragraph">
+<p>Maximum number of threads to start for handling web server requests</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>50</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_webserver_password_file"><a class="link" href="#kudu-master_webserver_password_file"><code>--webserver_password_file</code></a></h3>
+<div class="paragraph">
+<p>(Optional) Location of .htpasswd file containing user names and hashed passwords for debug webserver authentication</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_enable_undo_delta_block_gc"><a class="link" href="#kudu-master_enable_undo_delta_block_gc"><code>--enable_undo_delta_block_gc</code></a></h3>
+<div class="paragraph">
+<p>Whether to enable undo delta block garbage collection. This only affects the undo delta block deletion background task, and doesn&#8217;t control whether compactions delete ancient history. To change what is considered ancient history use --tablet_history_max_age_sec</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_tablet_bloom_block_size"><a class="link" href="#kudu-master_tablet_bloom_block_size"><code>--tablet_bloom_block_size</code></a></h3>
+<div class="paragraph">
+<p>Block size of the bloom filters used for tablet keys.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>4096</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_tablet_bloom_target_fp_rate"><a class="link" href="#kudu-master_tablet_bloom_target_fp_rate"><code>--tablet_bloom_target_fp_rate</code></a></h3>
+<div class="paragraph">
+<p>Target false-positive rate (between 0 and 1) to size tablet key bloom filters. A lower false positive rate may reduce the number of disk seeks required in heavy insert workloads, at the expense of more space and RAM required for bloom filters.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>9.9999997473787516e-05</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_tablet_history_max_age_sec"><a class="link" href="#kudu-master_tablet_history_max_age_sec"><code>--tablet_history_max_age_sec</code></a></h3>
+<div class="paragraph">
+<p>Number of seconds to retain tablet history. Reads initiated at a snapshot that is older than this age will be rejected. To disable history removal, set to -1.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>900</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_undo_delta_block_gc_init_budget_millis"><a class="link" href="#kudu-master_undo_delta_block_gc_init_budget_millis"><code>--undo_delta_block_gc_init_budget_millis</code></a></h3>
+<div class="paragraph">
+<p>The maximum number of milliseconds we will spend initializing UNDO delta blocks per invocation of UndoDeltaBlockGCOp. Existing delta blocks must be initialized once per process startup to determine when they can be deleted.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,evolving</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_tablet_transaction_memory_limit_mb"><a class="link" href="#kudu-master_tablet_transaction_memory_limit_mb"><code>--tablet_transaction_memory_limit_mb</code></a></h3>
+<div class="paragraph">
+<p>Maximum amount of memory that may be consumed by all in-flight transactions belonging to a particular tablet. When this limit is reached, new transactions will be rejected and clients will be forced to retry them. If -1, transaction memory tracking is disabled.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>64</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_heartbeat_interval_ms"><a class="link" href="#kudu-master_heartbeat_interval_ms"><code>--heartbeat_interval_ms</code></a></h3>
+<div class="paragraph">
+<p>Interval at which the TS heartbeats to the master.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_heartbeat_max_failures_before_backoff"><a class="link" href="#kudu-master_heartbeat_max_failures_before_backoff"><code>--heartbeat_max_failures_before_backoff</code></a></h3>
+<div class="paragraph">
+<p>Maximum number of consecutive heartbeat failures until the Tablet Server backs off to the normal heartbeat interval, rather than retrying.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>3</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_heartbeat_rpc_timeout_ms"><a class="link" href="#kudu-master_heartbeat_rpc_timeout_ms"><code>--heartbeat_rpc_timeout_ms</code></a></h3>
+<div class="paragraph">
+<p>Timeout used for the TS&#8594;Master heartbeat RPCs.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>15000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_scanner_ttl_ms"><a class="link" href="#kudu-master_scanner_ttl_ms"><code>--scanner_ttl_ms</code></a></h3>
+<div class="paragraph">
+<p>Number of milliseconds of inactivity allowed for a scannerbefore it may be expired</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>60000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_scanner_batch_size_rows"><a class="link" href="#kudu-master_scanner_batch_size_rows"><code>--scanner_batch_size_rows</code></a></h3>
+<div class="paragraph">
+<p>The number of rows to batch for servicing scan requests.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>100</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_scanner_default_batch_size_bytes"><a class="link" href="#kudu-master_scanner_default_batch_size_bytes"><code>--scanner_default_batch_size_bytes</code></a></h3>
+<div class="paragraph">
+<p>The default size for batches of scan results</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1048576</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_scanner_max_batch_size_bytes"><a class="link" href="#kudu-master_scanner_max_batch_size_bytes"><code>--scanner_max_batch_size_bytes</code></a></h3>
+<div class="paragraph">
+<p>The maximum batch size that a client may request for scan results.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>8388608</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_scanner_max_wait_ms"><a class="link" href="#kudu-master_scanner_max_wait_ms"><code>--scanner_max_wait_ms</code></a></h3>
+<div class="paragraph">
+<p>The maximum amount of time (in milliseconds) we&#8217;ll hang a scanner thread waiting for safe time to advance or transactions to commit, even if its deadline allows waiting longer.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_num_tablets_to_copy_simultaneously"><a class="link" href="#kudu-master_num_tablets_to_copy_simultaneously"><code>--num_tablets_to_copy_simultaneously</code></a></h3>
+<div class="paragraph">
+<p>Number of threads available to copy tablets from remote servers.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_num_tablets_to_open_simultaneously"><a class="link" href="#kudu-master_num_tablets_to_open_simultaneously"><code>--num_tablets_to_open_simultaneously</code></a></h3>
+<div class="paragraph">
+<p>Number of threads available to open tablets during startup. If this is set to 0 (the default), then the number of bootstrap threads will be set based on the number of data directories. If the data directories are on some very fast storage device such as SSD or a RAID array, it may make sense to manually tune this.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_env_use_fsync"><a class="link" href="#kudu-master_env_use_fsync"><code>--env_use_fsync</code></a></h3>
+<div class="paragraph">
+<p>Use fsync(2) instead of fdatasync(2) for synchronizing dirty data to disk.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_suicide_on_eio"><a class="link" href="#kudu-master_suicide_on_eio"><code>--suicide_on_eio</code></a></h3>
+<div class="paragraph">
+<p>Kill the process if an I/O operation results in EIO</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_file_cache_expiry_period_ms"><a class="link" href="#kudu-master_file_cache_expiry_period_ms"><code>--file_cache_expiry_period_ms</code></a></h3>
+<div class="paragraph">
+<p>Period of time (in ms) between removing expired file cache descriptors</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>60000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_disable_core_dumps"><a class="link" href="#kudu-master_disable_core_dumps"><code>--disable_core_dumps</code></a></h3>
+<div class="paragraph">
+<p>Disable core dumps when this process crashes.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_redact"><a class="link" href="#kudu-master_redact"><code>--redact</code></a></h3>
+<div class="paragraph">
+<p>Comma-separated list of redactions. Supported options are 'flag', 'log', 'all', and 'none'. If 'flag' is specified, configuration flags which may include sensitive data will be redacted whenever server configuration is emitted. If 'log' is specified, row data will be redacted from log and error messages. If 'all' is specified, all of above will be redacted. If 'none' is specified, no redaction will occur.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>all</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_umask"><a class="link" href="#kudu-master_umask"><code>--umask</code></a></h3>
+<div class="paragraph">
+<p>The umask that will be used when creating files and directories. Permissions of top-level data directories will also be modified at start-up to conform to the given umask. Changing this value may enable unauthorized local users to read or modify data stored by Kudu.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>077</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_metrics_retirement_age_ms"><a class="link" href="#kudu-master_metrics_retirement_age_ms"><code>--metrics_retirement_age_ms</code></a></h3>
+<div class="paragraph">
+<p>The minimum number of milliseconds a metric will be kept for after it is no longer active. (Advanced option)</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>120000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,runtime</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_enable_minidumps"><a class="link" href="#kudu-master_enable_minidumps"><code>--enable_minidumps</code></a></h3>
+<div class="paragraph">
+<p>Whether to enable minidump generation upon process crash or SIGUSR1. Currently only supported on Linux systems.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_max_minidumps"><a class="link" href="#kudu-master_max_minidumps"><code>--max_minidumps</code></a></h3>
+<div class="paragraph">
+<p>Maximum number of minidump files to keep per daemon. Older files are removed first. Set to 0 to keep all minidump files.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>9</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_minidump_path"><a class="link" href="#kudu-master_minidump_path"><code>--minidump_path</code></a></h3>
+<div class="paragraph">
+<p>Directory to write minidump files to. This can be either an absolute path or a path relative to --log_dir. Each daemon will create an additional sub-directory to prevent naming conflicts and to make it easier to identify a crashing daemon. Minidump files contain crash-related information in a compressed format. Minidumps will be written when a daemon exits unexpectedly, for example on an unhandled exception or signal, or when a SIGUSR1 signal is sent to the process. Cannot be set to an empty value.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>minidumps</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_minidump_size_limit_hint_kb"><a class="link" href="#kudu-master_minidump_size_limit_hint_kb"><code>--minidump_size_limit_hint_kb</code></a></h3>
+<div class="paragraph">
+<p>Size limit hint for minidump files in KB. If a minidump exceeds this value, then breakpad will reduce the stack memory it collects for each thread from 8KB to 2KB. However it will always include the full stack memory for the first 20 threads, including the thread that crashed.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>20480</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_memory_limit_soft_percentage"><a class="link" href="#kudu-master_memory_limit_soft_percentage"><code>--memory_limit_soft_percentage</code></a></h3>
+<div class="paragraph">
+<p>Percentage of the hard memory limit that this daemon may consume before memory throttling of writes begins. The greater the excess, the higher the chance of throttling. In general, a lower soft limit leads to smoother write latencies but decreased throughput, and vice versa for a higher soft limit.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>80</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_memory_limit_warn_threshold_percentage"><a class="link" href="#kudu-master_memory_limit_warn_threshold_percentage"><code>--memory_limit_warn_threshold_percentage</code></a></h3>
+<div class="paragraph">
+<p>Percentage of the hard memory limit that this daemon may consume before WARNING level messages are periodically logged.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>98</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_memory_pressure_percentage"><a class="link" href="#kudu-master_memory_pressure_percentage"><code>--memory_pressure_percentage</code></a></h3>
+<div class="paragraph">
+<p>Percentage of the hard memory limit that this daemon may consume before flushing of in-memory data becomes prioritized.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>60</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_tcmalloc_max_free_bytes_percentage"><a class="link" href="#kudu-master_tcmalloc_max_free_bytes_percentage"><code>--tcmalloc_max_free_bytes_percentage</code></a></h3>
+<div class="paragraph">
+<p>Maximum percentage of the RSS that tcmalloc is allowed to use for reserved but unallocated memory.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_drop_log_memory"><a class="link" href="#kudu-master_drop_log_memory"><code>--drop_log_memory</code></a></h3>
+<div class="paragraph">
+<p>Drop in-memory buffers of log contents. Logs can grow very quickly and they are rarely read before they need to be evicted from memory. Instead, drop them from memory as soon as they are flushed to disk.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_log_backtrace_at"><a class="link" href="#kudu-master_log_backtrace_at"><code>--log_backtrace_at</code></a></h3>
+<div class="paragraph">
+<p>Emit a backtrace when logging at file:linenum.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_logbuflevel"><a class="link" href="#kudu-master_logbuflevel"><code>--logbuflevel</code></a></h3>
+<div class="paragraph">
+<p>Buffer log messages logged at this level or lower (-1 means don&#8217;t buffer; 0 means buffer INFO only; &#8230;&#8203;)</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_logbufsecs"><a class="link" href="#kudu-master_logbufsecs"><code>--logbufsecs</code></a></h3>
+<div class="paragraph">
+<p>Buffer log messages for at most this many seconds</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>5</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-master_logfile_mode"><a class="link" href="#kudu-master_logfile_mode"><code>--logfile_mode</code></a></h3>
+<div class="paragraph">
+<p>Log file mode/permissions.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>436</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+<hr>
+</div>
+</div>
+</div>
+    </div>
+    <div class="col-md-3">
+
+  <div id="toc" data-spy="affix" data-offset-top="70">
+  <ul>
+
+      <li>
+
+          <a href="index.html">Introducing Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="release_notes.html">Kudu Release Notes</a> 
+      </li> 
+      <li>
+
+          <a href="quickstart.html">Getting Started with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="installation.html">Installation Guide</a> 
+      </li> 
+      <li>
+
+          <a href="configuration.html">Configuring Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="kudu_impala_integration.html">Using Impala with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="administration.html">Administering Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="troubleshooting.html">Troubleshooting Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="developing.html">Developing Applications with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="schema_design.html">Kudu Schema Design</a> 
+      </li> 
+      <li>
+
+          <a href="security.html">Kudu Security</a> 
+      </li> 
+      <li>
+
+          <a href="transaction_semantics.html">Kudu Transaction Semantics</a> 
+      </li> 
+      <li>
+
+          <a href="background_tasks.html">Background Maintenance Tasks</a> 
+      </li> 
+      <li>
+
+          <a href="configuration_reference.html">Kudu Configuration Reference</a> 
+      </li> 
+      <li>
+
+          <a href="command_line_tools_reference.html">Kudu Command Line Tools Reference</a> 
+      </li> 
+      <li>
+
+          <a href="known_issues.html">Known Issues and Limitations</a> 
+      </li> 
+      <li>
+
+          <a href="contributing.html">Contributing to Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="export_control.html">Export Control Notice</a> 
+      </li> 
+  </ul>
+  </div>
+    </div>
+  </div>
+</div>
+      <footer class="footer">
+        <p class="small">
+        Copyright &copy; 2016 The Apache Software Foundation.  Last updated 2017-06-13 10:50:35 PDT 
+        </p>
+      </footer>
+    </div>
+    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
+    <script>
+      // Try to detect touch-screen devices. Note: Many laptops have touch screens.
+      $(document).ready(function() {
+        if ("ontouchstart" in document.documentElement) {
+          $(document.documentElement).addClass("touch");
+        } else {
+          $(document.documentElement).addClass("no-touch");
+        }
+      });
+    </script>
+    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"
+            integrity="sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS"
+            crossorigin="anonymous"></script>
+    <script>
+      (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+      (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+      m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+      })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+
+      ga('create', 'UA-68448017-1', 'auto');
+      ga('send', 'pageview');
+    </script>
+    <script src="https://cdnjs.cloudflare.com/ajax/libs/anchor-js/3.1.0/anchor.js"></script>
+    <script>
+      anchors.options = {
+        placement: 'right',
+        visible: 'touch',
+      };
+      anchors.add();
+    </script>
+  </body>
+</html>
+
diff --git a/releases/1.4.0/docs/kudu-master_configuration_reference_unsupported.html b/releases/1.4.0/docs/kudu-master_configuration_reference_unsupported.html
new file mode 100644
index 0000000..6ff88b5
--- /dev/null
+++ b/releases/1.4.0/docs/kudu-master_configuration_reference_unsupported.html
@@ -0,0 +1,4114 @@
+<!DOCTYPE html>
+<html lang="en">
+  <head>
+    <meta charset="utf-8" />
+    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
+    <meta name="viewport" content="width=device-width, initial-scale=1" />
+    <!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
+    <meta name="description" content="A new open source Apache Hadoop ecosystem project, Apache Kudu completes Hadoop's storage layer to enable fast analytics on fast data" />
+    <meta name="author" content="Cloudera" />
+    <title>Apache Kudu - kudu-master Unsupported Flags</title>
+    <!-- Bootstrap core CSS -->
+    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css"
+          integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7"
+          crossorigin="anonymous">
+
+    <!-- Custom styles for this template -->
+    <link href="/css/kudu.css" rel="stylesheet"/>
+    <link href="/css/asciidoc.css" rel="stylesheet"/>
+    <link rel="shortcut icon" href="/img/logo-favicon.ico" />
+    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.6.1/css/font-awesome.min.css" />
+
+    
+
+    <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+        <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+        <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+        <![endif]-->
+  </head>
+  <body>
+    <div class="kudu-site container-fluid">
+      <!-- Static navbar -->
+        <nav class="navbar navbar-default">
+          <div class="container-fluid">
+            <div class="navbar-header">
+              <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
+                <span class="sr-only">Toggle navigation</span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+              </button>
+              
+              <a class="logo" href="/"><img
+                src="//d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_80px.png"
+                srcset="//d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_80px.png 1x, //d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_160px.png 2x"
+                alt="Apache Kudu"/></a>
+              
+            </div>
+            <div id="navbar" class="collapse navbar-collapse">
+              <ul class="nav navbar-nav navbar-right">
+                <li >
+                  <a href="/">Home</a>
+                </li>
+                <li >
+                  <a href="/overview.html">Overview</a>
+                </li>
+                <li class="active">
+                  <a href="/docs/">Documentation</a>
+                </li>
+                <li >
+                  <a href="/releases/">Download</a>
+                </li>
+                <li >
+                  <a href="/blog/">Blog</a>
+                </li>
+                <!-- NOTE: this dropdown menu does not appear on Mobile, so don't add anything here
+                     that doesn't also appear elsewhere on the site. -->
+                <li class="dropdown">
+                  <a href="/community.html" role="button" aria-haspopup="true" aria-expanded="false">Community <span class="caret"></span></a>
+                  <ul class="dropdown-menu">
+                    <li class="dropdown-header">GET IN TOUCH</li>
+                    <li><a class="icon email" href="/community.html">Mailing Lists</a></li>
+                    <li><a class="icon slack" href="https://getkudu-slack.herokuapp.com/">Slack Channel</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li><a href="/community.html#meetups-user-groups-and-conference-presentations">Events and Meetups</a></li>
+                    <li><a href="/committers.html">Project Committers</a></li>
+                    <!--<li><a href="/roadmap.html">Roadmap</a></li>-->
+                    <li><a href="/community.html#contributions">How to Contribute</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li class="dropdown-header">DEVELOPER RESOURCES</li>
+                    <li><a class="icon github" href="https://github.com/apache/incubator-kudu">GitHub</a></li>
+                    <li><a class="icon gerrit" href="http://gerrit.cloudera.org:8080/#/q/status:open+project:kudu">Gerrit Code Review</a></li>
+                    <li><a class="icon jira" href="https://issues.apache.org/jira/browse/KUDU">JIRA Issue Tracker</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li class="dropdown-header">SOCIAL MEDIA</li>
+                    <li><a class="icon twitter" href="https://twitter.com/ApacheKudu">Twitter</a></li>
+                  </ul>
+                </li>
+                <li >
+                  <a href="/faq.html">FAQ</a>
+                </li>
+              </ul><!-- /.nav -->
+            </div><!-- /#navbar -->
+          </div><!-- /.container-fluid -->
+        </nav>
+
+<!--
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
+
+
+<div class="container">
+  <div class="row">
+    <div class="col-md-9">
+
+<h1><code>kudu-master</code> Unsupported Flags</h1>
+      <div id="preamble">
+<div class="sectionbody">
+<div class="paragraph">
+<p>Flags not marked <code>stable</code> or <code>evolving</code> are considered experimental and are
+<strong>unsupported</strong>. They are included here for informational purposes only and are
+subject to being changed or removed without notice.</p>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_block_cache_type"><a class="link" href="#kudu-master_block_cache_type"><code>--block_cache_type</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Which type of block cache to use for caching data. Valid choices are 'DRAM' or 'NVM'. DRAM, the default, caches data in regular memory. 'NVM' caches data in a memory-mapped file using the NVML library.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>DRAM</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_min_compression_ratio"><a class="link" href="#kudu-master_min_compression_ratio"><code>--min_compression_ratio</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>If a column compression codec is configured, but the codec is unable to achieve a compression ratio at least as good as the configured value, then the data will be written uncompressed. This will reduce CPU overhead on the read side at the expense of a small amount of extra space if the codec encounters portions of data that are not easily compressible.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0.90000000000000002</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_cfile_default_block_size"><a class="link" href="#kudu-master_cfile_default_block_size"><code>--cfile_default_block_size</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The default block size to use in cfiles</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>262144</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_cfile_default_compression_codec"><a class="link" href="#kudu-master_cfile_default_compression_codec"><code>--cfile_default_compression_codec</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Default cfile block compression codec.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>none</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_cfile_do_on_finish"><a class="link" href="#kudu-master_cfile_do_on_finish"><code>--cfile_do_on_finish</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>What to do to cfile blocks when writing is finished. Possible values are 'close', 'flush', or 'nothing'.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>flush</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_codegen_dump_functions"><a class="link" href="#kudu-master_codegen_dump_functions"><code>--codegen_dump_functions</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Whether to print the LLVM IR for generated functions</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_codegen_dump_mc"><a class="link" href="#kudu-master_codegen_dump_mc"><code>--codegen_dump_mc</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Whether to dump the disassembly of the machine code for generated functions.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_codegen_cache_capacity"><a class="link" href="#kudu-master_codegen_cache_capacity"><code>--codegen_cache_capacity</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Number of entries which may be stored in the code generation cache.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>100</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_codegen_time_compilation"><a class="link" href="#kudu-master_codegen_time_compilation"><code>--codegen_time_compilation</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Whether to print time that each code generation request took.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_consensus_rpc_timeout_ms"><a class="link" href="#kudu-master_consensus_rpc_timeout_ms"><code>--consensus_rpc_timeout_ms</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Timeout used for all consensus internal RPC communications.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_consensus_max_batch_size_bytes"><a class="link" href="#kudu-master_consensus_max_batch_size_bytes"><code>--consensus_max_batch_size_bytes</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The maximum per-tablet RPC batch size when updating peers.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1048576</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_follower_unavailable_considered_failed_sec"><a class="link" href="#kudu-master_follower_unavailable_considered_failed_sec"><code>--follower_unavailable_considered_failed_sec</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Seconds that a leader is unable to successfully heartbeat to a follower after which the follower is considered to be failed and evicted from the config.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>300</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_group_commit_queue_size_bytes"><a class="link" href="#kudu-master_group_commit_queue_size_bytes"><code>--group_commit_queue_size_bytes</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Maximum size of the group commit queue in bytes</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>4194304</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_log_compression_codec"><a class="link" href="#kudu-master_log_compression_codec"><code>--log_compression_codec</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Codec to use for compressing WAL segments.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>LZ4</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_log_max_segments_to_retain"><a class="link" href="#kudu-master_log_max_segments_to_retain"><code>--log_max_segments_to_retain</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The maximum number of past log segments to keep at all times for the purposes of catching up other peers.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>80</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental,advanced,runtime</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_log_min_segments_to_retain"><a class="link" href="#kudu-master_log_min_segments_to_retain"><code>--log_min_segments_to_retain</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The minimum number of past log segments to keep at all times, regardless of what is required for durability. Must be at least 1.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,runtime</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_global_log_cache_size_limit_mb"><a class="link" href="#kudu-master_global_log_cache_size_limit_mb"><code>--global_log_cache_size_limit_mb</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Server-wide version of 'log_cache_size_limit_mb'. The total memory used for caching log entries across all tablets is kept under this threshold.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1024</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_log_cache_size_limit_mb"><a class="link" href="#kudu-master_log_cache_size_limit_mb"><code>--log_cache_size_limit_mb</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The total per-tablet size of consensus entries which may be kept in memory. The log cache attempts to keep all entries which have not yet been replicated to all followers in memory, but if the total size of those entries exceeds this limit within an individual tablet, the oldest will be evicted.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>128</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_log_async_preallocate_segments"><a class="link" href="#kudu-master_log_async_preallocate_segments"><code>--log_async_preallocate_segments</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Whether the WAL segments preallocation should happen asynchronously</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_log_preallocate_segments"><a class="link" href="#kudu-master_log_preallocate_segments"><code>--log_preallocate_segments</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Whether the WAL should preallocate the entire segment before writing to it</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_log_segment_size_mb"><a class="link" href="#kudu-master_log_segment_size_mb"><code>--log_segment_size_mb</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The default size for log segments, in MB</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>8</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_evict_failed_followers"><a class="link" href="#kudu-master_evict_failed_followers"><code>--evict_failed_followers</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Whether to evict followers from the Raft config that have fallen too far behind the leader&#8217;s log to catch up normally or have been unreachable by the leader for longer than follower_unavailable_considered_failed_sec</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_leader_failure_exp_backoff_max_delta_ms"><a class="link" href="#kudu-master_leader_failure_exp_backoff_max_delta_ms"><code>--leader_failure_exp_backoff_max_delta_ms</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Maximum time to sleep in between leader election retries, in addition to the regular timeout. When leader election fails the interval in between retries increases exponentially, up to this value.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>20000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_leader_failure_max_missed_heartbeat_periods"><a class="link" href="#kudu-master_leader_failure_max_missed_heartbeat_periods"><code>--leader_failure_max_missed_heartbeat_periods</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Maximum heartbeat periods that the leader can fail to heartbeat in before we consider the leader to be failed. The total failure timeout in milliseconds is raft_heartbeat_interval_ms times leader_failure_max_missed_heartbeat_periods. The value passed to this flag may be fractional.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>3</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_leader_failure_monitor_check_mean_ms"><a class="link" href="#kudu-master_leader_failure_monitor_check_mean_ms"><code>--leader_failure_monitor_check_mean_ms</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The mean failure-checking interval of the randomized failure monitor. If this is configured to -1 (the default), uses the value of 'raft_heartbeat_interval_ms'.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>-1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_leader_failure_monitor_check_stddev_ms"><a class="link" href="#kudu-master_leader_failure_monitor_check_stddev_ms"><code>--leader_failure_monitor_check_stddev_ms</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The standard deviation of the failure-checking interval of the randomized failure monitor. If this is configured to -1 (the default), this is set to half of the mean check interval.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>-1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_raft_enable_pre_election"><a class="link" href="#kudu-master_raft_enable_pre_election"><code>--raft_enable_pre_election</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>When enabled, candidates will call a pre-election before running a real leader election.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_raft_heartbeat_interval_ms"><a class="link" href="#kudu-master_raft_heartbeat_interval_ms"><code>--raft_heartbeat_interval_ms</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The heartbeat interval for Raft replication. The leader produces heartbeats to followers at this interval. The followers expect a heartbeat at this interval and consider a leader to have failed if it misses several in a row.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>500</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_missed_heartbeats_before_rejecting_snapshot_scans"><a class="link" href="#kudu-master_missed_heartbeats_before_rejecting_snapshot_scans"><code>--missed_heartbeats_before_rejecting_snapshot_scans</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The maximum raft heartbeat periods since the tablet has seen safe time advanced before refusing scans at snapshots that aren&#8217;t yet safe and forcing clients to try again.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1.5</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_safe_time_advancement_without_writes"><a class="link" href="#kudu-master_safe_time_advancement_without_writes"><code>--safe_time_advancement_without_writes</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Whether to enable the advancement of "safe" time in the absense of write operations</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_safe_time_max_lag_ms"><a class="link" href="#kudu-master_safe_time_max_lag_ms"><code>--safe_time_max_lag_ms</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The maximum amount of time we allow safe time to lag behind the requested timestampbefore forcing the client to retry, in milliseconds.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>30000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_block_coalesce_close"><a class="link" href="#kudu-master_block_coalesce_close"><code>--block_coalesce_close</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Coalesce synchronization of data during CloseBlocks()</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_block_manager"><a class="link" href="#kudu-master_block_manager"><code>--block_manager</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Which block manager to use for storage. Valid options are 'file' and 'log'.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>log</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_log_container_excess_space_before_cleanup_fraction"><a class="link" href="#kudu-master_log_container_excess_space_before_cleanup_fraction"><code>--log_container_excess_space_before_cleanup_fraction</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Additional fraction of a log container&#8217;s calculated size that must be consumed on disk before the container is considered to be inconsistent and subject to excess space cleanup at block manager startup.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0.10000000000000001</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_log_container_live_metadata_before_compact_ratio"><a class="link" href="#kudu-master_log_container_live_metadata_before_compact_ratio"><code>--log_container_live_metadata_before_compact_ratio</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Desired ratio of live block metadata in log containers. If a container&#8217;s live to total block ratio dips below this value, the container&#8217;s metadata file will be compacted at startup.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0.5</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_log_container_max_blocks"><a class="link" href="#kudu-master_log_container_max_blocks"><code>--log_container_max_blocks</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Maximum number of blocks (soft) of a log container. Use 0 for no limit. Use -1 for no limit except in the case of a kernel bug with hole punching on ext4 (see KUDU-1508 for details).</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>-1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_log_container_max_size"><a class="link" href="#kudu-master_log_container_max_size"><code>--log_container_max_size</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Maximum size (soft) of a log container</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">uint64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10737418240</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_log_container_preallocate_bytes"><a class="link" href="#kudu-master_log_container_preallocate_bytes"><code>--log_container_preallocate_bytes</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Number of bytes to preallocate in a log container when creating new blocks. Set to 0 to disable preallocation</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">uint64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>33554432</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_catalog_manager_delete_orphaned_tablets"><a class="link" href="#kudu-master_catalog_manager_delete_orphaned_tablets"><code>--catalog_manager_delete_orphaned_tablets</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Whether the master should delete tablets reported by tablet servers for which there are no corresponding records in the master&#8217;s metadata. Use this option with care; it may cause permanent tablet data loss under specific (and rare) cases of master failures!</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_default_num_replicas"><a class="link" href="#kudu-master_default_num_replicas"><code>--default_num_replicas</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Default number of replicas for tables that do not have the num_replicas set.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>3</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_master_failover_catchup_timeout_ms"><a class="link" href="#kudu-master_master_failover_catchup_timeout_ms"><code>--master_failover_catchup_timeout_ms</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Amount of time to give a newly-elected leader master to load the previous master&#8217;s metadata and become active. If this time is exceeded, the node crashes.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>30000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_master_ts_rpc_timeout_ms"><a class="link" href="#kudu-master_master_ts_rpc_timeout_ms"><code>--master_ts_rpc_timeout_ms</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Timeout used for the master&#8594;TS async rpc calls.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>30000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_max_create_tablets_per_ts"><a class="link" href="#kudu-master_max_create_tablets_per_ts"><code>--max_create_tablets_per_ts</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The number of tablets per TS that can be requested for a new table.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>20</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_table_locations_ttl_ms"><a class="link" href="#kudu-master_table_locations_ttl_ms"><code>--table_locations_ttl_ms</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Maximum time in milliseconds which clients may cache table locations. New range partitions may not be visible to existing client instances until after waiting for the ttl period.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>300000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_tablet_creation_timeout_ms"><a class="link" href="#kudu-master_tablet_creation_timeout_ms"><code>--tablet_creation_timeout_ms</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Timeout used by the master when attempting to create tablet replicas during table creation.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>30000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_unresponsive_ts_rpc_timeout_ms"><a class="link" href="#kudu-master_unresponsive_ts_rpc_timeout_ms"><code>--unresponsive_ts_rpc_timeout_ms</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>After this amount of time, the master will stop attempting to contact a tablet server in order to perform operations such as deleting a tablet.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>3600000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_authn_token_validity_seconds"><a class="link" href="#kudu-master_authn_token_validity_seconds"><code>--authn_token_validity_seconds</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Period of time for which an issued authentication token is valid. It&#8217;s not possible to renew a token, hence the token validity interval defines the longest possible lifetime of an external job which uses a token for authentication.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>604800</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_master_registration_rpc_timeout_ms"><a class="link" href="#kudu-master_master_registration_rpc_timeout_ms"><code>--master_registration_rpc_timeout_ms</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Timeout for retrieving master registration over RPC.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1500</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_tsk_rotation_seconds"><a class="link" href="#kudu-master_tsk_rotation_seconds"><code>--tsk_rotation_seconds</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Number of seconds between consecutive activations of newly generated TSKs (Token Signing Keys).</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>86400</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_ipki_ca_cert_expiration_seconds"><a class="link" href="#kudu-master_ipki_ca_cert_expiration_seconds"><code>--ipki_ca_cert_expiration_seconds</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>validity interval for self-signed root CA certifcate issued by Kudu IPKI (Internal Private Key Infrastructure, a.k.a. Internal Kudu CA)</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>315360000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_ipki_ca_key_size"><a class="link" href="#kudu-master_ipki_ca_key_size"><code>--ipki_ca_key_size</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>the number of bits for self-signed root CA cert used by Kudu IPKI (Internal Private Key Infrastructure, a.k.a. Internal Kudu CA)</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>2048</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_ipki_server_cert_expiration_seconds"><a class="link" href="#kudu-master_ipki_server_cert_expiration_seconds"><code>--ipki_server_cert_expiration_seconds</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>validity interval for server certificates issued by Kudu IPKI (Internal Private Key Infrastructure, a.k.a. Internal Kudu CA)</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>315360000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_tserver_unresponsive_timeout_ms"><a class="link" href="#kudu-master_tserver_unresponsive_timeout_ms"><code>--tserver_unresponsive_timeout_ms</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The period of time that a Master can go without receiving a heartbeat from a tablet server before considering it unresponsive. Unresponsive servers are not selected when assigning replicas during table creation or re-replication.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>60000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_rpc_acceptor_listen_backlog"><a class="link" href="#kudu-master_rpc_acceptor_listen_backlog"><code>--rpc_acceptor_listen_backlog</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Socket backlog parameter used when listening for RPC connections. This defines the maximum length to which the queue of pending TCP connections inbound to the RPC server may grow. If a connection request arrives when the queue is full, the client may receive an error. Higher values may help the server ride over bursts of new inbound connection requests.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>128</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_rpc_ca_certificate_file"><a class="link" href="#kudu-master_rpc_ca_certificate_file"><code>--rpc_ca_certificate_file</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Path to the PEM encoded X509 certificate of the trusted external certificate authority. The provided certificate should be the root issuer of the certificate passed in '--rpc_certificate_file'.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_rpc_certificate_file"><a class="link" href="#kudu-master_rpc_certificate_file"><code>--rpc_certificate_file</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Path to a PEM encoded X509 certificate to use for securing RPC connections with SSL/TLS. If set, '--rpc_private_key_file' and '--rpc_ca_certificate_file' must be set as well.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_rpc_default_keepalive_time_ms"><a class="link" href="#kudu-master_rpc_default_keepalive_time_ms"><code>--rpc_default_keepalive_time_ms</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>If an RPC connection from a client is idle for this amount of time, the server will disconnect the client.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>65000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_rpc_private_key_file"><a class="link" href="#kudu-master_rpc_private_key_file"><code>--rpc_private_key_file</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Path to a PEM encoded private key paired with the certificate from '--rpc_certificate_file'</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_rpc_encrypt_loopback_connections"><a class="link" href="#kudu-master_rpc_encrypt_loopback_connections"><code>--rpc_encrypt_loopback_connections</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Whether to encrypt data transfer on RPC connections that stay within a single host. Encryption here is likely to offer no additional security benefit since only a local 'root' user could intercept the traffic, and wire encryption does not suitably protect against such an attacker.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_rpc_trace_negotiation"><a class="link" href="#kudu-master_rpc_trace_negotiation"><code>--rpc_trace_negotiation</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>If enabled, dump traces of all RPC negotiations to the log</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental,advanced,runtime</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_rpc_callback_max_cycles"><a class="link" href="#kudu-master_rpc_callback_max_cycles"><code>--rpc_callback_max_cycles</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The maximum number of cycles for which an RPC callback should be allowed to run without emitting a warning. (Advanced debugging option)</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>100000000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_rpc_negotiation_timeout_ms"><a class="link" href="#kudu-master_rpc_negotiation_timeout_ms"><code>--rpc_negotiation_timeout_ms</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Timeout for negotiating an RPC connection.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>3000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_remember_clients_ttl_ms"><a class="link" href="#kudu-master_remember_clients_ttl_ms"><code>--remember_clients_ttl_ms</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Maximum amount of time, in milliseconds, the server "remembers" a client for the purpose of caching its responses. After this period without hearing from it, the client is no longer remembered and the memory occupied by its responses is reclaimed. Retries of requests older than 'remember_clients_ttl_ms' are treated as new ones.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>3600000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_remember_responses_ttl_ms"><a class="link" href="#kudu-master_remember_responses_ttl_ms"><code>--remember_responses_ttl_ms</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Maximum amount of time, in milliseconds, the server "remembers" a response to a specific request for a client. After this period has elapsed, the response may have been garbage collected and the client might get a response indicating the request is STALE.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>600000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_rpc_dump_all_traces"><a class="link" href="#kudu-master_rpc_dump_all_traces"><code>--rpc_dump_all_traces</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>If true, dump all RPC traces at INFO level</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_rpc_max_message_size"><a class="link" href="#kudu-master_rpc_max_message_size"><code>--rpc_max_message_size</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The maximum size of a message that any RPC that the server will accept. Must be at least 1MB.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>52428800</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_ipki_server_key_size"><a class="link" href="#kudu-master_ipki_server_key_size"><code>--ipki_server_key_size</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>the number of bits for server cert&#8217;s private key. The server cert is used for TLS connections to and from clients and other servers.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>2048</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_rpc_tls_ciphers"><a class="link" href="#kudu-master_rpc_tls_ciphers"><code>--rpc_tls_ciphers</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The cipher suite preferences to use for TLS-secured RPC connections. Uses the OpenSSL cipher preference list format. See man (1) ciphers for more information.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256AES256-GCM-SHA384:AES128-GCM-SHA256:AES256-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_rpc_tls_min_protocol"><a class="link" href="#kudu-master_rpc_tls_min_protocol"><code>--rpc_tls_min_protocol</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The minimum protocol version to allow when for securing RPC connections with TLS. May be one of 'TLSv1', 'TLSv1.1', or 'TLSv1.2'.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>TLSv1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_tsk_num_rsa_bits"><a class="link" href="#kudu-master_tsk_num_rsa_bits"><code>--tsk_num_rsa_bits</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Number of bits in RSA keys used for token signing.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>2048</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_web_log_bytes"><a class="link" href="#kudu-master_web_log_bytes"><code>--web_log_bytes</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The maximum number of bytes to display on the debug webserver&#8217;s log page</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1048576</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_max_clock_sync_error_usec"><a class="link" href="#kudu-master_max_clock_sync_error_usec"><code>--max_clock_sync_error_usec</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Maximum allowed clock synchronization error as reported by NTP before the server will abort.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10000000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_rpc_advertised_addresses"><a class="link" href="#kudu-master_rpc_advertised_addresses"><code>--rpc_advertised_addresses</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Comma-separated list of addresses to advertise externally for RPC connections. Ephemeral ports (i.e. port 0) are not allowed. This should be configured when the locally bound RPC addresses specified in --rpc_bind_addresses are not externally resolvable, for example, if Kudu is deployed in a container.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_rpc_num_acceptors_per_address"><a class="link" href="#kudu-master_rpc_num_acceptors_per_address"><code>--rpc_num_acceptors_per_address</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Number of RPC acceptor threads for each bound address</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_rpc_num_service_threads"><a class="link" href="#kudu-master_rpc_num_service_threads"><code>--rpc_num_service_threads</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Number of RPC worker threads to run</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_rpc_service_queue_length"><a class="link" href="#kudu-master_rpc_service_queue_length"><code>--rpc_service_queue_length</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Default length of queue for incoming RPC requests</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>50</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_max_negotiation_threads"><a class="link" href="#kudu-master_max_negotiation_threads"><code>--max_negotiation_threads</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Maximum number of connection negotiation threads.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>50</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_min_negotiation_threads"><a class="link" href="#kudu-master_min_negotiation_threads"><code>--min_negotiation_threads</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Minimum number of connection negotiation threads.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_num_reactor_threads"><a class="link" href="#kudu-master_num_reactor_threads"><code>--num_reactor_threads</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Number of libev reactor threads to start.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>4</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_webserver_enabled"><a class="link" href="#kudu-master_webserver_enabled"><code>--webserver_enabled</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Whether to enable the web server on this daemon. NOTE: disabling the web server is also likely to prevent monitoring systems from properly capturing metrics.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_metrics_log_interval_ms"><a class="link" href="#kudu-master_metrics_log_interval_ms"><code>--metrics_log_interval_ms</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Interval (in milliseconds) at which the server will dump its metrics to a local log file. The log files are located in the same directory as specified by the -log_dir flag. If this is not a positive value, then metrics logging will be disabled.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_webserver_max_post_length_bytes"><a class="link" href="#kudu-master_webserver_max_post_length_bytes"><code>--webserver_max_post_length_bytes</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The maximum length of a POST request that will be accepted by the embedded web server.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1048576</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_webserver_x_frame_options"><a class="link" href="#kudu-master_webserver_x_frame_options"><code>--webserver_x_frame_options</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The webserver will add an 'X-Frame-Options' HTTP header with this value to all responses. This can help prevent clickjacking attacks.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>DENY</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_webserver_advertised_addresses"><a class="link" href="#kudu-master_webserver_advertised_addresses"><code>--webserver_advertised_addresses</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Comma-separated list of addresses to advertise externally for HTTP(S) connections. Ephemeral ports (i.e. port 0) are not allowed. This should be configured when the locally bound webserver address specified in --webserver_interface and --webserver_port are not externally resolvable, for example, if Kudu is deployed in a container.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_webserver_authentication_domain"><a class="link" href="#kudu-master_webserver_authentication_domain"><code>--webserver_authentication_domain</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Domain used for debug webserver authentication</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_webserver_doc_root"><a class="link" href="#kudu-master_webserver_doc_root"><code>--webserver_doc_root</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Files under &lt;webserver_doc_root&gt; are accessible via the debug webserver. Defaults to $KUDU_HOME/www, or if $KUDU_HOME is not set, disables the document root</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_webserver_enable_doc_root"><a class="link" href="#kudu-master_webserver_enable_doc_root"><code>--webserver_enable_doc_root</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>If true, webserver may serve static files from the webserver_doc_root</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_webserver_interface"><a class="link" href="#kudu-master_webserver_interface"><code>--webserver_interface</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Interface to start debug webserver on. If blank, webserver binds to 0.0.0.0</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_webserver_num_worker_threads"><a class="link" href="#kudu-master_webserver_num_worker_threads"><code>--webserver_num_worker_threads</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Maximum number of threads to start for handling web server requests</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>50</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_webserver_password_file"><a class="link" href="#kudu-master_webserver_password_file"><code>--webserver_password_file</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>(Optional) Location of .htpasswd file containing user names and hashed passwords for debug webserver authentication</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_budgeted_compaction_target_rowset_size"><a class="link" href="#kudu-master_budgeted_compaction_target_rowset_size"><code>--budgeted_compaction_target_rowset_size</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The target size for DiskRowSets during flush/compact when the budgeted compaction policy is used</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>33554432</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_compaction_approximation_ratio"><a class="link" href="#kudu-master_compaction_approximation_ratio"><code>--compaction_approximation_ratio</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Approximation ratio allowed for optimal compaction calculation. A value of 1.05 indicates that the policy may use an approximate result if it is known to be within 5% of the optimal solution.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1.0499999523162842</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_deltafile_default_block_size"><a class="link" href="#kudu-master_deltafile_default_block_size"><code>--deltafile_default_block_size</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Block size for delta files. In the future, this may become configurable on a per-table basis.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>32768</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_deltafile_default_compression_codec"><a class="link" href="#kudu-master_deltafile_default_compression_codec"><code>--deltafile_default_compression_codec</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The compression codec used when writing deltafiles.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>lz4</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_default_composite_key_index_block_size_bytes"><a class="link" href="#kudu-master_default_composite_key_index_block_size_bytes"><code>--default_composite_key_index_block_size_bytes</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Block size used for composite key indexes.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>4096</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_tablet_delta_store_major_compact_min_ratio"><a class="link" href="#kudu-master_tablet_delta_store_major_compact_min_ratio"><code>--tablet_delta_store_major_compact_min_ratio</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Minimum ratio of sizeof(deltas) to sizeof(base data) before a major compaction can run (Advanced option)</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0.10000000149011612</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_tablet_delta_store_minor_compact_max"><a class="link" href="#kudu-master_tablet_delta_store_minor_compact_max"><code>--tablet_delta_store_minor_compact_max</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>How many delta stores are required before forcing a minor delta compaction (Advanced option)</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_tablet_bloom_block_size"><a class="link" href="#kudu-master_tablet_bloom_block_size"><code>--tablet_bloom_block_size</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Block size of the bloom filters used for tablet keys.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>4096</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_tablet_bloom_target_fp_rate"><a class="link" href="#kudu-master_tablet_bloom_target_fp_rate"><code>--tablet_bloom_target_fp_rate</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Target false-positive rate (between 0 and 1) to size tablet key bloom filters. A lower false positive rate may reduce the number of disk seeks required in heavy insert workloads, at the expense of more space and RAM required for bloom filters.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>9.9999997473787516e-05</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_tablet_compaction_budget_mb"><a class="link" href="#kudu-master_tablet_compaction_budget_mb"><code>--tablet_compaction_budget_mb</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Budget for a single compaction</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>128</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_tablet_history_max_age_sec"><a class="link" href="#kudu-master_tablet_history_max_age_sec"><code>--tablet_history_max_age_sec</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Number of seconds to retain tablet history. Reads initiated at a snapshot that is older than this age will be rejected. To disable history removal, set to -1.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>900</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_tablet_throttler_burst_factor"><a class="link" href="#kudu-master_tablet_throttler_burst_factor"><code>--tablet_throttler_burst_factor</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Burst factor for write RPC throttling. The maximum rate the throttler allows within a token refill period (100ms) equals burst factor multiply base rate.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_tablet_throttler_bytes_per_sec"><a class="link" href="#kudu-master_tablet_throttler_bytes_per_sec"><code>--tablet_throttler_bytes_per_sec</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Maximum write RPC IO rate (byte/s) allowed for a tablet, write RPC exceeding this limit will be throttled. 0 means no limit.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_tablet_throttler_rpc_per_sec"><a class="link" href="#kudu-master_tablet_throttler_rpc_per_sec"><code>--tablet_throttler_rpc_per_sec</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Maximum write RPC rate (op/s) allowed for a tablet, write RPC exceeding this limit will be throttled. 0 means no limit.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_flush_threshold_mb"><a class="link" href="#kudu-master_flush_threshold_mb"><code>--flush_threshold_mb</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Size at which MemRowSet flushes are triggered. A MRS can still flush below this threshold if it if hasn&#8217;t flushed in a while, or if the server-wide memory limit has been reached.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1024</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_flush_threshold_secs"><a class="link" href="#kudu-master_flush_threshold_secs"><code>--flush_threshold_secs</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Number of seconds after which a non-empty MemRowSet will become flushable even if it is not large.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>120</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_tablet_transaction_memory_limit_mb"><a class="link" href="#kudu-master_tablet_transaction_memory_limit_mb"><code>--tablet_transaction_memory_limit_mb</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Maximum amount of memory that may be consumed by all in-flight transactions belonging to a particular tablet. When this limit is reached, new transactions will be rejected and clients will be forced to retry them. If -1, transaction memory tracking is disabled.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>64</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_heartbeat_interval_ms"><a class="link" href="#kudu-master_heartbeat_interval_ms"><code>--heartbeat_interval_ms</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Interval at which the TS heartbeats to the master.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_heartbeat_max_failures_before_backoff"><a class="link" href="#kudu-master_heartbeat_max_failures_before_backoff"><code>--heartbeat_max_failures_before_backoff</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Maximum number of consecutive heartbeat failures until the Tablet Server backs off to the normal heartbeat interval, rather than retrying.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>3</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_heartbeat_rpc_timeout_ms"><a class="link" href="#kudu-master_heartbeat_rpc_timeout_ms"><code>--heartbeat_rpc_timeout_ms</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Timeout used for the TS&#8594;Master heartbeat RPCs.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>15000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_scanner_ttl_ms"><a class="link" href="#kudu-master_scanner_ttl_ms"><code>--scanner_ttl_ms</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Number of milliseconds of inactivity allowed for a scannerbefore it may be expired</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>60000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_scanner_batch_size_rows"><a class="link" href="#kudu-master_scanner_batch_size_rows"><code>--scanner_batch_size_rows</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The number of rows to batch for servicing scan requests.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>100</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_scanner_default_batch_size_bytes"><a class="link" href="#kudu-master_scanner_default_batch_size_bytes"><code>--scanner_default_batch_size_bytes</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The default size for batches of scan results</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1048576</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_scanner_max_batch_size_bytes"><a class="link" href="#kudu-master_scanner_max_batch_size_bytes"><code>--scanner_max_batch_size_bytes</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The maximum batch size that a client may request for scan results.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>8388608</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_scanner_max_wait_ms"><a class="link" href="#kudu-master_scanner_max_wait_ms"><code>--scanner_max_wait_ms</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The maximum amount of time (in milliseconds) we&#8217;ll hang a scanner thread waiting for safe time to advance or transactions to commit, even if its deadline allows waiting longer.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_num_tablets_to_copy_simultaneously"><a class="link" href="#kudu-master_num_tablets_to_copy_simultaneously"><code>--num_tablets_to_copy_simultaneously</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Number of threads available to copy tablets from remote servers.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_num_tablets_to_open_simultaneously"><a class="link" href="#kudu-master_num_tablets_to_open_simultaneously"><code>--num_tablets_to_open_simultaneously</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Number of threads available to open tablets during startup. If this is set to 0 (the default), then the number of bootstrap threads will be set based on the number of data directories. If the data directories are on some very fast storage device such as SSD or a RAID array, it may make sense to manually tune this.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_trace_to_console"><a class="link" href="#kudu-master_trace_to_console"><code>--trace_to_console</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Trace pattern specifying which trace events should be dumped directly to the console</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_suicide_on_eio"><a class="link" href="#kudu-master_suicide_on_eio"><code>--suicide_on_eio</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Kill the process if an I/O operation results in EIO</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_file_cache_expiry_period_ms"><a class="link" href="#kudu-master_file_cache_expiry_period_ms"><code>--file_cache_expiry_period_ms</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Period of time (in ms) between removing expired file cache descriptors</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>60000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_umask"><a class="link" href="#kudu-master_umask"><code>--umask</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The umask that will be used when creating files and directories. Permissions of top-level data directories will also be modified at start-up to conform to the given umask. Changing this value may enable unauthorized local users to read or modify data stored by Kudu.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>077</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_max_log_files"><a class="link" href="#kudu-master_max_log_files"><code>--max_log_files</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Maximum number of log files to retain per severity level. The most recent log files are retained. If set to 0, all log files are retained.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental,runtime</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_data_gc_min_size_mb"><a class="link" href="#kudu-master_data_gc_min_size_mb"><code>--data_gc_min_size_mb</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The (exclusive) minimum number of megabytes of ancient data on disk, per tablet, needed to prioritize deletion of that data.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_data_gc_prioritization_prob"><a class="link" href="#kudu-master_data_gc_prioritization_prob"><code>--data_gc_prioritization_prob</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The probability that we will prioritize data GC over performance improvement operations. If set to 1.0, we will always prefer to delete old data before running performance improvement operations such as delta compaction.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0.5</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_log_target_replay_size_mb"><a class="link" href="#kudu-master_log_target_replay_size_mb"><code>--log_target_replay_size_mb</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The target maximum size of logs to be replayed at startup. If a tablet has in-memory operations that are causing more than this size of logs to be retained, then the maintenance manager will prioritize flushing these operations to disk.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1024</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_metrics_retirement_age_ms"><a class="link" href="#kudu-master_metrics_retirement_age_ms"><code>--metrics_retirement_age_ms</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The minimum number of milliseconds a metric will be kept for after it is no longer active. (Advanced option)</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>120000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,runtime</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_local_ip_for_outbound_sockets"><a class="link" href="#kudu-master_local_ip_for_outbound_sockets"><code>--local_ip_for_outbound_sockets</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>IP to bind to when making outgoing socket connections. This must be an IP address of the form A.B.C.D, not a hostname. Advanced parameter, subject to change.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_nvm_cache_allocation_retry_count"><a class="link" href="#kudu-master_nvm_cache_allocation_retry_count"><code>--nvm_cache_allocation_retry_count</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The number of times that the NVM cache will retry attempts to allocate memory for new entries. In between attempts, a cache entry will be evicted.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_nvm_cache_path"><a class="link" href="#kudu-master_nvm_cache_path"><code>--nvm_cache_path</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The path at which the NVM cache will try to allocate its memory. This can be a tmpfs or ramfs for testing purposes.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>/vmem</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_memory_limit_soft_percentage"><a class="link" href="#kudu-master_memory_limit_soft_percentage"><code>--memory_limit_soft_percentage</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Percentage of the hard memory limit that this daemon may consume before memory throttling of writes begins. The greater the excess, the higher the chance of throttling. In general, a lower soft limit leads to smoother write latencies but decreased throughput, and vice versa for a higher soft limit.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>80</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_memory_limit_warn_threshold_percentage"><a class="link" href="#kudu-master_memory_limit_warn_threshold_percentage"><code>--memory_limit_warn_threshold_percentage</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Percentage of the hard memory limit that this daemon may consume before WARNING level messages are periodically logged.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>98</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_memory_pressure_percentage"><a class="link" href="#kudu-master_memory_pressure_percentage"><code>--memory_pressure_percentage</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Percentage of the hard memory limit that this daemon may consume before flushing of in-memory data becomes prioritized.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>60</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_tcmalloc_max_free_bytes_percentage"><a class="link" href="#kudu-master_tcmalloc_max_free_bytes_percentage"><code>--tcmalloc_max_free_bytes_percentage</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Maximum percentage of the RSS that tcmalloc is allowed to use for reserved but unallocated memory.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_drop_log_memory"><a class="link" href="#kudu-master_drop_log_memory"><code>--drop_log_memory</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Drop in-memory buffers of log contents. Logs can grow very quickly and they are rarely read before they need to be evicted from memory. Instead, drop them from memory as soon as they are flushed to disk.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_log_backtrace_at"><a class="link" href="#kudu-master_log_backtrace_at"><code>--log_backtrace_at</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Emit a backtrace when logging at file:linenum.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_logbuflevel"><a class="link" href="#kudu-master_logbuflevel"><code>--logbuflevel</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Buffer log messages logged at this level or lower (-1 means don&#8217;t buffer; 0 means buffer INFO only; &#8230;&#8203;)</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_logbufsecs"><a class="link" href="#kudu-master_logbufsecs"><code>--logbufsecs</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Buffer log messages for at most this many seconds</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>5</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-master_logfile_mode"><a class="link" href="#kudu-master_logfile_mode"><code>--logfile_mode</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Log file mode/permissions.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>436</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"></td>
+</tr>
+</tbody>
+</table>
+<hr>
+</div>
+</div>
+    </div>
+    <div class="col-md-3">
+
+  <div id="toc" data-spy="affix" data-offset-top="70">
+  <ul>
+
+      <li>
+
+          <a href="index.html">Introducing Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="release_notes.html">Kudu Release Notes</a> 
+      </li> 
+      <li>
+
+          <a href="quickstart.html">Getting Started with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="installation.html">Installation Guide</a> 
+      </li> 
+      <li>
+
+          <a href="configuration.html">Configuring Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="kudu_impala_integration.html">Using Impala with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="administration.html">Administering Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="troubleshooting.html">Troubleshooting Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="developing.html">Developing Applications with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="schema_design.html">Kudu Schema Design</a> 
+      </li> 
+      <li>
+
+          <a href="security.html">Kudu Security</a> 
+      </li> 
+      <li>
+
+          <a href="transaction_semantics.html">Kudu Transaction Semantics</a> 
+      </li> 
+      <li>
+
+          <a href="background_tasks.html">Background Maintenance Tasks</a> 
+      </li> 
+      <li>
+
+          <a href="configuration_reference.html">Kudu Configuration Reference</a> 
+      </li> 
+      <li>
+
+          <a href="command_line_tools_reference.html">Kudu Command Line Tools Reference</a> 
+      </li> 
+      <li>
+
+          <a href="known_issues.html">Known Issues and Limitations</a> 
+      </li> 
+      <li>
+
+          <a href="contributing.html">Contributing to Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="export_control.html">Export Control Notice</a> 
+      </li> 
+  </ul>
+  </div>
+    </div>
+  </div>
+</div>
+      <footer class="footer">
+        <p class="small">
+        Copyright &copy; 2016 The Apache Software Foundation.  Last updated 2017-06-13 10:50:35 PDT 
+        </p>
+      </footer>
+    </div>
+    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
+    <script>
+      // Try to detect touch-screen devices. Note: Many laptops have touch screens.
+      $(document).ready(function() {
+        if ("ontouchstart" in document.documentElement) {
+          $(document.documentElement).addClass("touch");
+        } else {
+          $(document.documentElement).addClass("no-touch");
+        }
+      });
+    </script>
+    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"
+            integrity="sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS"
+            crossorigin="anonymous"></script>
+    <script>
+      (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+      (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+      m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+      })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+
+      ga('create', 'UA-68448017-1', 'auto');
+      ga('send', 'pageview');
+    </script>
+    <script src="https://cdnjs.cloudflare.com/ajax/libs/anchor-js/3.1.0/anchor.js"></script>
+    <script>
+      anchors.options = {
+        placement: 'right',
+        visible: 'touch',
+      };
+      anchors.add();
+    </script>
+  </body>
+</html>
+
diff --git a/releases/1.4.0/docs/kudu-tserver_configuration_reference.html b/releases/1.4.0/docs/kudu-tserver_configuration_reference.html
new file mode 100644
index 0000000..6771814
--- /dev/null
+++ b/releases/1.4.0/docs/kudu-tserver_configuration_reference.html
@@ -0,0 +1,4329 @@
+<!DOCTYPE html>
+<html lang="en">
+  <head>
+    <meta charset="utf-8" />
+    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
+    <meta name="viewport" content="width=device-width, initial-scale=1" />
+    <!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
+    <meta name="description" content="A new open source Apache Hadoop ecosystem project, Apache Kudu completes Hadoop's storage layer to enable fast analytics on fast data" />
+    <meta name="author" content="Cloudera" />
+    <title>Apache Kudu - kudu-tserver Flags</title>
+    <!-- Bootstrap core CSS -->
+    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css"
+          integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7"
+          crossorigin="anonymous">
+
+    <!-- Custom styles for this template -->
+    <link href="/css/kudu.css" rel="stylesheet"/>
+    <link href="/css/asciidoc.css" rel="stylesheet"/>
+    <link rel="shortcut icon" href="/img/logo-favicon.ico" />
+    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.6.1/css/font-awesome.min.css" />
+
+    
+
+    <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+        <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+        <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+        <![endif]-->
+  </head>
+  <body>
+    <div class="kudu-site container-fluid">
+      <!-- Static navbar -->
+        <nav class="navbar navbar-default">
+          <div class="container-fluid">
+            <div class="navbar-header">
+              <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
+                <span class="sr-only">Toggle navigation</span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+              </button>
+              
+              <a class="logo" href="/"><img
+                src="//d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_80px.png"
+                srcset="//d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_80px.png 1x, //d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_160px.png 2x"
+                alt="Apache Kudu"/></a>
+              
+            </div>
+            <div id="navbar" class="collapse navbar-collapse">
+              <ul class="nav navbar-nav navbar-right">
+                <li >
+                  <a href="/">Home</a>
+                </li>
+                <li >
+                  <a href="/overview.html">Overview</a>
+                </li>
+                <li class="active">
+                  <a href="/docs/">Documentation</a>
+                </li>
+                <li >
+                  <a href="/releases/">Download</a>
+                </li>
+                <li >
+                  <a href="/blog/">Blog</a>
+                </li>
+                <!-- NOTE: this dropdown menu does not appear on Mobile, so don't add anything here
+                     that doesn't also appear elsewhere on the site. -->
+                <li class="dropdown">
+                  <a href="/community.html" role="button" aria-haspopup="true" aria-expanded="false">Community <span class="caret"></span></a>
+                  <ul class="dropdown-menu">
+                    <li class="dropdown-header">GET IN TOUCH</li>
+                    <li><a class="icon email" href="/community.html">Mailing Lists</a></li>
+                    <li><a class="icon slack" href="https://getkudu-slack.herokuapp.com/">Slack Channel</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li><a href="/community.html#meetups-user-groups-and-conference-presentations">Events and Meetups</a></li>
+                    <li><a href="/committers.html">Project Committers</a></li>
+                    <!--<li><a href="/roadmap.html">Roadmap</a></li>-->
+                    <li><a href="/community.html#contributions">How to Contribute</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li class="dropdown-header">DEVELOPER RESOURCES</li>
+                    <li><a class="icon github" href="https://github.com/apache/incubator-kudu">GitHub</a></li>
+                    <li><a class="icon gerrit" href="http://gerrit.cloudera.org:8080/#/q/status:open+project:kudu">Gerrit Code Review</a></li>
+                    <li><a class="icon jira" href="https://issues.apache.org/jira/browse/KUDU">JIRA Issue Tracker</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li class="dropdown-header">SOCIAL MEDIA</li>
+                    <li><a class="icon twitter" href="https://twitter.com/ApacheKudu">Twitter</a></li>
+                  </ul>
+                </li>
+                <li >
+                  <a href="/faq.html">FAQ</a>
+                </li>
+              </ul><!-- /.nav -->
+            </div><!-- /#navbar -->
+          </div><!-- /.container-fluid -->
+        </nav>
+
+<!--
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
+
+
+<div class="container">
+  <div class="row">
+    <div class="col-md-9">
+
+<h1><code>kudu-tserver</code> Flags</h1>
+      <div class="sect1">
+<h2 id="kudu-tserver_stable"><a class="link" href="#kudu-tserver_stable">Stable Flags</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Flags tagged <code>stable</code> and not <code>advanced</code> are safe to use for common
+configuration tasks.</p>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_block_cache_capacity_mb"><a class="link" href="#kudu-tserver_block_cache_capacity_mb"><code>--block_cache_capacity_mb</code></a></h3>
+<div class="paragraph">
+<p>block cache capacity in MB</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>512</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_log_force_fsync_all"><a class="link" href="#kudu-tserver_log_force_fsync_all"><code>--log_force_fsync_all</code></a></h3>
+<div class="paragraph">
+<p>Whether the Log/WAL should explicitly call fsync() after each write.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_fs_data_dirs"><a class="link" href="#kudu-tserver_fs_data_dirs"><code>--fs_data_dirs</code></a></h3>
+<div class="paragraph">
+<p>Comma-separated list of directories with data blocks. If this is not specified, fs_wal_dir will be used as the sole data block directory.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_fs_wal_dir"><a class="link" href="#kudu-tserver_fs_wal_dir"><code>--fs_wal_dir</code></a></h3>
+<div class="paragraph">
+<p>Directory with write-ahead logs. If this is not specified, the program will not start. May be the same as fs_data_dirs</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_keytab_file"><a class="link" href="#kudu-tserver_keytab_file"><code>--keytab_file</code></a></h3>
+<div class="paragraph">
+<p>Path to the Kerberos Keytab file for this server. Specifying a keytab file will cause the server to kinit, and enable Kerberos to be used to authenticate RPC connections.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_rpc_bind_addresses"><a class="link" href="#kudu-tserver_rpc_bind_addresses"><code>--rpc_bind_addresses</code></a></h3>
+<div class="paragraph">
+<p>Comma-separated list of addresses to bind to for RPC connections. Currently, ephemeral ports (i.e. port 0) are not allowed.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0.0.0.0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_superuser_acl"><a class="link" href="#kudu-tserver_superuser_acl"><code>--superuser_acl</code></a></h3>
+<div class="paragraph">
+<p>The list of usernames to allow as super users, comma-separated. A '*' entry indicates that all authenticated users are allowed. If this is left unset or blank, the default behavior is that the identity of the daemon itself determines the superuser. If the daemon is logged in from a Keytab, then the local username from the Kerberos principal is used; otherwise, the local Unix username is used.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">sensitive,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_user_acl"><a class="link" href="#kudu-tserver_user_acl"><code>--user_acl</code></a></h3>
+<div class="paragraph">
+<p>The list of usernames who may access the cluster, comma-separated. A '*' entry indicates that all authenticated users are allowed.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>*</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">sensitive,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_webserver_certificate_file"><a class="link" href="#kudu-tserver_webserver_certificate_file"><code>--webserver_certificate_file</code></a></h3>
+<div class="paragraph">
+<p>The location of the debug webserver&#8217;s SSL certificate file, in PEM format. If empty, webserver SSL support is not enabled. If --webserver_private_key_file is set, this option must be set as well.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_webserver_port"><a class="link" href="#kudu-tserver_webserver_port"><code>--webserver_port</code></a></h3>
+<div class="paragraph">
+<p>Port to bind to for the web server</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_webserver_private_key_file"><a class="link" href="#kudu-tserver_webserver_private_key_file"><code>--webserver_private_key_file</code></a></h3>
+<div class="paragraph">
+<p>The full path to the private key used as a counterpart to the public key contained in --webserver_certificate_file. If --webserver_certificate_file is set, this option must be set as well.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_webserver_private_key_password_cmd"><a class="link" href="#kudu-tserver_webserver_private_key_password_cmd"><code>--webserver_private_key_password_cmd</code></a></h3>
+<div class="paragraph">
+<p>A Unix command whose output returns the password used to decrypt the Webserver&#8217;s certificate private key file specified in --webserver_private_key_file. If the PEM key file is not password-protected, this command will not be invoked. The output of the command will be truncated to 1024 bytes, and then all trailing whitespace will be trimmed before it is used to decrypt the private key</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_tserver_master_addrs"><a class="link" href="#kudu-tserver_tserver_master_addrs"><code>--tserver_master_addrs</code></a></h3>
+<div class="paragraph">
+<p>Comma separated addresses of the masters which the tablet server should connect to. The masters do not read this flag&#8201;&#8212;&#8201;configure the masters separately using 'rpc_bind_addresses'.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>127.0.0.1:7051</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_log_filename"><a class="link" href="#kudu-tserver_log_filename"><code>--log_filename</code></a></h3>
+<div class="paragraph">
+<p>Prefix of log filename - full path is &lt;log_dir&gt;/&lt;log_filename&gt;.[INFO|WARN|ERROR|FATAL]</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_maintenance_manager_num_threads"><a class="link" href="#kudu-tserver_maintenance_manager_num_threads"><code>--maintenance_manager_num_threads</code></a></h3>
+<div class="paragraph">
+<p>Size of the maintenance manager thread pool. For spinning disks, the number of threads should not be above the number of devices.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_memory_limit_hard_bytes"><a class="link" href="#kudu-tserver_memory_limit_hard_bytes"><code>--memory_limit_hard_bytes</code></a></h3>
+<div class="paragraph">
+<p>Maximum amount of memory this daemon should use, in bytes. A value of 0 autosizes based on the total system memory. A value of -1 disables all memory limiting.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_flagfile"><a class="link" href="#kudu-tserver_flagfile"><code>--flagfile</code></a></h3>
+<div class="paragraph">
+<p>load flags from file</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_help"><a class="link" href="#kudu-tserver_help"><code>--help</code></a></h3>
+<div class="paragraph">
+<p>show help on all flags [tip: all flags can have two dashes]</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_version"><a class="link" href="#kudu-tserver_version"><code>--version</code></a></h3>
+<div class="paragraph">
+<p>show version and build info and exit</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_colorlogtostderr"><a class="link" href="#kudu-tserver_colorlogtostderr"><code>--colorlogtostderr</code></a></h3>
+<div class="paragraph">
+<p>color messages logged to stderr (if supported by terminal)</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_log_dir"><a class="link" href="#kudu-tserver_log_dir"><code>--log_dir</code></a></h3>
+<div class="paragraph">
+<p>If specified, logfiles are written into this directory instead of the default logging directory.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_logtostderr"><a class="link" href="#kudu-tserver_logtostderr"><code>--logtostderr</code></a></h3>
+<div class="paragraph">
+<p>log messages go to stderr instead of logfiles</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_max_log_size"><a class="link" href="#kudu-tserver_max_log_size"><code>--max_log_size</code></a></h3>
+<div class="paragraph">
+<p>approx. maximum log file size (in MB). A value of 0 will be silently overridden to 1.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1800</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_stable_advanced"><a class="link" href="#kudu-tserver_stable_advanced">Stable, Advanced Flags</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Flags tagged <code>stable</code> and <code>advanced</code> are supported, but should be considered
+"expert" options and should be used carefully and after thorough testing.</p>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_enable_process_lifetime_heap_profiling"><a class="link" href="#kudu-tserver_enable_process_lifetime_heap_profiling"><code>--enable_process_lifetime_heap_profiling</code></a></h3>
+<div class="paragraph">
+<p>Enables heap profiling for the lifetime of the process. Profile output will be stored in the directory specified by -heap_profile_path. Enabling this option will disable the on-demand/remote server profile handlers.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_heap_profile_path"><a class="link" href="#kudu-tserver_heap_profile_path"><code>--heap_profile_path</code></a></h3>
+<div class="paragraph">
+<p>Output path to store heap profiles. If not set profiles are stored in /tmp/&lt;process-name&gt;.&lt;pid&gt;.&lt;n&gt;.heap.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_unlock_experimental_flags"><a class="link" href="#kudu-tserver_unlock_experimental_flags"><code>--unlock_experimental_flags</code></a></h3>
+<div class="paragraph">
+<p>Unlock flags marked as 'experimental'. These flags are not guaranteed to be maintained across releases of Kudu, and may enable features or behavior known to be unstable. Use at your own risk.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_unlock_unsafe_flags"><a class="link" href="#kudu-tserver_unlock_unsafe_flags"><code>--unlock_unsafe_flags</code></a></h3>
+<div class="paragraph">
+<p>Unlock flags marked as 'unsafe'. These flags are not guaranteed to be maintained across releases of Kudu, and enable features or behavior known to be unsafe. Use at your own risk.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">stable,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_fromenv"><a class="link" href="#kudu-tserver_fromenv"><code>--fromenv</code></a></h3>
+<div class="paragraph">
+<p>set flags from the environment [use 'export FLAGS_flag1=value']</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_tryfromenv"><a class="link" href="#kudu-tserver_tryfromenv"><code>--tryfromenv</code></a></h3>
+<div class="paragraph">
+<p>set flags from the environment if present</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_undefok"><a class="link" href="#kudu-tserver_undefok"><code>--undefok</code></a></h3>
+<div class="paragraph">
+<p>comma-separated list of flag names that it is okay to specify on the command line even if the program does not define a flag with that name.  IMPORTANT: flags in this list that have arguments MUST use the flag=value format</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_helpmatch"><a class="link" href="#kudu-tserver_helpmatch"><code>--helpmatch</code></a></h3>
+<div class="paragraph">
+<p>show help on modules whose name contains the specified substr</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_helpon"><a class="link" href="#kudu-tserver_helpon"><code>--helpon</code></a></h3>
+<div class="paragraph">
+<p>show help on the modules named by this flag value</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_helppackage"><a class="link" href="#kudu-tserver_helppackage"><code>--helppackage</code></a></h3>
+<div class="paragraph">
+<p>show help on all modules in the main package</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_helpshort"><a class="link" href="#kudu-tserver_helpshort"><code>--helpshort</code></a></h3>
+<div class="paragraph">
+<p>show help on only the main module for this program</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_helpxml"><a class="link" href="#kudu-tserver_helpxml"><code>--helpxml</code></a></h3>
+<div class="paragraph">
+<p>produce an xml version of help</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_log_link"><a class="link" href="#kudu-tserver_log_link"><code>--log_link</code></a></h3>
+<div class="paragraph">
+<p>Put additional links to the log files in this directory</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_log_prefix"><a class="link" href="#kudu-tserver_log_prefix"><code>--log_prefix</code></a></h3>
+<div class="paragraph">
+<p>Prepend the log prefix to the start of each log line</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_minloglevel"><a class="link" href="#kudu-tserver_minloglevel"><code>--minloglevel</code></a></h3>
+<div class="paragraph">
+<p>Messages logged at a lower level than this don&#8217;t actually get logged anywhere</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_stderrthreshold"><a class="link" href="#kudu-tserver_stderrthreshold"><code>--stderrthreshold</code></a></h3>
+<div class="paragraph">
+<p>log messages at or above this level are copied to stderr in addition to logfiles.  This flag obsoletes --alsologtostderr.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>2</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_stop_logging_if_full_disk"><a class="link" href="#kudu-tserver_stop_logging_if_full_disk"><code>--stop_logging_if_full_disk</code></a></h3>
+<div class="paragraph">
+<p>Stop attempting to log to disk if the disk is full.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_symbolize_stacktrace"><a class="link" href="#kudu-tserver_symbolize_stacktrace"><code>--symbolize_stacktrace</code></a></h3>
+<div class="paragraph">
+<p>Symbolize the stack trace in the tombstone</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,runtime,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_v"><a class="link" href="#kudu-tserver_v"><code>--v</code></a></h3>
+<div class="paragraph">
+<p>Show all VLOG(m) messages for m &#8656; this. Overridable by --vmodule.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_vmodule"><a class="link" href="#kudu-tserver_vmodule"><code>--vmodule</code></a></h3>
+<div class="paragraph">
+<p>per-module verbose level. Argument is a comma-separated list of &lt;module name&gt;=&lt;log level&gt;. &lt;module name&gt; is a glob pattern, matched against the filename base (that is, name ignoring .cc/.h./-inl.h). &lt;log level&gt; overrides any value given by --v.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,stable</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_evolving"><a class="link" href="#kudu-tserver_evolving">Evolving Flags</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Flags tagged <code>evolving</code> (or not tagged with a stability tag) are not yet
+considered final, and while they may be useful for tuning, they are subject to
+being changed or removed without notice.</p>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_cfile_verify_checksums"><a class="link" href="#kudu-tserver_cfile_verify_checksums"><code>--cfile_verify_checksums</code></a></h3>
+<div class="paragraph">
+<p>Verify the checksum for each block on read if one exists</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_cfile_default_block_size"><a class="link" href="#kudu-tserver_cfile_default_block_size"><code>--cfile_default_block_size</code></a></h3>
+<div class="paragraph">
+<p>The default block size to use in cfiles</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>262144</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_cfile_default_compression_codec"><a class="link" href="#kudu-tserver_cfile_default_compression_codec"><code>--cfile_default_compression_codec</code></a></h3>
+<div class="paragraph">
+<p>Default cfile block compression codec.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>none</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_cfile_write_checksums"><a class="link" href="#kudu-tserver_cfile_write_checksums"><code>--cfile_write_checksums</code></a></h3>
+<div class="paragraph">
+<p>Write CRC32 checksums for each block</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_consensus_rpc_timeout_ms"><a class="link" href="#kudu-tserver_consensus_rpc_timeout_ms"><code>--consensus_rpc_timeout_ms</code></a></h3>
+<div class="paragraph">
+<p>Timeout used for all consensus internal RPC communications.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_consensus_max_batch_size_bytes"><a class="link" href="#kudu-tserver_consensus_max_batch_size_bytes"><code>--consensus_max_batch_size_bytes</code></a></h3>
+<div class="paragraph">
+<p>The maximum per-tablet RPC batch size when updating peers.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1048576</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_follower_unavailable_considered_failed_sec"><a class="link" href="#kudu-tserver_follower_unavailable_considered_failed_sec"><code>--follower_unavailable_considered_failed_sec</code></a></h3>
+<div class="paragraph">
+<p>Seconds that a leader is unable to successfully heartbeat to a follower after which the follower is considered to be failed and evicted from the config.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>300</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_fs_wal_dir_reserved_bytes"><a class="link" href="#kudu-tserver_fs_wal_dir_reserved_bytes"><code>--fs_wal_dir_reserved_bytes</code></a></h3>
+<div class="paragraph">
+<p>Number of bytes to reserve on the log directory filesystem for non-Kudu usage. The default, which is represented by -1, is that 1% of the disk space on each disk will be reserved. Any other value specified represents the number of bytes reserved and must be greater than or equal to 0. Explicit percentages to reserve are not currently supported</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>-1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving,runtime</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_group_commit_queue_size_bytes"><a class="link" href="#kudu-tserver_group_commit_queue_size_bytes"><code>--group_commit_queue_size_bytes</code></a></h3>
+<div class="paragraph">
+<p>Maximum size of the group commit queue in bytes</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>4194304</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_log_min_segments_to_retain"><a class="link" href="#kudu-tserver_log_min_segments_to_retain"><code>--log_min_segments_to_retain</code></a></h3>
+<div class="paragraph">
+<p>The minimum number of past log segments to keep at all times, regardless of what is required for durability. Must be at least 1.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,runtime</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_global_log_cache_size_limit_mb"><a class="link" href="#kudu-tserver_global_log_cache_size_limit_mb"><code>--global_log_cache_size_limit_mb</code></a></h3>
+<div class="paragraph">
+<p>Server-wide version of 'log_cache_size_limit_mb'. The total memory used for caching log entries across all tablets is kept under this threshold.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1024</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_log_cache_size_limit_mb"><a class="link" href="#kudu-tserver_log_cache_size_limit_mb"><code>--log_cache_size_limit_mb</code></a></h3>
+<div class="paragraph">
+<p>The total per-tablet size of consensus entries which may be kept in memory. The log cache attempts to keep all entries which have not yet been replicated to all followers in memory, but if the total size of those entries exceeds this limit within an individual tablet, the oldest will be evicted.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>128</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_log_async_preallocate_segments"><a class="link" href="#kudu-tserver_log_async_preallocate_segments"><code>--log_async_preallocate_segments</code></a></h3>
+<div class="paragraph">
+<p>Whether the WAL segments preallocation should happen asynchronously</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_log_preallocate_segments"><a class="link" href="#kudu-tserver_log_preallocate_segments"><code>--log_preallocate_segments</code></a></h3>
+<div class="paragraph">
+<p>Whether the WAL should preallocate the entire segment before writing to it</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_log_segment_size_mb"><a class="link" href="#kudu-tserver_log_segment_size_mb"><code>--log_segment_size_mb</code></a></h3>
+<div class="paragraph">
+<p>The default size for log segments, in MB</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>8</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_evict_failed_followers"><a class="link" href="#kudu-tserver_evict_failed_followers"><code>--evict_failed_followers</code></a></h3>
+<div class="paragraph">
+<p>Whether to evict followers from the Raft config that have fallen too far behind the leader&#8217;s log to catch up normally or have been unreachable by the leader for longer than follower_unavailable_considered_failed_sec</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_leader_failure_max_missed_heartbeat_periods"><a class="link" href="#kudu-tserver_leader_failure_max_missed_heartbeat_periods"><code>--leader_failure_max_missed_heartbeat_periods</code></a></h3>
+<div class="paragraph">
+<p>Maximum heartbeat periods that the leader can fail to heartbeat in before we consider the leader to be failed. The total failure timeout in milliseconds is raft_heartbeat_interval_ms times leader_failure_max_missed_heartbeat_periods. The value passed to this flag may be fractional.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>3</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_raft_heartbeat_interval_ms"><a class="link" href="#kudu-tserver_raft_heartbeat_interval_ms"><code>--raft_heartbeat_interval_ms</code></a></h3>
+<div class="paragraph">
+<p>The heartbeat interval for Raft replication. The leader produces heartbeats to followers at this interval. The followers expect a heartbeat at this interval and consider a leader to have failed if it misses several in a row.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>500</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_safe_time_advancement_without_writes"><a class="link" href="#kudu-tserver_safe_time_advancement_without_writes"><code>--safe_time_advancement_without_writes</code></a></h3>
+<div class="paragraph">
+<p>Whether to enable the advancement of "safe" time in the absense of write operations</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_block_manager_max_open_files"><a class="link" href="#kudu-tserver_block_manager_max_open_files"><code>--block_manager_max_open_files</code></a></h3>
+<div class="paragraph">
+<p>Maximum number of open file descriptors to be used for data blocks. If -1, Kudu will use 40% of its resource limit as per getrlimit(). This is a soft limit. It is an error to use a value of 0.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>-1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_fs_data_dirs_full_disk_cache_seconds"><a class="link" href="#kudu-tserver_fs_data_dirs_full_disk_cache_seconds"><code>--fs_data_dirs_full_disk_cache_seconds</code></a></h3>
+<div class="paragraph">
+<p>Number of seconds we cache the full-disk status in the block manager. During this time, writes to the corresponding root path will not be attempted.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>30</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_fs_data_dirs_reserved_bytes"><a class="link" href="#kudu-tserver_fs_data_dirs_reserved_bytes"><code>--fs_data_dirs_reserved_bytes</code></a></h3>
+<div class="paragraph">
+<p>Number of bytes to reserve on each data directory filesystem for non-Kudu usage. The default, which is represented by -1, is that 1% of the disk space on each disk will be reserved. Any other value specified represents the number of bytes reserved and must be greater than or equal to 0. Explicit percentages to reserve are not currently supported</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>-1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving,runtime</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_block_manager"><a class="link" href="#kudu-tserver_block_manager"><code>--block_manager</code></a></h3>
+<div class="paragraph">
+<p>Which block manager to use for storage. Valid options are 'file' and 'log'.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>log</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_log_container_excess_space_before_cleanup_fraction"><a class="link" href="#kudu-tserver_log_container_excess_space_before_cleanup_fraction"><code>--log_container_excess_space_before_cleanup_fraction</code></a></h3>
+<div class="paragraph">
+<p>Additional fraction of a log container&#8217;s calculated size that must be consumed on disk before the container is considered to be inconsistent and subject to excess space cleanup at block manager startup.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0.10000000000000001</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_log_container_max_blocks"><a class="link" href="#kudu-tserver_log_container_max_blocks"><code>--log_container_max_blocks</code></a></h3>
+<div class="paragraph">
+<p>Maximum number of blocks (soft) of a log container. Use 0 for no limit. Use -1 for no limit except in the case of a kernel bug with hole punching on ext4 (see KUDU-1508 for details).</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>-1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_log_container_max_size"><a class="link" href="#kudu-tserver_log_container_max_size"><code>--log_container_max_size</code></a></h3>
+<div class="paragraph">
+<p>Maximum size (soft) of a log container</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">uint64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10737418240</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_log_container_preallocate_bytes"><a class="link" href="#kudu-tserver_log_container_preallocate_bytes"><code>--log_container_preallocate_bytes</code></a></h3>
+<div class="paragraph">
+<p>Number of bytes to preallocate in a log container when creating new blocks. Set to 0 to disable preallocation</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">uint64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>33554432</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_rpc_acceptor_listen_backlog"><a class="link" href="#kudu-tserver_rpc_acceptor_listen_backlog"><code>--rpc_acceptor_listen_backlog</code></a></h3>
+<div class="paragraph">
+<p>Socket backlog parameter used when listening for RPC connections. This defines the maximum length to which the queue of pending TCP connections inbound to the RPC server may grow. If a connection request arrives when the queue is full, the client may receive an error. Higher values may help the server ride over bursts of new inbound connection requests.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>128</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_rpc_authentication"><a class="link" href="#kudu-tserver_rpc_authentication"><code>--rpc_authentication</code></a></h3>
+<div class="paragraph">
+<p>Whether to require RPC connections to authenticate. Must be one of 'disabled', 'optional', or 'required'. If 'optional', authentication will be used when the remote end supports it. If 'required', connections which are not able to authenticate (because the remote end lacks support) are rejected. Secure clusters should use 'required'.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>optional</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_rpc_default_keepalive_time_ms"><a class="link" href="#kudu-tserver_rpc_default_keepalive_time_ms"><code>--rpc_default_keepalive_time_ms</code></a></h3>
+<div class="paragraph">
+<p>If an RPC connection from a client is idle for this amount of time, the server will disconnect the client.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>65000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_rpc_encryption"><a class="link" href="#kudu-tserver_rpc_encryption"><code>--rpc_encryption</code></a></h3>
+<div class="paragraph">
+<p>Whether to require RPC connections to be encrypted. Must be one of 'disabled', 'optional', or 'required'. If 'optional', encryption will be used when the remote end supports it. If 'required', connections which are not able to use encryption (because the remote end lacks support) are rejected. If 'disabled', encryption will not be used, and RPC authentication (--rpc_authentication) must also be disabled as well. Secure clusters should use 'required'.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>optional</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_rpc_encrypt_loopback_connections"><a class="link" href="#kudu-tserver_rpc_encrypt_loopback_connections"><code>--rpc_encrypt_loopback_connections</code></a></h3>
+<div class="paragraph">
+<p>Whether to encrypt data transfer on RPC connections that stay within a single host. Encryption here is likely to offer no additional security benefit since only a local 'root' user could intercept the traffic, and wire encryption does not suitably protect against such an attacker.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_rpc_callback_max_cycles"><a class="link" href="#kudu-tserver_rpc_callback_max_cycles"><code>--rpc_callback_max_cycles</code></a></h3>
+<div class="paragraph">
+<p>The maximum number of cycles for which an RPC callback should be allowed to run without emitting a warning. (Advanced debugging option)</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>100000000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_rpc_negotiation_timeout_ms"><a class="link" href="#kudu-tserver_rpc_negotiation_timeout_ms"><code>--rpc_negotiation_timeout_ms</code></a></h3>
+<div class="paragraph">
+<p>Timeout for negotiating an RPC connection.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>3000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_remember_clients_ttl_ms"><a class="link" href="#kudu-tserver_remember_clients_ttl_ms"><code>--remember_clients_ttl_ms</code></a></h3>
+<div class="paragraph">
+<p>Maximum amount of time, in milliseconds, the server "remembers" a client for the purpose of caching its responses. After this period without hearing from it, the client is no longer remembered and the memory occupied by its responses is reclaimed. Retries of requests older than 'remember_clients_ttl_ms' are treated as new ones.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>3600000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_remember_responses_ttl_ms"><a class="link" href="#kudu-tserver_remember_responses_ttl_ms"><code>--remember_responses_ttl_ms</code></a></h3>
+<div class="paragraph">
+<p>Maximum amount of time, in milliseconds, the server "remembers" a response to a specific request for a client. After this period has elapsed, the response may have been garbage collected and the client might get a response indicating the request is STALE.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>600000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_rpc_dump_all_traces"><a class="link" href="#kudu-tserver_rpc_dump_all_traces"><code>--rpc_dump_all_traces</code></a></h3>
+<div class="paragraph">
+<p>If true, dump all RPC traces at INFO level</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_trusted_subnets"><a class="link" href="#kudu-tserver_trusted_subnets"><code>--trusted_subnets</code></a></h3>
+<div class="paragraph">
+<p>A trusted subnet whitelist. If set explicitly, all unauthenticated or unencrypted connections are prohibited except the ones from the specified address blocks. Otherwise, private network (127.0.0.0/8, etc.) and local subnets of all local network interfaces will be used. Set it to '0.0.0.0/0' to allow unauthenticated/unencrypted connections from all remote IP addresses. However, if network access is not otherwise restricted by a firewall, malicious users may be able to gain unauthorized access.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>127.0.0.0/8,10.0.0.0/8,172.16.0.0/12,192.168.0.0/16,169.254.0.0/16</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_rpc_max_message_size"><a class="link" href="#kudu-tserver_rpc_max_message_size"><code>--rpc_max_message_size</code></a></h3>
+<div class="paragraph">
+<p>The maximum size of a message that any RPC that the server will accept. Must be at least 1MB.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>52428800</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_rpc_tls_ciphers"><a class="link" href="#kudu-tserver_rpc_tls_ciphers"><code>--rpc_tls_ciphers</code></a></h3>
+<div class="paragraph">
+<p>The cipher suite preferences to use for TLS-secured RPC connections. Uses the OpenSSL cipher preference list format. See man (1) ciphers for more information.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256AES256-GCM-SHA384:AES128-GCM-SHA256:AES256-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_rpc_tls_min_protocol"><a class="link" href="#kudu-tserver_rpc_tls_min_protocol"><code>--rpc_tls_min_protocol</code></a></h3>
+<div class="paragraph">
+<p>The minimum protocol version to allow when for securing RPC connections with TLS. May be one of 'TLSv1', 'TLSv1.1', or 'TLSv1.2'.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>TLSv1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_web_log_bytes"><a class="link" href="#kudu-tserver_web_log_bytes"><code>--web_log_bytes</code></a></h3>
+<div class="paragraph">
+<p>The maximum number of bytes to display on the debug webserver&#8217;s log page</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1048576</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_max_clock_sync_error_usec"><a class="link" href="#kudu-tserver_max_clock_sync_error_usec"><code>--max_clock_sync_error_usec</code></a></h3>
+<div class="paragraph">
+<p>Maximum allowed clock synchronization error as reported by NTP before the server will abort.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10000000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_rpc_advertised_addresses"><a class="link" href="#kudu-tserver_rpc_advertised_addresses"><code>--rpc_advertised_addresses</code></a></h3>
+<div class="paragraph">
+<p>Comma-separated list of addresses to advertise externally for RPC connections. Ephemeral ports (i.e. port 0) are not allowed. This should be configured when the locally bound RPC addresses specified in --rpc_bind_addresses are not externally resolvable, for example, if Kudu is deployed in a container.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_rpc_num_acceptors_per_address"><a class="link" href="#kudu-tserver_rpc_num_acceptors_per_address"><code>--rpc_num_acceptors_per_address</code></a></h3>
+<div class="paragraph">
+<p>Number of RPC acceptor threads for each bound address</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_rpc_num_service_threads"><a class="link" href="#kudu-tserver_rpc_num_service_threads"><code>--rpc_num_service_threads</code></a></h3>
+<div class="paragraph">
+<p>Number of RPC worker threads to run</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_rpc_service_queue_length"><a class="link" href="#kudu-tserver_rpc_service_queue_length"><code>--rpc_service_queue_length</code></a></h3>
+<div class="paragraph">
+<p>Default length of queue for incoming RPC requests</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>50</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_max_negotiation_threads"><a class="link" href="#kudu-tserver_max_negotiation_threads"><code>--max_negotiation_threads</code></a></h3>
+<div class="paragraph">
+<p>Maximum number of connection negotiation threads.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>50</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_min_negotiation_threads"><a class="link" href="#kudu-tserver_min_negotiation_threads"><code>--min_negotiation_threads</code></a></h3>
+<div class="paragraph">
+<p>Minimum number of connection negotiation threads.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_num_reactor_threads"><a class="link" href="#kudu-tserver_num_reactor_threads"><code>--num_reactor_threads</code></a></h3>
+<div class="paragraph">
+<p>Number of libev reactor threads to start.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>4</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_webserver_enabled"><a class="link" href="#kudu-tserver_webserver_enabled"><code>--webserver_enabled</code></a></h3>
+<div class="paragraph">
+<p>Whether to enable the web server on this daemon. NOTE: disabling the web server is also likely to prevent monitoring systems from properly capturing metrics.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_metrics_log_interval_ms"><a class="link" href="#kudu-tserver_metrics_log_interval_ms"><code>--metrics_log_interval_ms</code></a></h3>
+<div class="paragraph">
+<p>Interval (in milliseconds) at which the server will dump its metrics to a local log file. The log files are located in the same directory as specified by the -log_dir flag. If this is not a positive value, then metrics logging will be disabled.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_webserver_max_post_length_bytes"><a class="link" href="#kudu-tserver_webserver_max_post_length_bytes"><code>--webserver_max_post_length_bytes</code></a></h3>
+<div class="paragraph">
+<p>The maximum length of a POST request that will be accepted by the embedded web server.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1048576</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_webserver_x_frame_options"><a class="link" href="#kudu-tserver_webserver_x_frame_options"><code>--webserver_x_frame_options</code></a></h3>
+<div class="paragraph">
+<p>The webserver will add an 'X-Frame-Options' HTTP header with this value to all responses. This can help prevent clickjacking attacks.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>DENY</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_webserver_advertised_addresses"><a class="link" href="#kudu-tserver_webserver_advertised_addresses"><code>--webserver_advertised_addresses</code></a></h3>
+<div class="paragraph">
+<p>Comma-separated list of addresses to advertise externally for HTTP(S) connections. Ephemeral ports (i.e. port 0) are not allowed. This should be configured when the locally bound webserver address specified in --webserver_interface and --webserver_port are not externally resolvable, for example, if Kudu is deployed in a container.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_webserver_authentication_domain"><a class="link" href="#kudu-tserver_webserver_authentication_domain"><code>--webserver_authentication_domain</code></a></h3>
+<div class="paragraph">
+<p>Domain used for debug webserver authentication</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_webserver_doc_root"><a class="link" href="#kudu-tserver_webserver_doc_root"><code>--webserver_doc_root</code></a></h3>
+<div class="paragraph">
+<p>Files under &lt;webserver_doc_root&gt; are accessible via the debug webserver. Defaults to $KUDU_HOME/www, or if $KUDU_HOME is not set, disables the document root</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_webserver_enable_doc_root"><a class="link" href="#kudu-tserver_webserver_enable_doc_root"><code>--webserver_enable_doc_root</code></a></h3>
+<div class="paragraph">
+<p>If true, webserver may serve static files from the webserver_doc_root</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_webserver_interface"><a class="link" href="#kudu-tserver_webserver_interface"><code>--webserver_interface</code></a></h3>
+<div class="paragraph">
+<p>Interface to start debug webserver on. If blank, webserver binds to 0.0.0.0</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_webserver_num_worker_threads"><a class="link" href="#kudu-tserver_webserver_num_worker_threads"><code>--webserver_num_worker_threads</code></a></h3>
+<div class="paragraph">
+<p>Maximum number of threads to start for handling web server requests</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>50</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_webserver_password_file"><a class="link" href="#kudu-tserver_webserver_password_file"><code>--webserver_password_file</code></a></h3>
+<div class="paragraph">
+<p>(Optional) Location of .htpasswd file containing user names and hashed passwords for debug webserver authentication</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_enable_undo_delta_block_gc"><a class="link" href="#kudu-tserver_enable_undo_delta_block_gc"><code>--enable_undo_delta_block_gc</code></a></h3>
+<div class="paragraph">
+<p>Whether to enable undo delta block garbage collection. This only affects the undo delta block deletion background task, and doesn&#8217;t control whether compactions delete ancient history. To change what is considered ancient history use --tablet_history_max_age_sec</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_tablet_bloom_block_size"><a class="link" href="#kudu-tserver_tablet_bloom_block_size"><code>--tablet_bloom_block_size</code></a></h3>
+<div class="paragraph">
+<p>Block size of the bloom filters used for tablet keys.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>4096</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_tablet_bloom_target_fp_rate"><a class="link" href="#kudu-tserver_tablet_bloom_target_fp_rate"><code>--tablet_bloom_target_fp_rate</code></a></h3>
+<div class="paragraph">
+<p>Target false-positive rate (between 0 and 1) to size tablet key bloom filters. A lower false positive rate may reduce the number of disk seeks required in heavy insert workloads, at the expense of more space and RAM required for bloom filters.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>9.9999997473787516e-05</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_tablet_history_max_age_sec"><a class="link" href="#kudu-tserver_tablet_history_max_age_sec"><code>--tablet_history_max_age_sec</code></a></h3>
+<div class="paragraph">
+<p>Number of seconds to retain tablet history. Reads initiated at a snapshot that is older than this age will be rejected. To disable history removal, set to -1.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>900</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_undo_delta_block_gc_init_budget_millis"><a class="link" href="#kudu-tserver_undo_delta_block_gc_init_budget_millis"><code>--undo_delta_block_gc_init_budget_millis</code></a></h3>
+<div class="paragraph">
+<p>The maximum number of milliseconds we will spend initializing UNDO delta blocks per invocation of UndoDeltaBlockGCOp. Existing delta blocks must be initialized once per process startup to determine when they can be deleted.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,evolving</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_tablet_transaction_memory_limit_mb"><a class="link" href="#kudu-tserver_tablet_transaction_memory_limit_mb"><code>--tablet_transaction_memory_limit_mb</code></a></h3>
+<div class="paragraph">
+<p>Maximum amount of memory that may be consumed by all in-flight transactions belonging to a particular tablet. When this limit is reached, new transactions will be rejected and clients will be forced to retry them. If -1, transaction memory tracking is disabled.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>64</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_heartbeat_interval_ms"><a class="link" href="#kudu-tserver_heartbeat_interval_ms"><code>--heartbeat_interval_ms</code></a></h3>
+<div class="paragraph">
+<p>Interval at which the TS heartbeats to the master.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_heartbeat_max_failures_before_backoff"><a class="link" href="#kudu-tserver_heartbeat_max_failures_before_backoff"><code>--heartbeat_max_failures_before_backoff</code></a></h3>
+<div class="paragraph">
+<p>Maximum number of consecutive heartbeat failures until the Tablet Server backs off to the normal heartbeat interval, rather than retrying.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>3</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_heartbeat_rpc_timeout_ms"><a class="link" href="#kudu-tserver_heartbeat_rpc_timeout_ms"><code>--heartbeat_rpc_timeout_ms</code></a></h3>
+<div class="paragraph">
+<p>Timeout used for the TS&#8594;Master heartbeat RPCs.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>15000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_scanner_ttl_ms"><a class="link" href="#kudu-tserver_scanner_ttl_ms"><code>--scanner_ttl_ms</code></a></h3>
+<div class="paragraph">
+<p>Number of milliseconds of inactivity allowed for a scannerbefore it may be expired</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>60000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_scanner_batch_size_rows"><a class="link" href="#kudu-tserver_scanner_batch_size_rows"><code>--scanner_batch_size_rows</code></a></h3>
+<div class="paragraph">
+<p>The number of rows to batch for servicing scan requests.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>100</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_scanner_default_batch_size_bytes"><a class="link" href="#kudu-tserver_scanner_default_batch_size_bytes"><code>--scanner_default_batch_size_bytes</code></a></h3>
+<div class="paragraph">
+<p>The default size for batches of scan results</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1048576</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_scanner_max_batch_size_bytes"><a class="link" href="#kudu-tserver_scanner_max_batch_size_bytes"><code>--scanner_max_batch_size_bytes</code></a></h3>
+<div class="paragraph">
+<p>The maximum batch size that a client may request for scan results.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>8388608</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_scanner_max_wait_ms"><a class="link" href="#kudu-tserver_scanner_max_wait_ms"><code>--scanner_max_wait_ms</code></a></h3>
+<div class="paragraph">
+<p>The maximum amount of time (in milliseconds) we&#8217;ll hang a scanner thread waiting for safe time to advance or transactions to commit, even if its deadline allows waiting longer.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_num_tablets_to_copy_simultaneously"><a class="link" href="#kudu-tserver_num_tablets_to_copy_simultaneously"><code>--num_tablets_to_copy_simultaneously</code></a></h3>
+<div class="paragraph">
+<p>Number of threads available to copy tablets from remote servers.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_num_tablets_to_open_simultaneously"><a class="link" href="#kudu-tserver_num_tablets_to_open_simultaneously"><code>--num_tablets_to_open_simultaneously</code></a></h3>
+<div class="paragraph">
+<p>Number of threads available to open tablets during startup. If this is set to 0 (the default), then the number of bootstrap threads will be set based on the number of data directories. If the data directories are on some very fast storage device such as SSD or a RAID array, it may make sense to manually tune this.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_env_use_fsync"><a class="link" href="#kudu-tserver_env_use_fsync"><code>--env_use_fsync</code></a></h3>
+<div class="paragraph">
+<p>Use fsync(2) instead of fdatasync(2) for synchronizing dirty data to disk.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_suicide_on_eio"><a class="link" href="#kudu-tserver_suicide_on_eio"><code>--suicide_on_eio</code></a></h3>
+<div class="paragraph">
+<p>Kill the process if an I/O operation results in EIO</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_file_cache_expiry_period_ms"><a class="link" href="#kudu-tserver_file_cache_expiry_period_ms"><code>--file_cache_expiry_period_ms</code></a></h3>
+<div class="paragraph">
+<p>Period of time (in ms) between removing expired file cache descriptors</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>60000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_disable_core_dumps"><a class="link" href="#kudu-tserver_disable_core_dumps"><code>--disable_core_dumps</code></a></h3>
+<div class="paragraph">
+<p>Disable core dumps when this process crashes.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_redact"><a class="link" href="#kudu-tserver_redact"><code>--redact</code></a></h3>
+<div class="paragraph">
+<p>Comma-separated list of redactions. Supported options are 'flag', 'log', 'all', and 'none'. If 'flag' is specified, configuration flags which may include sensitive data will be redacted whenever server configuration is emitted. If 'log' is specified, row data will be redacted from log and error messages. If 'all' is specified, all of above will be redacted. If 'none' is specified, no redaction will occur.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>all</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_umask"><a class="link" href="#kudu-tserver_umask"><code>--umask</code></a></h3>
+<div class="paragraph">
+<p>The umask that will be used when creating files and directories. Permissions of top-level data directories will also be modified at start-up to conform to the given umask. Changing this value may enable unauthorized local users to read or modify data stored by Kudu.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>077</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_metrics_retirement_age_ms"><a class="link" href="#kudu-tserver_metrics_retirement_age_ms"><code>--metrics_retirement_age_ms</code></a></h3>
+<div class="paragraph">
+<p>The minimum number of milliseconds a metric will be kept for after it is no longer active. (Advanced option)</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>120000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,runtime</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_enable_minidumps"><a class="link" href="#kudu-tserver_enable_minidumps"><code>--enable_minidumps</code></a></h3>
+<div class="paragraph">
+<p>Whether to enable minidump generation upon process crash or SIGUSR1. Currently only supported on Linux systems.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_max_minidumps"><a class="link" href="#kudu-tserver_max_minidumps"><code>--max_minidumps</code></a></h3>
+<div class="paragraph">
+<p>Maximum number of minidump files to keep per daemon. Older files are removed first. Set to 0 to keep all minidump files.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>9</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_minidump_path"><a class="link" href="#kudu-tserver_minidump_path"><code>--minidump_path</code></a></h3>
+<div class="paragraph">
+<p>Directory to write minidump files to. This can be either an absolute path or a path relative to --log_dir. Each daemon will create an additional sub-directory to prevent naming conflicts and to make it easier to identify a crashing daemon. Minidump files contain crash-related information in a compressed format. Minidumps will be written when a daemon exits unexpectedly, for example on an unhandled exception or signal, or when a SIGUSR1 signal is sent to the process. Cannot be set to an empty value.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>minidumps</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_minidump_size_limit_hint_kb"><a class="link" href="#kudu-tserver_minidump_size_limit_hint_kb"><code>--minidump_size_limit_hint_kb</code></a></h3>
+<div class="paragraph">
+<p>Size limit hint for minidump files in KB. If a minidump exceeds this value, then breakpad will reduce the stack memory it collects for each thread from 8KB to 2KB. However it will always include the full stack memory for the first 20 threads, including the thread that crashed.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>20480</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">evolving,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_memory_limit_soft_percentage"><a class="link" href="#kudu-tserver_memory_limit_soft_percentage"><code>--memory_limit_soft_percentage</code></a></h3>
+<div class="paragraph">
+<p>Percentage of the hard memory limit that this daemon may consume before memory throttling of writes begins. The greater the excess, the higher the chance of throttling. In general, a lower soft limit leads to smoother write latencies but decreased throughput, and vice versa for a higher soft limit.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>80</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_memory_limit_warn_threshold_percentage"><a class="link" href="#kudu-tserver_memory_limit_warn_threshold_percentage"><code>--memory_limit_warn_threshold_percentage</code></a></h3>
+<div class="paragraph">
+<p>Percentage of the hard memory limit that this daemon may consume before WARNING level messages are periodically logged.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>98</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_memory_pressure_percentage"><a class="link" href="#kudu-tserver_memory_pressure_percentage"><code>--memory_pressure_percentage</code></a></h3>
+<div class="paragraph">
+<p>Percentage of the hard memory limit that this daemon may consume before flushing of in-memory data becomes prioritized.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>60</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_tcmalloc_max_free_bytes_percentage"><a class="link" href="#kudu-tserver_tcmalloc_max_free_bytes_percentage"><code>--tcmalloc_max_free_bytes_percentage</code></a></h3>
+<div class="paragraph">
+<p>Maximum percentage of the RSS that tcmalloc is allowed to use for reserved but unallocated memory.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_drop_log_memory"><a class="link" href="#kudu-tserver_drop_log_memory"><code>--drop_log_memory</code></a></h3>
+<div class="paragraph">
+<p>Drop in-memory buffers of log contents. Logs can grow very quickly and they are rarely read before they need to be evicted from memory. Instead, drop them from memory as soon as they are flushed to disk.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_log_backtrace_at"><a class="link" href="#kudu-tserver_log_backtrace_at"><code>--log_backtrace_at</code></a></h3>
+<div class="paragraph">
+<p>Emit a backtrace when logging at file:linenum.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_logbuflevel"><a class="link" href="#kudu-tserver_logbuflevel"><code>--logbuflevel</code></a></h3>
+<div class="paragraph">
+<p>Buffer log messages logged at this level or lower (-1 means don&#8217;t buffer; 0 means buffer INFO only; &#8230;&#8203;)</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_logbufsecs"><a class="link" href="#kudu-tserver_logbufsecs"><code>--logbufsecs</code></a></h3>
+<div class="paragraph">
+<p>Buffer log messages for at most this many seconds</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>5</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu-tserver_logfile_mode"><a class="link" href="#kudu-tserver_logfile_mode"><code>--logfile_mode</code></a></h3>
+<div class="paragraph">
+<p>Log file mode/permissions.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>436</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>&#160;</p>
+</div>
+<hr>
+</div>
+</div>
+</div>
+    </div>
+    <div class="col-md-3">
+
+  <div id="toc" data-spy="affix" data-offset-top="70">
+  <ul>
+
+      <li>
+
+          <a href="index.html">Introducing Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="release_notes.html">Kudu Release Notes</a> 
+      </li> 
+      <li>
+
+          <a href="quickstart.html">Getting Started with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="installation.html">Installation Guide</a> 
+      </li> 
+      <li>
+
+          <a href="configuration.html">Configuring Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="kudu_impala_integration.html">Using Impala with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="administration.html">Administering Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="troubleshooting.html">Troubleshooting Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="developing.html">Developing Applications with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="schema_design.html">Kudu Schema Design</a> 
+      </li> 
+      <li>
+
+          <a href="security.html">Kudu Security</a> 
+      </li> 
+      <li>
+
+          <a href="transaction_semantics.html">Kudu Transaction Semantics</a> 
+      </li> 
+      <li>
+
+          <a href="background_tasks.html">Background Maintenance Tasks</a> 
+      </li> 
+      <li>
+
+          <a href="configuration_reference.html">Kudu Configuration Reference</a> 
+      </li> 
+      <li>
+
+          <a href="command_line_tools_reference.html">Kudu Command Line Tools Reference</a> 
+      </li> 
+      <li>
+
+          <a href="known_issues.html">Known Issues and Limitations</a> 
+      </li> 
+      <li>
+
+          <a href="contributing.html">Contributing to Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="export_control.html">Export Control Notice</a> 
+      </li> 
+  </ul>
+  </div>
+    </div>
+  </div>
+</div>
+      <footer class="footer">
+        <p class="small">
+        Copyright &copy; 2016 The Apache Software Foundation.  Last updated 2017-06-13 10:50:35 PDT 
+        </p>
+      </footer>
+    </div>
+    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
+    <script>
+      // Try to detect touch-screen devices. Note: Many laptops have touch screens.
+      $(document).ready(function() {
+        if ("ontouchstart" in document.documentElement) {
+          $(document.documentElement).addClass("touch");
+        } else {
+          $(document.documentElement).addClass("no-touch");
+        }
+      });
+    </script>
+    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"
+            integrity="sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS"
+            crossorigin="anonymous"></script>
+    <script>
+      (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+      (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+      m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+      })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+
+      ga('create', 'UA-68448017-1', 'auto');
+      ga('send', 'pageview');
+    </script>
+    <script src="https://cdnjs.cloudflare.com/ajax/libs/anchor-js/3.1.0/anchor.js"></script>
+    <script>
+      anchors.options = {
+        placement: 'right',
+        visible: 'touch',
+      };
+      anchors.add();
+    </script>
+  </body>
+</html>
+
diff --git a/releases/1.4.0/docs/kudu-tserver_configuration_reference_unsupported.html b/releases/1.4.0/docs/kudu-tserver_configuration_reference_unsupported.html
new file mode 100644
index 0000000..8c0c058
--- /dev/null
+++ b/releases/1.4.0/docs/kudu-tserver_configuration_reference_unsupported.html
@@ -0,0 +1,3666 @@
+<!DOCTYPE html>
+<html lang="en">
+  <head>
+    <meta charset="utf-8" />
+    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
+    <meta name="viewport" content="width=device-width, initial-scale=1" />
+    <!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
+    <meta name="description" content="A new open source Apache Hadoop ecosystem project, Apache Kudu completes Hadoop's storage layer to enable fast analytics on fast data" />
+    <meta name="author" content="Cloudera" />
+    <title>Apache Kudu - kudu-tserver Unsupported Flags</title>
+    <!-- Bootstrap core CSS -->
+    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css"
+          integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7"
+          crossorigin="anonymous">
+
+    <!-- Custom styles for this template -->
+    <link href="/css/kudu.css" rel="stylesheet"/>
+    <link href="/css/asciidoc.css" rel="stylesheet"/>
+    <link rel="shortcut icon" href="/img/logo-favicon.ico" />
+    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.6.1/css/font-awesome.min.css" />
+
+    
+
+    <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+        <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+        <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+        <![endif]-->
+  </head>
+  <body>
+    <div class="kudu-site container-fluid">
+      <!-- Static navbar -->
+        <nav class="navbar navbar-default">
+          <div class="container-fluid">
+            <div class="navbar-header">
+              <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
+                <span class="sr-only">Toggle navigation</span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+              </button>
+              
+              <a class="logo" href="/"><img
+                src="//d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_80px.png"
+                srcset="//d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_80px.png 1x, //d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_160px.png 2x"
+                alt="Apache Kudu"/></a>
+              
+            </div>
+            <div id="navbar" class="collapse navbar-collapse">
+              <ul class="nav navbar-nav navbar-right">
+                <li >
+                  <a href="/">Home</a>
+                </li>
+                <li >
+                  <a href="/overview.html">Overview</a>
+                </li>
+                <li class="active">
+                  <a href="/docs/">Documentation</a>
+                </li>
+                <li >
+                  <a href="/releases/">Download</a>
+                </li>
+                <li >
+                  <a href="/blog/">Blog</a>
+                </li>
+                <!-- NOTE: this dropdown menu does not appear on Mobile, so don't add anything here
+                     that doesn't also appear elsewhere on the site. -->
+                <li class="dropdown">
+                  <a href="/community.html" role="button" aria-haspopup="true" aria-expanded="false">Community <span class="caret"></span></a>
+                  <ul class="dropdown-menu">
+                    <li class="dropdown-header">GET IN TOUCH</li>
+                    <li><a class="icon email" href="/community.html">Mailing Lists</a></li>
+                    <li><a class="icon slack" href="https://getkudu-slack.herokuapp.com/">Slack Channel</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li><a href="/community.html#meetups-user-groups-and-conference-presentations">Events and Meetups</a></li>
+                    <li><a href="/committers.html">Project Committers</a></li>
+                    <!--<li><a href="/roadmap.html">Roadmap</a></li>-->
+                    <li><a href="/community.html#contributions">How to Contribute</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li class="dropdown-header">DEVELOPER RESOURCES</li>
+                    <li><a class="icon github" href="https://github.com/apache/incubator-kudu">GitHub</a></li>
+                    <li><a class="icon gerrit" href="http://gerrit.cloudera.org:8080/#/q/status:open+project:kudu">Gerrit Code Review</a></li>
+                    <li><a class="icon jira" href="https://issues.apache.org/jira/browse/KUDU">JIRA Issue Tracker</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li class="dropdown-header">SOCIAL MEDIA</li>
+                    <li><a class="icon twitter" href="https://twitter.com/ApacheKudu">Twitter</a></li>
+                  </ul>
+                </li>
+                <li >
+                  <a href="/faq.html">FAQ</a>
+                </li>
+              </ul><!-- /.nav -->
+            </div><!-- /#navbar -->
+          </div><!-- /.container-fluid -->
+        </nav>
+
+<!--
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
+
+
+<div class="container">
+  <div class="row">
+    <div class="col-md-9">
+
+<h1><code>kudu-tserver</code> Unsupported Flags</h1>
+      <div id="preamble">
+<div class="sectionbody">
+<div class="paragraph">
+<p>Flags not marked <code>stable</code> or <code>evolving</code> are considered experimental and are
+<strong>unsupported</strong>. They are included here for informational purposes only and are
+subject to being changed or removed without notice.</p>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_block_cache_type"><a class="link" href="#kudu-tserver_block_cache_type"><code>--block_cache_type</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Which type of block cache to use for caching data. Valid choices are 'DRAM' or 'NVM'. DRAM, the default, caches data in regular memory. 'NVM' caches data in a memory-mapped file using the NVML library.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>DRAM</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_min_compression_ratio"><a class="link" href="#kudu-tserver_min_compression_ratio"><code>--min_compression_ratio</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>If a column compression codec is configured, but the codec is unable to achieve a compression ratio at least as good as the configured value, then the data will be written uncompressed. This will reduce CPU overhead on the read side at the expense of a small amount of extra space if the codec encounters portions of data that are not easily compressible.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0.90000000000000002</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_cfile_default_block_size"><a class="link" href="#kudu-tserver_cfile_default_block_size"><code>--cfile_default_block_size</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The default block size to use in cfiles</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>262144</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_cfile_default_compression_codec"><a class="link" href="#kudu-tserver_cfile_default_compression_codec"><code>--cfile_default_compression_codec</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Default cfile block compression codec.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>none</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_cfile_do_on_finish"><a class="link" href="#kudu-tserver_cfile_do_on_finish"><code>--cfile_do_on_finish</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>What to do to cfile blocks when writing is finished. Possible values are 'close', 'flush', or 'nothing'.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>flush</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_codegen_dump_functions"><a class="link" href="#kudu-tserver_codegen_dump_functions"><code>--codegen_dump_functions</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Whether to print the LLVM IR for generated functions</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_codegen_dump_mc"><a class="link" href="#kudu-tserver_codegen_dump_mc"><code>--codegen_dump_mc</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Whether to dump the disassembly of the machine code for generated functions.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_codegen_cache_capacity"><a class="link" href="#kudu-tserver_codegen_cache_capacity"><code>--codegen_cache_capacity</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Number of entries which may be stored in the code generation cache.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>100</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_codegen_time_compilation"><a class="link" href="#kudu-tserver_codegen_time_compilation"><code>--codegen_time_compilation</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Whether to print time that each code generation request took.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_consensus_rpc_timeout_ms"><a class="link" href="#kudu-tserver_consensus_rpc_timeout_ms"><code>--consensus_rpc_timeout_ms</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Timeout used for all consensus internal RPC communications.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_consensus_max_batch_size_bytes"><a class="link" href="#kudu-tserver_consensus_max_batch_size_bytes"><code>--consensus_max_batch_size_bytes</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The maximum per-tablet RPC batch size when updating peers.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1048576</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_follower_unavailable_considered_failed_sec"><a class="link" href="#kudu-tserver_follower_unavailable_considered_failed_sec"><code>--follower_unavailable_considered_failed_sec</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Seconds that a leader is unable to successfully heartbeat to a follower after which the follower is considered to be failed and evicted from the config.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>300</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_group_commit_queue_size_bytes"><a class="link" href="#kudu-tserver_group_commit_queue_size_bytes"><code>--group_commit_queue_size_bytes</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Maximum size of the group commit queue in bytes</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>4194304</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_log_compression_codec"><a class="link" href="#kudu-tserver_log_compression_codec"><code>--log_compression_codec</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Codec to use for compressing WAL segments.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>LZ4</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_log_max_segments_to_retain"><a class="link" href="#kudu-tserver_log_max_segments_to_retain"><code>--log_max_segments_to_retain</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The maximum number of past log segments to keep at all times for the purposes of catching up other peers.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>80</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental,advanced,runtime</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_log_min_segments_to_retain"><a class="link" href="#kudu-tserver_log_min_segments_to_retain"><code>--log_min_segments_to_retain</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The minimum number of past log segments to keep at all times, regardless of what is required for durability. Must be at least 1.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,runtime</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_global_log_cache_size_limit_mb"><a class="link" href="#kudu-tserver_global_log_cache_size_limit_mb"><code>--global_log_cache_size_limit_mb</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Server-wide version of 'log_cache_size_limit_mb'. The total memory used for caching log entries across all tablets is kept under this threshold.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1024</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_log_cache_size_limit_mb"><a class="link" href="#kudu-tserver_log_cache_size_limit_mb"><code>--log_cache_size_limit_mb</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The total per-tablet size of consensus entries which may be kept in memory. The log cache attempts to keep all entries which have not yet been replicated to all followers in memory, but if the total size of those entries exceeds this limit within an individual tablet, the oldest will be evicted.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>128</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_log_async_preallocate_segments"><a class="link" href="#kudu-tserver_log_async_preallocate_segments"><code>--log_async_preallocate_segments</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Whether the WAL segments preallocation should happen asynchronously</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_log_preallocate_segments"><a class="link" href="#kudu-tserver_log_preallocate_segments"><code>--log_preallocate_segments</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Whether the WAL should preallocate the entire segment before writing to it</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_log_segment_size_mb"><a class="link" href="#kudu-tserver_log_segment_size_mb"><code>--log_segment_size_mb</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The default size for log segments, in MB</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>8</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_evict_failed_followers"><a class="link" href="#kudu-tserver_evict_failed_followers"><code>--evict_failed_followers</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Whether to evict followers from the Raft config that have fallen too far behind the leader&#8217;s log to catch up normally or have been unreachable by the leader for longer than follower_unavailable_considered_failed_sec</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_leader_failure_exp_backoff_max_delta_ms"><a class="link" href="#kudu-tserver_leader_failure_exp_backoff_max_delta_ms"><code>--leader_failure_exp_backoff_max_delta_ms</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Maximum time to sleep in between leader election retries, in addition to the regular timeout. When leader election fails the interval in between retries increases exponentially, up to this value.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>20000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_leader_failure_max_missed_heartbeat_periods"><a class="link" href="#kudu-tserver_leader_failure_max_missed_heartbeat_periods"><code>--leader_failure_max_missed_heartbeat_periods</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Maximum heartbeat periods that the leader can fail to heartbeat in before we consider the leader to be failed. The total failure timeout in milliseconds is raft_heartbeat_interval_ms times leader_failure_max_missed_heartbeat_periods. The value passed to this flag may be fractional.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>3</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_leader_failure_monitor_check_mean_ms"><a class="link" href="#kudu-tserver_leader_failure_monitor_check_mean_ms"><code>--leader_failure_monitor_check_mean_ms</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The mean failure-checking interval of the randomized failure monitor. If this is configured to -1 (the default), uses the value of 'raft_heartbeat_interval_ms'.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>-1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_leader_failure_monitor_check_stddev_ms"><a class="link" href="#kudu-tserver_leader_failure_monitor_check_stddev_ms"><code>--leader_failure_monitor_check_stddev_ms</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The standard deviation of the failure-checking interval of the randomized failure monitor. If this is configured to -1 (the default), this is set to half of the mean check interval.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>-1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_raft_enable_pre_election"><a class="link" href="#kudu-tserver_raft_enable_pre_election"><code>--raft_enable_pre_election</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>When enabled, candidates will call a pre-election before running a real leader election.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_raft_heartbeat_interval_ms"><a class="link" href="#kudu-tserver_raft_heartbeat_interval_ms"><code>--raft_heartbeat_interval_ms</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The heartbeat interval for Raft replication. The leader produces heartbeats to followers at this interval. The followers expect a heartbeat at this interval and consider a leader to have failed if it misses several in a row.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>500</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_missed_heartbeats_before_rejecting_snapshot_scans"><a class="link" href="#kudu-tserver_missed_heartbeats_before_rejecting_snapshot_scans"><code>--missed_heartbeats_before_rejecting_snapshot_scans</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The maximum raft heartbeat periods since the tablet has seen safe time advanced before refusing scans at snapshots that aren&#8217;t yet safe and forcing clients to try again.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1.5</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_safe_time_advancement_without_writes"><a class="link" href="#kudu-tserver_safe_time_advancement_without_writes"><code>--safe_time_advancement_without_writes</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Whether to enable the advancement of "safe" time in the absense of write operations</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_safe_time_max_lag_ms"><a class="link" href="#kudu-tserver_safe_time_max_lag_ms"><code>--safe_time_max_lag_ms</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The maximum amount of time we allow safe time to lag behind the requested timestampbefore forcing the client to retry, in milliseconds.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>30000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_block_coalesce_close"><a class="link" href="#kudu-tserver_block_coalesce_close"><code>--block_coalesce_close</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Coalesce synchronization of data during CloseBlocks()</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_block_manager"><a class="link" href="#kudu-tserver_block_manager"><code>--block_manager</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Which block manager to use for storage. Valid options are 'file' and 'log'.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>log</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_log_container_excess_space_before_cleanup_fraction"><a class="link" href="#kudu-tserver_log_container_excess_space_before_cleanup_fraction"><code>--log_container_excess_space_before_cleanup_fraction</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Additional fraction of a log container&#8217;s calculated size that must be consumed on disk before the container is considered to be inconsistent and subject to excess space cleanup at block manager startup.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0.10000000000000001</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_log_container_live_metadata_before_compact_ratio"><a class="link" href="#kudu-tserver_log_container_live_metadata_before_compact_ratio"><code>--log_container_live_metadata_before_compact_ratio</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Desired ratio of live block metadata in log containers. If a container&#8217;s live to total block ratio dips below this value, the container&#8217;s metadata file will be compacted at startup.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0.5</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_log_container_max_blocks"><a class="link" href="#kudu-tserver_log_container_max_blocks"><code>--log_container_max_blocks</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Maximum number of blocks (soft) of a log container. Use 0 for no limit. Use -1 for no limit except in the case of a kernel bug with hole punching on ext4 (see KUDU-1508 for details).</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>-1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_log_container_max_size"><a class="link" href="#kudu-tserver_log_container_max_size"><code>--log_container_max_size</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Maximum size (soft) of a log container</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">uint64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10737418240</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_log_container_preallocate_bytes"><a class="link" href="#kudu-tserver_log_container_preallocate_bytes"><code>--log_container_preallocate_bytes</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Number of bytes to preallocate in a log container when creating new blocks. Set to 0 to disable preallocation</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">uint64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>33554432</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_rpc_acceptor_listen_backlog"><a class="link" href="#kudu-tserver_rpc_acceptor_listen_backlog"><code>--rpc_acceptor_listen_backlog</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Socket backlog parameter used when listening for RPC connections. This defines the maximum length to which the queue of pending TCP connections inbound to the RPC server may grow. If a connection request arrives when the queue is full, the client may receive an error. Higher values may help the server ride over bursts of new inbound connection requests.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>128</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_rpc_ca_certificate_file"><a class="link" href="#kudu-tserver_rpc_ca_certificate_file"><code>--rpc_ca_certificate_file</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Path to the PEM encoded X509 certificate of the trusted external certificate authority. The provided certificate should be the root issuer of the certificate passed in '--rpc_certificate_file'.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_rpc_certificate_file"><a class="link" href="#kudu-tserver_rpc_certificate_file"><code>--rpc_certificate_file</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Path to a PEM encoded X509 certificate to use for securing RPC connections with SSL/TLS. If set, '--rpc_private_key_file' and '--rpc_ca_certificate_file' must be set as well.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_rpc_default_keepalive_time_ms"><a class="link" href="#kudu-tserver_rpc_default_keepalive_time_ms"><code>--rpc_default_keepalive_time_ms</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>If an RPC connection from a client is idle for this amount of time, the server will disconnect the client.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>65000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_rpc_private_key_file"><a class="link" href="#kudu-tserver_rpc_private_key_file"><code>--rpc_private_key_file</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Path to a PEM encoded private key paired with the certificate from '--rpc_certificate_file'</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_rpc_encrypt_loopback_connections"><a class="link" href="#kudu-tserver_rpc_encrypt_loopback_connections"><code>--rpc_encrypt_loopback_connections</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Whether to encrypt data transfer on RPC connections that stay within a single host. Encryption here is likely to offer no additional security benefit since only a local 'root' user could intercept the traffic, and wire encryption does not suitably protect against such an attacker.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_rpc_trace_negotiation"><a class="link" href="#kudu-tserver_rpc_trace_negotiation"><code>--rpc_trace_negotiation</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>If enabled, dump traces of all RPC negotiations to the log</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental,advanced,runtime</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_rpc_callback_max_cycles"><a class="link" href="#kudu-tserver_rpc_callback_max_cycles"><code>--rpc_callback_max_cycles</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The maximum number of cycles for which an RPC callback should be allowed to run without emitting a warning. (Advanced debugging option)</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>100000000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_rpc_negotiation_timeout_ms"><a class="link" href="#kudu-tserver_rpc_negotiation_timeout_ms"><code>--rpc_negotiation_timeout_ms</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Timeout for negotiating an RPC connection.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>3000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_remember_clients_ttl_ms"><a class="link" href="#kudu-tserver_remember_clients_ttl_ms"><code>--remember_clients_ttl_ms</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Maximum amount of time, in milliseconds, the server "remembers" a client for the purpose of caching its responses. After this period without hearing from it, the client is no longer remembered and the memory occupied by its responses is reclaimed. Retries of requests older than 'remember_clients_ttl_ms' are treated as new ones.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>3600000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_remember_responses_ttl_ms"><a class="link" href="#kudu-tserver_remember_responses_ttl_ms"><code>--remember_responses_ttl_ms</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Maximum amount of time, in milliseconds, the server "remembers" a response to a specific request for a client. After this period has elapsed, the response may have been garbage collected and the client might get a response indicating the request is STALE.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>600000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_rpc_dump_all_traces"><a class="link" href="#kudu-tserver_rpc_dump_all_traces"><code>--rpc_dump_all_traces</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>If true, dump all RPC traces at INFO level</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_rpc_max_message_size"><a class="link" href="#kudu-tserver_rpc_max_message_size"><code>--rpc_max_message_size</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The maximum size of a message that any RPC that the server will accept. Must be at least 1MB.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>52428800</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_ipki_server_key_size"><a class="link" href="#kudu-tserver_ipki_server_key_size"><code>--ipki_server_key_size</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>the number of bits for server cert&#8217;s private key. The server cert is used for TLS connections to and from clients and other servers.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>2048</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_rpc_tls_ciphers"><a class="link" href="#kudu-tserver_rpc_tls_ciphers"><code>--rpc_tls_ciphers</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The cipher suite preferences to use for TLS-secured RPC connections. Uses the OpenSSL cipher preference list format. See man (1) ciphers for more information.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256AES256-GCM-SHA384:AES128-GCM-SHA256:AES256-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_rpc_tls_min_protocol"><a class="link" href="#kudu-tserver_rpc_tls_min_protocol"><code>--rpc_tls_min_protocol</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The minimum protocol version to allow when for securing RPC connections with TLS. May be one of 'TLSv1', 'TLSv1.1', or 'TLSv1.2'.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>TLSv1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_web_log_bytes"><a class="link" href="#kudu-tserver_web_log_bytes"><code>--web_log_bytes</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The maximum number of bytes to display on the debug webserver&#8217;s log page</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1048576</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_max_clock_sync_error_usec"><a class="link" href="#kudu-tserver_max_clock_sync_error_usec"><code>--max_clock_sync_error_usec</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Maximum allowed clock synchronization error as reported by NTP before the server will abort.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10000000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_rpc_advertised_addresses"><a class="link" href="#kudu-tserver_rpc_advertised_addresses"><code>--rpc_advertised_addresses</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Comma-separated list of addresses to advertise externally for RPC connections. Ephemeral ports (i.e. port 0) are not allowed. This should be configured when the locally bound RPC addresses specified in --rpc_bind_addresses are not externally resolvable, for example, if Kudu is deployed in a container.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_rpc_num_acceptors_per_address"><a class="link" href="#kudu-tserver_rpc_num_acceptors_per_address"><code>--rpc_num_acceptors_per_address</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Number of RPC acceptor threads for each bound address</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_rpc_num_service_threads"><a class="link" href="#kudu-tserver_rpc_num_service_threads"><code>--rpc_num_service_threads</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Number of RPC worker threads to run</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_rpc_service_queue_length"><a class="link" href="#kudu-tserver_rpc_service_queue_length"><code>--rpc_service_queue_length</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Default length of queue for incoming RPC requests</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>50</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_max_negotiation_threads"><a class="link" href="#kudu-tserver_max_negotiation_threads"><code>--max_negotiation_threads</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Maximum number of connection negotiation threads.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>50</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_min_negotiation_threads"><a class="link" href="#kudu-tserver_min_negotiation_threads"><code>--min_negotiation_threads</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Minimum number of connection negotiation threads.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_num_reactor_threads"><a class="link" href="#kudu-tserver_num_reactor_threads"><code>--num_reactor_threads</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Number of libev reactor threads to start.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>4</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_webserver_enabled"><a class="link" href="#kudu-tserver_webserver_enabled"><code>--webserver_enabled</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Whether to enable the web server on this daemon. NOTE: disabling the web server is also likely to prevent monitoring systems from properly capturing metrics.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_metrics_log_interval_ms"><a class="link" href="#kudu-tserver_metrics_log_interval_ms"><code>--metrics_log_interval_ms</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Interval (in milliseconds) at which the server will dump its metrics to a local log file. The log files are located in the same directory as specified by the -log_dir flag. If this is not a positive value, then metrics logging will be disabled.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_webserver_max_post_length_bytes"><a class="link" href="#kudu-tserver_webserver_max_post_length_bytes"><code>--webserver_max_post_length_bytes</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The maximum length of a POST request that will be accepted by the embedded web server.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1048576</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_webserver_x_frame_options"><a class="link" href="#kudu-tserver_webserver_x_frame_options"><code>--webserver_x_frame_options</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The webserver will add an 'X-Frame-Options' HTTP header with this value to all responses. This can help prevent clickjacking attacks.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>DENY</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_webserver_advertised_addresses"><a class="link" href="#kudu-tserver_webserver_advertised_addresses"><code>--webserver_advertised_addresses</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Comma-separated list of addresses to advertise externally for HTTP(S) connections. Ephemeral ports (i.e. port 0) are not allowed. This should be configured when the locally bound webserver address specified in --webserver_interface and --webserver_port are not externally resolvable, for example, if Kudu is deployed in a container.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_webserver_authentication_domain"><a class="link" href="#kudu-tserver_webserver_authentication_domain"><code>--webserver_authentication_domain</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Domain used for debug webserver authentication</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_webserver_doc_root"><a class="link" href="#kudu-tserver_webserver_doc_root"><code>--webserver_doc_root</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Files under &lt;webserver_doc_root&gt; are accessible via the debug webserver. Defaults to $KUDU_HOME/www, or if $KUDU_HOME is not set, disables the document root</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_webserver_enable_doc_root"><a class="link" href="#kudu-tserver_webserver_enable_doc_root"><code>--webserver_enable_doc_root</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>If true, webserver may serve static files from the webserver_doc_root</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_webserver_interface"><a class="link" href="#kudu-tserver_webserver_interface"><code>--webserver_interface</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Interface to start debug webserver on. If blank, webserver binds to 0.0.0.0</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_webserver_num_worker_threads"><a class="link" href="#kudu-tserver_webserver_num_worker_threads"><code>--webserver_num_worker_threads</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Maximum number of threads to start for handling web server requests</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>50</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_webserver_password_file"><a class="link" href="#kudu-tserver_webserver_password_file"><code>--webserver_password_file</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>(Optional) Location of .htpasswd file containing user names and hashed passwords for debug webserver authentication</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_budgeted_compaction_target_rowset_size"><a class="link" href="#kudu-tserver_budgeted_compaction_target_rowset_size"><code>--budgeted_compaction_target_rowset_size</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The target size for DiskRowSets during flush/compact when the budgeted compaction policy is used</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>33554432</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_compaction_approximation_ratio"><a class="link" href="#kudu-tserver_compaction_approximation_ratio"><code>--compaction_approximation_ratio</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Approximation ratio allowed for optimal compaction calculation. A value of 1.05 indicates that the policy may use an approximate result if it is known to be within 5% of the optimal solution.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1.0499999523162842</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_deltafile_default_block_size"><a class="link" href="#kudu-tserver_deltafile_default_block_size"><code>--deltafile_default_block_size</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Block size for delta files. In the future, this may become configurable on a per-table basis.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>32768</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_deltafile_default_compression_codec"><a class="link" href="#kudu-tserver_deltafile_default_compression_codec"><code>--deltafile_default_compression_codec</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The compression codec used when writing deltafiles.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>lz4</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_default_composite_key_index_block_size_bytes"><a class="link" href="#kudu-tserver_default_composite_key_index_block_size_bytes"><code>--default_composite_key_index_block_size_bytes</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Block size used for composite key indexes.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>4096</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_tablet_delta_store_major_compact_min_ratio"><a class="link" href="#kudu-tserver_tablet_delta_store_major_compact_min_ratio"><code>--tablet_delta_store_major_compact_min_ratio</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Minimum ratio of sizeof(deltas) to sizeof(base data) before a major compaction can run (Advanced option)</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0.10000000149011612</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_tablet_delta_store_minor_compact_max"><a class="link" href="#kudu-tserver_tablet_delta_store_minor_compact_max"><code>--tablet_delta_store_minor_compact_max</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>How many delta stores are required before forcing a minor delta compaction (Advanced option)</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_tablet_bloom_block_size"><a class="link" href="#kudu-tserver_tablet_bloom_block_size"><code>--tablet_bloom_block_size</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Block size of the bloom filters used for tablet keys.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>4096</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_tablet_bloom_target_fp_rate"><a class="link" href="#kudu-tserver_tablet_bloom_target_fp_rate"><code>--tablet_bloom_target_fp_rate</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Target false-positive rate (between 0 and 1) to size tablet key bloom filters. A lower false positive rate may reduce the number of disk seeks required in heavy insert workloads, at the expense of more space and RAM required for bloom filters.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>9.9999997473787516e-05</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_tablet_compaction_budget_mb"><a class="link" href="#kudu-tserver_tablet_compaction_budget_mb"><code>--tablet_compaction_budget_mb</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Budget for a single compaction</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>128</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_tablet_history_max_age_sec"><a class="link" href="#kudu-tserver_tablet_history_max_age_sec"><code>--tablet_history_max_age_sec</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Number of seconds to retain tablet history. Reads initiated at a snapshot that is older than this age will be rejected. To disable history removal, set to -1.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>900</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_tablet_throttler_burst_factor"><a class="link" href="#kudu-tserver_tablet_throttler_burst_factor"><code>--tablet_throttler_burst_factor</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Burst factor for write RPC throttling. The maximum rate the throttler allows within a token refill period (100ms) equals burst factor multiply base rate.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_tablet_throttler_bytes_per_sec"><a class="link" href="#kudu-tserver_tablet_throttler_bytes_per_sec"><code>--tablet_throttler_bytes_per_sec</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Maximum write RPC IO rate (byte/s) allowed for a tablet, write RPC exceeding this limit will be throttled. 0 means no limit.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_tablet_throttler_rpc_per_sec"><a class="link" href="#kudu-tserver_tablet_throttler_rpc_per_sec"><code>--tablet_throttler_rpc_per_sec</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Maximum write RPC rate (op/s) allowed for a tablet, write RPC exceeding this limit will be throttled. 0 means no limit.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_flush_threshold_mb"><a class="link" href="#kudu-tserver_flush_threshold_mb"><code>--flush_threshold_mb</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Size at which MemRowSet flushes are triggered. A MRS can still flush below this threshold if it if hasn&#8217;t flushed in a while, or if the server-wide memory limit has been reached.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1024</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_flush_threshold_secs"><a class="link" href="#kudu-tserver_flush_threshold_secs"><code>--flush_threshold_secs</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Number of seconds after which a non-empty MemRowSet will become flushable even if it is not large.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>120</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_tablet_transaction_memory_limit_mb"><a class="link" href="#kudu-tserver_tablet_transaction_memory_limit_mb"><code>--tablet_transaction_memory_limit_mb</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Maximum amount of memory that may be consumed by all in-flight transactions belonging to a particular tablet. When this limit is reached, new transactions will be rejected and clients will be forced to retry them. If -1, transaction memory tracking is disabled.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>64</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_heartbeat_interval_ms"><a class="link" href="#kudu-tserver_heartbeat_interval_ms"><code>--heartbeat_interval_ms</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Interval at which the TS heartbeats to the master.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_heartbeat_max_failures_before_backoff"><a class="link" href="#kudu-tserver_heartbeat_max_failures_before_backoff"><code>--heartbeat_max_failures_before_backoff</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Maximum number of consecutive heartbeat failures until the Tablet Server backs off to the normal heartbeat interval, rather than retrying.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>3</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_heartbeat_rpc_timeout_ms"><a class="link" href="#kudu-tserver_heartbeat_rpc_timeout_ms"><code>--heartbeat_rpc_timeout_ms</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Timeout used for the TS&#8594;Master heartbeat RPCs.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>15000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_scanner_ttl_ms"><a class="link" href="#kudu-tserver_scanner_ttl_ms"><code>--scanner_ttl_ms</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Number of milliseconds of inactivity allowed for a scannerbefore it may be expired</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>60000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_scanner_batch_size_rows"><a class="link" href="#kudu-tserver_scanner_batch_size_rows"><code>--scanner_batch_size_rows</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The number of rows to batch for servicing scan requests.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>100</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_scanner_default_batch_size_bytes"><a class="link" href="#kudu-tserver_scanner_default_batch_size_bytes"><code>--scanner_default_batch_size_bytes</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The default size for batches of scan results</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1048576</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_scanner_max_batch_size_bytes"><a class="link" href="#kudu-tserver_scanner_max_batch_size_bytes"><code>--scanner_max_batch_size_bytes</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The maximum batch size that a client may request for scan results.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>8388608</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_scanner_max_wait_ms"><a class="link" href="#kudu-tserver_scanner_max_wait_ms"><code>--scanner_max_wait_ms</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The maximum amount of time (in milliseconds) we&#8217;ll hang a scanner thread waiting for safe time to advance or transactions to commit, even if its deadline allows waiting longer.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_num_tablets_to_copy_simultaneously"><a class="link" href="#kudu-tserver_num_tablets_to_copy_simultaneously"><code>--num_tablets_to_copy_simultaneously</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Number of threads available to copy tablets from remote servers.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_num_tablets_to_open_simultaneously"><a class="link" href="#kudu-tserver_num_tablets_to_open_simultaneously"><code>--num_tablets_to_open_simultaneously</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Number of threads available to open tablets during startup. If this is set to 0 (the default), then the number of bootstrap threads will be set based on the number of data directories. If the data directories are on some very fast storage device such as SSD or a RAID array, it may make sense to manually tune this.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_trace_to_console"><a class="link" href="#kudu-tserver_trace_to_console"><code>--trace_to_console</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Trace pattern specifying which trace events should be dumped directly to the console</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_suicide_on_eio"><a class="link" href="#kudu-tserver_suicide_on_eio"><code>--suicide_on_eio</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Kill the process if an I/O operation results in EIO</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_file_cache_expiry_period_ms"><a class="link" href="#kudu-tserver_file_cache_expiry_period_ms"><code>--file_cache_expiry_period_ms</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Period of time (in ms) between removing expired file cache descriptors</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>60000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_umask"><a class="link" href="#kudu-tserver_umask"><code>--umask</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The umask that will be used when creating files and directories. Permissions of top-level data directories will also be modified at start-up to conform to the given umask. Changing this value may enable unauthorized local users to read or modify data stored by Kudu.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>077</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_max_log_files"><a class="link" href="#kudu-tserver_max_log_files"><code>--max_log_files</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Maximum number of log files to retain per severity level. The most recent log files are retained. If set to 0, all log files are retained.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental,runtime</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_data_gc_min_size_mb"><a class="link" href="#kudu-tserver_data_gc_min_size_mb"><code>--data_gc_min_size_mb</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The (exclusive) minimum number of megabytes of ancient data on disk, per tablet, needed to prioritize deletion of that data.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_data_gc_prioritization_prob"><a class="link" href="#kudu-tserver_data_gc_prioritization_prob"><code>--data_gc_prioritization_prob</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The probability that we will prioritize data GC over performance improvement operations. If set to 1.0, we will always prefer to delete old data before running performance improvement operations such as delta compaction.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0.5</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_log_target_replay_size_mb"><a class="link" href="#kudu-tserver_log_target_replay_size_mb"><code>--log_target_replay_size_mb</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The target maximum size of logs to be replayed at startup. If a tablet has in-memory operations that are causing more than this size of logs to be retained, then the maintenance manager will prioritize flushing these operations to disk.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1024</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_metrics_retirement_age_ms"><a class="link" href="#kudu-tserver_metrics_retirement_age_ms"><code>--metrics_retirement_age_ms</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The minimum number of milliseconds a metric will be kept for after it is no longer active. (Advanced option)</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>120000</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced,runtime</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_local_ip_for_outbound_sockets"><a class="link" href="#kudu-tserver_local_ip_for_outbound_sockets"><code>--local_ip_for_outbound_sockets</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>IP to bind to when making outgoing socket connections. This must be an IP address of the form A.B.C.D, not a hostname. Advanced parameter, subject to change.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_nvm_cache_allocation_retry_count"><a class="link" href="#kudu-tserver_nvm_cache_allocation_retry_count"><code>--nvm_cache_allocation_retry_count</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The number of times that the NVM cache will retry attempts to allocate memory for new entries. In between attempts, a cache entry will be evicted.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_nvm_cache_path"><a class="link" href="#kudu-tserver_nvm_cache_path"><code>--nvm_cache_path</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The path at which the NVM cache will try to allocate its memory. This can be a tmpfs or ramfs for testing purposes.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>/vmem</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">experimental</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_memory_limit_soft_percentage"><a class="link" href="#kudu-tserver_memory_limit_soft_percentage"><code>--memory_limit_soft_percentage</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Percentage of the hard memory limit that this daemon may consume before memory throttling of writes begins. The greater the excess, the higher the chance of throttling. In general, a lower soft limit leads to smoother write latencies but decreased throughput, and vice versa for a higher soft limit.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>80</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_memory_limit_warn_threshold_percentage"><a class="link" href="#kudu-tserver_memory_limit_warn_threshold_percentage"><code>--memory_limit_warn_threshold_percentage</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Percentage of the hard memory limit that this daemon may consume before WARNING level messages are periodically logged.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>98</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_memory_pressure_percentage"><a class="link" href="#kudu-tserver_memory_pressure_percentage"><code>--memory_pressure_percentage</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Percentage of the hard memory limit that this daemon may consume before flushing of in-memory data becomes prioritized.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>60</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_tcmalloc_max_free_bytes_percentage"><a class="link" href="#kudu-tserver_tcmalloc_max_free_bytes_percentage"><code>--tcmalloc_max_free_bytes_percentage</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Maximum percentage of the RSS that tcmalloc is allowed to use for reserved but unallocated memory.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>10</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_drop_log_memory"><a class="link" href="#kudu-tserver_drop_log_memory"><code>--drop_log_memory</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Drop in-memory buffers of log contents. Logs can grow very quickly and they are rarely read before they need to be evicted from memory. Instead, drop them from memory as soon as they are flushed to disk.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_log_backtrace_at"><a class="link" href="#kudu-tserver_log_backtrace_at"><code>--log_backtrace_at</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Emit a backtrace when logging at file:linenum.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_logbuflevel"><a class="link" href="#kudu-tserver_logbuflevel"><code>--logbuflevel</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Buffer log messages logged at this level or lower (-1 means don&#8217;t buffer; 0 means buffer INFO only; &#8230;&#8203;)</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_logbufsecs"><a class="link" href="#kudu-tserver_logbufsecs"><code>--logbufsecs</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Buffer log messages for at most this many seconds</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>5</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">runtime,advanced</p></td>
+</tr>
+</tbody>
+</table>
+</div>
+</div>
+<div class="sect1">
+<h2 id="kudu-tserver_logfile_mode"><a class="link" href="#kudu-tserver_logfile_mode"><code>--logfile_mode</code></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Log file mode/permissions.</p>
+</div>
+<table class="tableblock frame-all grid-all" style="width: 50%;">
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 75%;">
+</colgroup>
+<tbody>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Type</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Default</p></th>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>436</code></p></td>
+</tr>
+<tr>
+<th class="tableblock halign-left valign-top"><p class="tableblock">Tags</p></th>
+<td class="tableblock halign-left valign-top"></td>
+</tr>
+</tbody>
+</table>
+<hr>
+</div>
+</div>
+    </div>
+    <div class="col-md-3">
+
+  <div id="toc" data-spy="affix" data-offset-top="70">
+  <ul>
+
+      <li>
+
+          <a href="index.html">Introducing Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="release_notes.html">Kudu Release Notes</a> 
+      </li> 
+      <li>
+
+          <a href="quickstart.html">Getting Started with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="installation.html">Installation Guide</a> 
+      </li> 
+      <li>
+
+          <a href="configuration.html">Configuring Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="kudu_impala_integration.html">Using Impala with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="administration.html">Administering Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="troubleshooting.html">Troubleshooting Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="developing.html">Developing Applications with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="schema_design.html">Kudu Schema Design</a> 
+      </li> 
+      <li>
+
+          <a href="security.html">Kudu Security</a> 
+      </li> 
+      <li>
+
+          <a href="transaction_semantics.html">Kudu Transaction Semantics</a> 
+      </li> 
+      <li>
+
+          <a href="background_tasks.html">Background Maintenance Tasks</a> 
+      </li> 
+      <li>
+
+          <a href="configuration_reference.html">Kudu Configuration Reference</a> 
+      </li> 
+      <li>
+
+          <a href="command_line_tools_reference.html">Kudu Command Line Tools Reference</a> 
+      </li> 
+      <li>
+
+          <a href="known_issues.html">Known Issues and Limitations</a> 
+      </li> 
+      <li>
+
+          <a href="contributing.html">Contributing to Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="export_control.html">Export Control Notice</a> 
+      </li> 
+  </ul>
+  </div>
+    </div>
+  </div>
+</div>
+      <footer class="footer">
+        <p class="small">
+        Copyright &copy; 2016 The Apache Software Foundation.  Last updated 2017-06-13 10:50:35 PDT 
+        </p>
+      </footer>
+    </div>
+    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
+    <script>
+      // Try to detect touch-screen devices. Note: Many laptops have touch screens.
+      $(document).ready(function() {
+        if ("ontouchstart" in document.documentElement) {
+          $(document.documentElement).addClass("touch");
+        } else {
+          $(document.documentElement).addClass("no-touch");
+        }
+      });
+    </script>
+    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"
+            integrity="sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS"
+            crossorigin="anonymous"></script>
+    <script>
+      (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+      (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+      m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+      })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+
+      ga('create', 'UA-68448017-1', 'auto');
+      ga('send', 'pageview');
+    </script>
+    <script src="https://cdnjs.cloudflare.com/ajax/libs/anchor-js/3.1.0/anchor.js"></script>
+    <script>
+      anchors.options = {
+        placement: 'right',
+        visible: 'touch',
+      };
+      anchors.add();
+    </script>
+  </body>
+</html>
+
diff --git a/releases/1.4.0/docs/kudu_impala_integration.html b/releases/1.4.0/docs/kudu_impala_integration.html
new file mode 100644
index 0000000..e3b52a3
--- /dev/null
+++ b/releases/1.4.0/docs/kudu_impala_integration.html
@@ -0,0 +1,1261 @@
+<!DOCTYPE html>
+<html lang="en">
+  <head>
+    <meta charset="utf-8" />
+    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
+    <meta name="viewport" content="width=device-width, initial-scale=1" />
+    <!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
+    <meta name="description" content="A new open source Apache Hadoop ecosystem project, Apache Kudu completes Hadoop's storage layer to enable fast analytics on fast data" />
+    <meta name="author" content="Cloudera" />
+    <title>Apache Kudu - Using Apache Kudu with Apache Impala (incubating)</title>
+    <!-- Bootstrap core CSS -->
+    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css"
+          integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7"
+          crossorigin="anonymous">
+
+    <!-- Custom styles for this template -->
+    <link href="/css/kudu.css" rel="stylesheet"/>
+    <link href="/css/asciidoc.css" rel="stylesheet"/>
+    <link rel="shortcut icon" href="/img/logo-favicon.ico" />
+    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.6.1/css/font-awesome.min.css" />
+
+    
+
+    <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+        <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+        <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+        <![endif]-->
+  </head>
+  <body>
+    <div class="kudu-site container-fluid">
+      <!-- Static navbar -->
+        <nav class="navbar navbar-default">
+          <div class="container-fluid">
+            <div class="navbar-header">
+              <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
+                <span class="sr-only">Toggle navigation</span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+              </button>
+              
+              <a class="logo" href="/"><img
+                src="//d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_80px.png"
+                srcset="//d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_80px.png 1x, //d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_160px.png 2x"
+                alt="Apache Kudu"/></a>
+              
+            </div>
+            <div id="navbar" class="collapse navbar-collapse">
+              <ul class="nav navbar-nav navbar-right">
+                <li >
+                  <a href="/">Home</a>
+                </li>
+                <li >
+                  <a href="/overview.html">Overview</a>
+                </li>
+                <li class="active">
+                  <a href="/docs/">Documentation</a>
+                </li>
+                <li >
+                  <a href="/releases/">Download</a>
+                </li>
+                <li >
+                  <a href="/blog/">Blog</a>
+                </li>
+                <!-- NOTE: this dropdown menu does not appear on Mobile, so don't add anything here
+                     that doesn't also appear elsewhere on the site. -->
+                <li class="dropdown">
+                  <a href="/community.html" role="button" aria-haspopup="true" aria-expanded="false">Community <span class="caret"></span></a>
+                  <ul class="dropdown-menu">
+                    <li class="dropdown-header">GET IN TOUCH</li>
+                    <li><a class="icon email" href="/community.html">Mailing Lists</a></li>
+                    <li><a class="icon slack" href="https://getkudu-slack.herokuapp.com/">Slack Channel</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li><a href="/community.html#meetups-user-groups-and-conference-presentations">Events and Meetups</a></li>
+                    <li><a href="/committers.html">Project Committers</a></li>
+                    <!--<li><a href="/roadmap.html">Roadmap</a></li>-->
+                    <li><a href="/community.html#contributions">How to Contribute</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li class="dropdown-header">DEVELOPER RESOURCES</li>
+                    <li><a class="icon github" href="https://github.com/apache/incubator-kudu">GitHub</a></li>
+                    <li><a class="icon gerrit" href="http://gerrit.cloudera.org:8080/#/q/status:open+project:kudu">Gerrit Code Review</a></li>
+                    <li><a class="icon jira" href="https://issues.apache.org/jira/browse/KUDU">JIRA Issue Tracker</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li class="dropdown-header">SOCIAL MEDIA</li>
+                    <li><a class="icon twitter" href="https://twitter.com/ApacheKudu">Twitter</a></li>
+                  </ul>
+                </li>
+                <li >
+                  <a href="/faq.html">FAQ</a>
+                </li>
+              </ul><!-- /.nav -->
+            </div><!-- /#navbar -->
+          </div><!-- /.container-fluid -->
+        </nav>
+
+<!--
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
+
+
+<div class="container">
+  <div class="row">
+    <div class="col-md-9">
+
+<h1>Using Apache Kudu with Apache Impala (incubating)</h1>
+      <div id="preamble">
+<div class="sectionbody">
+<div class="paragraph">
+<p>Kudu has tight integration with Apache Impala (incubating), allowing you to use Impala
+to insert, query, update, and delete data from Kudu tablets using Impala&#8217;s SQL
+syntax, as an alternative to using the <a href="installation.html#view_api">Kudu APIs</a>
+to build a custom Kudu application. In addition, you can use JDBC or ODBC to connect
+existing or new applications written in any language, framework, or business intelligence
+tool to your Kudu data, using Impala as the broker.</p>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_requirements"><a class="link" href="#_requirements">Requirements</a></h2>
+<div class="sectionbody">
+<div class="ulist">
+<ul>
+<li>
+<p>This documentation is specific to the certain versions of Impala. The syntax
+described will work only in the following releases:</p>
+<div class="ulist">
+<ul>
+<li>
+<p>The version of Impala 2.7.0 that ships with CDH 5.10. <code>SELECT VERSION()</code> will
+report <code>impalad version 2.7.0-cdh5.10.0</code>.</p>
+</li>
+<li>
+<p>Apache Impala 2.8.0 releases compiled from source. <code>SELECT VERSION()</code> will
+report <code>impalad version 2.8.0</code>.</p>
+</li>
+</ul>
+</div>
+</li>
+</ul>
+</div>
+<div class="paragraph">
+<p>Older versions of Impala 2.7 (including the special <code>IMPALA_KUDU</code> releases
+previously available) have incompatible syntax. Future versions are likely to be
+compatible with this syntax, but we recommend checking that this is the latest
+available documentation corresponding to the appropriate version you have
+installed.</p>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p>This documentation does not describe Impala installation procedures. Please
+refer to the Impala documentation and be sure that you are able to run simple
+queries against Impala tables on HDFS before proceeding.</p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_configuration"><a class="link" href="#_configuration">Configuration</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>No configuration changes are required within Kudu to enable access from Impala.</p>
+</div>
+<div class="paragraph">
+<p>Although not strictly necessary, it is recommended to configure Impala with the
+locations of the Kudu Master servers:</p>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p>Set the <code>--kudu_master_hosts=&lt;master1&gt;[:port],&lt;master2&gt;[:port],&lt;master3&gt;[:port]</code>
+flag in the Impala service configuration. If you are using Cloudera Manager,
+please refer to the appropriate Cloudera Manager documentation to do so.</p>
+</li>
+</ul>
+</div>
+<div class="paragraph">
+<p>If this flag is not set within the Impala service, it will be necessary to manually
+provide this configuration each time you create a table by specifying the
+<code>kudu_master_addresses</code> property inside a <code>TBLPROPERTIES</code> clause.</p>
+</div>
+<div class="paragraph">
+<p>The rest of this guide assumes that the configuration has been set.</p>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_using_the_impala_shell"><a class="link" href="#_using_the_impala_shell">Using the Impala Shell</a></h2>
+<div class="sectionbody">
+<div class="admonitionblock note">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-note" title="Note"></i>
+</td>
+<td class="content">
+This is only a small sub-set of Impala Shell functionality. For more details, see the
+<a href="http://www.cloudera.com/content/cloudera/en/documentation/core/latest/topics/impala_impala_shell.html">Impala Shell</a> documentation.
+</td>
+</tr>
+</table>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p>Start Impala Shell using the <code>impala-shell</code> command. By default, <code>impala-shell</code>
+attempts to connect to the Impala daemon on <code>localhost</code> on port 21000. To connect
+to a different host,, use the <code>-i &lt;host:port&gt;</code> option. To automatically connect to
+a specific Impala database, use the <code>-d &lt;database&gt;</code> option. For instance, if all your
+Kudu tables are in Impala in the database <code>impala_kudu</code>, use <code>-d impala_kudu</code> to use
+this database.</p>
+</li>
+<li>
+<p>To quit the Impala Shell, use the following command: <code>quit;</code></p>
+</li>
+</ul>
+</div>
+<div class="sect2">
+<h3 id="_internal_and_external_impala_tables"><a class="link" href="#_internal_and_external_impala_tables">Internal and External Impala Tables</a></h3>
+<div class="paragraph">
+<p>When creating a new Kudu table using Impala, you can create the table as an internal
+table or an external table.</p>
+</div>
+<div class="dlist">
+<dl>
+<dt class="hdlist1">Internal</dt>
+<dd>
+<p>An internal table is managed by Impala, and when you drop it from Impala,
+the data and the table truly are dropped. When you create a new table using Impala,
+it is generally a internal table.</p>
+</dd>
+<dt class="hdlist1">External</dt>
+<dd>
+<p>An external table (created by <code>CREATE EXTERNAL TABLE</code>) is not managed by
+Impala, and dropping such a table does not drop the table from its source location
+(here, Kudu). Instead, it only removes the mapping between Impala and Kudu. This is
+the mode used in the syntax provided by Kudu for mapping an existing table to Impala.</p>
+</dd>
+</dl>
+</div>
+<div class="paragraph">
+<p>See the
+<a href="http://www.cloudera.com/content/cloudera/en/documentation/core/latest/topics/impala_tables.html">Impala documentation</a>
+for more information about internal and external tables.</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_querying_an_existing_kudu_table_in_impala"><a class="link" href="#_querying_an_existing_kudu_table_in_impala">Querying an Existing Kudu Table In Impala</a></h3>
+<div class="paragraph">
+<p>Tables created through the Kudu API or other integrations such as Apache Spark
+are not automatically visible in Impala. To query them, you must first create
+an external table within Impala to map the Kudu table into an Impala database:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-sql" data-lang="sql">CREATE EXTERNAL TABLE my_mapping_table
+STORED AS KUDU
+TBLPROPERTIES (
+  'kudu.table_name' = 'my_kudu_table'
+);</code></pre>
+</div>
+</div>
+</div>
+<div class="sect2">
+<h3 id="kudu_impala_create_table"><a class="link" href="#kudu_impala_create_table">Creating a New Kudu Table From Impala</a></h3>
+<div class="paragraph">
+<p>Creating a new table in Kudu from Impala is similar to mapping an existing Kudu table
+to an Impala table, except that you need to specify the schema and partitioning
+information yourself.</p>
+</div>
+<div class="paragraph">
+<p>Use the following example as a guideline. Impala first creates the table, then creates
+the mapping.</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-sql" data-lang="sql">CREATE TABLE my_first_table
+(
+  id BIGINT,
+  name STRING,
+  PRIMARY KEY(id)
+)
+PARTITION BY HASH PARTITIONS 16
+STORED AS KUDU;</code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>In the <code>CREATE TABLE</code> statement, the columns that comprise the primary key must
+be listed first. Additionally, primary key columns are implicitly marked <code>NOT NULL</code>.</p>
+</div>
+<div class="paragraph">
+<p>When creating a new Kudu table, you are required to specify a distribution scheme.
+See <a href="#partitioning_tables">Partitioning Tables</a>. The table creation example above is distributed into
+16 partitions by hashing the <code>id</code> column, for simplicity. See
+<a href="#partitioning_rules_of_thumb">Partitioning Rules of Thumb</a> for guidelines on partitioning.</p>
+</div>
+<div class="sect3">
+<h4 id="__code_create_table_as_select_code"><a class="link" href="#__code_create_table_as_select_code"><code>CREATE TABLE AS SELECT</code></a></h4>
+<div class="paragraph">
+<p>You can create a table by querying any other table or tables in Impala, using a <code>CREATE
+TABLE &#8230;&#8203; AS SELECT</code> statement. The following example imports all rows from an existing table
+<code>old_table</code> into a Kudu table <code>new_table</code>. The names and types of columns in <code>new_table</code>
+will determined from the columns in the result set of the <code>SELECT</code> statement. Note that you must
+additionally specify the primary key and partitioning.</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-sql" data-lang="sql">CREATE TABLE new_table
+PRIMARY KEY (ts, name)
+PARTITION BY HASH(name) PARTITIONS 8
+STORED AS KUDU
+AS SELECT ts, name, value FROM old_table;</code></pre>
+</div>
+</div>
+</div>
+<div class="sect3">
+<h4 id="_specifying_tablet_partitioning"><a class="link" href="#_specifying_tablet_partitioning">Specifying Tablet Partitioning</a></h4>
+<div class="paragraph">
+<p>Tables are divided into tablets which are each served by one or more tablet
+servers. Ideally, tablets should split a table&#8217;s data relatively equally. Kudu currently
+has no mechanism for automatically (or manually) splitting a pre-existing tablet.
+Until this feature has been implemented, <strong>you must specify your partitioning when
+creating a table</strong>. When designing your table schema, consider primary keys that will allow you to
+split your table into partitions which grow at similar rates. You can designate
+partitions using a <code>PARTITION BY</code> clause when creating a table using Impala:</p>
+</div>
+<div class="admonitionblock note">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-note" title="Note"></i>
+</td>
+<td class="content">
+Impala keywords, such as <code>group</code>, are enclosed by back-tick characters when
+they are not used in their keyword sense.
+</td>
+</tr>
+</table>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-sql" data-lang="sql">CREATE TABLE cust_behavior (
+  _id BIGINT PRIMARY KEY,
+  salary STRING,
+  edu_level INT,
+  usergender STRING,
+  `group` STRING,
+  city STRING,
+  postcode STRING,
+  last_purchase_price FLOAT,
+  last_purchase_date BIGINT,
+  category STRING,
+  sku STRING,
+  rating INT,
+  fulfilled_date BIGINT
+)
+PARTITION BY RANGE (_id)
+(
+    PARTITION VALUES &lt; 1439560049342,
+    PARTITION 1439560049342 &lt;= VALUES &lt; 1439566253755,
+    PARTITION 1439566253755 &lt;= VALUES &lt; 1439572458168,
+    PARTITION 1439572458168 &lt;= VALUES &lt; 1439578662581,
+    PARTITION 1439578662581 &lt;= VALUES &lt; 1439584866994,
+    PARTITION 1439584866994 &lt;= VALUES &lt; 1439591071407,
+    PARTITION 1439591071407 &lt;= VALUES
+)
+STORED AS KUDU;</code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>If you have multiple primary key columns, you can specify partition bounds
+using tuple syntax: <code>('va',1), ('ab',2)</code>. The expression must be valid JSON.</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="_impala_databases_and_kudu"><a class="link" href="#_impala_databases_and_kudu">Impala Databases and Kudu</a></h4>
+<div class="paragraph">
+<p>Every Impala table is contained within a namespace called a <em>database</em>. The default
+database is called <code>default</code>, and users may create and drop additional databases
+as desired.</p>
+</div>
+<div class="paragraph">
+<p>When a managed Kudu table is created from within Impala, the corresponding
+Kudu table will be named <code>my_database::table_name</code>.</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="_impala_keywords_not_supported_for_kudu_tables"><a class="link" href="#_impala_keywords_not_supported_for_kudu_tables">Impala Keywords Not Supported for Kudu Tables</a></h4>
+<div class="paragraph">
+<p>The following Impala keywords are not supported when creating Kudu tables:
+- <code>PARTITIONED</code>
+- <code>LOCATION</code>
+- <code>ROWFORMAT</code></p>
+</div>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_optimizing_performance_for_evaluating_sql_predicates"><a class="link" href="#_optimizing_performance_for_evaluating_sql_predicates">Optimizing Performance for Evaluating SQL Predicates</a></h3>
+<div class="paragraph">
+<p>If the <code>WHERE</code> clause of your query includes comparisons with the operators
+<code>=</code>, <code>&lt;=</code>, '\&lt;', '\&gt;', <code>&gt;=</code>, <code>BETWEEN</code>, or <code>IN</code>, Kudu evaluates the condition directly
+and only returns the relevant results. This provides optimum performance, because Kudu
+only returns the relevant results to Impala. For predicates <code>!=</code>, <code>LIKE</code>, or any other
+predicate type supported by Impala, Kudu does not evaluate the predicates directly, but
+returns all results to Impala and relies on Impala to evaluate the remaining predicates and
+filter the results accordingly. This may cause differences in performance, depending
+on the delta of the result set before and after evaluating the <code>WHERE</code> clause.</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="partitioning_tables"><a class="link" href="#partitioning_tables">Partitioning Tables</a></h3>
+<div class="paragraph">
+<p>Tables are partitioned into tablets according to a partition schema on the primary
+key columns. Each tablet is served by at least one tablet server. Ideally, a table
+should be split into tablets that are distributed across a number of tablet servers
+to maximize parallel operations. The details of the partitioning schema you use
+will depend entirely on the type of data you store and how you access it. For a full
+discussion of schema design in Kudu, see <a href="schema_design.html">Schema Design</a>.</p>
+</div>
+<div class="paragraph">
+<p>Kudu currently has no mechanism for splitting or merging tablets after the table has
+been created. You must provide a partition schema for your table when you create it.
+When designing your tables, consider using primary keys that will allow you to partition
+your table into tablets which grow at similar rates.</p>
+</div>
+<div class="paragraph">
+<p>You can partition your table using Impala&#8217;s <code>PARTITION BY</code> keyword, which
+supports distribution by <code>RANGE</code> or <code>HASH</code>. The partition scheme can contain zero
+or more <code>HASH</code> definitions, followed by an optional <code>RANGE</code> definition. The <code>RANGE</code>
+definition can refer to one or more primary key columns.
+Examples of <a href="#basic_partitioning">basic</a> and <a href="#advanced_partitioning">advanced</a>
+partitioning are shown below.</p>
+</div>
+<div class="sect3">
+<h4 id="basic_partitioning"><a class="link" href="#basic_partitioning">Basic Partitioning</a></h4>
+<div class="paragraph">
+<div class="title"><code>PARTITION BY RANGE</code></div>
+<p>You can specify range partitions for one or more primary key columns.
+Range partitioning in Kudu allows splitting a table based based on
+specific values or ranges of values of the chosen partition keys. This allows
+you to balance parallelism in writes with scan efficiency.</p>
+</div>
+<div class="paragraph">
+<p>Suppose you have a table that has columns <code>state</code>, <code>name</code>, and <code>purchase_count</code>. The
+following example creates 50 tablets, one per US state.</p>
+</div>
+<div class="admonitionblock note">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-note" title="Note"></i>
+</td>
+<td class="content">
+<div class="title">Monotonically Increasing Values</div>
+<div class="paragraph">
+<p>If you partition by range on a column whose values are monotonically increasing,
+the last tablet will grow much larger than the others. Additionally, all data
+being inserted will be written to a single tablet at a time, limiting the scalability
+of data ingest. In that case, consider distributing by <code>HASH</code> instead of, or in
+addition to, <code>RANGE</code>.</p>
+</div>
+</td>
+</tr>
+</table>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-sql" data-lang="sql">CREATE TABLE customers (
+  state STRING,
+  name STRING,
+  purchase_count int,
+  PRIMARY KEY (state, name)
+)
+PARTITION BY RANGE (state)
+(
+  PARTITION VALUE = 'al',
+  PARTITION VALUE = 'ak',
+  PARTITION VALUE = 'ar',
+  -- ... etc ...
+  PARTITION VALUE = 'wv',
+  PARTITION VALUE = 'wy'
+)
+STORED AS KUDU;</code></pre>
+</div>
+</div>
+<div id="distribute_by_hash" class="paragraph">
+<div class="title"><code>PARTITION BY HASH</code></div>
+<p>Instead of distributing by an explicit range, or in combination with range distribution,
+you can distribute into a specific number of 'buckets' by hash. You specify the primary
+key columns you want to partition by, and the number of buckets you want to use. Rows are
+distributed by hashing the specified key columns. Assuming that the values being
+hashed do not themselves exhibit significant skew, this will serve to distribute
+the data evenly across buckets.</p>
+</div>
+<div class="paragraph">
+<p>You can specify multiple definitions, and you can specify definitions which
+use compound primary keys. However, one column cannot be mentioned in multiple hash
+definitions. Consider two columns, <code>a</code> and <code>b</code>:
+* <span class="icon green"><i class="fa fa-check fa-pro"></i></span> <code>HASH(a)</code>, <code>HASH(b)</code>
+* <span class="icon green"><i class="fa fa-check fa-pro"></i></span> <code>HASH(a,b)</code>
+* <span class="icon red"><i class="fa fa-times fa-pro"></i></span> <code>HASH(a), HASH(a,b)</code></p>
+</div>
+<div class="admonitionblock note">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-note" title="Note"></i>
+</td>
+<td class="content">
+<code>PARTITION BY HASH</code> with no column specified is a shortcut to create the desired
+number of buckets by hashing all primary key columns.
+</td>
+</tr>
+</table>
+</div>
+<div class="paragraph">
+<p>Hash partitioning is a reasonable approach if primary key values are evenly
+distributed in their domain and no data skew is apparent, such as timestamps or
+serial IDs.</p>
+</div>
+<div class="paragraph">
+<p>The following example creates 16 tablets by hashing the <code>id</code> and <code>sku</code> columns. This spreads
+writes across all 16 tablets. In this example, a query for a range of <code>sku</code> values
+is likely to need to read all 16 tablets, so this may not be the optimum schema for
+this table. See <a href="#advanced_partitioning">Advanced Partitioning</a> for an extended example.</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-sql" data-lang="sql">CREATE TABLE cust_behavior (
+  id BIGINT,
+  sku STRING,
+  salary STRING,
+  edu_level INT,
+  usergender STRING,
+  `group` STRING,
+  city STRING,
+  postcode STRING,
+  last_purchase_price FLOAT,
+  last_purchase_date BIGINT,
+  category STRING,
+  rating INT,
+  fulfilled_date BIGINT,
+  PRIMARY KEY (id, sku)
+)
+PARTITION BY HASH PARTITIONS 16
+STORED AS KUDU;</code></pre>
+</div>
+</div>
+</div>
+<div class="sect3">
+<h4 id="advanced_partitioning"><a class="link" href="#advanced_partitioning">Advanced Partitioning</a></h4>
+<div class="paragraph">
+<p>You can combine <code>HASH</code> and <code>RANGE</code> partitioning to create more complex partition schemas.
+You can specify zero or more <code>HASH</code> definitions, followed by zero or one <code>RANGE</code> definitions.
+Each definition can encompass one or more columns. While enumerating every possible distribution
+schema is out of the scope of this document, a few examples illustrate some of the
+possibilities.</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="__code_partition_by_hash_code_and_code_range_code"><a class="link" href="#__code_partition_by_hash_code_and_code_range_code"><code>PARTITION BY HASH</code> and <code>RANGE</code></a></h4>
+<div class="paragraph">
+<p>Consider the <a href="#distribute_by_hash">simple hashing</a> example above, If you often query for a range of <code>sku</code>
+values, you can optimize the example by combining hash partitioning with range partitioning.</p>
+</div>
+<div class="paragraph">
+<p>The following example still creates 16 tablets, by first hashing the <code>id</code> column into 4
+buckets, and then applying range partitioning to split each bucket into four tablets,
+based upon the value of the <code>sku</code> string. Writes are spread across at least four tablets
+(and possibly up to 16). When you query for a contiguous range of <code>sku</code> values, you have a
+good chance of only needing to read from a quarter of the tablets to fulfill the query.</p>
+</div>
+<div class="admonitionblock note">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-note" title="Note"></i>
+</td>
+<td class="content">
+By default, the entire primary key is hashed when you use <code>PARTITION BY HASH</code>.
+To hash on only part of the primary key, specify it by using syntax like <code>PARTITION
+BY HASH (id, sku)</code>.
+</td>
+</tr>
+</table>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-sql" data-lang="sql">CREATE TABLE cust_behavior (
+  id BIGINT,
+  sku STRING,
+  salary STRING,
+  edu_level INT,
+  usergender STRING,
+  `group` STRING,
+  city STRING,
+  postcode STRING,
+  last_purchase_price FLOAT,
+  last_purchase_date BIGINT,
+  category STRING,
+  rating INT,
+  fulfilled_date BIGINT,
+  PRIMARY KEY (id, sku)
+)
+PARTITION BY HASH (id) PARTITIONS 4,
+RANGE (sku)
+(
+  PARTITION VALUES &lt; 'g',
+  PARTITION 'g' &lt;= VALUES &lt; 'o',
+  PARTITION 'o' &lt;= VALUES &lt; 'u',
+  PARTITION 'u' &lt;= VALUES
+)
+STORED AS KUDU;</code></pre>
+</div>
+</div>
+<div class="paragraph">
+<div class="title">Multiple <code>PARTITION BY HASH</code> Definitions</div>
+<p>Again expanding the example above, suppose that the query pattern will be unpredictable,
+but you want to ensure that writes are spread across a large number of tablets
+You can achieve maximum distribution across the entire primary key by hashing on
+both primary key columns.</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-sql" data-lang="sql">CREATE TABLE cust_behavior (
+  id BIGINT,
+  sku STRING,
+  salary STRING,
+  edu_level INT,
+  usergender STRING,
+  `group` STRING,
+  city STRING,
+  postcode STRING,
+  last_purchase_price FLOAT,
+  last_purchase_date BIGINT,
+  category STRING,
+  rating INT,
+  fulfilled_date BIGINT,
+  PRIMARY KEY (id, sku)
+)
+PARTITION BY HASH (id) PARTITIONS 4,
+             HASH (sku) PARTITIONS 4
+STORED AS KUDU;</code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>The example creates 16 partitions. You could also use <code>HASH (id, sku) PARTITIONS 16</code>.
+However, a scan for <code>sku</code> values would almost always impact all 16 partitions, rather
+than possibly being limited to 4.</p>
+</div>
+<div class="paragraph">
+<div class="title">Non-Covering Range Partitions</div>
+<p>Kudu 1.0 and higher supports the use of non-covering range partitions,
+which address scenarios like the following:</p>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p>Without non-covering range partitions, in the case of time-series data or other
+schemas which need to account for constantly-increasing primary keys, tablets
+serving old data will be relatively fixed in size, while tablets receiving new
+data will grow without bounds.</p>
+</li>
+<li>
+<p>In cases where you want to partition data based on its category, such as sales
+region or product type, without non-covering range partitions you must know all
+of the partitions ahead of time or manually recreate your table if partitions
+need to be added or removed, such as the introduction or elimination of a product
+type.</p>
+</li>
+</ul>
+</div>
+<div class="paragraph">
+<p>Non-covering range partitions have some caveats. Be sure to read the
+link:/docs/schema_design.html [Schema Design guide].</p>
+</div>
+<div class="paragraph">
+<p>This example creates a tablet per year (5 tablets total), for storing log data.
+The table only accepts data from 2012 to 2016. Keys outside of these
+ranges will be rejected.</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-sql" data-lang="sql">CREATE TABLE sales_by_year (
+  year INT, sale_id INT, amount INT,
+  PRIMARY KEY (sale_id, year)
+)
+PARTITION BY RANGE (year) (
+  PARTITION VALUE = 2012,
+  PARTITION VALUE = 2013,
+  PARTITION VALUE = 2014,
+  PARTITION VALUE = 2015,
+  PARTITION VALUE = 2016
+)
+STORED AS KUDU;</code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>When records start coming in for 2017, they will be rejected. At that point, the <code>2017</code>
+range should be added as follows:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-sql" data-lang="sql">ALTER TABLE sales_by_year ADD RANGE PARTITION VALUE = 2017;</code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>In use cases where a rolling window of data retention is required, range partitions
+may also be dropped. For example, if data from 2012 should no longer be retained,
+it may be deleted in bulk:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-sql" data-lang="sql">ALTER TABLE sales_by_year DROP RANGE PARTITION VALUE = 2012;</code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>Note that, just like dropping a table, this irrecoverably deletes all data
+stored in the dropped partition.</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="partitioning_rules_of_thumb"><a class="link" href="#partitioning_rules_of_thumb">Partitioning Rules of Thumb</a></h4>
+<div class="ulist">
+<ul>
+<li>
+<p>For large tables, such as fact tables, aim for as many tablets as you have
+cores in the cluster.</p>
+</li>
+<li>
+<p>For small tables, such as dimension tables, aim for a large enough number of tablets
+that each tablet is at least 1 GB in size.</p>
+</li>
+</ul>
+</div>
+<div class="paragraph">
+<p>In general, be mindful the number of tablets limits the parallelism of reads,
+in the current implementation. Increasing the number of tablets significantly
+beyond the number of cores is likely to have diminishing returns.</p>
+</div>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_inserting_data_into_kudu_tables"><a class="link" href="#_inserting_data_into_kudu_tables">Inserting Data Into Kudu Tables</a></h3>
+<div class="paragraph">
+<p>Impala allows you to use standard SQL syntax to insert data into Kudu.</p>
+</div>
+<div class="sect3">
+<h4 id="_inserting_single_values"><a class="link" href="#_inserting_single_values">Inserting Single Values</a></h4>
+<div class="paragraph">
+<p>This example inserts a single row.</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-sql" data-lang="sql">INSERT INTO my_first_table VALUES (99, "sarah");</code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>This example inserts three rows using a single statement.</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-sql" data-lang="sql">INSERT INTO my_first_table VALUES (1, "john"), (2, "jane"), (3, "jim");</code></pre>
+</div>
+</div>
+</div>
+<div class="sect3">
+<h4 id="kudu_impala_insert_bulk"><a class="link" href="#kudu_impala_insert_bulk">Inserting In Bulk</a></h4>
+<div class="paragraph">
+<p>When inserting in bulk, there are at least three common choices. Each may have advantages
+and disadvantages, depending on your data and circumstances.</p>
+</div>
+<div class="dlist">
+<dl>
+<dt class="hdlist1">Multiple single <code>INSERT</code> statements</dt>
+<dd>
+<p>This approach has the advantage of being easy to
+understand and implement. This approach is likely to be inefficient because Impala
+has a high query start-up cost compared to Kudu&#8217;s insertion performance. This will
+lead to relatively high latency and poor throughput.</p>
+</dd>
+<dt class="hdlist1">Single <code>INSERT</code> statement with multiple <code>VALUES</code></dt>
+<dd>
+<p>If you include more
+than 1024 <code>VALUES</code> statements, Impala batches them into groups of 1024 (or the value
+of <code>batch_size</code>) before sending the requests to Kudu. This approach may perform
+slightly better than multiple sequential <code>INSERT</code> statements by amortizing the query start-up
+penalties on the Impala side. To set the batch size for the current Impala
+Shell session, use the following syntax: <code>set batch_size=10000;</code></p>
+<div class="admonitionblock note">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-note" title="Note"></i>
+</td>
+<td class="content">
+Increasing the Impala batch size causes Impala to use more memory. You should
+verify the impact on your cluster and tune accordingly.
+</td>
+</tr>
+</table>
+</div>
+</dd>
+<dt class="hdlist1">Batch Insert</dt>
+<dd>
+<p>The approach that usually performs best, from the standpoint of
+both Impala and Kudu, is usually to import the data using a <code>SELECT FROM</code> statement
+in Impala.</p>
+<div class="olist arabic">
+<ol class="arabic">
+<li>
+<p>If your data is not already in Impala, one strategy is to
+<a href="http://www.cloudera.com/content/cloudera/en/documentation/core/latest/topics/impala_txtfile.html">import it from a text file</a>,
+such as a TSV or CSV file.</p>
+</li>
+<li>
+<p><a href="#kudu_impala_create_table">Create the Kudu table</a>, being mindful that the columns
+designated as primary keys cannot have null values.</p>
+</li>
+<li>
+<p>Insert values into the Kudu table by querying the table containing the original
+data, as in the following example:</p>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-sql" data-lang="sql">INSERT INTO my_kudu_table
+  SELECT * FROM legacy_data_import_table;</code></pre>
+</div>
+</div>
+</li>
+</ol>
+</div>
+</dd>
+<dt class="hdlist1">Ingest using the C++ or Java API</dt>
+<dd>
+<p>In many cases, the appropriate ingest path is to
+use the C++ or Java API to insert directly into Kudu tables. Unlike other Impala tables,
+data inserted into Kudu tables via the API becomes available for query in Impala without
+the need for any <code>INVALIDATE METADATA</code> statements or other statements needed for other
+Impala storage types.</p>
+</dd>
+</dl>
+</div>
+</div>
+<div class="sect3">
+<h4 id="insert_ignore"><a class="link" href="#insert_ignore"><code>INSERT</code> and Primary Key Uniqueness Violations</a></h4>
+<div class="paragraph">
+<p>In most relational databases, if you try to insert a row that has already been inserted, the insertion
+will fail because the primary key would be duplicated. See <a href="#impala_insertion_caveat">Failures During <code>INSERT</code>, <code>UPDATE</code>, and <code>DELETE</code> Operations</a>.
+Impala, however, will not fail the query. Instead, it will generate a warning, but continue
+to execute the remainder of the insert statement.</p>
+</div>
+<div class="paragraph">
+<p>If the inserted rows are meant to replace existing rows, <code>UPSERT</code> may be used instead of <code>INSERT</code>.</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-sql" data-lang="sql">INSERT INTO my_first_table VALUES (99, "sarah");
+UPSERT INTO my_first_table VALUES (99, "zoe");
+-- the current value of the row is 'zoe'</code></pre>
+</div>
+</div>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_updating_a_row"><a class="link" href="#_updating_a_row">Updating a Row</a></h3>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-sql" data-lang="sql">UPDATE my_first_table SET name="bob" where id = 3;</code></pre>
+</div>
+</div>
+<div class="admonitionblock important">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-important" title="Important"></i>
+</td>
+<td class="content">
+The <code>UPDATE</code> statement only works in Impala when the target table is in
+Kudu.
+</td>
+</tr>
+</table>
+</div>
+<div class="sect3">
+<h4 id="_updating_in_bulk"><a class="link" href="#_updating_in_bulk">Updating In Bulk</a></h4>
+<div class="paragraph">
+<p>You can update in bulk using the same approaches outlined in
+<a href="#kudu_impala_insert_bulk">Inserting In Bulk</a>.</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-sql" data-lang="sql">UPDATE my_first_table SET name="bob" where age &gt; 10;</code></pre>
+</div>
+</div>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_deleting_a_row"><a class="link" href="#_deleting_a_row">Deleting a Row</a></h3>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-sql" data-lang="sql">DELETE FROM my_first_table WHERE id &lt; 3;</code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>You can also delete using more complex syntax. A comma in the <code>FROM</code> sub-clause is
+one way that Impala specifies a join query. For more information about Impala joins,
+see <a href="http://www.cloudera.com/content/cloudera/en/documentation/core/latest/topics/impala_joins.html" class="bare">http://www.cloudera.com/content/cloudera/en/documentation/core/latest/topics/impala_joins.html</a>.</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-sql" data-lang="sql">DELETE c FROM my_second_table c, stock_symbols s WHERE c.name = s.symbol;</code></pre>
+</div>
+</div>
+<div class="admonitionblock important">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-important" title="Important"></i>
+</td>
+<td class="content">
+The <code>DELETE</code> statement only works in Impala when the target table is in
+Kudu.
+</td>
+</tr>
+</table>
+</div>
+<div class="sect3">
+<h4 id="_deleting_in_bulk"><a class="link" href="#_deleting_in_bulk">Deleting In Bulk</a></h4>
+<div class="paragraph">
+<p>You can delete in bulk using the same approaches outlined in
+<a href="#kudu_impala_insert_bulk">Inserting In Bulk</a>.</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-sql" data-lang="sql">DELETE FROM my_first_table WHERE id &lt; 3;</code></pre>
+</div>
+</div>
+</div>
+</div>
+<div class="sect2">
+<h3 id="impala_insertion_caveat"><a class="link" href="#impala_insertion_caveat">Failures During <code>INSERT</code>, <code>UPDATE</code>, and <code>DELETE</code> Operations</a></h3>
+<div class="paragraph">
+<p><code>INSERT</code>, <code>UPDATE</code>, and <code>DELETE</code> statements cannot be considered transactional as
+a whole. If one of these operations fails part of the way through, the keys may
+have already been created (in the case of <code>INSERT</code>) or the records may have already
+been modified or removed by another process (in the case of <code>UPDATE</code> or <code>DELETE</code>).
+You should design your application with this in mind.</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_altering_table_properties"><a class="link" href="#_altering_table_properties">Altering Table Properties</a></h3>
+<div class="paragraph">
+<p>You can change Impala&#8217;s metadata relating to a given Kudu table by altering the table&#8217;s
+properties. These properties include the table name, the list of Kudu master addresses,
+and whether the table is managed by Impala (internal) or externally.</p>
+</div>
+<div class="listingblock">
+<div class="title">Rename an Impala Mapping Table</div>
+<div class="content">
+<pre class="highlight"><code class="language-sql" data-lang="sql">ALTER TABLE my_table RENAME TO my_new_table;</code></pre>
+</div>
+</div>
+<div class="admonitionblock note">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-note" title="Note"></i>
+</td>
+<td class="content">
+Renaming a table using the <code>ALTER TABLE &#8230;&#8203; RENAME</code> statement only renames
+the Impala mapping table, regardless of whether the table is an internal or external
+table. This avoids disruption to other applications that may be accessing the
+underlying Kudu table.
+</td>
+</tr>
+</table>
+</div>
+<div class="paragraph">
+<div class="title">Rename the underlying Kudu table for an internal table</div>
+<p>If a table is an internal table, the underlying Kudu table may be renamed by
+changing the <code>kudu.table_name</code> property:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-sql" data-lang="sql">ALTER TABLE my_internal_table
+SET TBLPROPERTIES('kudu.table_name' = 'new_name')</code></pre>
+</div>
+</div>
+<div class="paragraph">
+<div class="title">Remapping an external table to a different Kudu table</div>
+<p>If another application has renamed a Kudu table under Impala, it is possible to
+re-map an external table to point to a different Kudu table name.</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-sql" data-lang="sql">ALTER TABLE my_external_table_
+SET TBLPROPERTIES('kudu.table_name' = 'some_other_kudu_table')</code></pre>
+</div>
+</div>
+<div class="listingblock">
+<div class="title">Change the Kudu Master Address</div>
+<div class="content">
+<pre class="highlight"><code class="language-sql" data-lang="sql">ALTER TABLE my_table
+SET TBLPROPERTIES('kudu.master_addresses' = 'kudu-new-master.example.com:7051');</code></pre>
+</div>
+</div>
+<div class="listingblock">
+<div class="title">Change an Internally-Managed Table to External</div>
+<div class="content">
+<pre class="highlight"><code class="language-sql" data-lang="sql">ALTER TABLE my_table SET TBLPROPERTIES('EXTERNAL' = 'TRUE');</code></pre>
+</div>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_dropping_a_kudu_table_using_impala"><a class="link" href="#_dropping_a_kudu_table_using_impala">Dropping a Kudu Table Using Impala</a></h3>
+<div class="paragraph">
+<p>If the table was created as an internal table in Impala, using <code>CREATE TABLE</code>, the
+standard <code>DROP TABLE</code> syntax drops the underlying Kudu table and all its data. If
+the table was created as an external table, using <code>CREATE EXTERNAL TABLE</code>, the mapping
+between Impala and Kudu is dropped, but the Kudu table is left intact, with all its
+data.</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-sql" data-lang="sql">DROP TABLE my_first_table;</code></pre>
+</div>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_what_s_next"><a class="link" href="#_what_s_next">What&#8217;s Next?</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The examples above have only explored a fraction of what you can do with Impala Shell.</p>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p>Learn about the <a href="http://impala.io">Impala project</a>.</p>
+</li>
+<li>
+<p>Read the <a href="http://www.cloudera.com/content/www/en-us/documentation/enterprise/latest/topics/impala.html">Impala documentation</a>.</p>
+</li>
+<li>
+<p>View the <a href="http://www.cloudera.com/content/www/en-us/documentation/enterprise/latest/topics/impala_langref.html">Impala SQL reference</a>.</p>
+</li>
+<li>
+<p>Read about Impala internals or learn how to contribute to Impala on the <a href="https://github.com/cloudera/Impala/wiki">Impala Wiki</a>.</p>
+</li>
+<li>
+<p>Read about the native <a href="installation.html#view_api">Kudu APIs</a>.</p>
+</li>
+</ul>
+</div>
+<div class="sect2">
+<h3 id="_known_issues_and_limitations"><a class="link" href="#_known_issues_and_limitations">Known Issues and Limitations</a></h3>
+<div class="ulist">
+<ul>
+<li>
+<p>Kudu tables with a name containing upper case or non-ascii characters must be
+assigned an alternate name when used as an external table in Impala.</p>
+</li>
+<li>
+<p>Kudu tables with a column name containing upper case or non-ascii characters
+may not be used as an external table in Impala. Columns may be renamed in Kudu
+to work around this issue.</p>
+</li>
+<li>
+<p>When creating a Kudu table, the <code>CREATE TABLE</code> statement must include the
+primary key columns before other columns, in primary key order.</p>
+</li>
+<li>
+<p>Kudu tables containing <code>UNIXTIME_MICROS</code>-typed columns may not be used as an
+external table in Impala.</p>
+</li>
+<li>
+<p>Impala can not create Kudu tables with <code>TIMESTAMP</code>, <code>DECIMAL</code>, <code>VARCHAR</code>,
+or nested-typed columns.</p>
+</li>
+<li>
+<p>Impala can not update values in primary key columns.</p>
+</li>
+<li>
+<p><code>NULL</code>, <code>NOT NULL</code>, <code>!=</code>, and <code>LIKE</code> predicates are not pushed to Kudu, and
+instead will be evaluated by the Impala scan node. This may decrease performance
+relative to other types of predicates.</p>
+</li>
+<li>
+<p>Updates, inserts, and deletes via Impala are non-transactional. If a query
+fails part of the way through, its partial effects will not be rolled back.</p>
+</li>
+<li>
+<p>The maximum parallelism of a single query is limited to the number of tablets
+in a table. For good analytic performance, aim for 10 or more tablets per host
+or use large tables.</p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+</div>
+    </div>
+    <div class="col-md-3">
+
+  <div id="toc" data-spy="affix" data-offset-top="70">
+  <ul>
+
+      <li>
+
+          <a href="index.html">Introducing Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="release_notes.html">Kudu Release Notes</a> 
+      </li> 
+      <li>
+
+          <a href="quickstart.html">Getting Started with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="installation.html">Installation Guide</a> 
+      </li> 
+      <li>
+
+          <a href="configuration.html">Configuring Kudu</a> 
+      </li> 
+      <li>
+<span class="active-toc">Using Impala with Kudu</span>
+            <ul class="sectlevel1">
+<li><a href="#_requirements">Requirements</a></li>
+<li><a href="#_configuration">Configuration</a></li>
+<li><a href="#_using_the_impala_shell">Using the Impala Shell</a>
+<ul class="sectlevel2">
+<li><a href="#_internal_and_external_impala_tables">Internal and External Impala Tables</a></li>
+<li><a href="#_querying_an_existing_kudu_table_in_impala">Querying an Existing Kudu Table In Impala</a></li>
+<li><a href="#kudu_impala_create_table">Creating a New Kudu Table From Impala</a></li>
+<li><a href="#_optimizing_performance_for_evaluating_sql_predicates">Optimizing Performance for Evaluating SQL Predicates</a></li>
+<li><a href="#partitioning_tables">Partitioning Tables</a></li>
+<li><a href="#_inserting_data_into_kudu_tables">Inserting Data Into Kudu Tables</a></li>
+<li><a href="#_updating_a_row">Updating a Row</a></li>
+<li><a href="#_deleting_a_row">Deleting a Row</a></li>
+<li><a href="#impala_insertion_caveat">Failures During <code>INSERT</code>, <code>UPDATE</code>, and <code>DELETE</code> Operations</a></li>
+<li><a href="#_altering_table_properties">Altering Table Properties</a></li>
+<li><a href="#_dropping_a_kudu_table_using_impala">Dropping a Kudu Table Using Impala</a></li>
+</ul>
+</li>
+<li><a href="#_what_s_next">What&#8217;s Next?</a>
+<ul class="sectlevel2">
+<li><a href="#_known_issues_and_limitations">Known Issues and Limitations</a></li>
+</ul>
+</li>
+</ul> 
+      </li> 
+      <li>
+
+          <a href="administration.html">Administering Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="troubleshooting.html">Troubleshooting Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="developing.html">Developing Applications with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="schema_design.html">Kudu Schema Design</a> 
+      </li> 
+      <li>
+
+          <a href="security.html">Kudu Security</a> 
+      </li> 
+      <li>
+
+          <a href="transaction_semantics.html">Kudu Transaction Semantics</a> 
+      </li> 
+      <li>
+
+          <a href="background_tasks.html">Background Maintenance Tasks</a> 
+      </li> 
+      <li>
+
+          <a href="configuration_reference.html">Kudu Configuration Reference</a> 
+      </li> 
+      <li>
+
+          <a href="command_line_tools_reference.html">Kudu Command Line Tools Reference</a> 
+      </li> 
+      <li>
+
+          <a href="known_issues.html">Known Issues and Limitations</a> 
+      </li> 
+      <li>
+
+          <a href="contributing.html">Contributing to Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="export_control.html">Export Control Notice</a> 
+      </li> 
+  </ul>
+  </div>
+    </div>
+  </div>
+</div>
+      <footer class="footer">
+        <p class="small">
+        Copyright &copy; 2016 The Apache Software Foundation.  Last updated 2017-05-18 13:38:03 PDT 
+        </p>
+      </footer>
+    </div>
+    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
+    <script>
+      // Try to detect touch-screen devices. Note: Many laptops have touch screens.
+      $(document).ready(function() {
+        if ("ontouchstart" in document.documentElement) {
+          $(document.documentElement).addClass("touch");
+        } else {
+          $(document.documentElement).addClass("no-touch");
+        }
+      });
+    </script>
+    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"
+            integrity="sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS"
+            crossorigin="anonymous"></script>
+    <script>
+      (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+      (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+      m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+      })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+
+      ga('create', 'UA-68448017-1', 'auto');
+      ga('send', 'pageview');
+    </script>
+    <script src="https://cdnjs.cloudflare.com/ajax/libs/anchor-js/3.1.0/anchor.js"></script>
+    <script>
+      anchors.options = {
+        placement: 'right',
+        visible: 'touch',
+      };
+      anchors.add();
+    </script>
+  </body>
+</html>
+
diff --git a/releases/1.4.0/docs/prior_release_notes.html b/releases/1.4.0/docs/prior_release_notes.html
new file mode 100644
index 0000000..fc56c02
--- /dev/null
+++ b/releases/1.4.0/docs/prior_release_notes.html
@@ -0,0 +1,2051 @@
+<!DOCTYPE html>
+<html lang="en">
+  <head>
+    <meta charset="utf-8" />
+    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
+    <meta name="viewport" content="width=device-width, initial-scale=1" />
+    <!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
+    <meta name="description" content="A new open source Apache Hadoop ecosystem project, Apache Kudu completes Hadoop's storage layer to enable fast analytics on fast data" />
+    <meta name="author" content="Cloudera" />
+    <title>Apache Kudu - Apache Kudu Prior Version Release Notes</title>
+    <!-- Bootstrap core CSS -->
+    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css"
+          integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7"
+          crossorigin="anonymous">
+
+    <!-- Custom styles for this template -->
+    <link href="/css/kudu.css" rel="stylesheet"/>
+    <link href="/css/asciidoc.css" rel="stylesheet"/>
+    <link rel="shortcut icon" href="/img/logo-favicon.ico" />
+    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.6.1/css/font-awesome.min.css" />
+
+    
+
+    <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+        <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+        <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+        <![endif]-->
+  </head>
+  <body>
+    <div class="kudu-site container-fluid">
+      <!-- Static navbar -->
+        <nav class="navbar navbar-default">
+          <div class="container-fluid">
+            <div class="navbar-header">
+              <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
+                <span class="sr-only">Toggle navigation</span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+              </button>
+              
+              <a class="logo" href="/"><img
+                src="//d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_80px.png"
+                srcset="//d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_80px.png 1x, //d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_160px.png 2x"
+                alt="Apache Kudu"/></a>
+              
+            </div>
+            <div id="navbar" class="collapse navbar-collapse">
+              <ul class="nav navbar-nav navbar-right">
+                <li >
+                  <a href="/">Home</a>
+                </li>
+                <li >
+                  <a href="/overview.html">Overview</a>
+                </li>
+                <li class="active">
+                  <a href="/docs/">Documentation</a>
+                </li>
+                <li >
+                  <a href="/releases/">Download</a>
+                </li>
+                <li >
+                  <a href="/blog/">Blog</a>
+                </li>
+                <!-- NOTE: this dropdown menu does not appear on Mobile, so don't add anything here
+                     that doesn't also appear elsewhere on the site. -->
+                <li class="dropdown">
+                  <a href="/community.html" role="button" aria-haspopup="true" aria-expanded="false">Community <span class="caret"></span></a>
+                  <ul class="dropdown-menu">
+                    <li class="dropdown-header">GET IN TOUCH</li>
+                    <li><a class="icon email" href="/community.html">Mailing Lists</a></li>
+                    <li><a class="icon slack" href="https://getkudu-slack.herokuapp.com/">Slack Channel</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li><a href="/community.html#meetups-user-groups-and-conference-presentations">Events and Meetups</a></li>
+                    <li><a href="/committers.html">Project Committers</a></li>
+                    <!--<li><a href="/roadmap.html">Roadmap</a></li>-->
+                    <li><a href="/community.html#contributions">How to Contribute</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li class="dropdown-header">DEVELOPER RESOURCES</li>
+                    <li><a class="icon github" href="https://github.com/apache/incubator-kudu">GitHub</a></li>
+                    <li><a class="icon gerrit" href="http://gerrit.cloudera.org:8080/#/q/status:open+project:kudu">Gerrit Code Review</a></li>
+                    <li><a class="icon jira" href="https://issues.apache.org/jira/browse/KUDU">JIRA Issue Tracker</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li class="dropdown-header">SOCIAL MEDIA</li>
+                    <li><a class="icon twitter" href="https://twitter.com/ApacheKudu">Twitter</a></li>
+                  </ul>
+                </li>
+                <li >
+                  <a href="/faq.html">FAQ</a>
+                </li>
+              </ul><!-- /.nav -->
+            </div><!-- /#navbar -->
+          </div><!-- /.container-fluid -->
+        </nav>
+
+<!--
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
+
+
+<div class="container">
+  <div class="row">
+    <div class="col-md-9">
+
+<h1>Apache Kudu Prior Version Release Notes</h1>
+      <div id="preamble">
+<div class="sectionbody">
+<div class="paragraph">
+<p>This section reproduces the release notes for new features and incompatible
+changes in prior releases of Apache Kudu.</p>
+</div>
+<div class="admonitionblock note">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-note" title="Note"></i>
+</td>
+<td class="content">
+The list of known issues and limitations for prior releases are not
+reproduced on this page. Please consult the
+<a href="http://kudu.apache.org/releases/">documentation of the appropriate release</a>
+for a list of known issues and limitations.
+</td>
+</tr>
+</table>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="rn_1.3.0"><a class="link" href="#rn_1.3.0">Release notes specific to 1.3.0</a></h2>
+<div class="sectionbody">
+
+</div>
+</div>
+<div class="sect1">
+<h2 id="rn_1.3.0_new_features"><a class="link" href="#rn_1.3.0_new_features">New features</a></h2>
+<div class="sectionbody">
+<div class="ulist">
+<ul>
+<li>
+<p>Kudu 1.3 adds support for strong authentication based on Kerberos. This optional feature
+allows users to authenticate themselves using Kerberos tickets, and also provides
+mutual authentication of servers using Kerberos credentials stored in keytabs. This
+feature is optional, but recommended for deployments requiring security.</p>
+</li>
+<li>
+<p>Kudu 1.3 adds support for encryption of data on the network using Transport Layer Security
+(TLS). Kudu will now use TLS to encrypt all network traffic between clients and servers as
+well as any internal traffic among servers, with the exception of traffic determined to
+be within a localhost network connection. Encryption is enabled by default whenever it can
+be determined that both the client and server support the feature.</p>
+</li>
+<li>
+<p>Kudu 1.3 adds coarse-grained service-level authorization of access to the cluster.
+The operator may set up lists of permitted users who may act as administrators and
+as clients of the cluster. Combined with the strong authentication feature described
+above, this can enable a secure environment for some use cases. Note that fine-grained
+access control (e.g. table-level or column-level) is not yet supported.</p>
+</li>
+<li>
+<p>Kudu 1.3 adds a background task to tablet servers which removes historical versions of
+data which have fallen behind the configured data retention time. This reduces disk space
+usage in all workloads, but particularly in those with a higher volume of updates or
+upserts.</p>
+</li>
+<li>
+<p>Kudu now incorporates Google Breakpad, a library which writes crash reports in
+the case of a server crash. These reports can be found within the configured log directory,
+and can be useful during bug diagnosis.</p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_optimizations_and_improvements"><a class="link" href="#_optimizations_and_improvements">Optimizations and improvements</a></h2>
+<div class="sectionbody">
+<div class="ulist">
+<ul>
+<li>
+<p>Kudu servers will now change the file permissions of data directories and contained
+data files based on a new configuration flag <code>--umask</code>. As a result, after upgrading,
+permissions on disk may be more restrictive than in previous versions. The new default
+configuration improves data security.</p>
+</li>
+<li>
+<p>Kudu&#8217;s web UI will now redact strings which may include sensitive user data. For example,
+the monitoring page which shows in-progress scans no longer includes the scanner predicate
+values. The tracing and RPC diagnostics endpoints no longer include contents of RPCs which
+may include table data.</p>
+</li>
+<li>
+<p>By default, Kudu now reserves 1% of each configured data volume as free space. If a volume
+is seen to have less than 1% of disk space free, Kudu will stop writing to that volume
+to avoid completely filling up the disk.</p>
+</li>
+<li>
+<p>The default encoding for numeric columns (int, float, and double) has been changed
+to <code>BIT_SHUFFLE</code>. The default encoding for binary and string columns has been
+changed to <code>DICT_ENCODING</code>. Dictionary encoding automatically falls back to the old
+default (<code>PLAIN</code>) when cardinality is too high to be effectively encoded.</p>
+<div class="paragraph">
+<p>These new defaults match the default behavior of other storage mechanisms such as
+  Apache Parquet and are likely to perform better out of the box.</p>
+</div>
+</li>
+<li>
+<p>Kudu now uses <code>LZ4</code> compression when writing its Write Ahead Log (WAL). This improves
+write performance and stability for many use cases.</p>
+</li>
+<li>
+<p>Kudu now uses <code>LZ4</code> compression when writing delta files. This can improve both
+read and write performance as well as save substantial disk usage, especially
+for workloads involving a high number of updates or upserts containing compressible
+data.</p>
+</li>
+<li>
+<p>The Kudu API now supports the ability to express <code>IS NULL</code> and <code>IS NOT NULL</code> predicates
+on scanners. The Spark DataSource integration will take advantage of these new
+predicates when possible.</p>
+</li>
+<li>
+<p>Both C++ and Java clients have been optimized to prune partitions more effectively
+when performing scans using the <code>IN (&#8230;&#8203;)</code> predicate.</p>
+</li>
+<li>
+<p>The exception messages produced by the Java client are now truncated to a maximum length
+of 32KB.</p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="rn_1.3.0_fixed_issues"><a class="link" href="#rn_1.3.0_fixed_issues">Fixed Issues</a></h2>
+<div class="sectionbody">
+<div class="ulist">
+<ul>
+<li>
+<p><a href="https://issues.apache.org/jira/browse/KUDU-1893">KUDU-1893</a>
+Fixed a critical bug in which wrong results would be returned when evaluating
+predicates applied to columns added using the <code>ALTER TABLE</code> operation.</p>
+</li>
+<li>
+<p><a href="https://issues.apache.org/jira/browse/KUDU-1905">KUDU-1905</a>
+Fixed a crash after inserting a row sharing a primary key with a recently-deleted
+row in tables where the primary key is comprised of all of the columns.</p>
+</li>
+<li>
+<p><a href="https://issues.apache.org/jira/browse/KUDU-1899">KUDU-1899</a>
+Fixed a crash after inserting a row with an empty string as the single-column
+primary key.</p>
+</li>
+<li>
+<p><a href="https://issues.apache.org/jira/browse/KUDU-1904">KUDU-1904</a>
+Fixed a potential crash when performing random reads against a column using RLE
+encoding and containing long runs of NULL values.</p>
+</li>
+<li>
+<p><a href="https://issues.apache.org/jira/browse/KUDU-1853">KUDU-1853</a>
+Fixed an issue where disk space could be leaked on servers which experienced an error
+during the process of copying tablet data from another server.</p>
+</li>
+<li>
+<p><a href="https://issues.apache.org/jira/browse/KUDU-1856">KUDU-1856</a>
+Fixed an issue in which disk space could be leaked by Kudu servers storing data on
+partitions using the XFS file system. Any leaked disk space will be automatically
+recovered upon upgrade.</p>
+</li>
+<li>
+<p><a href="https://issues.apache.org/jira/browse/KUDU-1888">KUDU-1888</a>,
+<a href="https://issues.apache.org/jira/browse/KUDU-1906">KUDU-1906</a>
+Fixed multiple issues in the Java client where operation callbacks would never be
+triggered, causing the client to hang.</p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="rn_1.3.0_wire_compatibility"><a class="link" href="#rn_1.3.0_wire_compatibility">Wire Protocol compatibility</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Kudu 1.3.0 is wire-compatible with previous versions of Kudu:</p>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p>Kudu 1.3 clients may connect to servers running Kudu 1.0. If the client uses features
+that are not available on the target server, an error will be returned.</p>
+</li>
+<li>
+<p>Kudu 1.0 clients may connect to servers running Kudu 1.3 with the exception of the
+below-mentioned restrictions regarding secure clusters.</p>
+</li>
+<li>
+<p>Rolling upgrade between Kudu 1.2 and Kudu 1.3 servers is believed to be possible
+though has not been sufficiently tested. Users are encouraged to shut down all nodes
+in the cluster, upgrade the software, and then restart the daemons on the new version.</p>
+</li>
+</ul>
+</div>
+<div class="paragraph">
+<p>The authentication features newly introduced in Kudu 1.3 place the following limitations
+on wire compatibility with older versions:</p>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p>If a Kudu 1.3 cluster is configured with authentication or encryption set to "required",
+older clients will be unable to connect.</p>
+</li>
+<li>
+<p>If a Kudu 1.3 cluster is configured with authentication and encryption set to "optional"
+or "disabled", older clients will still be able to connect.</p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="rn_1.3.0_incompatible_changes"><a class="link" href="#rn_1.3.0_incompatible_changes">Incompatible Changes in Kudu 1.3.0</a></h2>
+<div class="sectionbody">
+<div class="ulist">
+<ul>
+<li>
+<p>Due to storage format changes in Kudu 1.3, downgrade from Kudu 1.3 to earlier versions
+is not supported. After upgrading to Kudu 1.3, attempting to restart with an earlier
+version will result in an error.</p>
+</li>
+<li>
+<p>In order to support running MapReduce and Spark jobs on secure clusters, these
+frameworks now connect to the cluster at job submission time to retrieve authentication
+credentials which can later be used by the tasks to be spawned. This means that
+the process submitting jobs to Kudu clusters must have direct access to that cluster.</p>
+</li>
+<li>
+<p>The embedded web servers in Kudu processes now specify the <code>X-Frame-Options: DENY</code> HTTP
+header which prevents embedding Kudu web pages in HTML <code>iframe</code> elements.</p>
+</li>
+</ul>
+</div>
+<div class="sect2">
+<h3 id="rn_1.3.0_client_compatibility"><a class="link" href="#rn_1.3.0_client_compatibility">Client Library Compatibility</a></h3>
+<div class="ulist">
+<ul>
+<li>
+<p>The Kudu 1.3 Java client library is API- and ABI-compatible with Kudu 1.2. Applications
+written against Kudu 1.2 will compile and run against the Kudu 1.3 client library and
+vice-versa, unless one of the following newly added APIs is used:</p>
+<div class="ulist">
+<ul>
+<li>
+<p><code>[Async]KuduClient.exportAuthenticationCredentials(&#8230;&#8203;)</code> (unstable API)</p>
+</li>
+<li>
+<p><code>[Async]KuduClient.importAuthenticationCredentials(&#8230;&#8203;)</code> (unstable API)</p>
+</li>
+<li>
+<p><code>[Async]KuduClient.getMasterAddressesAsString()</code></p>
+</li>
+<li>
+<p><code>KuduPredicate.newIsNotNullPredicate()</code></p>
+</li>
+<li>
+<p><code>KuduPredicate.newIsNullPredicate()</code></p>
+</li>
+</ul>
+</div>
+</li>
+<li>
+<p>The Kudu 1.3 C++ client is API- and ABI-forward-compatible with Kudu 1.2.
+Applications written and compiled against the Kudu 1.2 client library will run without
+modification against the Kudu 1.3 client library. Applications written and compiled
+against the Kudu 1.3 client library will run without modification against the Kudu 1.2
+client library unless they use one of the following new APIs:</p>
+<div class="ulist">
+<ul>
+<li>
+<p><code>kudu::DisableOpenSSLInitialization()</code></p>
+</li>
+<li>
+<p><code>KuduClientBuilder::import_authentication_credentials(&#8230;&#8203;)</code></p>
+</li>
+<li>
+<p><code>KuduClient::ExportAuthenticationCredentials(&#8230;&#8203;)</code></p>
+</li>
+<li>
+<p><code>KuduClient::NewIsNotNullPredicate(&#8230;&#8203;)</code></p>
+</li>
+<li>
+<p><code>KuduClient::NewIsNullPredicate(&#8230;&#8203;)</code></p>
+</li>
+</ul>
+</div>
+</li>
+<li>
+<p>The Kudu 1.3 Python client is API-compatible with Kudu 1.2. Applications
+written against Kudu 1.2 will continue to run against the Kudu 1.3 client
+and vice-versa.</p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="rn_1.2.0"><a class="link" href="#rn_1.2.0">Release notes specific to 1.2.0</a></h2>
+<div class="sectionbody">
+
+</div>
+</div>
+<div class="sect1">
+<h2 id="rn_1.2.0_new_features"><a class="link" href="#rn_1.2.0_new_features">New features</a></h2>
+<div class="sectionbody">
+<div class="ulist">
+<ul>
+<li>
+<p>Kudu clients and servers now redact user data such as cell values
+from log messages, Java exception messages, and <code>Status</code> strings.
+User metadata such as table names, column names, and partition
+bounds are not redacted.</p>
+<div class="paragraph">
+<p>Redaction is enabled by default, but may be disabled by setting the new
+<code>log_redact_user_data</code> flag to <code>false</code>.</p>
+</div>
+</li>
+<li>
+<p>Kudu&#8217;s ability to provide consistency guarantees has been substantially
+improved:</p>
+<div class="ulist">
+<ul>
+<li>
+<p>Replicas now correctly track their "safe timestamp". This timestamp
+is the maximum timestamp at which reads are guaranteed to be
+repeatable.</p>
+</li>
+<li>
+<p>A scan created using the <code>SCAN_AT_SNAPSHOT</code> mode will now
+either wait for the requested snapshot to be "safe" at the replica
+being scanned, or be re-routed to a replica where the requested
+snapshot is "safe". This ensures that all such scans are repeatable.</p>
+</li>
+<li>
+<p>Kudu Tablet Servers now properly retain historical data when a row
+with a given primary key is inserted and deleted, followed by the
+insertion of a new row with the same key. Previous versions of Kudu
+would not retain history in such situations. This allows the server
+to return correct results for snapshot scans with a timestamp in the
+past, even in the presence of such "reinsertion" scenarios.</p>
+</li>
+<li>
+<p>The Kudu clients now automatically retain the timestamp of their latest
+successful read or write operation. Scans using the <code>READ_AT_SNAPSHOT</code> mode
+without a client-provided timestamp automatically assign a timestamp
+higher than the timestamp of their most recent write. Writes also propagate
+the timestamp, ensuring that sequences of operations with causal dependencies
+between them are assigned increasing timestamps. Together, these changes
+allow clients to achieve read-your-writes consistency, and also ensure
+that snapshot scans performed by other clients return causally-consistent
+results.</p>
+</li>
+</ul>
+</div>
+</li>
+<li>
+<p>Kudu servers now automatically limit the number of log files.
+The number of log files retained can be configured using the
+<code>max_log_files</code> flag. By default, 10 log files will be retained
+at each severity level.</p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_optimizations_and_improvements_2"><a class="link" href="#_optimizations_and_improvements_2">Optimizations and improvements</a></h2>
+<div class="sectionbody">
+<div class="ulist">
+<ul>
+<li>
+<p>The logging in the Java and C++ clients has been substantially quieted.
+Clients no longer log messages in normal operation unless there
+is some kind of error.</p>
+</li>
+<li>
+<p>The C++ client now includes a <code>KuduSession::SetErrorBufferSpace</code>
+API which can limit the amount of memory used to buffer
+errors from asynchronous operations.</p>
+</li>
+<li>
+<p>The Java client now fetches tablet locations from the Kudu Master
+in batches of 1000, increased from batches of 10 in prior versions.
+This can substantially improve the performance of Spark and Impala
+queries running against Kudu tables with large numbers of tablets.</p>
+</li>
+<li>
+<p>Table metadata lock contention in the Kudu Master was substantially
+reduced. This improves the performance of tablet location lookups on
+large clusters with a high degree of concurrency.</p>
+</li>
+<li>
+<p>Lock contention in the Kudu Tablet Server during high-concurrency
+write workloads was also reduced. This can reduce CPU consumption and
+improve performance when a large number of concurrent clients are writing
+to a smaller number of a servers.</p>
+</li>
+<li>
+<p>Lock contention when writing log messages has been substantially reduced.
+This source of contention could cause high tail latencies on requests,
+and when under high load could contribute to cluster instability
+such as election storms and request timeouts.</p>
+</li>
+<li>
+<p>The <code>BITSHUFFLE</code> column encoding has been optimized to use the <code>AVX2</code>
+instruction set present on processors including Intel&#174; Sandy Bridge
+and later. Scans on <code>BITSHUFFLE</code>-encoded columns are now up to 30% faster.</p>
+</li>
+<li>
+<p>The <code>kudu</code> tool now accepts hyphens as an alternative to underscores
+when specifying actions. For example, <code>kudu local-replica copy-from-remote</code>
+may be used as an alternative to <code>kudu local_replica copy_from_remote</code>.</p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="rn_1.2.0_fixed_issues"><a class="link" href="#rn_1.2.0_fixed_issues">Fixed Issues</a></h2>
+<div class="sectionbody">
+<div class="ulist">
+<ul>
+<li>
+<p><a href="https://issues.apache.org/jira/browse/KUDU-1508">KUDU-1508</a>
+Fixed a long-standing issue in which running Kudu on <code>ext4</code> file systems
+could cause file system corruption.</p>
+</li>
+<li>
+<p><a href="https://issues.apache.org/jira/browse/KUDU-1399">KUDU-1399</a>
+Implemented an LRU cache for open files, which prevents running out of
+file descriptors on long-lived Kudu clusters. By default, Kudu will
+limit its file descriptor usage to half of its configured <code>ulimit</code>.</p>
+</li>
+<li>
+<p><a href="http://gerrit.cloudera.org:8080/5192">Gerrit #5192</a>
+Fixed an issue which caused data corruption and crashes in the case that
+a table had a non-composite (single-column) primary key, and that column
+was specified to use <code>DICT_ENCODING</code> or <code>BITSHUFFLE</code> encodings. If a
+table with an affected schema was written in previous versions of Kudu,
+the corruption will not be automatically repaired; users are encouraged
+to re-insert such tables after upgrading to Kudu 1.2 or later.</p>
+</li>
+<li>
+<p><a href="http://gerrit.cloudera.org:8080/5541">Gerrit #5541</a>
+Fixed a bug in the Spark <code>KuduRDD</code> implementation which could cause
+rows in the result set to be silently skipped in some cases.</p>
+</li>
+<li>
+<p><a href="https://issues.apache.org/jira/browse/KUDU-1551">KUDU-1551</a>
+Fixed an issue in which the tablet server would crash on restart in the
+case that it had previously crashed during the process of allocating
+a new WAL segment.</p>
+</li>
+<li>
+<p><a href="https://issues.apache.org/jira/browse/KUDU-1764">KUDU-1764</a>
+Fixed an issue where Kudu servers would leak approximately 16-32MB of disk
+space for every 10GB of data written to disk. After upgrading to Kudu
+1.2 or later, any disk space leaked in previous versions will be
+automatically recovered on startup.</p>
+</li>
+<li>
+<p><a href="https://issues.apache.org/jira/browse/KUDU-1750">KUDU-1750</a>
+Fixed an issue where the API to drop a range partition would drop any
+partition with a matching lower <em>or</em> upper bound, rather than any partition
+with matching lower <em>and</em> upper bound.</p>
+</li>
+<li>
+<p><a href="https://issues.apache.org/jira/browse/KUDU-1766">KUDU-1766</a>
+Fixed an issue in the Java client where equality predicates which compared
+an integer column to its maximum possible value (e.g. <code>Integer.MAX_VALUE</code>)
+would return incorrect results.</p>
+</li>
+<li>
+<p><a href="https://issues.apache.org/jira/browse/KUDU-1780">KUDU-1780</a>
+Fixed the <code>kudu-client</code> Java artifact to properly shade classes in the
+<code>com.google.thirdparty</code> namespace. The lack of proper shading in prior
+releases could cause conflicts with certain versions of Google Guava.</p>
+</li>
+<li>
+<p><a href="http://gerrit.cloudera.org:8080/5327">Gerrit #5327</a>
+Fixed shading issues in the <code>kudu-flume-sink</code> Java artifact. The sink
+now expects that Hadoop dependencies are provided by Flume, and properly
+shades the Kudu client&#8217;s dependencies.</p>
+</li>
+<li>
+<p>Fixed a few issues using the Python client library from Python 3.</p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="rn_1.2.0_wire_compatibility"><a class="link" href="#rn_1.2.0_wire_compatibility">Wire Protocol compatibility</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Kudu 1.2.0 is wire-compatible with previous versions of Kudu:</p>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p>Kudu 1.2 clients may connect to servers running Kudu 1.0. If the client uses features
+that are not available on the target server, an error will be returned.</p>
+</li>
+<li>
+<p>Kudu 1.0 clients may connect to servers running Kudu 1.2 without limitations.</p>
+</li>
+<li>
+<p>Rolling upgrade between Kudu 1.1 and Kudu 1.2 servers is believed to be possible
+though has not been sufficiently tested. Users are encouraged to shut down all nodes
+in the cluster, upgrade the software, and then restart the daemons on the new version.</p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="rn_1.2.0_incompatible_changes"><a class="link" href="#rn_1.2.0_incompatible_changes">Incompatible Changes in Kudu 1.2.0</a></h2>
+<div class="sectionbody">
+<div class="ulist">
+<ul>
+<li>
+<p>The replication factor of tables is now limited to a maximum of 7. In addition,
+it is no longer allowed to create a table with an even replication factor.</p>
+</li>
+<li>
+<p>The <code>GROUP_VARINT</code> encoding is now deprecated. Kudu servers have never supported
+this encoding, and now the client-side constant has been deprecated to match the
+server&#8217;s capabilities.</p>
+</li>
+</ul>
+</div>
+<div class="sect2">
+<h3 id="_new_restrictions_on_data_schemas_and_identifiers"><a class="link" href="#_new_restrictions_on_data_schemas_and_identifiers">New Restrictions on Data, Schemas, and Identifiers</a></h3>
+<div class="paragraph">
+<p>Kudu 1.2.0 introduces several new restrictions on schemas, cell size, and identifiers:</p>
+</div>
+<div class="dlist">
+<dl>
+<dt class="hdlist1">Number of Columns</dt>
+<dd>
+<p>By default, Kudu will not permit the creation of tables with
+more than 300 columns. We recommend schema designs that use fewer columns for best
+performance.</p>
+</dd>
+<dt class="hdlist1">Size of Cells</dt>
+<dd>
+<p>No individual cell may be larger than 64KB. The cells making up a
+a composite key are limited to a total of 16KB after the internal composite-key encoding
+done by Kudu. Inserting rows not conforming to these limitations will result in errors
+being returned to the client.</p>
+</dd>
+<dt class="hdlist1">Valid Identifiers</dt>
+<dd>
+<p>Identifiers such as column and table names are now restricted to
+be valid UTF-8 strings. Additionally, a maximum length of 256 characters is enforced.</p>
+</dd>
+</dl>
+</div>
+</div>
+<div class="sect2">
+<h3 id="rn_1.2.0_client_compatibility"><a class="link" href="#rn_1.2.0_client_compatibility">Client Library Compatibility</a></h3>
+<div class="ulist">
+<ul>
+<li>
+<p>The Kudu 1.2 Java client is API- and ABI-compatible with Kudu 1.1. Applications
+written against Kudu 1.1 will compile and run against the Kudu 1.2 client and
+vice-versa.</p>
+</li>
+<li>
+<p>The Kudu 1.2 C++ client is API- and ABI-forward-compatible with Kudu 1.1.
+Applications written and compiled against the Kudu 1.1 client will run without
+modification against the Kudu 1.2 client. Applications written and compiled
+against the Kudu 1.2 client will run without modification against the Kudu 1.1
+client unless they use one of the following new APIs:</p>
+<div class="ulist">
+<ul>
+<li>
+<p><code>kudu::DisableSaslInitialization()</code></p>
+</li>
+<li>
+<p><code>KuduSession::SetErrorBufferSpace(&#8230;&#8203;)</code></p>
+</li>
+</ul>
+</div>
+</li>
+<li>
+<p>The Kudu 1.2 Python client is API-compatible with Kudu 1.1. Applications
+written against Kudu 1.1 will continue to run against the Kudu 1.2 client
+and vice-versa.</p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="rn_1.1.0"><a class="link" href="#rn_1.1.0">Release notes specific to 1.1.0</a></h2>
+<div class="sectionbody">
+
+</div>
+</div>
+<div class="sect1">
+<h2 id="rn_1.1.0_new_features"><a class="link" href="#rn_1.1.0_new_features">New features</a></h2>
+<div class="sectionbody">
+<div class="ulist">
+<ul>
+<li>
+<p>The Python client has been brought up to feature parity with the Java and C++ clients
+and as such the package version will be brought to 1.1 with this release (from 0.3). A
+list of the highlights can be found below.</p>
+<div class="ulist">
+<ul>
+<li>
+<p>Improved Partial Row semantics</p>
+</li>
+<li>
+<p>Range partition support</p>
+</li>
+<li>
+<p>Scan Token API</p>
+</li>
+<li>
+<p>Enhanced predicate support</p>
+</li>
+<li>
+<p>Support for all Kudu data types (including a mapping of Python&#8217;s <code>datetime.datetime</code> to
+<code>UNIXTIME_MICROS</code>)</p>
+</li>
+<li>
+<p>Alter table support</p>
+</li>
+<li>
+<p>Enabled Read at Snapshot for Scanners</p>
+</li>
+<li>
+<p>Enabled Scanner Replica Selection</p>
+</li>
+<li>
+<p>A few bug fixes for Python 3 in addition to various other improvements.</p>
+</li>
+</ul>
+</div>
+</li>
+<li>
+<p>IN LIST predicate pushdown support was added to allow optimized execution of filters which
+match on a set of column values. Support for Spark, Map Reduce and Impala queries utilizing
+IN LIST pushdown is not yet complete.</p>
+</li>
+<li>
+<p>The Java client now features client-side request tracing in order to help troubleshoot timeouts.
+Error messages are now augmented with traces that show which servers were contacted before the
+timeout occurred instead of just the last error. The traces also contain RPCs that were
+required to fulfill the client&#8217;s request, such as contacting the master to discover a tablet&#8217;s
+location. Note that the traces are not available for successful requests and are not
+programmatically queryable.</p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_optimizations_and_improvements_3"><a class="link" href="#_optimizations_and_improvements_3">Optimizations and improvements</a></h2>
+<div class="sectionbody">
+<div class="ulist">
+<ul>
+<li>
+<p>Kudu now publishes JAR files for Spark 2.0 compiled with Scala 2.11 along with the
+existing Spark 1.6 JAR compiled with Scala 2.10.</p>
+</li>
+<li>
+<p>The Java client now allows configuring scanners to read from the closest replica instead of
+the known leader replica. The default remains the latter. Use the relevant <code>ReplicaSelection</code>
+enum with the scanner&#8217;s builder to change this behavior.</p>
+</li>
+<li>
+<p>Tablet servers use a new policy for retaining write-ahead log (WAL) segments.
+Previously, servers used the 'log_min_segments_to_retain' flag to prioritize
+any flushes which were retaining log segments past the configured value (default 2).
+This policy caused servers to flush in-memory data more frequently than necessary,
+limiting write performance.</p>
+<div class="paragraph">
+<p>The new policy introduces a new flag 'log_target_replay_size_mb' which
+  determines the threshold at which write-ahead log retention will prioritize flushes.
+  The new flag is considered experimental and users should not need to modify
+  its value.</p>
+</div>
+<div class="paragraph">
+<p>The improved policy has been seen to improve write performance in some use cases
+  by a factor of 2x relative to the old policy.</p>
+</div>
+</li>
+<li>
+<p>Kudu&#8217;s implementation of the Raft consensus algorithm has been improved to include
+a "pre-election" phase. This can improve the stability of tablet leader election
+in high-load scenarios, especially if each server hosts a high number of tablets.</p>
+</li>
+<li>
+<p>Tablet server start-up time has been substantially improved in the case that
+the server contains a high number of tombstoned tablet replicas.</p>
+</li>
+</ul>
+</div>
+<div class="sect2">
+<h3 id="_command_line_tools"><a class="link" href="#_command_line_tools">Command line tools</a></h3>
+<div class="ulist">
+<ul>
+<li>
+<p>The tool <code>kudu tablet leader_step_down</code> has been added to manually force a leader to step down.</p>
+</li>
+<li>
+<p>The tool <code>kudu remote_replica copy</code> has been added to manually copy a replica from
+one running tablet server to another.</p>
+</li>
+<li>
+<p>The tool <code>kudu local_replica delete</code> has been added to delete a replica of a tablet.</p>
+</li>
+<li>
+<p>The <code>kudu test loadgen</code> tool has been added to replace the obsoleted
+<code>insert-generated-rows</code> standalone binary. The new tool is enriched with
+additional functionality and can be used to run load generation tests against
+a Kudu cluster.</p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_wire_protocol_compatibility"><a class="link" href="#_wire_protocol_compatibility">Wire protocol compatibility</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Kudu 1.1.0 is wire-compatible with previous versions of Kudu:</p>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p>Kudu 1.1 clients may connect to servers running Kudu 1.0. If the client uses the new
+'IN LIST' predicate type, an error will be returned.</p>
+</li>
+<li>
+<p>Kudu 1.0 clients may connect to servers running Kudu 1.1 without limitations.</p>
+</li>
+<li>
+<p>Rolling upgrade between Kudu 1.0 and Kudu 1.1 servers is believed to be possible
+though has not been sufficiently tested. Users are encouraged to shut down all nodes
+in the cluster, upgrade the software, and then restart the daemons on the new version.</p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="rn_1.1.0_incompatible_changes"><a class="link" href="#rn_1.1.0_incompatible_changes">Incompatible changes in Kudu 1.1.0</a></h2>
+<div class="sectionbody">
+<div class="sect2">
+<h3 id="_client_apis_c_java_python"><a class="link" href="#_client_apis_c_java_python">Client APIs (C++/Java/Python)</a></h3>
+<div class="ulist">
+<ul>
+<li>
+<p>The C++ client no longer requires the
+<a href="https://gcc.gnu.org/onlinedocs/libstdc++/manual/using_dual_abi.html">old gcc5 ABI</a>.
+Which ABI is actually used depends on the compiler configuration. Some new distros
+(e.g. Ubuntu 16.04) will use the new ABI. Your application must use the same ABI as is
+used by the client library; an easy way to guarantee this is to use the same compiler
+to build both.</p>
+</li>
+<li>
+<p>The C++ client&#8217;s <code>KuduSession::CountBufferedOperations()</code> method is
+deprecated. Its behavior is inconsistent unless the session runs in the
+<code>MANUAL_FLUSH</code> mode. Instead, to get number of buffered operations, count
+invocations of the <code>KuduSession::Apply()</code> method since last
+<code>KuduSession::Flush()</code> call or, if using asynchronous flushing, since last
+invocation of the callback passed into <code>KuduSession::FlushAsync()</code>.</p>
+</li>
+<li>
+<p>The Java client&#8217;s <code>OperationResponse.getWriteTimestamp</code> method was renamed to <code>getWriteTimestampRaw</code>
+to emphasize that it doesn&#8217;t return milliseconds, unlike what its Javadoc indicated. The renamed
+method was also hidden from the public APIs and should not be used.</p>
+</li>
+<li>
+<p>The Java client&#8217;s sync API (<code>KuduClient</code>, <code>KuduSession</code>, <code>KuduScanner</code>) used to throw either
+a <code>NonRecoverableException</code> or a <code>TimeoutException</code> for a timeout, and now it&#8217;s only possible for the
+client to throw the former.</p>
+</li>
+<li>
+<p>The Java client&#8217;s handling of errors in <code>KuduSession</code> was modified so that subclasses of
+<code>KuduException</code> are converted into RowErrors instead of being thrown.</p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="rn_1.0.1"><a class="link" href="#rn_1.0.1">Release notes specific to 1.0.1</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Apache Kudu 1.0.1 is a bug fix release, with no new features or backwards
+incompatible changes.</p>
+</div>
+<div class="sect2">
+<h3 id="rn_1.0.1_fixed_issues"><a class="link" href="#rn_1.0.1_fixed_issues">Fixed Issues</a></h3>
+<div class="ulist">
+<ul>
+<li>
+<p><a href="https://issues.apache.org/jira/browse/KUDU-1681">KUDU-1681</a> Fixed a bug in
+the tablet server which could cause a crash when the DNS lookup during master
+heartbeat failed.</p>
+</li>
+<li>
+<p><a href="https://issues.apache.org/jira/browse/KUDU-1660">KUDU-1660</a>: Fixed a bug
+which would cause the Kudu master and tablet server to fail to start on single
+CPU systems.</p>
+</li>
+<li>
+<p><a href="https://issues.apache.org/jira/browse/KUDU-1651">KUDU-1652</a>: Fixed a bug
+that would cause the C++ client, tablet server, and Java client to crash or
+throw an exception when attempting to scan a table with a predicate which
+simplifies to <code>IS NOT NULL</code> on a non-nullable column. For instance, setting a
+<code>&#8656; 127</code> predicate on an <code>INT8</code> column could trigger this bug, since the
+predicate only filters null values.</p>
+</li>
+<li>
+<p><a href="https://issues.apache.org/jira/browse/KUDU-1651">KUDU-1651</a>: Fixed a bug
+that would cause the tablet server to crash when evaluating a scan with
+predicates over a dictionary encoded column containing an entire block of null
+values.</p>
+</li>
+<li>
+<p><a href="https://issues.apache.org/jira/browse/KUDU-1623">KUDU-1623</a>: Fixed a bug
+that would cause the tablet server to crash when handling UPSERT operations
+that only set values for the primary key columns.</p>
+</li>
+<li>
+<p><a href="http://gerrit.cloudera.org:8080/4488">Gerrit #4488</a> Fixed a bug in the
+Java client&#8217;s KuduException class which could cause an unexpected
+NullPointerException to be thrown when the exception did not have an
+associated message.</p>
+</li>
+<li>
+<p><a href="https://issues.apache.org/jira/browse/KUDU-1090">KUDU-1090</a> Fixed a bug in
+the memory tracker which could cause a rare crash during tablet server
+startup.</p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="rn_1.0.0"><a class="link" href="#rn_1.0.0">Release notes specific to 1.0.0</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>After approximately a year of beta releases, Apache Kudu has reached version 1.0.
+This version number signifies that the development team feels that Kudu is stable
+enough for usage in production environments.</p>
+</div>
+<div class="paragraph">
+<p>If you are new to Kudu, check out its list of <a href="index.html">features and benefits</a>.</p>
+</div>
+<div class="sect2">
+<h3 id="rn_1.0.0_new_features"><a class="link" href="#rn_1.0.0_new_features">New features</a></h3>
+<div class="paragraph">
+<p>Kudu 1.0.0 delivers a number of new features, bug fixes, and optimizations.</p>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p>Removal of multiversion concurrency control (MVCC) history is now supported.
+This is known as tablet history GC. This allows Kudu to reclaim disk space,
+where previously Kudu would keep a full history of all changes made to a
+given table since the beginning of time. Previously, the only way to reclaim
+disk space was to drop a table.</p>
+<div class="paragraph">
+<p>Kudu will still keep historical data, and the amount of history retained is
+  controlled by setting the configuration flag <code>--tablet_history_max_age_sec</code>,
+  which defaults to 15 minutes (expressed in seconds). The timestamp
+  represented by the current time minus <code>tablet_history_max_age_sec</code> is known
+  as the ancient history mark (AHM). When a compaction or flush occurs, Kudu
+  will remove the history of changes made prior to the ancient history mark.
+  This only affects historical data; currently-visible data will not be
+  removed. A specialized maintenance manager background task to remove existing
+  "cold" historical data that is not in a row affected by the normal compaction
+  process will be added in a future release.</p>
+</div>
+</li>
+<li>
+<p>Most of Kudu&#8217;s command line tools have been consolidated under a new
+top-level <code>kudu</code> tool. This reduces the number of large binaries distributed
+with Kudu and also includes much-improved help output.</p>
+</li>
+<li>
+<p>The Kudu Flume Sink now supports processing events containing Avro-encoded
+records, using the new <code>AvroKuduOperationsProducer</code>.</p>
+</li>
+<li>
+<p>Administrative tools including <code>kudu cluster ksck</code> now support running
+against multi-master Kudu clusters.</p>
+</li>
+<li>
+<p>The output of the <code>ksck</code> tool is now colorized and much easier to read.</p>
+</li>
+<li>
+<p>The C++ client API now supports writing data in <code>AUTO_FLUSH_BACKGROUND</code> mode.
+This can provide higher throughput for ingest workloads.</p>
+</li>
+</ul>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_optimizations_and_improvements_4"><a class="link" href="#_optimizations_and_improvements_4">Optimizations and improvements</a></h3>
+<div class="ulist">
+<ul>
+<li>
+<p>The performance of comparison predicates on dictionary-encoded columns has
+been substantially optimized. Users are encouraged to use dictionary encoding
+on any string or binary columns with low cardinality, especially if these
+columns will be filtered with predicates.</p>
+</li>
+<li>
+<p>The Java client is now able to prune partitions from scanners based on the
+provided predicates. For example, an equality predicate on a hash-partitioned
+column will now only access those tablets that could possibly contain matching
+data. This is expected to improve performance for the Spark integration as well
+as applications using the Java client API.</p>
+</li>
+<li>
+<p>The performance of compaction selection in the tablet server has been
+substantially improved. This can increase the efficiency of the background
+maintenance threads and improve overall throughput of heavy write workloads.</p>
+</li>
+<li>
+<p>The policy by which the tablet server retains write-ahead log (WAL) files has
+been improved so that it takes into account other replicas of the tablet.
+This should help mitigate the spurious eviction of tablet replicas on machines
+that temporarily lag behind the other replicas.</p>
+</li>
+</ul>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_wire_protocol_compatibility_2"><a class="link" href="#_wire_protocol_compatibility_2">Wire protocol compatibility</a></h3>
+<div class="paragraph">
+<p>Kudu 1.0.0 maintains client-server wire-compatibility with previous releases.
+Applications using the Kudu client libraries may be upgraded either
+before, at the same time, or after the Kudu servers.</p>
+</div>
+<div class="paragraph">
+<p>Kudu 1.0.0 does <em>not</em> maintain server-server wire compatibility with previous
+releases. Therefore, rolling upgrades between earlier versions of Kudu and
+Kudu 1.0.0 are not supported.</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="rn_1.0.0_incompatible_changes"><a class="link" href="#rn_1.0.0_incompatible_changes">Incompatible changes in Kudu 1.0.0</a></h3>
+<div class="sect3">
+<h4 id="_command_line_tools_2"><a class="link" href="#_command_line_tools_2">Command line tools</a></h4>
+<div class="ulist">
+<ul>
+<li>
+<p>The <code>kudu-pbc-dump</code> tool has been removed. The same functionality is now
+implemented as <code>kudu pbc dump</code>.</p>
+</li>
+<li>
+<p>The <code>kudu-ksck</code> tool has been removed. The same functionality is now
+implemented as <code>kudu cluster ksck</code>.</p>
+</li>
+<li>
+<p>The <code>cfile-dump</code> tool has been removed. The same functionality is now
+implemented as <code>kudu fs cfile dump</code>.</p>
+</li>
+<li>
+<p>The <code>log-dump</code> tool has been removed. The same functionality is now
+implemented as <code>kudu wal dump</code> and <code>kudu local_replica dump wals</code>.</p>
+</li>
+<li>
+<p>The <code>kudu-admin</code> tool has been removed. The same functionality is now
+implemented within <code>kudu table</code> and <code>kudu tablet</code>.</p>
+</li>
+<li>
+<p>The <code>kudu-fs_dump</code> tool has been removed. The same functionality is now
+implemented as <code>kudu fs dump</code>.</p>
+</li>
+<li>
+<p>The <code>kudu-ts-cli</code> tool has been removed. The same functionality is now
+implemented within <code>kudu master</code>, <code>kudu remote_replica</code>, and <code>kudu tserver</code>.</p>
+</li>
+<li>
+<p>The <code>kudu-fs_list</code> tool has been removed and some similar useful
+functionality has been moved under 'kudu local_replica'.</p>
+</li>
+</ul>
+</div>
+</div>
+<div class="sect3">
+<h4 id="_configuration_flags"><a class="link" href="#_configuration_flags">Configuration flags</a></h4>
+<div class="ulist">
+<ul>
+<li>
+<p>Some configuration flags are now marked as 'unsafe' and 'experimental'. Such flags
+are disallowed by default. Users may access these flags by enabling the additional
+flags <code>--unlock_unsafe_flags</code> and <code>--unlock_experimental_flags</code>. Usage of such flags
+is not recommended, as the flags may be removed or modified with no deprecation period
+and without notice in future Kudu releases.</p>
+</li>
+</ul>
+</div>
+</div>
+<div class="sect3">
+<h4 id="_client_apis_c_java_python_2"><a class="link" href="#_client_apis_c_java_python_2">Client APIs (C++/Java/Python)</a></h4>
+<div class="ulist">
+<ul>
+<li>
+<p>The <code>TIMESTAMP</code> column type has been renamed to <code>UNIXTIME_MICROS</code> in order to
+reduce confusion between Kudu&#8217;s timestamp support and the timestamps supported
+by other systems such as Apache Hive and Apache Impala (incubating). Existing
+tables will automatically be updated to use the new name for the type.</p>
+<div class="paragraph">
+<p>Clients upgrading to the new client libraries must move to the new name for
+  the type.  Clients using old client libraries will continue to operate using
+  the old type name, even when connected to clusters that have been
+  upgraded. Similarly, if clients are upgraded before servers, existing
+  timestamp columns will be available using the new type name.</p>
+</div>
+</li>
+<li>
+<p><code>KuduSession</code> methods in the C++ library are no longer advertised as thread-safe
+to have one set of semantics for both C++ and Java Kudu client libraries.</p>
+</li>
+<li>
+<p>The <code>KuduScanToken::TabletServers</code> method in the C++ library has been removed.
+The same information can now be found in the KuduScanToken::tablet method.</p>
+</li>
+</ul>
+</div>
+</div>
+<div class="sect3">
+<h4 id="_apache_flume_integration"><a class="link" href="#_apache_flume_integration">Apache Flume Integration</a></h4>
+<div class="ulist">
+<ul>
+<li>
+<p>The <code>KuduEventProducer</code> interface used to process Flume events into Kudu operations
+for the Kudu Flume Sink has changed, and has been renamed <code>KuduOperationsProducer</code>.
+The existing `KuduEventProducer`s have been updated for the new interface, and have
+been renamed similarly.</p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="rn_0.10.0"><a class="link" href="#rn_0.10.0">Release notes specific to 0.10.0</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Kudu 0.10.0 delivers a number of new features, bug fixes, and optimizations,
+detailed below.</p>
+</div>
+<div class="paragraph">
+<p>Kudu 0.10.0 maintains wire-compatibility with previous releases, meaning
+that applications using the Kudu client libraries may be upgraded either
+before, at the same time, or after the Kudu servers. However, if you begin
+using new features of Kudu 0.10.0 such as manually range-partitioned tables,
+you must first upgrade all clients to this release.</p>
+</div>
+<div class="paragraph">
+<p>This release does not maintain full Java API or ABI compatibility with
+Kudu 0.9.x due to a package rename and some other small changes. See below for details.</p>
+</div>
+<div class="paragraph">
+<p>See also <a href="https://issues.apache.org/jira/issues/?jql=project%20%3D%20KUDU%20AND%20status%20%3D%20Resolved
+%20AND%20fixVersion%20%3D%200.10.0">JIRAs resolved
+for Kudu 0.10.0</a> and <a href="https://github.com/apache/kudu/compare/0.9.1...0.10.0">Git
+changes between 0.9.1 and 0.10.0</a>.</p>
+</div>
+<div class="paragraph">
+<p>To upgrade to Kudu 0.10.0, see <a href="#rn_0.10.0_upgrade">[rn_0.10.0_upgrade]</a>.</p>
+</div>
+<div class="sect2">
+<h3 id="rn_0.10.0_incompatible_changes"><a class="link" href="#rn_0.10.0_incompatible_changes">Incompatible changes and deprecated APIs in 0.10.0</a></h3>
+<div class="ulist">
+<ul>
+<li>
+<p><a href="http://gerrit.cloudera.org:8080/3737">Gerrit #3737</a> The Java client has been repackaged
+under <code>org.apache.kudu</code> instead of <code>org.kududb</code>. Import statements for Kudu classes must
+be modified in order to compile against 0.10.0. Wire compatibility is maintained.</p>
+</li>
+<li>
+<p><a href="https://gerrit.cloudera.org/#/c/3055/">Gerrit #3055</a> The Java client&#8217;s
+synchronous API methods now throw <code>KuduException</code> instead of <code>Exception</code>.
+Existing code that catches <code>Exception</code> should still compile, but introspection of an
+exception&#8217;s message may be impacted. This change was made to allow thrown exceptions to be
+queried more easily using <code>KuduException.getStatus</code> and calling one of <code>Status&#8217;s methods.
+For example, an operation that tries to delete a table that doesn&#8217;t exist would return a
+`Status</code> that returns true when queried on <code>isNotFound()</code>.</p>
+</li>
+<li>
+<p>The Java client&#8217;s <code>KuduTable.getTabletsLocations</code> set of methods is now
+deprecated. Additionally, they now take an exclusive end partition key instead
+of an inclusive key. Applications are encouraged to use the scan tokens API
+instead of these methods in the future.</p>
+</li>
+<li>
+<p>The C++ API for specifying split points on range-partitioned tables has been improved
+to make it easier for callers to properly manage the ownership of the provided rows.</p>
+<div class="paragraph">
+<p>The <code>TableCreator::split_rows</code> API took a <code>vector&lt;const KuduPartialRow*&gt;</code>, which
+  made it very difficult for the calling application to do proper error handling with
+  cleanup when setting the fields of the <code>KuduPartialRow</code>. This API has been now been
+  deprecated and replaced by a new method <code>TableCreator::add_range_split</code> which allows
+  easier use of smart pointers for safe memory management.</p>
+</div>
+</li>
+<li>
+<p>The Java client&#8217;s internal buffering has been reworked. Previously, the number of
+buffered write operations was constrained on a per-tablet-server basis. Now, the configured
+maximum buffer size constrains the total number of buffered operations across all
+tablet servers in the cluster. This provides a more consistent bound on the memory
+usage of the client regardless of the size of the cluster to which it is writing.</p>
+<div class="paragraph">
+<p>This change can negatively affect the write performance of Java clients which rely on
+  buffered writes. Consider using the <code>setMutationBufferSpace</code> API to increase a
+  session&#8217;s maximum buffer size if write performance seems to be degraded after upgrading
+  to Kudu 0.10.0.</p>
+</div>
+</li>
+<li>
+<p>The "remote bootstrap" process used to copy a tablet replica from one host to
+another has been renamed to "Tablet Copy". This resulted in the renaming of
+several RPC metrics. Any users previously explicitly fetching or monitoring metrics
+related to Remote Bootstrap should update their scripts to reflect the new names.</p>
+</li>
+<li>
+<p>The SparkSQL datasource for Kudu no longer supports mode <code>Overwrite</code>. Users should
+use the new <code>KuduContext.upsertRows</code> method instead. Additionally, inserts using the
+datasource are now upserts by default. The older behavior can be restored by setting
+the <code>operation</code> parameter to <code>insert</code>.</p>
+</li>
+</ul>
+</div>
+</div>
+<div class="sect2">
+<h3 id="rn_0.10.0_new_features"><a class="link" href="#rn_0.10.0_new_features">New features</a></h3>
+<div class="ulist">
+<ul>
+<li>
+<p>Users may now manually manage the partitioning of a range-partitioned table.
+When a table is created, the user may specify a set of range partitions that
+do not cover the entire available key space. A user may add or drop range
+partitions to existing tables.</p>
+<div class="paragraph">
+<p>This feature can be particularly helpful with time series workloads in which
+  new partitions can be created on an hourly or daily basis. Old partitions
+  may be efficiently dropped if the application does not need to retain historical
+  data past a certain point.</p>
+</div>
+<div class="paragraph">
+<p>This feature is considered experimental for the 0.10 release. More details of
+  the new feature can be found in the accompanying
+  <a href="https://kudu.apache.org/2016/08/23/new-range-partitioning-features.html">blog post</a>.</p>
+</div>
+</li>
+<li>
+<p>Support for running Kudu clusters with multiple masters has been stabilized.
+Users may start a cluster with three or five masters to provide fault tolerance
+despite a failure of one or two masters, respectively.</p>
+<div class="paragraph">
+<p>Note that certain tools (e.g. <code>ksck</code>) are still lacking complete support for
+  multiple masters. These deficiencies will be addressed in a following release.</p>
+</div>
+</li>
+<li>
+<p>Kudu now supports the ability to reserve a certain amount of free disk space
+in each of its configured data directories. If a directory&#8217;s free disk space
+drops to less than the configured minimum, Kudu will stop writing to that
+directory until space becomes available. If no space is available in any
+configured directory, Kudu will abort.</p>
+<div class="paragraph">
+<p>This feature may be configured using the <code>fs_data_dirs_reserved_bytes</code> and
+  <code>fs_wal_dir_reserved_bytes</code> flags.</p>
+</div>
+</li>
+<li>
+<p>The Spark integration&#8217;s <code>KuduContext</code> now supports four new methods for writing to
+Kudu tables: <code>insertRows</code>, <code>upsertRows</code>, <code>updateRows</code>, and <code>deleteRows</code>. These are
+now the preferred way to write to Kudu tables from Spark.</p>
+</li>
+</ul>
+</div>
+</div>
+<div class="sect2">
+<h3 id="rn_0.10.0_improvements"><a class="link" href="#rn_0.10.0_improvements">Improvements and optimizations</a></h3>
+<div class="ulist">
+<ul>
+<li>
+<p><a href="https://issues.apache.org/jira/browse/KUDU-1516">KUDU-1516</a> The <code>kudu-ksck</code> tool
+has been improved and now detects problems such as when a tablet does not have
+a majority of replicas on live tablet servers, or if those replicas aren’t in a
+good state. Users who currently depend on the tool to detect inconsistencies may now see
+failures when before they wouldn&#8217;t see any.</p>
+</li>
+<li>
+<p><a href="https://gerrit.cloudera.org:8080/3477">Gerrit #3477</a> The way operations are buffered in
+the Java client has been reworked. Previously, the session&#8217;s buffer size was set per tablet, meaning that a buffer
+size of 1,000 for 10 tablets being written to allowed for 10,000 operations to be buffered at the
+same time. With this change, all the tablets share one buffer, so users might need to set a
+bigger buffer size in order to reach the same level of performance as before.</p>
+</li>
+<li>
+<p><a href="https://gerrit.cloudera.org/#/c/3674/">Gerrit #3674</a> Added LESS and GREATER options for
+column predicates.</p>
+</li>
+<li>
+<p><a href="https://issues.apache.org/jira/browse/KUDU-1444">KUDU-1444</a> added support for passing
+back basic per-scan metrics (e.g cache hit rate) from the server to the C++ client. See the
+<code>KuduScanner::GetResourceMetrics()</code> API for detailed usage. This feature will be supported
+in the Java client API in a future release.</p>
+</li>
+<li>
+<p><a href="https://issues.apache.org/jira/browse/KUDU-1446">KUDU-1446</a> improved the order in
+which the tablet server evaluates predicates, so that predicates on smaller columns
+are evaluated first. This may improve performance on queries which apply predicates
+on multiple columns of different sizes.</p>
+</li>
+<li>
+<p><a href="https://issues.apache.org/jira/browse/KUDU-1398">KUDU-1398</a> improved the storage
+efficiency of Kudu&#8217;s internal primary key indexes. This optimization should decrease space
+usage and improve random access performance, particularly for workloads with lengthy
+primary keys.</p>
+</li>
+</ul>
+</div>
+</div>
+<div class="sect2">
+<h3 id="rn_0.10.0_fixed_issues"><a class="link" href="#rn_0.10.0_fixed_issues">Fixed Issues</a></h3>
+<div class="ulist">
+<ul>
+<li>
+<p><a href="https://gerrit.cloudera.org/#/c/3541/">Gerrit #3541</a> Fixed a problem in the Java client
+whereby an RPC could be dropped when a connection to a tablet server or master was forcefully
+closed on the server-side while RPCs to that server were in the process of being encoded.
+The effect was that the RPC would not be sent, and users of the synchronous API would receive
+a <code>TimeoutException</code>. Several other Java client bugs which could cause similar spurious timeouts
+were also fixed in this release.</p>
+</li>
+<li>
+<p><a href="https://gerrit.cloudera.org/<mark>/c/3724/">Gerrit #3724</a> Fixed a problem in the Java client
+whereby an RPC could be dropped when a socket timeout was fired while that RPC was being sent to
+a tablet server or master. This would manifest itself in the same way
+<a href="https://gerrit.cloudera.org/</mark>/c/3541/">Gerrit #3541</a>.</p>
+</li>
+<li>
+<p><a href="https://issues.apache.org/jira/browse/KUDU-1538">KUDU-1538</a> fixed a bug in which recycled
+block identifiers could cause the tablet server to lose data. Following this bug fix, block
+identifiers will no longer be reused.</p>
+</li>
+</ul>
+</div>
+</div>
+<div class="sect2">
+<h3 id="rn_0.10.0_changes"><a class="link" href="#rn_0.10.0_changes">Other noteworthy changes</a></h3>
+<div class="ulist">
+<ul>
+<li>
+<p>This is the first release of Apache Kudu as a top-level (non-incubating)
+project!</p>
+</li>
+<li>
+<p>The default false positive rate for Bloom filters has been changed
+from 1% to 0.01%. This will increase the space consumption of Bloom
+filters by a factor of two (from approximately 10 bits per row to
+approximately 20 bits per row). This is expected to substantially
+improve the performance of random-write workloads at the cost of an
+incremental increase in disk space usage.</p>
+</li>
+<li>
+<p>The Kudu C++ client library now has Doxygen-based
+<a href="http://kudu.apache.org/cpp-client-api/">API documentation</a>
+available online.</p>
+</li>
+<li>
+<p>Kudu now
+<a href="http://kudu.apache.org/2016/06/17/raft-consensus-single-node.html">
+uses the Raft consensus algorithm even for unreplicated tables</a>.
+This change simplifies code and will also allow administrators to enable
+replication on a previously-unreplicated table. This change is internal and
+should not be visible to users.</p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="rn_0.9.1"><a class="link" href="#rn_0.9.1">Release notes specific to 0.9.1</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Kudu 0.9.1 delivers incremental bug fixes over Kudu 0.9.0. It is fully compatible with
+Kudu 0.9.0.</p>
+</div>
+<div class="paragraph">
+<p>See also <a href="https://issues.apache.org/jira/issues/?jql=project%20%3D%20KUDU%20AND%20status%20%3D%20Resolved
+%20AND%20fixVersion%20%3D%200.9.1">JIRAs resolved
+for Kudu 0.9.1</a> and <a href="https://github.com/apache/kudu/compare/0.9.0...0.9.1">Git
+changes between 0.9.0 and 0.9.1</a>.</p>
+</div>
+<div class="sect2">
+<h3 id="rn_0.9.1_fixed_issues"><a class="link" href="#rn_0.9.1_fixed_issues">Fixed Issues</a></h3>
+<div class="ulist">
+<ul>
+<li>
+<p><a href="https://issues.apache.org/jira/browse/KUDU-1469">KUDU-1469</a> fixed a bug in
+our Raft consensus implementation that could cause a tablet to stop making progress after a leader
+election.</p>
+</li>
+<li>
+<p><a href="https://gerrit.cloudera.org/#/c/3456/">Gerrit #3456</a> fixed a bug in which
+servers under high load could store metric information in incorrect memory
+locations, causing crashes or data corruption.</p>
+</li>
+<li>
+<p><a href="https://gerrit.cloudera.org/#/c/3457/">Gerrit #3457</a> fixed a bug in which
+errors from the Java client would carry an incorrect error message.</p>
+</li>
+<li>
+<p>Several other small bug fixes were backported to improve stability.</p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="rn_0.9.0"><a class="link" href="#rn_0.9.0">Release notes specific to 0.9.0</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Kudu 0.9.0 delivers incremental features, improvements, and bug fixes over the previous versions.</p>
+</div>
+<div class="paragraph">
+<p>See also <a href="https://issues.apache.org/jira/issues/?jql=project%20%3D%20KUDU%20AND%20status%20%3D%20Resolved
+%20AND%20fixVersion%20%3D%200.9.0">JIRAs resolved
+for Kudu 0.9.0</a> and <a href="https://github.com/apache/kudu/compare/0.8.0...0.9.0">Git
+changes between 0.8.0 and 0.9.0</a>.</p>
+</div>
+<div class="paragraph">
+<p>To upgrade to Kudu 0.10.0, see <a href="#rn_0.9.0_upgrade">[rn_0.9.0_upgrade]</a>.</p>
+</div>
+<div class="sect2">
+<h3 id="rn_0.9.0_incompatible_changes"><a class="link" href="#rn_0.9.0_incompatible_changes">Incompatible changes</a></h3>
+<div class="ulist">
+<ul>
+<li>
+<p>The <code>KuduTableInputFormat</code> command has changed the way in which it handles
+scan predicates, including how it serializes predicates to the job configuration
+object. The new configuration key is <code>kudu.mapreduce.encoded.predicate</code>. Clients
+using the <code>TableInputFormatConfigurator</code> are not affected.</p>
+</li>
+<li>
+<p>The <code>kudu-spark</code> sub-project has been renamed to follow naming conventions for
+Scala. The new name is <code>kudu-spark_2.10</code>.</p>
+</li>
+<li>
+<p>Default table partitioning has been removed. All tables must now be created
+with explicit partitioning. Existing tables are unaffected. See the
+<a href="schema_design.html#no_default_partitioning">schema design guide</a> for more
+details.</p>
+</li>
+</ul>
+</div>
+</div>
+<div class="sect2">
+<h3 id="rn_0.9.0_new_features"><a class="link" href="#rn_0.9.0_new_features">New features</a></h3>
+<div class="ulist">
+<ul>
+<li>
+<p><a href="https://issues.apache.org/jira/browse/KUDU-1002">KUDU-1002</a> Added support for
+<code>UPSERT</code> operations, whereby a row is inserted if it does not already exist, but
+updated if it does. Support for <code>UPSERT</code> is included in Java, C++, and Python APIs,
+but not in Impala.</p>
+</li>
+<li>
+<p><a href="https://issues.apache.org/jira/browse/KUDU-1306">KUDU-1306</a> Scan token API
+for creating partition-aware scan descriptors. This API simplifies executing
+parallel scans for clients and query engines.</p>
+</li>
+<li>
+<p><a href="http://gerrit.cloudera.org:8080/#/c/2848/">Gerrit 2848</a> Added a kudu datasource
+for Spark. This datasource uses the Kudu client directly instead of
+using the MapReduce API. Predicate pushdowns for <code>spark-sql</code> and Spark filters are
+included, as well as parallel retrieval for multiple tablets and column projections.
+See an example of <a href="developing.html#_kudu_integration_with_spark">Kudu integration with Spark</a>.</p>
+</li>
+<li>
+<p><a href="http://gerrit.cloudera.org:8080/#/c/2992/">Gerrit 2992</a> Added the ability
+to update and insert from Spark using a Kudu datasource.</p>
+</li>
+</ul>
+</div>
+</div>
+<div class="sect2">
+<h3 id="rn_0.9.0_improvements"><a class="link" href="#rn_0.9.0_improvements">Improvements</a></h3>
+<div class="ulist">
+<ul>
+<li>
+<p><a href="https://issues.apache.org/jira/browse/KUDU-1415">KUDU-1415</a> Added statistics in the Java
+client such as the number of bytes written and the number of operations applied.</p>
+</li>
+<li>
+<p><a href="https://issues.apache.org/jira/browse/KUDU-1451">KUDU-1451</a> Improved tablet server restart
+time when the tablet server needs to clean up of a lot previously deleted tablets. Tablets are
+now cleaned up after they are deleted.</p>
+</li>
+</ul>
+</div>
+</div>
+<div class="sect2">
+<h3 id="rn_0.9.0_fixed_issues"><a class="link" href="#rn_0.9.0_fixed_issues">Fixed Issues</a></h3>
+<div class="ulist">
+<ul>
+<li>
+<p><a href="https://issues.apache.org/jira/browse/KUDU-678">KUDU-678</a> Fixed a leak that happened during
+DiskRowSet compactions where tiny blocks were still written to disk even if there were no REDO
+records. With the default block manager, it usually resulted in block containers with thousands
+of tiny blocks.</p>
+</li>
+<li>
+<p><a href="https://issues.apache.org/jira/browse/KUDU-1437">KUDU-1437</a> Fixed a data corruption issue
+that occured after compacting sequences of negative INT32 values in a column that
+was configured with RLE encoding.</p>
+</li>
+</ul>
+</div>
+</div>
+<div class="sect2">
+<h3 id="rn_0.9.0_changes"><a class="link" href="#rn_0.9.0_changes">Other noteworthy changes</a></h3>
+<div class="paragraph">
+<p>All Kudu clients have longer default timeout values, as listed below.</p>
+</div>
+<div class="ulist">
+<div class="title">Java</div>
+<ul>
+<li>
+<p>The default operation timeout and the default admin operation timeout
+are now set to 30 seconds instead of 10.</p>
+</li>
+<li>
+<p>The default socket read timeout is now 10 seconds instead of 5.</p>
+</li>
+</ul>
+</div>
+<div class="ulist">
+<div class="title">C++</div>
+<ul>
+<li>
+<p>The default admin timeout is now 30 seconds instead of 10.</p>
+</li>
+<li>
+<p>The default RPC timeout is now 10 seconds instead of 5.</p>
+</li>
+<li>
+<p>The default scan timeout is now 30 seconds instead of 15.</p>
+</li>
+<li>
+<p>Some default settings related to I/O behavior during flushes and compactions have been changed:
+The default for <code>flush_threshold_mb</code> has been increased from 64MB to 1000MB. The default
+<code>cfile_do_on_finish</code> has been changed from <code>close</code> to <code>flush</code>.
+<a href="http://getkudu.io/2016/04/26/ycsb.html">Experiments using YCSB</a> indicate that these
+values will provide better throughput for write-heavy applications on typical server hardware.</p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="rn_0.8.0"><a class="link" href="#rn_0.8.0">Release notes specific to 0.8.0</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Kudu 0.8.0 delivers incremental features, improvements, and bug fixes over the previous versions.</p>
+</div>
+<div class="paragraph">
+<p>See also <a href="https://issues.apache.org/jira/issues/?jql=project%20%3D%20KUDU%20AND%20status%20%3D%20Resolved
+%20AND%20fixVersion%20%3D%200.8.0">JIRAs resolved
+for Kudu 0.8.0</a> and <a href="https://github.com/apache/kudu/compare/0.7.1...0.8.0">Git
+changes between 0.7.1 and 0.8.0</a>.</p>
+</div>
+<div class="paragraph">
+<p>To upgrade to Kudu 0.8.0, see <a href="installation.html#upgrade">Upgrade from 0.7.1 to 0.8.0</a>.</p>
+</div>
+<div class="sect2">
+<h3 id="rn_0.8.0_incompatible_changes"><a class="link" href="#rn_0.8.0_incompatible_changes">Incompatible changes</a></h3>
+<div class="ulist">
+<ul>
+<li>
+<p>0.8.0 clients are not fully compatible with servers running Kudu 0.7.1 or lower.
+In particular, scans that specify column predicates will fail. To work around this
+issue, upgrade all Kudu servers before upgrading clients.</p>
+</li>
+</ul>
+</div>
+</div>
+<div class="sect2">
+<h3 id="rn_0.8.0_new_features"><a class="link" href="#rn_0.8.0_new_features">New features</a></h3>
+<div class="ulist">
+<ul>
+<li>
+<p><a href="https://issues.apache.org/jira/browse/KUDU-431">KUDU-431</a> A simple Flume
+sink has been implemented.</p>
+</li>
+</ul>
+</div>
+</div>
+<div class="sect2">
+<h3 id="rn_0.8.0_improvements"><a class="link" href="#rn_0.8.0_improvements">Improvements</a></h3>
+<div class="ulist">
+<ul>
+<li>
+<p><a href="https://issues.apache.org/jira/browse/KUDU-839">KUDU-839</a> Java RowError now uses an enum error code.</p>
+</li>
+<li>
+<p><a href="http://gerrit.cloudera.org:8080/#/c/2138/">Gerrit 2138</a> The handling of
+column predicates has been re-implemented in the server and clients.</p>
+</li>
+<li>
+<p><a href="https://issues.apache.org/jira/browse/KUDU-1379">KUDU-1379</a> Partition pruning
+has been implemented for C++ clients (but not yet for the Java client). This feature
+allows you to avoid reading a tablet if you know it does not serve the row keys you are querying.</p>
+</li>
+<li>
+<p><a href="http://gerrit.cloudera.org:8080/#/c/2641">Gerrit 2641</a> Kudu now uses
+<code>earliest-deadline-first</code> RPC scheduling and rejection. This changes the behavior
+of the RPC service queue to prevent unfairness when processing a backlog of RPC
+threads and to increase the likelihood that an RPC will be processed before it
+can time out.</p>
+</li>
+</ul>
+</div>
+</div>
+<div class="sect2">
+<h3 id="rn_0.8.0_fixed_issues"><a class="link" href="#rn_0.8.0_fixed_issues">Fixed Issues</a></h3>
+<div class="ulist">
+<ul>
+<li>
+<p><a href="https://issues.cloudera.org/browse/KUDU-1337">KUDU-1337</a> Tablets from tables
+that were deleted might be unnecessarily re-bootstrapped when the leader gets the
+notification to delete itself after the replicas do.</p>
+</li>
+<li>
+<p><a href="https://issues.cloudera.org/browse/KUDU-969">KUDU-969</a> If a tablet server
+shuts down while compacting a rowset and receiving updates for it, it might immediately
+crash upon restart while bootstrapping that rowset&#8217;s tablet.</p>
+</li>
+<li>
+<p><a href="https://issues.cloudera.org/browse/KUDU-1354">KUDU-1354</a> Due to a bug in Kudu&#8217;s
+MVCC implementation where row locks were released before the MVCC commit happened,
+flushed data would include out-of-order transactions, triggering a crash on the
+next compaction.</p>
+</li>
+<li>
+<p><a href="https://issues.apache.org/jira/browse/KUDU-1322">KUDU-1322</a> The C++ client
+now retries write operations if the tablet it is trying to reach has already been
+deleted.</p>
+</li>
+<li>
+<p><a href="http://gerrit.cloudera.org:8080/#/c/2571/">Gerrit 2571</a> Due to a bug in the
+Java client, users were unable to close the <code>kudu-spark</code> shell because of
+lingering non-daemon threads.</p>
+</li>
+</ul>
+</div>
+</div>
+<div class="sect2">
+<h3 id="rn_0.8.0_changes"><a class="link" href="#rn_0.8.0_changes">Other noteworthy changes</a></h3>
+<div class="ulist">
+<ul>
+<li>
+<p><a href="http://gerrit.cloudera.org:8080/#/c/2239/">Gerrit 2239</a> The concept of "feature flags"
+was introduced in order to manage compatibility between different
+Kudu versions. One case where this is helpful is if a newer client attempts to use
+a feature unsupported by the currently-running tablet server. Rather than receiving
+a cryptic error, the user gets an error message that is easier to interpret.
+This is an internal change for Kudu system developers and requires no action by
+users of the clients or API.</p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="rn_0.7.1"><a class="link" href="#rn_0.7.1">Release notes specific to 0.7.1</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Kudu 0.7.1 is a bug fix release for 0.7.0.</p>
+</div>
+<div class="sect2">
+<h3 id="rn_0.7.1_fixed_issues"><a class="link" href="#rn_0.7.1_fixed_issues">Fixed Issues</a></h3>
+<div class="ulist">
+<ul>
+<li>
+<p><a href="https://issues.apache.org/jira/browse/KUDU-1325">KUDU-1325</a> fixes a tablet server crash that could
+occur during table deletion. In some cases, while a table was being deleted, other replicas would
+attempt to re-replicate tablets to servers that had already processed the deletion. This could
+trigger a race condition that caused a crash.</p>
+</li>
+<li>
+<p><a href="https://issues.apache.org/jira/browse/KUDU-1341">KUDU-1341</a> fixes a potential data corruption and
+crash that could happen shortly after tablet server restarts in workloads that repeatedly delete
+and re-insert rows with the same primary key. In most cases, this corruption affected only a single
+replica and could be repaired by re-replicating from another.</p>
+</li>
+<li>
+<p><a href="https://issues.apache.org/jira/browse/KUDU-1343">KUDU-1343</a> fixes a bug in the Java client that
+occurs when a scanner has to scan multiple batches from one tablet and then start scanning from
+another. In particular, this would affect any scans using the Java client that read large numbers
+of rows from multi-tablet tables.</p>
+</li>
+<li>
+<p><a href="https://issues.apache.org/jira/browse/KUDU-1345">KUDU-1345</a> fixes a bug where in some cases the
+hybrid clock could jump backwards, resulting in a crash followed by an inability to
+restart the affected tablet server.</p>
+</li>
+<li>
+<p><a href="https://issues.apache.org/jira/browse/KUDU-1360">KUDU-1360</a> fixes a bug in the kudu-spark module
+which prevented reading rows with <code>NULL</code> values.</p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="rn_0.7.0"><a class="link" href="#rn_0.7.0">Release notes specific to 0.7.0</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Kudu 0.7.0 is the first release done as part of the Apache Incubator and includes a number
+of changes, new features, improvements, and fixes.</p>
+</div>
+<div class="paragraph">
+<p>See also <a href="https://issues.cloudera.org/issues/?jql=project%20%3D%20Kudu%20AND%20status%20in%20
+(Resolved)%20AND%20fixVersion%20%3D%200.7.0%20ORDER%20BY%20key%20ASC">JIRAs resolved
+for Kudu 0.7.0</a> and <a href="https://github.com/apache/kudu/compare/branch-0.6.0...branch-0.7.0">Git
+changes between 0.6.0 and 0.7.0</a>.</p>
+</div>
+<div class="paragraph">
+<p>The upgrade instructions can be found at <a href="installation.html#upgrade">Upgrade from 0.6.0 to 0.7.0</a>.</p>
+</div>
+<div class="sect2">
+<h3 id="rn_0.7.0_incompatible_changes"><a class="link" href="#rn_0.7.0_incompatible_changes">Incompatible changes</a></h3>
+<div class="ulist">
+<ul>
+<li>
+<p>The C++ client includes a new API, <code>KuduScanBatch</code>, which performs better when a
+large number of small rows are returned in a batch. The old API of <code>vector&lt;KuduRowResult&gt;</code>
+is deprecated.</p>
+<div class="admonitionblock note">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-note" title="Note"></i>
+</td>
+<td class="content">
+This change is API-compatible but <strong>not</strong> ABI-compatible.
+</td>
+</tr>
+</table>
+</div>
+</li>
+<li>
+<p>The default replication factor has been changed from 1 to 3. Existing tables will
+continue to use the replication factor they were created with. Applications that create
+tables may not work properly if they assume a replication factor of 1 and fewer than
+3 replicas are available. To use the previous default replication factor, start the
+master with the configuration flag <code>--default_num_replicas=1</code>.</p>
+</li>
+<li>
+<p>The Python client has been completely rewritten, with a focus on improving code
+quality and testing. The read path (scanners) has been improved by adding many of
+the features already supported by the C++ and Java clients. The Python client is no
+longer considered experimental.</p>
+</li>
+</ul>
+</div>
+</div>
+<div class="sect2">
+<h3 id="rn_0.7.0_new_features"><a class="link" href="#rn_0.7.0_new_features">New features</a></h3>
+<div class="ulist">
+<ul>
+<li>
+<p>With the goal of Spark integration in mind, a new <code>kuduRDD</code> API has been added,
+which wraps <code>newAPIHadoopRDD</code> and includes a default source for Spark SQL.</p>
+</li>
+</ul>
+</div>
+</div>
+<div class="sect2">
+<h3 id="rn_0.7.0_improvements"><a class="link" href="#rn_0.7.0_improvements">Improvements</a></h3>
+<div class="ulist">
+<ul>
+<li>
+<p>The Java client includes new methods <code>countPendingErrors()</code> and
+<code>getPendingErrors()</code> on <code>KuduSession</code>. These methods allow you to count and
+retrieve outstanding row errors when configuring sessions with <code>AUTO_FLUSH_BACKGROUND</code>.</p>
+</li>
+<li>
+<p>New server-level metrics allow you to monitor CPU usage and context switching.</p>
+</li>
+<li>
+<p>Kudu now builds on RHEL 7, CentOS 7, and SLES 12. Extra instructions are included
+for SLES 12.</p>
+</li>
+</ul>
+</div>
+</div>
+<div class="sect2">
+<h3 id="rn_0.7.0_fixed_issues"><a class="link" href="#rn_0.7.0_fixed_issues">Fixed Issues</a></h3>
+<div class="ulist">
+<ul>
+<li>
+<p><a href="https://issues.cloudera.org/browse/KUDU-1288">KUDU-1288</a> fixes a severe file descriptor
+leak, which could previously only be resolved by restarting the tablet server.</p>
+</li>
+<li>
+<p><a href="https://issues.cloudera.org/browse/KUDU-1250">KUDU-1250</a> fixes a hang in the Java
+client when processing an in-flight batch and the previous batch encountered an error.</p>
+</li>
+</ul>
+</div>
+</div>
+<div class="sect2">
+<h3 id="rn_0.7.0_changes"><a class="link" href="#rn_0.7.0_changes">Other noteworthy changes</a></h3>
+<div class="ulist">
+<ul>
+<li>
+<p>The file block manager&#8217;s performance was improved, but it is still not recommended for
+real-world use.</p>
+</li>
+<li>
+<p>The master now attempts to spread tablets more evenly across the cluster during
+table creation. This has no impact on existing tables, but will improve the speed
+at which under-replicated tablets are re-replicated after a tablet server failure.</p>
+</li>
+<li>
+<p>All licensing documents have been modified to adhere to ASF guidelines.</p>
+</li>
+<li>
+<p>Kudu now requires an out-of-tree build directory. Review the build instructions
+for additional information.</p>
+</li>
+<li>
+<p>The <code>C` client library is now explicitly built against the
+link:https://gcc.gnu.org/onlinedocs/libstdc/manual/using_dual_abi.html[old gcc5 ABI].
+If you use gcc5 to build a Kudu application, your application must use the old ABI
+as well. This is typically achieved by defining the `_GLIBCXX_USE_CXX11_ABI</code> macro
+at compile-time when building your application. For more information, see the
+previous link and link:http://developerblog.redhat.com/2015/02/05/gcc5-and-the-c11-abi/.</p>
+</li>
+<li>
+<p>The Python client is no longer considered experimental.</p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="rn_0.6.0"><a class="link" href="#rn_0.6.0">Release notes specific to 0.6.0</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The 0.6.0 release contains incremental improvements and bug fixes. The most notable
+changes are:</p>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p>The Java client&#8217;s CreateTableBuilder and AlterTableBuilder classes have been renamed
+to CreateTableOptions and AlterTableOptions. Their methods now also return <code>this</code> objects,
+allowing them to be used as builders.</p>
+</li>
+<li>
+<p>The Java client&#8217;s AbstractKuduScannerBuilder#maxNumBytes() setter is now called
+batchSizeBytes as is the corresponding property in AsyncKuduScanner. This makes it
+consistent with the C++ client.</p>
+</li>
+<li>
+<p>The "kudu-admin" tool can now list and delete tables via its new subcommands
+"list_tables" and "delete_table &lt;table_name&gt;".</p>
+</li>
+<li>
+<p>OSX is now supported for single-host development. Please consult its specific installation
+instructions in <a href="installation.html#osx_from_source">OS X</a>.</p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="rn_0.5.0"><a class="link" href="#rn_0.5.0">Release Notes Specific to 0.5.0</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Kudu 0.5.0 was the first public release. As such, no improvements or changes were
+noted in its release notes.</p>
+</div>
+</div>
+</div>
+    </div>
+    <div class="col-md-3">
+
+  <div id="toc" data-spy="affix" data-offset-top="70">
+  <ul>
+
+      <li>
+
+          <a href="index.html">Introducing Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="release_notes.html">Kudu Release Notes</a> 
+      </li> 
+      <li>
+
+          <a href="quickstart.html">Getting Started with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="installation.html">Installation Guide</a> 
+      </li> 
+      <li>
+
+          <a href="configuration.html">Configuring Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="kudu_impala_integration.html">Using Impala with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="administration.html">Administering Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="troubleshooting.html">Troubleshooting Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="developing.html">Developing Applications with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="schema_design.html">Kudu Schema Design</a> 
+      </li> 
+      <li>
+
+          <a href="security.html">Kudu Security</a> 
+      </li> 
+      <li>
+
+          <a href="transaction_semantics.html">Kudu Transaction Semantics</a> 
+      </li> 
+      <li>
+
+          <a href="background_tasks.html">Background Maintenance Tasks</a> 
+      </li> 
+      <li>
+
+          <a href="configuration_reference.html">Kudu Configuration Reference</a> 
+      </li> 
+      <li>
+
+          <a href="command_line_tools_reference.html">Kudu Command Line Tools Reference</a> 
+      </li> 
+      <li>
+
+          <a href="known_issues.html">Known Issues and Limitations</a> 
+      </li> 
+      <li>
+
+          <a href="contributing.html">Contributing to Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="export_control.html">Export Control Notice</a> 
+      </li> 
+  </ul>
+  </div>
+    </div>
+  </div>
+</div>
+      <footer class="footer">
+        <p class="small">
+        Copyright &copy; 2016 The Apache Software Foundation.  Last updated 2017-05-31 14:43:27 PDT 
+        </p>
+      </footer>
+    </div>
+    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
+    <script>
+      // Try to detect touch-screen devices. Note: Many laptops have touch screens.
+      $(document).ready(function() {
+        if ("ontouchstart" in document.documentElement) {
+          $(document.documentElement).addClass("touch");
+        } else {
+          $(document.documentElement).addClass("no-touch");
+        }
+      });
+    </script>
+    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"
+            integrity="sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS"
+            crossorigin="anonymous"></script>
+    <script>
+      (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+      (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+      m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+      })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+
+      ga('create', 'UA-68448017-1', 'auto');
+      ga('send', 'pageview');
+    </script>
+    <script src="https://cdnjs.cloudflare.com/ajax/libs/anchor-js/3.1.0/anchor.js"></script>
+    <script>
+      anchors.options = {
+        placement: 'right',
+        visible: 'touch',
+      };
+      anchors.add();
+    </script>
+  </body>
+</html>
+
diff --git a/releases/1.4.0/docs/quickstart.html b/releases/1.4.0/docs/quickstart.html
new file mode 100644
index 0000000..ebcce55
--- /dev/null
+++ b/releases/1.4.0/docs/quickstart.html
@@ -0,0 +1,561 @@
+<!DOCTYPE html>
+<html lang="en">
+  <head>
+    <meta charset="utf-8" />
+    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
+    <meta name="viewport" content="width=device-width, initial-scale=1" />
+    <!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
+    <meta name="description" content="A new open source Apache Hadoop ecosystem project, Apache Kudu completes Hadoop's storage layer to enable fast analytics on fast data" />
+    <meta name="author" content="Cloudera" />
+    <title>Apache Kudu - Apache Kudu Quickstart</title>
+    <!-- Bootstrap core CSS -->
+    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css"
+          integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7"
+          crossorigin="anonymous">
+
+    <!-- Custom styles for this template -->
+    <link href="/css/kudu.css" rel="stylesheet"/>
+    <link href="/css/asciidoc.css" rel="stylesheet"/>
+    <link rel="shortcut icon" href="/img/logo-favicon.ico" />
+    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.6.1/css/font-awesome.min.css" />
+
+    
+
+    <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+        <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+        <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+        <![endif]-->
+  </head>
+  <body>
+    <div class="kudu-site container-fluid">
+      <!-- Static navbar -->
+        <nav class="navbar navbar-default">
+          <div class="container-fluid">
+            <div class="navbar-header">
+              <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
+                <span class="sr-only">Toggle navigation</span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+              </button>
+              
+              <a class="logo" href="/"><img
+                src="//d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_80px.png"
+                srcset="//d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_80px.png 1x, //d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_160px.png 2x"
+                alt="Apache Kudu"/></a>
+              
+            </div>
+            <div id="navbar" class="collapse navbar-collapse">
+              <ul class="nav navbar-nav navbar-right">
+                <li >
+                  <a href="/">Home</a>
+                </li>
+                <li >
+                  <a href="/overview.html">Overview</a>
+                </li>
+                <li class="active">
+                  <a href="/docs/">Documentation</a>
+                </li>
+                <li >
+                  <a href="/releases/">Download</a>
+                </li>
+                <li >
+                  <a href="/blog/">Blog</a>
+                </li>
+                <!-- NOTE: this dropdown menu does not appear on Mobile, so don't add anything here
+                     that doesn't also appear elsewhere on the site. -->
+                <li class="dropdown">
+                  <a href="/community.html" role="button" aria-haspopup="true" aria-expanded="false">Community <span class="caret"></span></a>
+                  <ul class="dropdown-menu">
+                    <li class="dropdown-header">GET IN TOUCH</li>
+                    <li><a class="icon email" href="/community.html">Mailing Lists</a></li>
+                    <li><a class="icon slack" href="https://getkudu-slack.herokuapp.com/">Slack Channel</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li><a href="/community.html#meetups-user-groups-and-conference-presentations">Events and Meetups</a></li>
+                    <li><a href="/committers.html">Project Committers</a></li>
+                    <!--<li><a href="/roadmap.html">Roadmap</a></li>-->
+                    <li><a href="/community.html#contributions">How to Contribute</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li class="dropdown-header">DEVELOPER RESOURCES</li>
+                    <li><a class="icon github" href="https://github.com/apache/incubator-kudu">GitHub</a></li>
+                    <li><a class="icon gerrit" href="http://gerrit.cloudera.org:8080/#/q/status:open+project:kudu">Gerrit Code Review</a></li>
+                    <li><a class="icon jira" href="https://issues.apache.org/jira/browse/KUDU">JIRA Issue Tracker</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li class="dropdown-header">SOCIAL MEDIA</li>
+                    <li><a class="icon twitter" href="https://twitter.com/ApacheKudu">Twitter</a></li>
+                  </ul>
+                </li>
+                <li >
+                  <a href="/faq.html">FAQ</a>
+                </li>
+              </ul><!-- /.nav -->
+            </div><!-- /#navbar -->
+          </div><!-- /.container-fluid -->
+        </nav>
+
+<!--
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
+
+
+<div class="container">
+  <div class="row">
+    <div class="col-md-9">
+
+<h1>Apache Kudu Quickstart</h1>
+      <div id="preamble">
+<div class="sectionbody">
+<div class="paragraph">
+<p>Follow these instructions to set up and run the Kudu VM, and start with Kudu, Kudu_Impala,
+and CDH in minutes.</p>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="quickstart_vm"><a class="link" href="#quickstart_vm">Get The Kudu Quickstart VM</a></h2>
+<div class="sectionbody">
+<div class="sect2">
+<h3 id="_prerequisites"><a class="link" href="#_prerequisites">Prerequisites</a></h3>
+<div class="olist arabic">
+<ol class="arabic">
+<li>
+<p>Install <a href="https://www.virtualbox.org/">Oracle Virtualbox</a>. The VM has been tested to work
+with VirtualBox version 4.3 on Ubuntu 14.04 and VirtualBox version 5 on OSX
+10.9. VirtualBox is also included in most package managers: apt-get, brew, etc.</p>
+</li>
+<li>
+<p>After the installation, make sure that <code>VBoxManage</code> is in your <code>PATH</code> by using the
+<code>which VBoxManage</code> command.</p>
+</li>
+</ol>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_installation"><a class="link" href="#_installation">Installation</a></h3>
+<div class="paragraph">
+<p>To download and start the VM, execute the following command in a terminal window.</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-bash" data-lang="bash">$ curl -s https://raw.githubusercontent.com/cloudera/kudu-examples/master/demo-vm-setup/bootstrap.sh | bash</code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>This command downloads a shell script which clones the <code>kudu-examples</code> Git repository and
+then downloads a VM image of about 1.2GB size into the current working
+directory.<sup class="footnote">[<a id="_footnoteref_1" class="footnote" href="#_footnote_1" title="View footnote.">1</a>]</sup> You can examine the script after downloading it by removing
+the <code>| bash</code> component of the command above. Once the setup is complete, you can verify
+that everything works by connecting to the guest via SSH:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-bash" data-lang="bash">$ ssh demo@quickstart.cloudera</code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>The username and password for the demo account are both <code>demo</code>. In addition, the <code>demo</code>
+user has password-less <code>sudo</code> privileges so that you can install additional software or
+manage the guest OS. You can also access the <code>kudu-examples</code> as a shared folder in
+<code>/home/demo/kudu-examples/</code> on the guest or from your VirtualBox shared folder location on
+the host. This is a quick way to make scripts or data visible to the guest.</p>
+</div>
+<div class="paragraph">
+<p>You can quickly verify if Kudu and Impala are running by executing the following commands:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-bash" data-lang="bash">$ ps aux | grep kudu
+$ ps aux | grep impalad</code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>If you have issues connecting to the VM or one of the processes is not running, make sure
+to consult the <a href="#trouble">Troubleshooting</a> section.</p>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_load_data"><a class="link" href="#_load_data">Load Data</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>To practice some typical operations with Kudu and Impala, we&#8217;ll use the
+<a href="https://data.sfgov.org/Transportation/Raw-AVL-GPS-data/5fk7-ivit/data">San Francisco MTA
+GPS dataset</a>. This dataset contains raw location data transmitted periodically from
+sensors installed on the buses in the SF MTA&#8217;s fleet.</p>
+</div>
+<div class="olist arabic">
+<ol class="arabic">
+<li>
+<p>Download the sample data and load it into HDFS</p>
+<div class="paragraph">
+<p>First we&#8217;ll download the sample dataset, prepare it, and upload it into the HDFS
+cluster.</p>
+</div>
+<div class="paragraph">
+<p>The SF MTA&#8217;s site is often a bit slow, so we&#8217;ve mirrored a sample CSV file from the
+dataset at <a href="http://kudu-sample-data.s3.amazonaws.com/sfmtaAVLRawData01012013.csv.gz" class="bare">http://kudu-sample-data.s3.amazonaws.com/sfmtaAVLRawData01012013.csv.gz</a></p>
+</div>
+<div class="paragraph">
+<p>The original dataset uses DOS-style line endings, so we&#8217;ll convert it to
+UNIX-style during the upload process using <code>tr</code>.</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-bash" data-lang="bash">$ wget http://kudu-sample-data.s3.amazonaws.com/sfmtaAVLRawData01012013.csv.gz
+$ hdfs dfs -mkdir /sfmta
+$ zcat sfmtaAVLRawData01012013.csv.gz | tr -d '\r' | hadoop fs -put - /sfmta/data.csv</code></pre>
+</div>
+</div>
+</li>
+<li>
+<p>Create a new external Impala table to access the plain text data. To connect to Impala
+in the virtual machine issue the following command:</p>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-bash" data-lang="bash">ssh demo@quickstart.cloudera -t impala-shell</code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>Now, you can execute the following commands:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-sql" data-lang="sql">CREATE EXTERNAL TABLE sfmta_raw (
+  revision int,
+  report_time string,
+  vehicle_tag int,
+  longitude float,
+  latitude float,
+  speed float,
+  heading float
+)
+ROW FORMAT DELIMITED
+FIELDS TERMINATED BY ','
+LOCATION '/sfmta/'
+TBLPROPERTIES ('skip.header.line.count'='1');</code></pre>
+</div>
+</div>
+</li>
+<li>
+<p>Validate if the data was actually loaded run the following command:</p>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-sql" data-lang="sql">SELECT count(*) FROM sfmta_raw;
+
++----------+
+| count(*) |
++----------+
+| 859086   |
++----------+</code></pre>
+</div>
+</div>
+</li>
+<li>
+<p>Next we&#8217;ll create a Kudu table and load the data. Note that we convert
+the string <code>report_time</code> field into a unix-style timestamp for more efficient
+storage.</p>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-sql" data-lang="sql">CREATE TABLE sfmta
+PRIMARY KEY (report_time, vehicle_tag)
+PARTITION BY HASH(report_time) PARTITIONS 8
+STORED AS KUDU
+AS SELECT
+  UNIX_TIMESTAMP(report_time,  'MM/dd/yyyy HH:mm:ss') AS report_time,
+  vehicle_tag,
+  longitude,
+  latitude,
+  speed,
+  heading
+FROM sfmta_raw;
+
++------------------------+
+| summary                |
++------------------------+
+| Inserted 859086 row(s) |
++------------------------+
+Fetched 1 row(s) in 5.75s</code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>The created table uses a composite primary key. See
+<a href="kudu_impala_integration.html#kudu_impala">Kudu Impala Integration</a> for a more detailed
+introduction to the extended SQL syntax for Impala.</p>
+</div>
+</li>
+</ol>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_read_and_modify_data"><a class="link" href="#_read_and_modify_data">Read and Modify Data</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Now that the data is stored in Kudu, you can run queries against it. The following query
+finds the data point containing the highest recorded vehicle speed.</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-sql" data-lang="sql">SELECT * FROM sfmta ORDER BY speed DESC LIMIT 1;
+
++-------------+-------------+--------------------+-------------------+-------------------+---------+
+| report_time | vehicle_tag | longitude          | latitude          | speed             | heading |
++-------------+-------------+--------------------+-------------------+-------------------+---------+
+| 1357022342  | 5411        | -122.3968811035156 | 37.76665878295898 | 68.33300018310547 | 82      |
++-------------+-------------+--------------------+-------------------+-------------------+---------+</code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>With a quick <a href="https://www.google.com/search?q=122.3968811035156W+37.76665878295898N">Google search</a>
+we can see that this bus was traveling east on 16th street at 68MPH.
+At first glance, this seems unlikely to be true. Perhaps we do some research
+and find that this bus&#8217;s sensor equipment was broken and we decide to
+remove the data. With Kudu this is very easy to correct using standard
+SQL:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-sql" data-lang="sql">DELETE FROM sfmta WHERE vehicle_tag = '5411';
+
+-- Modified 1169 row(s), 0 row error(s) in 0.25s</code></pre>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_next_steps"><a class="link" href="#_next_steps">Next steps</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The above example showed how to load, query, and mutate a static dataset with Impala
+and Kudu. The real power of Kudu, however, is the ability to ingest and mutate data
+in a streaming fashion.</p>
+</div>
+<div class="paragraph">
+<p>As an exercise to learn the Kudu programmatic APIs, try implementing a program
+that uses the <a href="http://www.nextbus.com/xmlFeedDocs/NextBusXMLFeed.pdf">SFMTA
+XML data feed</a> to ingest this same dataset in real time into the Kudu table.</p>
+</div>
+<div class="sect2">
+<h3 id="trouble"><a class="link" href="#trouble">Troubleshooting</a></h3>
+<div class="sect3">
+<h4 id="_problems_accessing_the_vm_via_ssh"><a class="link" href="#_problems_accessing_the_vm_via_ssh">Problems accessing the VM via SSH</a></h4>
+<div class="ulist">
+<ul>
+<li>
+<p>Make sure the host has a SSH client installed.</p>
+</li>
+<li>
+<p>Make sure the VM is running, by running the following command and checking for a VM called <code>kudu-demo</code>:</p>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-bash" data-lang="bash">$ VBoxManage list runningvms</code></pre>
+</div>
+</div>
+</li>
+<li>
+<p>Verify that the VM&#8217;s IP address is included in the host&#8217;s <code>/etc/hosts</code> file. You should
+see a line that includes an IP address followed by the hostname
+<code>quickstart.cloudera</code>. To check the running VM&#8217;s IP address, use the <code>VBoxManage</code>
+command below.</p>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-bash" data-lang="bash">$ VBoxManage guestproperty get kudu-demo /VirtualBox/GuestInfo/Net/0/V4/IP
+Value: 192.168.56.100</code></pre>
+</div>
+</div>
+</li>
+<li>
+<p>If you&#8217;ve used a Cloudera Quickstart VM before, your <code>.ssh/known_hosts</code> file may
+contain references to the previous VM&#8217;s SSH credentials. Remove any references to
+<code>quickstart.cloudera</code> from this file.</p>
+</li>
+</ul>
+</div>
+</div>
+<div class="sect3">
+<h4 id="_failing_with_lack_of_sse4_2_support_when_running_inside_virtualbox"><a class="link" href="#_failing_with_lack_of_sse4_2_support_when_running_inside_virtualbox">Failing with lack of SSE4.2 support when running inside VirtualBox</a></h4>
+<div class="ulist">
+<ul>
+<li>
+<p>Running Kudu currently requires a CPU that supports SSE4.2 (Nehalem or later for Intel). To pass through SSE4.2 support into the guest VM, refer to the <a href="https://www.virtualbox.org/manual/ch09.html#sse412passthrough">VirtualBox documentation</a></p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_next_steps_2"><a class="link" href="#_next_steps_2">Next Steps</a></h2>
+<div class="sectionbody">
+<div class="ulist">
+<ul>
+<li>
+<p><a href="installation.html">Installing Kudu</a></p>
+</li>
+<li>
+<p><a href="configuration.html">Configuring Kudu</a></p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+    </div>
+    <div class="col-md-3">
+
+  <div id="toc" data-spy="affix" data-offset-top="70">
+  <ul>
+
+      <li>
+
+          <a href="index.html">Introducing Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="release_notes.html">Kudu Release Notes</a> 
+      </li> 
+      <li>
+<span class="active-toc">Getting Started with Kudu</span>
+            <ul class="sectlevel1">
+<li><a href="#quickstart_vm">Get The Kudu Quickstart VM</a>
+<ul class="sectlevel2">
+<li><a href="#_prerequisites">Prerequisites</a></li>
+<li><a href="#_installation">Installation</a></li>
+</ul>
+</li>
+<li><a href="#_load_data">Load Data</a></li>
+<li><a href="#_read_and_modify_data">Read and Modify Data</a></li>
+<li><a href="#_next_steps">Next steps</a>
+<ul class="sectlevel2">
+<li><a href="#trouble">Troubleshooting</a></li>
+</ul>
+</li>
+<li><a href="#_next_steps_2">Next Steps</a></li>
+</ul> 
+      </li> 
+      <li>
+
+          <a href="installation.html">Installation Guide</a> 
+      </li> 
+      <li>
+
+          <a href="configuration.html">Configuring Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="kudu_impala_integration.html">Using Impala with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="administration.html">Administering Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="troubleshooting.html">Troubleshooting Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="developing.html">Developing Applications with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="schema_design.html">Kudu Schema Design</a> 
+      </li> 
+      <li>
+
+          <a href="security.html">Kudu Security</a> 
+      </li> 
+      <li>
+
+          <a href="transaction_semantics.html">Kudu Transaction Semantics</a> 
+      </li> 
+      <li>
+
+          <a href="background_tasks.html">Background Maintenance Tasks</a> 
+      </li> 
+      <li>
+
+          <a href="configuration_reference.html">Kudu Configuration Reference</a> 
+      </li> 
+      <li>
+
+          <a href="command_line_tools_reference.html">Kudu Command Line Tools Reference</a> 
+      </li> 
+      <li>
+
+          <a href="known_issues.html">Known Issues and Limitations</a> 
+      </li> 
+      <li>
+
+          <a href="contributing.html">Contributing to Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="export_control.html">Export Control Notice</a> 
+      </li> 
+  </ul>
+  </div>
+    </div>
+  </div>
+</div>
+
+
+  <div id="footnotes">
+  <hr>
+      <div class="footnote" id="_footnote_1">
+      <a href="#_footnoteref_1">1</a>. In addition, the script will create a host-only network between host and guest and setup an entry in the <code>/etc/hosts</code> file with the name <code>quickstart.cloudera</code> and the guest&#8217;s IP address.
+      </div>
+  </div>
+      <footer class="footer">
+        <p class="small">
+        Copyright &copy; 2016 The Apache Software Foundation.  Last updated 2017-04-10 16:00:03 PDT 
+        </p>
+      </footer>
+    </div>
+    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
+    <script>
+      // Try to detect touch-screen devices. Note: Many laptops have touch screens.
+      $(document).ready(function() {
+        if ("ontouchstart" in document.documentElement) {
+          $(document.documentElement).addClass("touch");
+        } else {
+          $(document.documentElement).addClass("no-touch");
+        }
+      });
+    </script>
+    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"
+            integrity="sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS"
+            crossorigin="anonymous"></script>
+    <script>
+      (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+      (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+      m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+      })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+
+      ga('create', 'UA-68448017-1', 'auto');
+      ga('send', 'pageview');
+    </script>
+    <script src="https://cdnjs.cloudflare.com/ajax/libs/anchor-js/3.1.0/anchor.js"></script>
+    <script>
+      anchors.options = {
+        placement: 'right',
+        visible: 'touch',
+      };
+      anchors.add();
+    </script>
+  </body>
+</html>
+
diff --git a/releases/1.4.0/docs/release_notes.html b/releases/1.4.0/docs/release_notes.html
new file mode 100644
index 0000000..7e1a89f
--- /dev/null
+++ b/releases/1.4.0/docs/release_notes.html
@@ -0,0 +1,614 @@
+<!DOCTYPE html>
+<html lang="en">
+  <head>
+    <meta charset="utf-8" />
+    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
+    <meta name="viewport" content="width=device-width, initial-scale=1" />
+    <!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
+    <meta name="description" content="A new open source Apache Hadoop ecosystem project, Apache Kudu completes Hadoop's storage layer to enable fast analytics on fast data" />
+    <meta name="author" content="Cloudera" />
+    <title>Apache Kudu - Apache Kudu 1.4.0 Release Notes</title>
+    <!-- Bootstrap core CSS -->
+    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css"
+          integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7"
+          crossorigin="anonymous">
+
+    <!-- Custom styles for this template -->
+    <link href="/css/kudu.css" rel="stylesheet"/>
+    <link href="/css/asciidoc.css" rel="stylesheet"/>
+    <link rel="shortcut icon" href="/img/logo-favicon.ico" />
+    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.6.1/css/font-awesome.min.css" />
+
+    
+
+    <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+        <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+        <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+        <![endif]-->
+  </head>
+  <body>
+    <div class="kudu-site container-fluid">
+      <!-- Static navbar -->
+        <nav class="navbar navbar-default">
+          <div class="container-fluid">
+            <div class="navbar-header">
+              <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
+                <span class="sr-only">Toggle navigation</span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+              </button>
+              
+              <a class="logo" href="/"><img
+                src="//d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_80px.png"
+                srcset="//d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_80px.png 1x, //d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_160px.png 2x"
+                alt="Apache Kudu"/></a>
+              
+            </div>
+            <div id="navbar" class="collapse navbar-collapse">
+              <ul class="nav navbar-nav navbar-right">
+                <li >
+                  <a href="/">Home</a>
+                </li>
+                <li >
+                  <a href="/overview.html">Overview</a>
+                </li>
+                <li class="active">
+                  <a href="/docs/">Documentation</a>
+                </li>
+                <li >
+                  <a href="/releases/">Download</a>
+                </li>
+                <li >
+                  <a href="/blog/">Blog</a>
+                </li>
+                <!-- NOTE: this dropdown menu does not appear on Mobile, so don't add anything here
+                     that doesn't also appear elsewhere on the site. -->
+                <li class="dropdown">
+                  <a href="/community.html" role="button" aria-haspopup="true" aria-expanded="false">Community <span class="caret"></span></a>
+                  <ul class="dropdown-menu">
+                    <li class="dropdown-header">GET IN TOUCH</li>
+                    <li><a class="icon email" href="/community.html">Mailing Lists</a></li>
+                    <li><a class="icon slack" href="https://getkudu-slack.herokuapp.com/">Slack Channel</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li><a href="/community.html#meetups-user-groups-and-conference-presentations">Events and Meetups</a></li>
+                    <li><a href="/committers.html">Project Committers</a></li>
+                    <!--<li><a href="/roadmap.html">Roadmap</a></li>-->
+                    <li><a href="/community.html#contributions">How to Contribute</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li class="dropdown-header">DEVELOPER RESOURCES</li>
+                    <li><a class="icon github" href="https://github.com/apache/incubator-kudu">GitHub</a></li>
+                    <li><a class="icon gerrit" href="http://gerrit.cloudera.org:8080/#/q/status:open+project:kudu">Gerrit Code Review</a></li>
+                    <li><a class="icon jira" href="https://issues.apache.org/jira/browse/KUDU">JIRA Issue Tracker</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li class="dropdown-header">SOCIAL MEDIA</li>
+                    <li><a class="icon twitter" href="https://twitter.com/ApacheKudu">Twitter</a></li>
+                  </ul>
+                </li>
+                <li >
+                  <a href="/faq.html">FAQ</a>
+                </li>
+              </ul><!-- /.nav -->
+            </div><!-- /#navbar -->
+          </div><!-- /.container-fluid -->
+        </nav>
+
+<!--
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
+
+
+<div class="container">
+  <div class="row">
+    <div class="col-md-9">
+
+<h1>Apache Kudu 1.4.0 Release Notes</h1>
+      <div class="sect1">
+<h2 id="rn_1.4.0_new_features"><a class="link" href="#rn_1.4.0_new_features">New features</a></h2>
+<div class="sectionbody">
+<div class="ulist">
+<ul>
+<li>
+<p>The C++ and Java client libraries now support the ability to alter the
+storage attributes (e.g. encoding and compression) and default value
+of existing columns. Additionally, it is now possible to rename
+a column which is part of a table&#8217;s primary key.</p>
+</li>
+<li>
+<p>The C++ client library now includes an experimental <code>KuduPartitioner</code> API which may
+be used to efficiently map rows to their associated partitions and hosts.
+This may be used to achieve better locality or distribution of writes
+in client applications.</p>
+</li>
+<li>
+<p>The Java client library now supports enabling fault tolerance on scanners.
+Fault tolerant scanners are able to transparently recover from concurrent
+server crashes at the cost of some performance overhead. See the Java
+API documentation for more details on usage.</p>
+</li>
+<li>
+<p>The <code>kudu</code> command line tool now includes a new advanced administrative
+command <code>kudu remote_replica unsafe_change_config</code>. This command may be used
+to force a tablet to perform an unsafe change of its Raft replication
+configuration. This can be used to recover from scenarios such as a loss
+of a majority of replicas, at the risk of losing edits.</p>
+</li>
+<li>
+<p>The <code>kudu</code> command line tool now includes the <code>kudu fs check</code> command
+which performs various offline consistency checks on the local on-disk
+storage of a Kudu Tablet Server or Master. In addition to detecting
+various inconsistencies or corruptions, it can also detect and remove
+data blocks that are no longer referenced by any tablet but were not
+fully removed from disk due to a crash or a bug in prior versions of Kudu.</p>
+</li>
+<li>
+<p>The <code>kudu</code> command line tool can now be used to list the addresses and
+identifiers of the servers in the cluster using either <code>kudu master list</code>
+or <code>kudu tserver list</code>.</p>
+</li>
+<li>
+<p>Kudu 1.4 now includes the optional ability to compute, store, and verify
+checksums on all pieces of data stored on a server. Prior versions only
+performed checksums on certain portions of the stored data. This feature
+is not enabled by default since it makes a backward-incompatible change
+to the on-disk formats and thus prevent downgrades. Kudu 1.5 will enable
+the feature by default.</p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_optimizations_and_improvements"><a class="link" href="#_optimizations_and_improvements">Optimizations and improvements</a></h2>
+<div class="sectionbody">
+<div class="ulist">
+<ul>
+<li>
+<p><code>kudu cluster ksck</code> now detects and reports new classes of
+inconsistencies and issues. In particular, it is better able to
+detect cases where a configuration change such as a replica eviction
+or addition is pending but is unable to be committed. It also now
+properly detects and reports cases where a tablet has no elected
+leader.</p>
+</li>
+<li>
+<p>The default size for Write Ahead Log (WAL) segments has been reduced
+from 64MB to 8MB. Additionally, in the case that all replicas of a
+tablet are fully up to date and data has been flushed from memory,
+servers will now retain only a single WAL segment rather than
+two. These changes are expected to reduce the average consumption of
+disk space on the configured WAL disk by 16x, as well as improve the
+startup speed of tablet servers by reducing the number and size of
+WAL segments that need to be re-read.</p>
+</li>
+<li>
+<p>The default on-disk storage system used by Kudu servers (Log Block Manager)
+has been improved to compact its metadata and remove dead containers.
+This compaction and garbage collection occurs only at startup. Thus, the
+first startup after upgrade is expected to be longer than usual, and
+subsequent restarts should be shorter.</p>
+</li>
+<li>
+<p>The usability of the Kudu web interfaces has been improved,
+particularly for the case where a server hosts many tablets or a
+table has many partitions. Pages that list tablets now include
+a top-level summary of tablet status and show the complete list
+under a toggleable section.</p>
+</li>
+<li>
+<p>The Maintenance Manager has been improved to improve utilization of the
+configured maintenance threads. Previously, maintenance work would
+only be scheduled a maximum of 4 times per second, but now maintenance
+work will be scheduled immediately whenever any configured thread is
+available. This can improve the throughput of write-heavy workloads.</p>
+</li>
+<li>
+<p>The Maintenance Manager will now aggressively schedule flushes of
+in-memory data when memory consumption crosses 60% of the configured
+process-wide memory limit. The backpressure mechanism which begins
+to throttle client writes has been accordingly adjusted to not begin
+throttling until reaching 80% of the configured limit. These two
+changes together result in improved write throughput, more consistent
+latency, and fewer timeouts due to memory exhaustion.</p>
+</li>
+<li>
+<p>Many performance improvements were made to write performance. Applications
+which send large batches of writes to Kudu should see substantially
+improved throughput in Kudu 1.4.</p>
+</li>
+<li>
+<p>Several improvements were made to reduce the memory consumption of
+Kudu Tablet Servers which hold large volumes of data. The specific
+amount of memory saved varies depending on workload, but the expectation
+is that approximately 350MB of excess peak memory usage has been eliminated
+per TB of data stored.</p>
+</li>
+<li>
+<p>The number of threads used by the Kudu Tablet Server has been reduced.
+Previously, each tablet used a dedicated thread to append to its WAL.
+Those threads now automatically stop running if there is no activity
+on a given tablet for a short period of time.</p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="rn_1.4.0_fixed_issues"><a class="link" href="#rn_1.4.0_fixed_issues">Fixed Issues</a></h2>
+<div class="sectionbody">
+<div class="ulist">
+<ul>
+<li>
+<p><a href="https://issues.apache.org/jira/browse/KUDU-2020">KUDU-2020</a>
+Fixed an issue where re-replication after a failure would proceed
+significantly slower than expected. This bug caused many tablets
+to be unnecessarily copied multiple times before successfully
+being considered re-replicated, resulting in significantly more
+network and IO bandwidth usage than expected. Mean time to recovery
+on clusters with large amounts of data is improved by up to 10x by this
+fix.</p>
+</li>
+<li>
+<p><a href="https://issues.apache.org/jira/browse/KUDU-1982">KUDU-1982</a>
+Fixed an issue where the Java client would call <code>NetworkInterface.getByInetAddress</code>
+very often, causing performance problems particularly on Windows
+where this function can be quite slow.</p>
+</li>
+<li>
+<p><a href="https://issues.apache.org/jira/browse/KUDU-1755">KUDU-1755</a>
+Improved the accuracy of the <code>on_disk_size</code> replica metrics to
+include the size consumed by bloom filters, primary key indexes,
+and superblock metadata, and delta files. Note that, because the size
+metric is now more accurate, the reported values are expected to
+increase after upgrading to Kudu 1.4. This does not indicate that
+replicas are using more space after the upgrade; rather, it is
+now accurately reporting the amount of space that has always been
+used.</p>
+</li>
+<li>
+<p><a href="https://issues.apache.org/jira/browse/KUDU-1192">KUDU-1192</a>
+Kudu servers will now periodically flush their log messages to disk
+even if no <code>WARNING</code>-level messages have been logged. This makes it
+easier to tail the logs to see progress output during normal startup.</p>
+</li>
+<li>
+<p><a href="https://issues.apache.org/jira/browse/KUDU-1999">KUDU-1999</a>
+Fixed the ability to run Spark jobs in "cluster" mode against
+Kudu clusters secured by Kerberos.</p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="rn_1.4.0_wire_compatibility"><a class="link" href="#rn_1.4.0_wire_compatibility">Wire Protocol compatibility</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Kudu 1.4.0 is wire-compatible with previous versions of Kudu:</p>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p>Kudu 1.4 clients may connect to servers running Kudu 1.0 or later. If the client uses
+features that are not available on the target server, an error will be returned.</p>
+</li>
+<li>
+<p>Kudu 1.0 clients may connect to servers running Kudu 1.4 with the exception of the
+below-mentioned restrictions regarding secure clusters.</p>
+</li>
+<li>
+<p>Rolling upgrade between Kudu 1.3 and Kudu 1.4 servers is believed to be possible
+though has not been sufficiently tested. Users are encouraged to shut down all nodes
+in the cluster, upgrade the software, and then restart the daemons on the new version.</p>
+</li>
+</ul>
+</div>
+<div class="paragraph">
+<p>The authentication features introduced in Kudu 1.3 place the following limitations
+on wire compatibility between Kudu 1.4 and versions earlier than 1.3:</p>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p>If a Kudu 1.4 cluster is configured with authentication or encryption set to "required",
+clients older than Kudu 1.3 will be unable to connect.</p>
+</li>
+<li>
+<p>If a Kudu 1.4 cluster is configured with authentication and encryption set to "optional"
+or "disabled", older clients will still be able to connect.</p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="rn_1.4.0_incompatible_changes"><a class="link" href="#rn_1.4.0_incompatible_changes">Incompatible Changes in Kudu 1.4.0</a></h2>
+<div class="sectionbody">
+<div class="ulist">
+<ul>
+<li>
+<p>Kudu servers, by default, will now only allow unencrypted or unauthenticated connections
+from trusted subnets, which are private networks (127.0.0.0/8,10.0.0.0/8,172.16.0.0/12,
+192.168.0.0/16,169.254.0.0/16) and local subnets of all local network interfaces.
+Unencrypted or unauthenticated connections from publicly routable IPs will be rejected,
+even if encryption and authentication are not configured.</p>
+<div class="paragraph">
+<p>The trusted subnets can be configured using the <code>--trusted_subnets</code> flag, which can be set
+   to IP blocks represented in CIDR notation separated by comma. Set it to '0.0.0.0/0' to
+   allow unauthenticated connections from all remote IP addresses. However, if network access
+   is not otherwise restricted by a firewall, malicious users may be able to gain unauthorized
+   access. This can be mitigated if authentication and encryption are configured to be
+   required.</p>
+</div>
+</li>
+</ul>
+</div>
+<div class="sect2">
+<h3 id="rn_1.4.0_client_compatibility"><a class="link" href="#rn_1.4.0_client_compatibility">Client Library Compatibility</a></h3>
+<div class="ulist">
+<ul>
+<li>
+<p>The Kudu 1.4 Java client library is API- and ABI-compatible with Kudu 1.3. Applications
+written against Kudu 1.3 will compile and run against the Kudu 1.4 client library and
+vice-versa, unless one of the following newly added APIs is used:</p>
+<div class="ulist">
+<ul>
+<li>
+<p><code>[Async]KuduScannerBuilder.setFaultTolerant(&#8230;&#8203;)</code></p>
+</li>
+<li>
+<p>New methods in <code>AlterTableOptions</code>: <code>removeDefault</code>, <code>changeDefault</code>, <code>changeDesiredBlockSize</code>,
+<code>changeEncoding</code>, <code>changeCompressionAlgorithm</code></p>
+</li>
+<li>
+<p><code>KuduClient.updateLastPropagatedTimestamp</code></p>
+</li>
+<li>
+<p><code>KuduClient.getLastPropagatedTimestamp</code></p>
+</li>
+<li>
+<p>New getters in <code>PartialRow</code>: <code>getBoolean</code>, <code>getByte</code>, <code>getShort</code>, <code>getInt</code>, <code>getLong</code>,
+<code>getFloat</code>, <code>getDouble</code>, <code>getString</code>, <code>getBinaryCopy</code>, <code>getBinary</code>, <code>isNull</code>,
+<code>isSet</code>.</p>
+</li>
+</ul>
+</div>
+</li>
+<li>
+<p>The Kudu 1.4 C++ client is API- and ABI-forward-compatible with Kudu 1.3.
+Applications written and compiled against the Kudu 1.3 client library will run without
+modification against the Kudu 1.4 client library. Applications written and compiled
+against the Kudu 1.4 client library will run without modification against the Kudu 1.3
+client library unless they use one of the following new APIs:</p>
+<div class="ulist">
+<ul>
+<li>
+<p><code>KuduPartitionerBuilder</code></p>
+</li>
+<li>
+<p>`KuduPartitioner</p>
+</li>
+<li>
+<p><code>KuduScanner::SetRowFormatFlags</code> (unstable API)</p>
+</li>
+<li>
+<p><code>KuduScanBatch::direct_data</code>, <code>KuduScanBatch::indirect_data</code> (unstable API)</p>
+</li>
+</ul>
+</div>
+</li>
+<li>
+<p>The Kudu 1.4 Python client is API-compatible with Kudu 1.3. Applications
+written against Kudu 1.3 will continue to run against the Kudu 1.4 client
+and vice-versa.</p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="rn_1.4.0_known_issues"><a class="link" href="#rn_1.4.0_known_issues">Known Issues and Limitations</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Please refer to the <a href="known_issues.html">Known Issues and Limitations</a> section of the
+documentation.</p>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="resources_and_next_steps"><a class="link" href="#resources_and_next_steps">Resources</a></h2>
+<div class="sectionbody">
+<div class="ulist">
+<ul>
+<li>
+<p><a href="http://kudu.apache.org">Kudu Website</a></p>
+</li>
+<li>
+<p><a href="http://github.com/apache/kudu">Kudu GitHub Repository</a></p>
+</li>
+<li>
+<p><a href="index.html">Kudu Documentation</a></p>
+</li>
+<li>
+<p><a href="prior_release_notes.html">Release notes for older releases</a></p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_installation_options"><a class="link" href="#_installation_options">Installation Options</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>For full installation details, see <a href="installation.html">Kudu Installation</a>.</p>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_next_steps"><a class="link" href="#_next_steps">Next Steps</a></h2>
+<div class="sectionbody">
+<div class="ulist">
+<ul>
+<li>
+<p><a href="quickstart.html">Kudu Quickstart</a></p>
+</li>
+<li>
+<p><a href="installation.html">Installing Kudu</a></p>
+</li>
+<li>
+<p><a href="configuration.html">Configuring Kudu</a></p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+    </div>
+    <div class="col-md-3">
+
+  <div id="toc" data-spy="affix" data-offset-top="70">
+  <ul>
+
+      <li>
+
+          <a href="index.html">Introducing Kudu</a> 
+      </li> 
+      <li>
+<span class="active-toc">Kudu Release Notes</span>
+            <ul class="sectlevel1">
+<li><a href="#rn_1.4.0_new_features">New features</a></li>
+<li><a href="#_optimizations_and_improvements">Optimizations and improvements</a></li>
+<li><a href="#rn_1.4.0_fixed_issues">Fixed Issues</a></li>
+<li><a href="#rn_1.4.0_wire_compatibility">Wire Protocol compatibility</a></li>
+<li><a href="#rn_1.4.0_incompatible_changes">Incompatible Changes in Kudu 1.4.0</a>
+<ul class="sectlevel2">
+<li><a href="#rn_1.4.0_client_compatibility">Client Library Compatibility</a></li>
+</ul>
+</li>
+<li><a href="#rn_1.4.0_known_issues">Known Issues and Limitations</a></li>
+<li><a href="#resources_and_next_steps">Resources</a></li>
+<li><a href="#_installation_options">Installation Options</a></li>
+<li><a href="#_next_steps">Next Steps</a></li>
+</ul> 
+      </li> 
+      <li>
+
+          <a href="quickstart.html">Getting Started with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="installation.html">Installation Guide</a> 
+      </li> 
+      <li>
+
+          <a href="configuration.html">Configuring Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="kudu_impala_integration.html">Using Impala with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="administration.html">Administering Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="troubleshooting.html">Troubleshooting Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="developing.html">Developing Applications with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="schema_design.html">Kudu Schema Design</a> 
+      </li> 
+      <li>
+
+          <a href="security.html">Kudu Security</a> 
+      </li> 
+      <li>
+
+          <a href="transaction_semantics.html">Kudu Transaction Semantics</a> 
+      </li> 
+      <li>
+
+          <a href="background_tasks.html">Background Maintenance Tasks</a> 
+      </li> 
+      <li>
+
+          <a href="configuration_reference.html">Kudu Configuration Reference</a> 
+      </li> 
+      <li>
+
+          <a href="command_line_tools_reference.html">Kudu Command Line Tools Reference</a> 
+      </li> 
+      <li>
+
+          <a href="known_issues.html">Known Issues and Limitations</a> 
+      </li> 
+      <li>
+
+          <a href="contributing.html">Contributing to Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="export_control.html">Export Control Notice</a> 
+      </li> 
+  </ul>
+  </div>
+    </div>
+  </div>
+</div>
+      <footer class="footer">
+        <p class="small">
+        Copyright &copy; 2016 The Apache Software Foundation.  Last updated 2017-06-08 18:46:50 PDT 
+        </p>
+      </footer>
+    </div>
+    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
+    <script>
+      // Try to detect touch-screen devices. Note: Many laptops have touch screens.
+      $(document).ready(function() {
+        if ("ontouchstart" in document.documentElement) {
+          $(document.documentElement).addClass("touch");
+        } else {
+          $(document.documentElement).addClass("no-touch");
+        }
+      });
+    </script>
+    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"
+            integrity="sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS"
+            crossorigin="anonymous"></script>
+    <script>
+      (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+      (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+      m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+      })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+
+      ga('create', 'UA-68448017-1', 'auto');
+      ga('send', 'pageview');
+    </script>
+    <script src="https://cdnjs.cloudflare.com/ajax/libs/anchor-js/3.1.0/anchor.js"></script>
+    <script>
+      anchors.options = {
+        placement: 'right',
+        visible: 'touch',
+      };
+      anchors.add();
+    </script>
+  </body>
+</html>
+
diff --git a/releases/1.4.0/docs/schema_design.html b/releases/1.4.0/docs/schema_design.html
new file mode 100644
index 0000000..05b269e
--- /dev/null
+++ b/releases/1.4.0/docs/schema_design.html
@@ -0,0 +1,997 @@
+<!DOCTYPE html>
+<html lang="en">
+  <head>
+    <meta charset="utf-8" />
+    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
+    <meta name="viewport" content="width=device-width, initial-scale=1" />
+    <!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
+    <meta name="description" content="A new open source Apache Hadoop ecosystem project, Apache Kudu completes Hadoop's storage layer to enable fast analytics on fast data" />
+    <meta name="author" content="Cloudera" />
+    <title>Apache Kudu - Apache Kudu Schema Design</title>
+    <!-- Bootstrap core CSS -->
+    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css"
+          integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7"
+          crossorigin="anonymous">
+
+    <!-- Custom styles for this template -->
+    <link href="/css/kudu.css" rel="stylesheet"/>
+    <link href="/css/asciidoc.css" rel="stylesheet"/>
+    <link rel="shortcut icon" href="/img/logo-favicon.ico" />
+    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.6.1/css/font-awesome.min.css" />
+
+    
+
+    <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+        <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+        <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+        <![endif]-->
+  </head>
+  <body>
+    <div class="kudu-site container-fluid">
+      <!-- Static navbar -->
+        <nav class="navbar navbar-default">
+          <div class="container-fluid">
+            <div class="navbar-header">
+              <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
+                <span class="sr-only">Toggle navigation</span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+              </button>
+              
+              <a class="logo" href="/"><img
+                src="//d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_80px.png"
+                srcset="//d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_80px.png 1x, //d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_160px.png 2x"
+                alt="Apache Kudu"/></a>
+              
+            </div>
+            <div id="navbar" class="collapse navbar-collapse">
+              <ul class="nav navbar-nav navbar-right">
+                <li >
+                  <a href="/">Home</a>
+                </li>
+                <li >
+                  <a href="/overview.html">Overview</a>
+                </li>
+                <li class="active">
+                  <a href="/docs/">Documentation</a>
+                </li>
+                <li >
+                  <a href="/releases/">Download</a>
+                </li>
+                <li >
+                  <a href="/blog/">Blog</a>
+                </li>
+                <!-- NOTE: this dropdown menu does not appear on Mobile, so don't add anything here
+                     that doesn't also appear elsewhere on the site. -->
+                <li class="dropdown">
+                  <a href="/community.html" role="button" aria-haspopup="true" aria-expanded="false">Community <span class="caret"></span></a>
+                  <ul class="dropdown-menu">
+                    <li class="dropdown-header">GET IN TOUCH</li>
+                    <li><a class="icon email" href="/community.html">Mailing Lists</a></li>
+                    <li><a class="icon slack" href="https://getkudu-slack.herokuapp.com/">Slack Channel</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li><a href="/community.html#meetups-user-groups-and-conference-presentations">Events and Meetups</a></li>
+                    <li><a href="/committers.html">Project Committers</a></li>
+                    <!--<li><a href="/roadmap.html">Roadmap</a></li>-->
+                    <li><a href="/community.html#contributions">How to Contribute</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li class="dropdown-header">DEVELOPER RESOURCES</li>
+                    <li><a class="icon github" href="https://github.com/apache/incubator-kudu">GitHub</a></li>
+                    <li><a class="icon gerrit" href="http://gerrit.cloudera.org:8080/#/q/status:open+project:kudu">Gerrit Code Review</a></li>
+                    <li><a class="icon jira" href="https://issues.apache.org/jira/browse/KUDU">JIRA Issue Tracker</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li class="dropdown-header">SOCIAL MEDIA</li>
+                    <li><a class="icon twitter" href="https://twitter.com/ApacheKudu">Twitter</a></li>
+                  </ul>
+                </li>
+                <li >
+                  <a href="/faq.html">FAQ</a>
+                </li>
+              </ul><!-- /.nav -->
+            </div><!-- /#navbar -->
+          </div><!-- /.container-fluid -->
+        </nav>
+
+<!--
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
+
+
+<div class="container">
+  <div class="row">
+    <div class="col-md-9">
+
+<h1>Apache Kudu Schema Design</h1>
+      <div id="preamble">
+<div class="sectionbody">
+<div class="paragraph">
+<p>Kudu tables have a structured data model similar to tables in a traditional
+RDBMS. Schema design is critical for achieving the best performance and
+operational stability from Kudu. Every workload is unique, and there is no
+single schema design that is best for every table. This document outlines
+effective schema design philosophies for Kudu, paying particular attention to
+where they differ from approaches used for traditional RDBMS schemas.</p>
+</div>
+<div class="paragraph">
+<p>At a high level, there are three concerns when creating Kudu tables:
+<a href="#column-design">column design</a>, <a href="#primary-key">primary key design</a>, and
+<a href="#partitioning">partitioning design</a>. Of these, only partitioning will be a new
+concept for those familiar with traditional non-distributed relational
+databases. The final sections discuss <a href="#alter-schema">altering the schema</a> of an
+existing table, and <a href="#known-limitations">known limitations</a> with regard to
+schema design.</p>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_the_perfect_schema"><a class="link" href="#_the_perfect_schema">The Perfect Schema</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The perfect schema would accomplish the following:</p>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p>Data would be distributed in such a way that reads and writes are spread
+evenly across tablet servers. This is impacted by partitioning.</p>
+</li>
+<li>
+<p>Tablets would grow at an even, predictable rate and load across tablets would
+remain steady over time. This is most impacted by partitioning.</p>
+</li>
+<li>
+<p>Scans would read the minimum amount of data necessary to fulfill a query. This
+is impacted mostly by primary key design, but partitioning also plays a role
+via partition pruning.</p>
+</li>
+</ul>
+</div>
+<div class="paragraph">
+<p>The perfect schema depends on the characteristics of your data, what you need to do
+with it, and the topology of your cluster. Schema design is the single most important
+thing within your control to maximize the performance of your Kudu cluster.</p>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="column-design"><a class="link" href="#column-design">Column Design</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>A Kudu Table consists of one or more columns, each with a defined type. Columns
+that are not part of the primary key may be nullable. Supported
+column types include:</p>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p>boolean</p>
+</li>
+<li>
+<p>8-bit signed integer</p>
+</li>
+<li>
+<p>16-bit signed integer</p>
+</li>
+<li>
+<p>32-bit signed integer</p>
+</li>
+<li>
+<p>64-bit signed integer</p>
+</li>
+<li>
+<p>unixtime_micros (64-bit microseconds since the Unix epoch)</p>
+</li>
+<li>
+<p>single-precision (32-bit) IEEE-754 floating-point number</p>
+</li>
+<li>
+<p>double-precision (64-bit) IEEE-754 floating-point number</p>
+</li>
+<li>
+<p>UTF-8 encoded string (up to 64KB uncompressed)</p>
+</li>
+<li>
+<p>binary (up to 64KB uncompressed)</p>
+</li>
+</ul>
+</div>
+<div class="paragraph">
+<p>Kudu takes advantage of strongly-typed columns and a columnar on-disk storage
+format to provide efficient encoding and serialization. To make the most of
+these features, columns should be specified as the appropriate type, rather than
+simulating a 'schemaless' table using string or binary columns for data which
+may otherwise be structured. In addition to encoding, Kudu allows compression to
+be specified on a per-column basis.</p>
+</div>
+<div class="sect2">
+<h3 id="encoding"><a class="link" href="#encoding">Column Encoding</a></h3>
+<div class="paragraph">
+<p>Each column in a Kudu table can be created with an encoding, based on the type
+of the column.</p>
+</div>
+<table class="tableblock frame-all grid-all spread">
+<caption class="title">Table 1. Encoding Types</caption>
+<colgroup>
+<col style="width: 33%;">
+<col style="width: 33%;">
+<col style="width: 33%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Column Type</th>
+<th class="tableblock halign-left valign-top">Encoding</th>
+<th class="tableblock halign-left valign-top">Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int8, int16, int32</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">plain, bitshuffle, run length</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bitshuffle</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">int64, unixtime_micros</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">plain, bitshuffle, run length</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bitshuffle</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">float, double</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">plain, bitshuffle</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bitshuffle</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">plain, run length</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">run length</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">string, binary</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">plain, prefix, dictionary</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">dictionary</p></td>
+</tr>
+</tbody>
+</table>
+<div id="plain" class="dlist">
+<dl>
+<dt class="hdlist1">Plain Encoding</dt>
+<dd>
+<p>Data is stored in its natural format. For example, <code>int32</code>
+values are stored as fixed-size 32-bit little-endian integers.</p>
+</dd>
+</dl>
+</div>
+<div id="bitshuffle" class="dlist">
+<dl>
+<dt class="hdlist1">Bitshuffle Encoding</dt>
+<dd>
+<p>A block of values is rearranged to store the most
+significant bit of every value, followed by the second most significant bit of
+every value, and so on. Finally, the result is LZ4 compressed. Bitshuffle
+encoding is a good choice for columns that have many repeated values, or values
+that change by small amounts when sorted by primary key. The
+<a href="https://github.com/kiyo-masui/bitshuffle">bitshuffle</a> project has a good overview
+of performance and use cases.</p>
+</dd>
+</dl>
+</div>
+<div id="run-length" class="dlist">
+<dl>
+<dt class="hdlist1">Run Length Encoding</dt>
+<dd>
+<p><em>Runs</em> (consecutive repeated values) are compressed in a
+column by storing only the value and the count. Run length encoding is effective
+for columns with many consecutive repeated values when sorted by primary key.</p>
+</dd>
+</dl>
+</div>
+<div id="dictionary" class="dlist">
+<dl>
+<dt class="hdlist1">Dictionary Encoding</dt>
+<dd>
+<p>A dictionary of unique values is built, and each column
+value is encoded as its corresponding index in the dictionary. Dictionary
+encoding is effective for columns with low cardinality. If the column values of
+a given row set are unable to be compressed because the number of unique values
+is too high, Kudu will transparently fall back to plain encoding for that row
+set. This is evaluated during flush.</p>
+</dd>
+</dl>
+</div>
+<div id="prefix" class="dlist">
+<dl>
+<dt class="hdlist1">Prefix Encoding</dt>
+<dd>
+<p>Common prefixes are compressed in consecutive column values.
+Prefix encoding can be effective for values that share common prefixes, or the
+first column of the primary key, since rows are sorted by primary key within
+tablets.</p>
+</dd>
+</dl>
+</div>
+</div>
+<div class="sect2">
+<h3 id="compression"><a class="link" href="#compression">Column Compression</a></h3>
+<div class="paragraph">
+<p>Kudu allows per-column compression using the <code>LZ4</code>, <code>Snappy</code>, or <code>zlib</code>
+compression codecs. By default, columns are stored uncompressed. Consider using
+compression if reducing storage space is more important than raw scan
+performance.</p>
+</div>
+<div class="paragraph">
+<p>Every data set will compress differently, but in general LZ4 is the most
+performant codec, while <code>zlib</code> will compress to the smallest data sizes.
+Bitshuffle-encoded columns are automatically compressed using LZ4, so it is not
+recommended to apply additional compression on top of this encoding.</p>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="primary-keys"><a class="link" href="#primary-keys">Primary Key Design</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Every Kudu table must declare a primary key index comprised of one or more
+columns. Primary key columns must be non-nullable, and may not be a boolean or
+floating-point type. Once set during table creation, the set of columns in the
+primary key may not be altered. Like an RDBMS primary key, the Kudu primary key
+enforces a uniqueness constraint; attempting to insert a row with the same
+primary key values as an existing row will result in a duplicate key error.</p>
+</div>
+<div class="paragraph">
+<p>Unlike an RDBMS, Kudu does not provide an auto-incrementing column feature, so
+the application must always provide the full primary key during insert. Row
+delete and update operations must also specify the full primary key of the row
+to be changed; Kudu does not natively support range deletes or updates. The
+primary key values of a column may not be updated after the row is inserted;
+however, the row may be deleted and re-inserted with the updated value.</p>
+</div>
+<div class="sect2">
+<h3 id="indexing"><a class="link" href="#indexing">Primary Key Index</a></h3>
+<div class="paragraph">
+<p>As with many traditional relational databases, Kudu&#8217;s primary key is a clustered
+index. All rows within a tablet are kept in primary key sorted order. Kudu scans
+which specify equality or range constraints on the primary key will
+automatically skip rows which can not satisfy the predicate. This allows
+individual rows to be efficiently found by specifying equality constraints on
+the primary key columns.</p>
+</div>
+<div class="admonitionblock note">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-note" title="Note"></i>
+</td>
+<td class="content">
+Primary key indexing optimizations apply to scans on individual tablets.
+See the <a href="#partition-pruning">Partition Pruning</a> section for details on how scans can use
+predicates to skip entire tablets.
+</td>
+</tr>
+</table>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="partitioning"><a class="link" href="#partitioning">Partitioning</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>In order to provide scalability, Kudu tables are partitioned into units called
+tablets, and distributed across many tablet servers. A row always belongs to a
+single tablet. The method of assigning rows to tablets is determined by the
+partitioning of the table, which is set during table creation.</p>
+</div>
+<div class="paragraph">
+<p>Choosing a partitioning strategy requires understanding the data model and the
+expected workload of a table. For write-heavy workloads, it is important to
+design the partitioning such that writes are spread across tablets in order to
+avoid overloading a single tablet. For workloads involving many short scans,
+where the overhead of contacting remote servers dominates, performance can be
+improved if all of the data for the scan is located in the same tablet.
+Understanding these fundamental trade-offs is central to designing an effective
+partition schema.</p>
+</div>
+<div id="no_default_partitioning" class="admonitionblock important">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-important" title="Important"></i>
+</td>
+<td class="content">
+<div class="title">No Default Partitioning</div>
+Kudu does not provide a default partitioning strategy when creating tables. It
+is recommended that new tables which are expected to have heavy read and write
+workloads have at least as many tablets as tablet servers.
+</td>
+</tr>
+</table>
+</div>
+<div class="paragraph">
+<p>Kudu provides two types of partitioning: <a href="#range-partitioning">range
+partitioning</a> and <a href="#hash-partitioning">hash partitioning</a>. Tables may also have
+<a href="#multilevel-partitioning">multilevel partitioning</a>, which combines range and hash
+partitioning, or multiple instances of hash partitioning.</p>
+</div>
+<div class="sect2">
+<h3 id="range-partitioning"><a class="link" href="#range-partitioning">Range Partitioning</a></h3>
+<div class="paragraph">
+<p>Range partitioning distributes rows using a totally-ordered range partition key.
+Each partition is assigned a contiguous segment of the range partition keyspace.
+The key must be comprised of a subset of the primary key columns. If the range
+partition columns match the primary key columns, then the range partition key of
+a row will equal its primary key. In range partitioned tables without hash
+partitioning, each range partition will correspond to exactly one tablet.</p>
+</div>
+<div class="paragraph">
+<p>The initial set of range partitions is specified during table creation as a set
+of partition bounds and split rows. For each bound, a range partition will be
+created in the table. Each split will divide a range partition in two.  If no
+partition bounds are specified, then the table will default to a single
+partition covering the entire key space (unbounded below and above). Range
+partitions must always be non-overlapping, and split rows must fall within a
+range partition.</p>
+</div>
+<div class="admonitionblock note">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-note" title="Note"></i>
+</td>
+<td class="content">
+see the <a href="#range-partitioning-example">Range Partitioning Example</a> for further discussion of range
+partitioning.
+</td>
+</tr>
+</table>
+</div>
+<div class="sect3">
+<h4 id="range-partition-management"><a class="link" href="#range-partition-management">Range Partition Management</a></h4>
+<div class="paragraph">
+<p>Kudu allows range partitions to be dynamically added and removed from a table at
+runtime, without affecting the availability of other partitions. Removing a
+partition will delete the tablets belonging to the partition, as well as the
+data contained in them. Subsequent inserts into the dropped partition will fail.
+New partitions can be added, but they must not overlap with any existing range
+partitions. Kudu allows dropping and adding any number of range partitions in a
+single transactional alter table operation.</p>
+</div>
+<div class="paragraph">
+<p>Dynamically adding and dropping range partitions is particularly useful for time
+series use cases. As time goes on, range partitions can be added to cover
+upcoming time ranges. For example, a table storing an event log could add a
+month-wide partition just before the start of each month in order to hold the
+upcoming events. Old range partitions can be dropped in order to efficiently
+remove historical data, as necessary.</p>
+</div>
+</div>
+</div>
+<div class="sect2">
+<h3 id="hash-partitioning"><a class="link" href="#hash-partitioning">Hash Partitioning</a></h3>
+<div class="paragraph">
+<p>Hash partitioning distributes rows by hash value into one of many buckets.  In
+single-level hash partitioned tables, each bucket will correspond to exactly
+one tablet. The number of buckets is set during table creation. Typically the
+primary key columns are used as the columns to hash, but as with range
+partitioning, any subset of the primary key columns can be used.</p>
+</div>
+<div class="paragraph">
+<p>Hash partitioning is an effective strategy when ordered access to the table is
+not needed. Hash partitioning is effective for spreading writes randomly among
+tablets, which helps mitigate hot-spotting and uneven tablet sizes.</p>
+</div>
+<div class="admonitionblock note">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-note" title="Note"></i>
+</td>
+<td class="content">
+see the <a href="#hash-partitioning-example">Hash Partitioning Example</a> for further discussion of hash
+partitioning.
+</td>
+</tr>
+</table>
+</div>
+</div>
+<div class="sect2">
+<h3 id="multilevel-partitioning"><a class="link" href="#multilevel-partitioning">Multilevel Partitioning</a></h3>
+<div class="paragraph">
+<p>Kudu allows a table to combine multiple levels of partitioning on a single
+table. Zero or more hash partition levels can be combined with an optional range
+partition level. The only additional constraint on multilevel partitioning
+beyond the constraints of the individual partition types, is that multiple levels
+of hash partitions must not hash the same columns.</p>
+</div>
+<div class="paragraph">
+<p>When used correctly, multilevel partitioning can retain the benefits of the
+individual partitioning types, while reducing the downsides of each. The total
+number of tablets in a multilevel partitioned table is the product of the
+number of partitions in each level.</p>
+</div>
+<div class="admonitionblock note">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-note" title="Note"></i>
+</td>
+<td class="content">
+see the <a href="#hash-range-partitioning-example">Hash and Range Partitioning Example</a> and the
+<a href="#hash-hash-partitioning-example">Hash and Hash Partitioning Example</a> for further discussion of multilevel
+partitioning.
+</td>
+</tr>
+</table>
+</div>
+</div>
+<div class="sect2">
+<h3 id="partition-pruning"><a class="link" href="#partition-pruning">Partition Pruning</a></h3>
+<div class="paragraph">
+<p>Kudu scans will automatically skip scanning entire partitions when it can be
+determined that the partition can be entirely filtered by the scan predicates.
+To prune hash partitions, the scan must include equality predicates on every
+hashed column. To prune range partitions, the scan must include equality or
+range predicates on the range partitioned columns. Scans on multilevel
+partitioned tables can take advantage of partition pruning on any of the levels
+independently.</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="partitioning-examples"><a class="link" href="#partitioning-examples">Partitioning Examples</a></h3>
+<div class="paragraph">
+<p>To illustrate the factors and trade-offs associated with designing a partitioning
+strategy for a table, we will walk through some different partitioning
+scenarios. Consider the following table schema for storing machine metrics data
+(using SQL syntax and date-formatted timestamps for clarity):</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-sql" data-lang="sql">CREATE TABLE metrics (
+    host STRING NOT NULL,
+    metric STRING NOT NULL,
+    time INT64 NOT NULL,
+    value DOUBLE NOT NULL,
+    PRIMARY KEY (host, metric, time),
+);</code></pre>
+</div>
+</div>
+<div class="sect3">
+<h4 id="range-partitioning-example"><a class="link" href="#range-partitioning-example">Range Partitioning Example</a></h4>
+<div class="paragraph">
+<p>A natural way to partition the <code>metrics</code> table is to range partition on the
+<code>time</code> column. Let&#8217;s assume that we want to have a partition per year, and the
+table will hold data for 2014, 2015, and 2016. There are at least two ways that
+the table could be partitioned: with unbounded range partitions, or with bounded
+range partitions.</p>
+</div>
+<div class="imageblock">
+<div class="content">
+<img src="./images/range-partitioning-example.png" alt="Range Partitioning by `time`">
+</div>
+</div>
+<div class="paragraph">
+<p>The image above shows the two ways the <code>metrics</code> table can be range partitioned
+on the <code>time</code> column. In the first example (in blue), the default range
+partition bounds are used, with splits at <code>2015-01-01</code> and <code>2016-01-01</code>. This
+results in three tablets: the first containing values before 2015, the second
+containing values in the year 2015, and the third containing values after 2016.
+The second example (in green) uses a range partition bound of <code>[(2014-01-01),
+(2017-01-01)]</code>, and splits at <code>2015-01-01</code> and <code>2016-01-01</code>. The second example
+could have equivalently been expressed through range partition bounds of
+<code>[(2014-01-01), (2015-01-01)]</code>, <code>[(2015-01-01), (2016-01-01)]</code>, and
+<code>[(2016-01-01), (2017-01-01)]</code>, with no splits. The first example has unbounded
+lower and upper range partitions, while the second example includes bounds.</p>
+</div>
+<div class="paragraph">
+<p>Each of the range partition examples above allows time-bounded scans to prune
+partitions falling outside of the scan&#8217;s time bound. This can greatly improve
+performance when there are many partitions. When writing, both examples suffer
+from potential hot-spotting issues. Because metrics tend to always be written
+at the current time, most writes will go into a single range partition.</p>
+</div>
+<div class="paragraph">
+<p>The second example is more flexible than the first, because it allows range
+partitions for future years to be added to the table. In the first example, all
+writes for times after <code>2016-01-01</code> will fall into the last partition, so the
+partition may eventually become too large for a single tablet server to handle.</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="hash-partitioning-example"><a class="link" href="#hash-partitioning-example">Hash Partitioning Example</a></h4>
+<div class="paragraph">
+<p>Another way of partitioning the <code>metrics</code> table is to hash partition on the
+<code>host</code> and <code>metric</code> columns.</p>
+</div>
+<div class="imageblock">
+<div class="content">
+<img src="./images/hash-partitioning-example.png" alt="Hash Partitioning by `host` and `metric`">
+</div>
+</div>
+<div class="paragraph">
+<p>In the example above, the <code>metrics</code> table is hash partitioned on the <code>host</code> and
+<code>metric</code> columns into four buckets. Unlike the range partitioning example
+earlier, this partitioning strategy will spread writes over all tablets in the
+table evenly, which helps overall write throughput. Scans over a specific host
+and metric can take advantage of partition pruning by specifying equality
+predicates, reducing the number of scanned tablets to one. One issue to be
+careful of with a pure hash partitioning strategy, is that tablets could grow
+indefinitely as more and more data is inserted into the table. Eventually
+tablets will become too big for an individual tablet server to hold.</p>
+</div>
+<div class="admonitionblock note">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-note" title="Note"></i>
+</td>
+<td class="content">
+Although these examples number the tablets, in reality tablets are only
+given UUID identifiers. There is no natural ordering among the tablets in a hash
+partitioned table.
+</td>
+</tr>
+</table>
+</div>
+</div>
+<div class="sect3">
+<h4 id="hash-range-partitioning-example"><a class="link" href="#hash-range-partitioning-example">Hash and Range Partitioning Example</a></h4>
+<div class="paragraph">
+<p>The previous examples showed how the <code>metrics</code> table could be range partitioned
+on the <code>time</code> column, or hash partitioned on the <code>host</code> and <code>metric</code> columns.
+These strategies have associated strength and weaknesses:</p>
+</div>
+<table class="tableblock frame-all grid-all spread">
+<caption class="title">Table 2. Partitioning Strategies</caption>
+<colgroup>
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+<col style="width: 25%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Strategy</th>
+<th class="tableblock halign-left valign-top">Writes</th>
+<th class="tableblock halign-left valign-top">Reads</th>
+<th class="tableblock halign-left valign-top">Tablet Growth</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>range(time)</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">✗ - all writes go to latest partition</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">✓ - time-bounded scans can be pruned</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">✓ - new tablets can be added for future time periods</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>hash(host, metric)</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">✓ - writes are spread evenly among tablets</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">✓ - scans on specific hosts and metrics can be pruned</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">✗ - tablets could grow too large</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>Hash partitioning is good at maximizing write throughput, while range
+partitioning avoids issues of unbounded tablet growth. Both strategies can take
+advantage of partition pruning to optimize scans in different scenarios. Using
+multilevel partitioning, it is possible to combine the two strategies in order
+to gain the benefits of both, while minimizing the drawbacks of each.</p>
+</div>
+<div class="imageblock">
+<div class="content">
+<img src="./images/hash-range-partitioning-example.png" alt="Hash and Range Partitioning">
+</div>
+</div>
+<div class="paragraph">
+<p>In the example above, range partitioning on the <code>time</code> column is combined with
+hash partitioning on the <code>host</code> and <code>metric</code> columns. This strategy can be
+thought of as having two dimensions of partitioning: one for the hash level and
+one for the range level. Writes into this table at the current time will be
+parallelized up to the number of hash buckets, in this case 4. Reads can take
+advantage of time bound <strong>and</strong> specific host and metric predicates to prune
+partitions. New range partitions can be added, which results in creating 4
+additional tablets (as if a new column were added to the diagram).</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="hash-hash-partitioning-example"><a class="link" href="#hash-hash-partitioning-example">Hash and Hash Partitioning Example</a></h4>
+<div class="paragraph">
+<p>Kudu can support any number of hash partitioning levels in the same table, as
+long as the levels have no hashed columns in common.</p>
+</div>
+<div class="imageblock">
+<div class="content">
+<img src="./images/hash-hash-partitioning-example.png" alt="Hash and Hash Partitioning">
+</div>
+</div>
+<div class="paragraph">
+<p>In the example above, the table is hash partitioned on <code>host</code> into 4 buckets,
+and hash partitioned on <code>metric</code> into 3 buckets, resulting in 12 tablets.
+Although writes will tend to be spread among all tablets when using this
+strategy, it is slightly more prone to hot-spotting than when hash partitioning
+over multiple independent columns, since all values for an individual host or
+metric will always belong to a single tablet. Scans can take advantage of
+equality predicates on the <code>host</code> and <code>metric</code> columns separately to prune
+partitions.</p>
+</div>
+<div class="paragraph">
+<p>Multiple levels of hash partitioning can also be combined with range
+partitioning, which logically adds another dimension of partitioning.</p>
+</div>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="alter-schema"><a class="link" href="#alter-schema">Schema Alterations</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>You can alter a table&#8217;s schema in the following ways:</p>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p>Rename the table</p>
+</li>
+<li>
+<p>Rename primary key columns</p>
+</li>
+<li>
+<p>Rename, add, or drop non-primary key columns</p>
+</li>
+<li>
+<p>Add and drop range partitions</p>
+</li>
+</ul>
+</div>
+<div class="paragraph">
+<p>Multiple alteration steps can be combined in a single transactional operation.</p>
+</div>
+<div class="admonitionblock important">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-important" title="Important"></i>
+</td>
+<td class="content">
+<div class="title">Renaming Primary Key Columns</div>
+<a href="https://issues.apache.org/jira/browse/KUDU-1626">KUDU-1626</a>: Kudu does not yet
+support renaming primary key columns.
+</td>
+</tr>
+</table>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="known-limitations"><a class="link" href="#known-limitations">Known Limitations</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Kudu currently has some known limitations that may factor into schema design.</p>
+</div>
+<div class="dlist">
+<dl>
+<dt class="hdlist1">Number of Columns</dt>
+<dd>
+<p>By default, Kudu will not permit the creation of tables with
+more than 300 columns. We recommend schema designs that use fewer columns for best
+performance.</p>
+</dd>
+<dt class="hdlist1">Size of Cells</dt>
+<dd>
+<p>No individual cell may be larger than 64KB before encoding or
+compression. The cells making up a composite key are limited to a total of 16KB
+after the internal composite-key encoding done by Kudu. Inserting rows not
+conforming to these limitations will result in errors being returned to the
+client.</p>
+</dd>
+<dt class="hdlist1">Size of Rows</dt>
+<dd>
+<p>Although individual cells may be up to 64KB, and Kudu supports up to
+300 columns, it is recommended that no single row be larger than a few hundred KB.</p>
+</dd>
+<dt class="hdlist1">Valid Identifiers</dt>
+<dd>
+<p>Identifiers such as table and column names must be valid UTF-8
+sequences and no longer than 256 bytes.</p>
+</dd>
+<dt class="hdlist1">Immutable Primary Keys</dt>
+<dd>
+<p>Kudu does not allow you to update the primary key
+columns of a row.</p>
+</dd>
+<dt class="hdlist1">Non-alterable Primary Key</dt>
+<dd>
+<p>Kudu does not allow you to alter the primary key
+columns after table creation.</p>
+</dd>
+<dt class="hdlist1">Non-alterable Partitioning</dt>
+<dd>
+<p>Kudu does not allow you to change how a table is
+partitioned after creation, with the exception of adding or dropping range
+partitions.</p>
+</dd>
+<dt class="hdlist1">Non-alterable Column Types</dt>
+<dd>
+<p>Kudu does not allow the type of a column to be
+altered.</p>
+</dd>
+<dt class="hdlist1">Partition Splitting</dt>
+<dd>
+<p>Partitions cannot be split or merged after table creation.</p>
+</dd>
+</dl>
+</div>
+</div>
+</div>
+    </div>
+    <div class="col-md-3">
+
+  <div id="toc" data-spy="affix" data-offset-top="70">
+  <ul>
+
+      <li>
+
+          <a href="index.html">Introducing Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="release_notes.html">Kudu Release Notes</a> 
+      </li> 
+      <li>
+
+          <a href="quickstart.html">Getting Started with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="installation.html">Installation Guide</a> 
+      </li> 
+      <li>
+
+          <a href="configuration.html">Configuring Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="kudu_impala_integration.html">Using Impala with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="administration.html">Administering Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="troubleshooting.html">Troubleshooting Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="developing.html">Developing Applications with Kudu</a> 
+      </li> 
+      <li>
+<span class="active-toc">Kudu Schema Design</span>
+            <ul class="sectlevel1">
+<li><a href="#_the_perfect_schema">The Perfect Schema</a></li>
+<li><a href="#column-design">Column Design</a>
+<ul class="sectlevel2">
+<li><a href="#encoding">Column Encoding</a></li>
+<li><a href="#compression">Column Compression</a></li>
+</ul>
+</li>
+<li><a href="#primary-keys">Primary Key Design</a>
+<ul class="sectlevel2">
+<li><a href="#indexing">Primary Key Index</a></li>
+</ul>
+</li>
+<li><a href="#partitioning">Partitioning</a>
+<ul class="sectlevel2">
+<li><a href="#range-partitioning">Range Partitioning</a>
+<ul class="sectlevel3">
+<li><a href="#range-partition-management">Range Partition Management</a></li>
+</ul>
+</li>
+<li><a href="#hash-partitioning">Hash Partitioning</a></li>
+<li><a href="#multilevel-partitioning">Multilevel Partitioning</a></li>
+<li><a href="#partition-pruning">Partition Pruning</a></li>
+<li><a href="#partitioning-examples">Partitioning Examples</a>
+<ul class="sectlevel3">
+<li><a href="#range-partitioning-example">Range Partitioning Example</a></li>
+<li><a href="#hash-partitioning-example">Hash Partitioning Example</a></li>
+<li><a href="#hash-range-partitioning-example">Hash and Range Partitioning Example</a></li>
+<li><a href="#hash-hash-partitioning-example">Hash and Hash Partitioning Example</a></li>
+</ul>
+</li>
+</ul>
+</li>
+<li><a href="#alter-schema">Schema Alterations</a></li>
+<li><a href="#known-limitations">Known Limitations</a></li>
+</ul> 
+      </li> 
+      <li>
+
+          <a href="security.html">Kudu Security</a> 
+      </li> 
+      <li>
+
+          <a href="transaction_semantics.html">Kudu Transaction Semantics</a> 
+      </li> 
+      <li>
+
+          <a href="background_tasks.html">Background Maintenance Tasks</a> 
+      </li> 
+      <li>
+
+          <a href="configuration_reference.html">Kudu Configuration Reference</a> 
+      </li> 
+      <li>
+
+          <a href="command_line_tools_reference.html">Kudu Command Line Tools Reference</a> 
+      </li> 
+      <li>
+
+          <a href="known_issues.html">Known Issues and Limitations</a> 
+      </li> 
+      <li>
+
+          <a href="contributing.html">Contributing to Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="export_control.html">Export Control Notice</a> 
+      </li> 
+  </ul>
+  </div>
+    </div>
+  </div>
+</div>
+      <footer class="footer">
+        <p class="small">
+        Copyright &copy; 2016 The Apache Software Foundation.  Last updated 2017-05-31 14:43:27 PDT 
+        </p>
+      </footer>
+    </div>
+    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
+    <script>
+      // Try to detect touch-screen devices. Note: Many laptops have touch screens.
+      $(document).ready(function() {
+        if ("ontouchstart" in document.documentElement) {
+          $(document.documentElement).addClass("touch");
+        } else {
+          $(document.documentElement).addClass("no-touch");
+        }
+      });
+    </script>
+    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"
+            integrity="sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS"
+            crossorigin="anonymous"></script>
+    <script>
+      (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+      (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+      m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+      })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+
+      ga('create', 'UA-68448017-1', 'auto');
+      ga('send', 'pageview');
+    </script>
+    <script src="https://cdnjs.cloudflare.com/ajax/libs/anchor-js/3.1.0/anchor.js"></script>
+    <script>
+      anchors.options = {
+        placement: 'right',
+        visible: 'touch',
+      };
+      anchors.add();
+    </script>
+  </body>
+</html>
+
diff --git a/releases/1.4.0/docs/security.html b/releases/1.4.0/docs/security.html
new file mode 100644
index 0000000..64602ff
--- /dev/null
+++ b/releases/1.4.0/docs/security.html
@@ -0,0 +1,600 @@
+<!DOCTYPE html>
+<html lang="en">
+  <head>
+    <meta charset="utf-8" />
+    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
+    <meta name="viewport" content="width=device-width, initial-scale=1" />
+    <!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
+    <meta name="description" content="A new open source Apache Hadoop ecosystem project, Apache Kudu completes Hadoop's storage layer to enable fast analytics on fast data" />
+    <meta name="author" content="Cloudera" />
+    <title>Apache Kudu - Apache Kudu Security</title>
+    <!-- Bootstrap core CSS -->
+    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css"
+          integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7"
+          crossorigin="anonymous">
+
+    <!-- Custom styles for this template -->
+    <link href="/css/kudu.css" rel="stylesheet"/>
+    <link href="/css/asciidoc.css" rel="stylesheet"/>
+    <link rel="shortcut icon" href="/img/logo-favicon.ico" />
+    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.6.1/css/font-awesome.min.css" />
+
+    
+
+    <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+        <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+        <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+        <![endif]-->
+  </head>
+  <body>
+    <div class="kudu-site container-fluid">
+      <!-- Static navbar -->
+        <nav class="navbar navbar-default">
+          <div class="container-fluid">
+            <div class="navbar-header">
+              <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
+                <span class="sr-only">Toggle navigation</span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+              </button>
+              
+              <a class="logo" href="/"><img
+                src="//d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_80px.png"
+                srcset="//d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_80px.png 1x, //d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_160px.png 2x"
+                alt="Apache Kudu"/></a>
+              
+            </div>
+            <div id="navbar" class="collapse navbar-collapse">
+              <ul class="nav navbar-nav navbar-right">
+                <li >
+                  <a href="/">Home</a>
+                </li>
+                <li >
+                  <a href="/overview.html">Overview</a>
+                </li>
+                <li class="active">
+                  <a href="/docs/">Documentation</a>
+                </li>
+                <li >
+                  <a href="/releases/">Download</a>
+                </li>
+                <li >
+                  <a href="/blog/">Blog</a>
+                </li>
+                <!-- NOTE: this dropdown menu does not appear on Mobile, so don't add anything here
+                     that doesn't also appear elsewhere on the site. -->
+                <li class="dropdown">
+                  <a href="/community.html" role="button" aria-haspopup="true" aria-expanded="false">Community <span class="caret"></span></a>
+                  <ul class="dropdown-menu">
+                    <li class="dropdown-header">GET IN TOUCH</li>
+                    <li><a class="icon email" href="/community.html">Mailing Lists</a></li>
+                    <li><a class="icon slack" href="https://getkudu-slack.herokuapp.com/">Slack Channel</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li><a href="/community.html#meetups-user-groups-and-conference-presentations">Events and Meetups</a></li>
+                    <li><a href="/committers.html">Project Committers</a></li>
+                    <!--<li><a href="/roadmap.html">Roadmap</a></li>-->
+                    <li><a href="/community.html#contributions">How to Contribute</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li class="dropdown-header">DEVELOPER RESOURCES</li>
+                    <li><a class="icon github" href="https://github.com/apache/incubator-kudu">GitHub</a></li>
+                    <li><a class="icon gerrit" href="http://gerrit.cloudera.org:8080/#/q/status:open+project:kudu">Gerrit Code Review</a></li>
+                    <li><a class="icon jira" href="https://issues.apache.org/jira/browse/KUDU">JIRA Issue Tracker</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li class="dropdown-header">SOCIAL MEDIA</li>
+                    <li><a class="icon twitter" href="https://twitter.com/ApacheKudu">Twitter</a></li>
+                  </ul>
+                </li>
+                <li >
+                  <a href="/faq.html">FAQ</a>
+                </li>
+              </ul><!-- /.nav -->
+            </div><!-- /#navbar -->
+          </div><!-- /.container-fluid -->
+        </nav>
+
+<!--
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
+
+
+<div class="container">
+  <div class="row">
+    <div class="col-md-9">
+
+<h1>Apache Kudu Security</h1>
+      <div id="preamble">
+<div class="sectionbody">
+<div class="paragraph">
+<p>Kudu includes security features which allow Kudu clusters to be hardened against
+access from unauthorized users. This guide describes the security features
+provided by Kudu. <a href="#configuration">Configuring a Secure Kudu Cluster</a> lists essential configuration options when
+deploying a secure Kudu cluster. <a href="#known-limitations">Known Limitations</a> contains a list of
+known deficiencies in Kudu&#8217;s security capabilities.</p>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_authentication"><a class="link" href="#_authentication">Authentication</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Kudu can be configured to enforce secure authentication among servers, and
+between clients and servers. Authentication prevents untrusted actors from
+gaining access to Kudu, and securely identifies the connecting user or services
+for authorization checks. Authentication in Kudu is designed to interoperate
+with other secure Hadoop components by utilizing Kerberos.</p>
+</div>
+<div class="paragraph">
+<p>Authentication can be configured on Kudu servers using the
+<code>--rpc-authentication</code> flag, which can be set to <code>required</code>, <code>optional</code>, or
+<code>disabled</code>. By default, the flag is set to <code>optional</code>. When <code>required</code>, Kudu
+will reject connections from clients and servers who lack authentication
+credentials. When <code>optional</code>, Kudu will attempt to use strong authentication.
+When <code>disabled</code> or strong authentication fails for 'optional', by default Kudu
+will only allow unauthenticated connections from trusted subnets, which are
+private networks (127.0.0.0/8,10.0.0.0/8,172.16.0.0/12,192.168.0.0/16,
+169.254.0.0/16) and local subnets of all local network interfaces. Unauthenticated
+connections from publicly routable IPs will be rejected.</p>
+</div>
+<div class="paragraph">
+<p>The trusted subnets can be configured using the <code>--trusted_subnets</code> flag,
+which can be set to IP blocks in CIDR notation separated by comma. Set it to
+'0.0.0.0/0' to allow unauthenticated connections from all remote IP addresses.
+However, if network access is not otherwise restricted by a firewall,
+malicious users may be able to gain unauthorized access. This can be mitigated
+if authentication is configured to be required.</p>
+</div>
+<div class="admonitionblock warning">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-warning" title="Warning"></i>
+</td>
+<td class="content">
+When the <code>--rpc-authentication</code> flag is set to <code>optional</code>,
+the cluster does not prevent access from unauthenticated users. To secure a
+cluster, use <code>--rpc-authentication=required</code>.
+</td>
+</tr>
+</table>
+</div>
+<div class="sect2">
+<h3 id="_internal_pki"><a class="link" href="#_internal_pki">Internal PKI</a></h3>
+<div class="paragraph">
+<p>Kudu uses an internal PKI system to issue X.509 certificates to servers in
+the cluster. Connections between peers who have both obtained certificates will
+use TLS for authentication, which doesn&#8217;t require contacting the Kerberos KDC.
+These certificates are <em>only</em> used for internal communication among Kudu
+servers, and between Kudu clients and servers. The certificates are never
+presented in a public facing protocol.</p>
+</div>
+<div class="paragraph">
+<p>By using internally-issued certificates, Kudu offers strong authentication which
+scales to huge clusters, and allows TLS encryption to be used without requiring
+you to manually deploy certificates on every node.</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_authentication_tokens"><a class="link" href="#_authentication_tokens">Authentication Tokens</a></h3>
+<div class="paragraph">
+<p>After authenticating to a secure cluster, the Kudu client will automatically
+request an authentication token from the Kudu master. An authentication token
+encapsulates the identity of the authenticated user and carries the master&#8217;s
+RSA signature so that its authenticity can be verified.</p>
+</div>
+<div class="paragraph">
+<p>This token will be used to authenticate subsequent connections. By default,
+authentication tokens are only valid for seven days, so that even if a token
+were compromised, it could not be used indefinitely. For the most part,
+authentication tokens should be completely transparent to users. By using
+authentication tokens, Kudu takes advantage of strong authentication without
+paying the scalability cost of communicating with a central authority for every
+connection.</p>
+</div>
+<div class="paragraph">
+<p>When used with distributed compute frameworks such as Spark, authentication
+tokens can simplify configuration and improve security. For example, the Kudu
+Spark connector will automatically retrieve an authentication token during the
+planning stage, and distribute the token to tasks. This allows Spark to work
+against a secured Kudu cluster where only the planner node has Kerberos
+credentials.</p>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_scalability"><a class="link" href="#_scalability">Scalability</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Kudu authentication is designed to scale to thousands of nodes, which requires
+avoiding unnecessary coordination with a central authentication authority (such
+as the Kerberos KDC). Instead, Kudu servers and clients will use Kerberos to
+establish initial trust with the Kudu master, and then use alternate credentials
+for subsequent connections. In particular, the master will issue internal
+X.509 certificates to servers, and temporary authentication tokens to clients.</p>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_encryption"><a class="link" href="#_encryption">Encryption</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Kudu allows all communications among servers and between clients and servers
+to be encrypted with TLS.</p>
+</div>
+<div class="paragraph">
+<p>Encryption can be configured on Kudu servers using the <code>--rpc-encryption</code> flag,
+which can be set to <code>required</code>, <code>optional</code>, or <code>disabled</code>. By default, the flag
+is set to <code>optional</code>. When <code>required</code>, Kudu will reject unencrypted connections.
+When <code>optional</code>, Kudu will attempt to use encryption. Same as authentication,
+when <code>disabled</code> or encryption fails for <code>optional</code>, Kudu will only allow
+unencrypted connections from trusted subnets and reject any unencrypted connections
+from publicly routable IPs. To secure a cluster, use <code>--rpc-encryption=required</code>.</p>
+</div>
+<div class="admonitionblock note">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-note" title="Note"></i>
+</td>
+<td class="content">
+Kudu will automatically turn off encryption on local loopback connections,
+since traffic from these connections is never exposed externally. This allows
+locality-aware compute frameworks like Spark and Impala to avoid encryption
+overhead, while still ensuring data confidentiality.
+</td>
+</tr>
+</table>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_coarse_grained_authorization"><a class="link" href="#_coarse_grained_authorization">Coarse-Grained Authorization</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Kudu supports coarse-grained authorization of client requests based on the
+authenticated client Kerberos principal (i.e. user or service). The two levels
+of access which can be configured are:</p>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p><strong>Superuser</strong> - principals authorized as a superuser are able to perform
+certain administrative functionality such as using the <code>kudu</code> command line tool
+to diagnose or repair cluster issues.</p>
+</li>
+<li>
+<p><strong>User</strong> - principals authorized as a user are able to access and modify all
+data in the Kudu cluster. This includes the ability to create, drop, and alter
+tables as well as read, insert, update, and delete data.</p>
+</li>
+</ul>
+</div>
+<div class="admonitionblock note">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-note" title="Note"></i>
+</td>
+<td class="content">
+Internally, Kudu has a third access level for the daemons themselves.
+This ensures that users cannot connect to the cluster and pose as tablet
+servers.
+</td>
+</tr>
+</table>
+</div>
+<div class="paragraph">
+<p>Access levels are granted using whitelist-style Access Control Lists (ACLs), one
+for each of the two levels. Each access control list either specifies a
+comma-separated list of users, or may be set to <code>*</code> to indicate that all
+authenticated users are able to gain access at the specified level. See
+<a href="#configuration">Configuring a Secure Kudu Cluster</a> below for examples.</p>
+</div>
+<div class="admonitionblock note">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-note" title="Note"></i>
+</td>
+<td class="content">
+The default value for the User ACL is <code>*</code>, which allows all users access
+to the cluster. However, if authentication is enabled, this still restricts access
+to only those users who are able to successfully authenticate via Kerberos.
+Unauthenticated users on the same network as the Kudu servers will be unable
+to access the cluster.
+</td>
+</tr>
+</table>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="web-ui"><a class="link" href="#web-ui">Web UI Encryption</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The Kudu web UI can be configured to use secure HTTPS encryption by providing
+each server with TLS certificates. See <a href="#configuration">Configuring a Secure Kudu Cluster</a> for more information on
+web UI HTTPS configuration.</p>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_web_ui_redaction"><a class="link" href="#_web_ui_redaction">Web UI Redaction</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>To prevent sensitive data from being exposed in the web UI, all row data is
+redacted. Table metadata, such as table names, column names, and partitioning
+information is not redacted. The web UI can be completely disabled by setting
+the <code>--webserver-enabled=false</code> flag on Kudu servers.</p>
+</div>
+<div class="admonitionblock warning">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-warning" title="Warning"></i>
+</td>
+<td class="content">
+Disabling the web UI will also disable REST endpoints such as
+<code>/metrics</code>. Monitoring systems rely on these endpoints to gather metrics data.
+</td>
+</tr>
+</table>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="logs"><a class="link" href="#logs">Log Security</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>To prevent sensitive data from being included in Kudu server logs, all row data
+is redacted by default. This feature can be turned off configuring the
+<code>--redact</code> flag.</p>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="configuration"><a class="link" href="#configuration">Configuring a Secure Kudu Cluster</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The following configuration parameters should be set on all servers (master and
+tablet server) in order to ensure that a Kudu cluster is secure:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code># Connection Security
+#--------------------
+--rpc-authentication=required
+--rpc-encryption=required
+--keytab-file=&lt;path-to-kerberos-keytab&gt;
+
+# Web UI Security
+#--------------------
+--webserver-certificate-file=&lt;path-to-cert-pem&gt;
+--webserver-private-key-file=&lt;path-to-key-pem&gt;
+# optional
+--webserver-private-key-password-cmd=&lt;password-cmd&gt;
+
+# If you prefer to disable the web UI entirely:
+--webserver-enabled=false
+
+# Coarse-grained authorization
+#--------------------------------
+
+# This example ACL setup allows the 'impala' user as well as the
+# 'nightly_etl_service_account' principal access to all data in the
+# Kudu cluster. The 'hadoopadmin' user is allowed to use administrative
+# tooling. Note that, by granting access to 'impala', other users
+# may access data in Kudu via the Impala service subject to its own
+# authorization rules.
+--user-acl=impala,nightly_etl_service_account
+--superuser-acl=hadoopadmin</code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>Further information about these flags can be found in the configuration
+flag reference.</p>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="known-limitations"><a class="link" href="#known-limitations">Known Limitations</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Kudu has a few known security limitations:</p>
+</div>
+<div class="dlist">
+<dl>
+<dt class="hdlist1">Long-lived Tokens</dt>
+<dd>
+<p>The Java Kudu client does not automatically request fresh
+authn tokens after initial token expiration, so long-lived Java clients in
+secure clusters are not supported. However, the C Kudu client does
+automatically request fresh authn tokens, so long-lived C clients
+(i.e. beyond authn token lifetime) in secure clusters are supported.</p>
+</dd>
+<dt class="hdlist1">Custom Kerberos Principal</dt>
+<dd>
+<p>Kudu does not support setting a custom service
+principal for Kudu processes. The principal must be 'kudu'.</p>
+</dd>
+<dt class="hdlist1">External PKI</dt>
+<dd>
+<p>Kudu does not support externally-issued certificates for internal
+wire encryption (server to server and client to server).</p>
+</dd>
+<dt class="hdlist1">Fine-grained Authorization</dt>
+<dd>
+<p>Kudu does not have the ability to restrict access
+based on operation type or target (table, column, etc). ACLs currently do not
+support authorization based on membership in a group.</p>
+</dd>
+<dt class="hdlist1">On-disk Encryption</dt>
+<dd>
+<p>Kudu does not have built-in on-disk encryption. However,
+Kudu can be used with whole-disk encryption tools such as dm-crypt.</p>
+</dd>
+<dt class="hdlist1">Web UI Authentication</dt>
+<dd>
+<p>The Kudu web UI lacks Kerberos-based authentication
+(SPNEGO), so access cannot be restricted based on Kerberos principals.</p>
+</dd>
+<dt class="hdlist1">Flume Integration</dt>
+<dd>
+<p>Flume integration is not supported with secure Kudu clusters
+which require authentication or encryption.</p>
+</dd>
+</dl>
+</div>
+</div>
+</div>
+    </div>
+    <div class="col-md-3">
+
+  <div id="toc" data-spy="affix" data-offset-top="70">
+  <ul>
+
+      <li>
+
+          <a href="index.html">Introducing Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="release_notes.html">Kudu Release Notes</a> 
+      </li> 
+      <li>
+
+          <a href="quickstart.html">Getting Started with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="installation.html">Installation Guide</a> 
+      </li> 
+      <li>
+
+          <a href="configuration.html">Configuring Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="kudu_impala_integration.html">Using Impala with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="administration.html">Administering Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="troubleshooting.html">Troubleshooting Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="developing.html">Developing Applications with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="schema_design.html">Kudu Schema Design</a> 
+      </li> 
+      <li>
+<span class="active-toc">Kudu Security</span>
+            <ul class="sectlevel1">
+<li><a href="#_authentication">Authentication</a>
+<ul class="sectlevel2">
+<li><a href="#_internal_pki">Internal PKI</a></li>
+<li><a href="#_authentication_tokens">Authentication Tokens</a></li>
+</ul>
+</li>
+<li><a href="#_scalability">Scalability</a></li>
+<li><a href="#_encryption">Encryption</a></li>
+<li><a href="#_coarse_grained_authorization">Coarse-Grained Authorization</a></li>
+<li><a href="#web-ui">Web UI Encryption</a></li>
+<li><a href="#_web_ui_redaction">Web UI Redaction</a></li>
+<li><a href="#logs">Log Security</a></li>
+<li><a href="#configuration">Configuring a Secure Kudu Cluster</a></li>
+<li><a href="#known-limitations">Known Limitations</a></li>
+</ul> 
+      </li> 
+      <li>
+
+          <a href="transaction_semantics.html">Kudu Transaction Semantics</a> 
+      </li> 
+      <li>
+
+          <a href="background_tasks.html">Background Maintenance Tasks</a> 
+      </li> 
+      <li>
+
+          <a href="configuration_reference.html">Kudu Configuration Reference</a> 
+      </li> 
+      <li>
+
+          <a href="command_line_tools_reference.html">Kudu Command Line Tools Reference</a> 
+      </li> 
+      <li>
+
+          <a href="known_issues.html">Known Issues and Limitations</a> 
+      </li> 
+      <li>
+
+          <a href="contributing.html">Contributing to Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="export_control.html">Export Control Notice</a> 
+      </li> 
+  </ul>
+  </div>
+    </div>
+  </div>
+</div>
+      <footer class="footer">
+        <p class="small">
+        Copyright &copy; 2016 The Apache Software Foundation.  Last updated 2017-05-31 14:43:27 PDT 
+        </p>
+      </footer>
+    </div>
+    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
+    <script>
+      // Try to detect touch-screen devices. Note: Many laptops have touch screens.
+      $(document).ready(function() {
+        if ("ontouchstart" in document.documentElement) {
+          $(document.documentElement).addClass("touch");
+        } else {
+          $(document.documentElement).addClass("no-touch");
+        }
+      });
+    </script>
+    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"
+            integrity="sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS"
+            crossorigin="anonymous"></script>
+    <script>
+      (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+      (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+      m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+      })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+
+      ga('create', 'UA-68448017-1', 'auto');
+      ga('send', 'pageview');
+    </script>
+    <script src="https://cdnjs.cloudflare.com/ajax/libs/anchor-js/3.1.0/anchor.js"></script>
+    <script>
+      anchors.options = {
+        placement: 'right',
+        visible: 'touch',
+      };
+      anchors.add();
+    </script>
+  </body>
+</html>
+
diff --git a/releases/1.4.0/docs/transaction_semantics.html b/releases/1.4.0/docs/transaction_semantics.html
new file mode 100644
index 0000000..70112e8
--- /dev/null
+++ b/releases/1.4.0/docs/transaction_semantics.html
@@ -0,0 +1,665 @@
+<!DOCTYPE html>
+<html lang="en">
+  <head>
+    <meta charset="utf-8" />
+    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
+    <meta name="viewport" content="width=device-width, initial-scale=1" />
+    <!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
+    <meta name="description" content="A new open source Apache Hadoop ecosystem project, Apache Kudu completes Hadoop's storage layer to enable fast analytics on fast data" />
+    <meta name="author" content="Cloudera" />
+    <title>Apache Kudu - Transaction Semantics in Apache Kudu</title>
+    <!-- Bootstrap core CSS -->
+    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css"
+          integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7"
+          crossorigin="anonymous">
+
+    <!-- Custom styles for this template -->
+    <link href="/css/kudu.css" rel="stylesheet"/>
+    <link href="/css/asciidoc.css" rel="stylesheet"/>
+    <link rel="shortcut icon" href="/img/logo-favicon.ico" />
+    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.6.1/css/font-awesome.min.css" />
+
+    
+
+    <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+        <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+        <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+        <![endif]-->
+  </head>
+  <body>
+    <div class="kudu-site container-fluid">
+      <!-- Static navbar -->
+        <nav class="navbar navbar-default">
+          <div class="container-fluid">
+            <div class="navbar-header">
+              <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
+                <span class="sr-only">Toggle navigation</span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+              </button>
+              
+              <a class="logo" href="/"><img
+                src="//d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_80px.png"
+                srcset="//d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_80px.png 1x, //d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_160px.png 2x"
+                alt="Apache Kudu"/></a>
+              
+            </div>
+            <div id="navbar" class="collapse navbar-collapse">
+              <ul class="nav navbar-nav navbar-right">
+                <li >
+                  <a href="/">Home</a>
+                </li>
+                <li >
+                  <a href="/overview.html">Overview</a>
+                </li>
+                <li class="active">
+                  <a href="/docs/">Documentation</a>
+                </li>
+                <li >
+                  <a href="/releases/">Download</a>
+                </li>
+                <li >
+                  <a href="/blog/">Blog</a>
+                </li>
+                <!-- NOTE: this dropdown menu does not appear on Mobile, so don't add anything here
+                     that doesn't also appear elsewhere on the site. -->
+                <li class="dropdown">
+                  <a href="/community.html" role="button" aria-haspopup="true" aria-expanded="false">Community <span class="caret"></span></a>
+                  <ul class="dropdown-menu">
+                    <li class="dropdown-header">GET IN TOUCH</li>
+                    <li><a class="icon email" href="/community.html">Mailing Lists</a></li>
+                    <li><a class="icon slack" href="https://getkudu-slack.herokuapp.com/">Slack Channel</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li><a href="/community.html#meetups-user-groups-and-conference-presentations">Events and Meetups</a></li>
+                    <li><a href="/committers.html">Project Committers</a></li>
+                    <!--<li><a href="/roadmap.html">Roadmap</a></li>-->
+                    <li><a href="/community.html#contributions">How to Contribute</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li class="dropdown-header">DEVELOPER RESOURCES</li>
+                    <li><a class="icon github" href="https://github.com/apache/incubator-kudu">GitHub</a></li>
+                    <li><a class="icon gerrit" href="http://gerrit.cloudera.org:8080/#/q/status:open+project:kudu">Gerrit Code Review</a></li>
+                    <li><a class="icon jira" href="https://issues.apache.org/jira/browse/KUDU">JIRA Issue Tracker</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li class="dropdown-header">SOCIAL MEDIA</li>
+                    <li><a class="icon twitter" href="https://twitter.com/ApacheKudu">Twitter</a></li>
+                  </ul>
+                </li>
+                <li >
+                  <a href="/faq.html">FAQ</a>
+                </li>
+              </ul><!-- /.nav -->
+            </div><!-- /#navbar -->
+          </div><!-- /.container-fluid -->
+        </nav>
+
+<!--
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
+
+
+<div class="container">
+  <div class="row">
+    <div class="col-md-9">
+
+<h1>Transaction Semantics in Apache Kudu</h1>
+      <div id="preamble">
+<div class="sectionbody">
+<div class="sidebarblock">
+<div class="content">
+<div class="paragraph">
+<p>This is a brief introduction to Kudu&#8217;s transaction and consistency semantics. For an
+in-depth technical exposition of most of what is mentioned here, and why it is correct,
+see the technical report <a href="#1">[1]</a>.</p>
+</div>
+</div>
+</div>
+<div class="paragraph">
+<p>Kudu&#8217;s transactional semantics and architecture are inspired by state-of-the-art
+systems such as Spanner <a href="#2">[2]</a> and Calvin <a href="#3">[3]</a>. Kudu builds upon decades of database
+research. The core philosophy is to make the lives of developers easier by providing transactions with
+simple, strong semantics, without sacrificing performance or the ability to tune to different
+requirements.</p>
+</div>
+<div class="paragraph">
+<p>Kudu is designed to eventually be fully ACID, however, multi-tablet transactions are not
+yet implemented. As such, this discussion focuses on single-tablet write operations, and only
+briefly touches multi-tablet reads. Eventually Kudu will support fully strict-serializable
+semantics. In fact it already does in a limited context, but not all corner cases are covered
+as this is still a work in progress.</p>
+</div>
+<div class="paragraph">
+<p>Kudu currently allows the following operations:</p>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p><strong>Write operations</strong> are sets of rows to be inserted, updated, or deleted in the storage
+engine, in a single tablet with multiple replicas. Write operations do not have separate
+"read sets" i.e. they do not scan existing data before performing the write. Each write
+is only concerned with previous state of the rows that are about to change.
+Writes are not  "committed" explicitly by the user. Instead, they are committed automatically
+by the system, after completion.</p>
+</li>
+<li>
+<p><strong>Scans</strong> are read operations that can traverse multiple tablets and read information
+with some consistency or correctness guarantees. Scans can perform time-travel reads, i.e.
+the user is able to set a scan timestamp in the past and get back results that reflect
+the state of the storage engine at that point in time.</p>
+</li>
+</ul>
+</div>
+<div class="admonitionblock note">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-note" title="Note"></i>
+</td>
+<td class="content">
+<div class="title">Before We Begin</div>
+<div class="ulist">
+<ul>
+<li>
+<p>The term <em>timestamp</em> is mentioned several times to illustrate the
+functionality, but <em>timestamp</em> is an internal concept mostly invisible to users,
+except when setting timestamp on a <code>KuduScanner</code>.</p>
+</li>
+<li>
+<p>We generally refer to methods and classes of the C++ client. While the Java
+client mostly has analogous methods and classes, the exact names of the APIs
+may differ.</p>
+</li>
+</ul>
+</div>
+</td>
+</tr>
+</table>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_single_tablet_write_operations"><a class="link" href="#_single_tablet_write_operations">Single tablet write operations</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Kudu employs <em>Multiversion Concurrency Control (MVCC)</em> and the <em>Raft consensus</em> algorithm <a href="#4">[4]</a>.
+Each write operation in Kudu must go through the tablet&#8217;s leader.</p>
+</div>
+<div class="olist arabic">
+<ol class="arabic">
+<li>
+<p>The leader acquires all locks for the rows that it will change.</p>
+</li>
+<li>
+<p>The leader assigns the write a timestamp before the write is submitted for
+replication. This timestamp will be the write&#8217;s "tag" in MVCC.</p>
+</li>
+<li>
+<p>After a majority of replicas acknowledges the change, the actual rows are changed.</p>
+</li>
+<li>
+<p>After the changes are complete, they are made visible to concurrent writes
+and reads, atomically.</p>
+</li>
+</ol>
+</div>
+<div class="paragraph">
+<p>All replicas of a tablet observe the same order of operations, and if a write
+operation is assigned timestamp <em>n</em> and changes row <em>x</em>, a second write operation
+at timestamp <em>m &gt; n</em> is guaranteed to see the new value of <em>x</em>.</p>
+</div>
+<div class="paragraph">
+<p>This strict ordering of lock acquisition and timestamp assignment is enforced to be
+consistent across all replicas of a tablet through consensus. Therefore, write operations
+are totally ordered with regard to clock-assigned timestamps, relative to other writes
+in the same tablet. In other words, writes have strict-serializable semantics,
+though in an admittedly limited context. See this
+<a href="http://www.bailis.org/blog/linearizability-versus-serializability">blog post</a>
+for a little more context regarding what these semantics mean.</p>
+</div>
+<div class="paragraph">
+<p>While Isolated and Durable in an ACID sense, multi-row write operations are not yet fully Atomic.
+The failure of a single write in a batch operation does not roll back the operation,
+but produces per-row errors.</p>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_writing_to_multiple_tablets"><a class="link" href="#_writing_to_multiple_tablets">Writing to multiple tablets</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Kudu does not yet support transactions that span multiple tablets. However,
+consistent snapshot reads are possible (with caveats in the current implementation)
+as explained below.</p>
+</div>
+<div class="paragraph">
+<p>Writes from a Kudu client are optionally buffered in memory until they are flushed and sent
+to the server. When client&#8217;s session flushes, the rows for each tablet are batched
+together, and sent to the tablet server which hosts the leader replica of the tablet.
+Since there are no inter-tablet transactions, each of these batches represents a single,
+independent write operation with its own timestamp. However, the client API provides
+the option to impose some constraints on the assigned timestamps and on how writes to
+different tablets can be observed by clients.</p>
+</div>
+<div class="paragraph">
+<p>Kudu, like Spanner, was designed to be externally consistent <a href="#5">[5]</a>, preserving consistency
+even when operations span multiple tablets and even multiple data centers. In practice this
+means that, if a write operation changes item <em>x</em> at tablet <em>A</em>, and a following write
+operation changes item <em>y</em> at tablet <em>B</em>, you might want to enforce that if
+the change to <em>y</em> is observed, the change to <em>x</em> must also be observed. There
+are many examples where this can be important. For example,  if Kudu is
+storing clickstreams for further analysis, and two clicks follow each other but
+are stored in different tablets, subsequent clicks should be assigned subsequent
+timestamps so that the causal relationship between them is captured.</p>
+</div>
+<div class="paragraph">
+<div class="title"><code>CLIENT_PROPAGATED</code> Consistency</div>
+<p>Kudu&#8217;s default external consistency mode is called <code>CLIENT_PROPAGATED</code>.
+See <a href="#1">[1]</a> for an extensive explanation on how it works. In brief, this mode causes writes
+from <em>a single client</em> to be automatically externally consistent. In the clickstream scenario
+above, if the two clicks are submitted by different client instances, the application must
+manually propagate timestamps from one client to the other for the causal relationship
+to be captured.</p>
+</div>
+<div class="paragraph">
+<p>Timestamps between clients <em>a</em> and <em>b</em> can be propagated as follows:</p>
+</div>
+<div class="dlist">
+<dl>
+<dt class="hdlist1">Java Client</dt>
+<dd>
+<p>Call <code>AsyncKuduClient#getLastPropagatedTimestamp()</code> on client <em>a</em>,
+propagate the timestamp to client <em>b</em>, and call
+<code>AsyncKuduClient#setLastPropagatedTimestamp()</code> on client <em>b</em>.</p>
+</dd>
+<dt class="hdlist1">C++ Client</dt>
+<dd>
+<p>Call <code>KuduClient::GetLatestObservedTimestamp()</code> on client <em>a</em>,
+propagate the timestamp to client <em>b</em>, and call
+<code>KuduClient::SetLatestObservedTimestamp()</code> on client <em>b</em>.</p>
+</dd>
+</dl>
+</div>
+<div class="paragraph">
+<div class="title"><code>COMMIT_WAIT</code> Consistency</div>
+<p>Kudu also has an experimental implementation of an external consistency
+model used in Google&#8217;s Spanner , called <code>COMMIT_WAIT</code>. <code>COMMIT_WAIT</code> works
+by tightly synchronizing the clocks on all machines in the cluster. Then, when a
+write occurs, timestamps are assigned and the results of the write are not made
+visible until enough time has passed so that no other machine in the cluster could
+possibly assign a lower timestamp to a following write.</p>
+</div>
+<div class="paragraph">
+<p>When using this mode, the latency of writes is tightly tied to the accuracy of clocks on
+all the cluster hosts, and using this mode with loose clock synchronization causes writes
+to take a long time to complete or even time out. See <a href="#known_issues">Known Issues and Limitations</a>.</p>
+</div>
+<div class="paragraph">
+<p>The <code>COMMIT_WAIT</code> consistency mode may be selected as follows:</p>
+</div>
+<div class="dlist">
+<dl>
+<dt class="hdlist1">Java Client</dt>
+<dd>
+<p>Call <code>KuduSession#setExternalConsistencyMode(ExternalConsistencyMode.COMMIT_WAIT)</code></p>
+</dd>
+<dt class="hdlist1">C++ Client</dt>
+<dd>
+<p>Call <code>KuduSession::SetExternalConsistencyMode(COMMIT_WAIT)</code></p>
+</dd>
+</dl>
+</div>
+<div class="admonitionblock caution">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-caution" title="Caution"></i>
+</td>
+<td class="content">
+<code>COMMIT_WAIT</code> consistency is considered an experimental feature. It may return
+incorrect results, exhibit performance issues, or negatively impact cluster stability.
+Use in production environments is discouraged.
+</td>
+</tr>
+</table>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_read_operations_scans"><a class="link" href="#_read_operations_scans">Read Operations (Scans)</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Scans are read operations performed by clients that may span one or more rows across
+one or more tablets. When a server receives a scan request, it takes a snapshot of the MVCC
+state and then proceeds in one of two ways depending on the read mode selected by
+the user. The mode may be selected as follows:</p>
+</div>
+<div class="dlist">
+<dl>
+<dt class="hdlist1">Java Client</dt>
+<dd>
+<p>Call <code>KuduScannerBuilder#setReadMode(&#8230;&#8203;)</code></p>
+</dd>
+<dt class="hdlist1">C++ Client</dt>
+<dd>
+<p>Call <code>KuduScanner::SetReadMode()</code></p>
+</dd>
+</dl>
+</div>
+<div class="paragraph">
+<p>The following modes are available in both clients:</p>
+</div>
+<div class="dlist">
+<dl>
+<dt class="hdlist1"><code>READ_LATEST</code></dt>
+<dd>
+<p>This is the default read mode. The server takes a snapshot of
+the MVCC state and proceeds with the read immediately. Reads in this mode only yield
+'Read Committed' isolation.</p>
+</dd>
+<dt class="hdlist1"><code>READ_AT_SNAPSHOT</code></dt>
+<dd>
+<p>In this read mode, scans are consistent and repeatable. A
+timestamp for the snapshot is selected either by the server, or set
+explicitly by the user through <code>KuduScanner::SetSnapshotMicros()</code>. Explicitly setting
+the timestamp is recommended; see <a href="#recommendations">Recommendations</a>. The server waits until this
+timestamp is 'safe' (until all write operations that have a lower timestamp have
+completed and are visible). This delay, coupled with an external consistency method,
+will eventually allow Kudu to have full <code>strict-serializable</code> semantics for reads
+and writes. This is still a work in progress and some anomalies are still possible
+(see <a href="#known_issues">Known Issues and Limitations</a>). Only scans in this mode can be fault-tolerant.</p>
+</dd>
+</dl>
+</div>
+<div class="paragraph">
+<p>Selecting between read modes requires balancing the trade-offs and making a choice
+that fits your workload. For instance, a reporting application that needs to
+scan the entire database might need to perform careful accounting operations, so that
+scan may need to be fault-tolerant, but probably doesn&#8217;t require a to-the-microsecond
+up-to-date view of the database. In that case, you might choose <code>READ_AT_SNAPSHOT</code>
+and select a timestamp that is a few seconds in the past when the scan starts. On
+the other hand, a machine learning workload that is not ingesting the whole data
+set and is already statistical in nature might not require the scan to be repeatable,
+so you might choose <code>READ_LATEST</code> instead.</p>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="known_issues"><a class="link" href="#known_issues">Known Issues and Limitations</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>There are several gaps and corner cases that prevent Kudu from being fully strictly-serializable
+in some situations, at the moment. Below are the details and next, some recommendations.</p>
+</div>
+<div class="sect2">
+<h3 id="known_issues_scans"><a class="link" href="#known_issues_scans">Reads (Scans)</a></h3>
+<div class="ulist">
+<ul>
+<li>
+<p>Support for <code>COMMIT_WAIT</code> is experimental and requires careful tuning of the
+time-synchronization protocol, such as NTP (Network Time Protocol). Its use
+is discouraged in production environments.</p>
+</li>
+</ul>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_writes"><a class="link" href="#_writes">Writes</a></h3>
+<div class="ulist">
+<ul>
+<li>
+<p>On a leader change, <code>READ_AT_SNAPSHOT</code> scans at a snapshot whose timestamp is beyond the last
+write may also yield non-repeatable reads (see
+<a href="https://issues.apache.org/jira/browse/KUDU-1188">KUDU-1188</a>).
+See <a href="#recommendations">Recommendations</a> for a workaround.</p>
+</li>
+<li>
+<p>Impala scans are currently performed as <code>READ_LATEST</code> and have no consistency
+guarantees.</p>
+</li>
+<li>
+<p>In <code>AUTO_BACKGROUND_FLUSH</code> mode, or when using "async" flushing mechanisms,
+writes applied to a single client session may become reordered due to the
+concurrency of flushing the data to the server. This may be particularly
+noticeable if a single row is quickly updated with different values in
+succession. This phenomenon affects all client API implementations.
+Workarounds are described in the API documentation for the respective
+implementations in the docs for <code>FlushMode</code> or <code>AsyncKuduSession</code>.
+See <a href="https://issues.apache.org/jira/browse/KUDU-1767">KUDU-1767</a>.</p>
+</li>
+</ul>
+</div>
+</div>
+<div class="sect2">
+<h3 id="recommendations"><a class="link" href="#recommendations">Recommendations</a></h3>
+<div class="ulist">
+<ul>
+<li>
+<p>If repeatable snapshot reads are a requirement, use <code>READ_AT_SNAPSHOT</code>
+with a timestamp that is slightly in the past (between 2-5 seconds, ideally).
+This will circumvent the anomaly described in <a href="#known_issues_scans">Reads (Scans)</a>. Even when the
+anomaly has been addressed, back-dating the timestamp will always make scans
+faster, since they are unlikely to block.</p>
+</li>
+<li>
+<p>If external consistency is a requirement and you decide to use <code>COMMIT_WAIT</code>, the
+time-synchronization protocol needs to be tuned carefully. Each transaction will wait
+2x the maximum clock error at the time of execution, which is usually in the 100 msec.
+to 1 sec. range with the default settings, maybe more. Thus, transactions would take at least
+200 msec. to 2 sec. to complete when using the default settings and may even time out.</p>
+<div class="ulist">
+<ul>
+<li>
+<p>A local server should be used as a time server. We&#8217;ve performed experiments using the default
+NTP time source available in a Google Compute Engine data center and were able to obtain
+a reasonable tight max error bound, usually varying between 12-17 milliseconds.</p>
+</li>
+<li>
+<p>The following parameters should be adjusted in <code>/etc/ntp.conf</code> to tighten the maximum error:</p>
+<div class="ulist">
+<ul>
+<li>
+<p><code>server my_server.org iburst minpoll 1 maxpoll 8</code></p>
+</li>
+<li>
+<p><code>tinker dispersion 500</code></p>
+</li>
+<li>
+<p><code>tinker allan 0</code></p>
+</li>
+</ul>
+</div>
+</li>
+</ul>
+</div>
+</li>
+</ul>
+</div>
+<div class="admonitionblock important">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-important" title="Important"></i>
+</td>
+<td class="content">
+The above parameters minimize <code>maximum error</code> at the expense of <code>estimated error</code>,
+the latter might be orders of magnitude above it&#8217;s "normal" value. These parameters also
+may place a greater load on the time server, since they make the servers poll much more
+frequently.
+</td>
+</tr>
+</table>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_references"><a class="link" href="#_references">References</a></h2>
+<div class="sectionbody">
+<div class="ulist">
+<ul>
+<li>
+<p><a id="1"></a>[1] David Alves, Todd Lipcon and Vijay Garg. Technical Report: HybridTime - Accessible Global Consistency with High Clock Uncertainty. April, 2014. <a href="http://users.ece.utexas.edu/~garg/pdslab/david/hybrid-time-tech-report-01.pdf" class="bare">http://users.ece.utexas.edu/~garg/pdslab/david/hybrid-time-tech-report-01.pdf</a></p>
+</li>
+<li>
+<p><a id="2"></a>[2] James C. Corbett, Jeffrey Dean, Michael Epstein, Andrew Fikes, Christopher Frost, J. J. Furman, Sanjay Ghemawat, Andrey Gubarev, Christopher Heiser, Peter Hochschild, Wilson Hsieh, Sebastian Kanthak, Eugene Kogan, Hongyi Li, Alexander Lloyd, Sergey Melnik, David Mwaura, David Nagle, Sean Quinlan, Rajesh Rao, Lindsay Rolig, Yasushi Saito, Michal Szymaniak, Christopher Taylor, Ruth Wang, and Dale Woodford. 2012. Spanner: Google&#8217;s globally-distributed database. In Proceedings of the 10th USENIX conference on Operating Systems Design and Implementation (OSDI'12). USENIX Association, Berkeley, CA, USA, 251-264.</p>
+</li>
+<li>
+<p><a id="3"></a>[3] Alexander Thomson, Thaddeus Diamond, Shu-Chun Weng, Kun Ren, Philip Shao, and Daniel J. Abadi. 2012. Calvin: fast distributed transactions for partitioned database systems. In Proceedings of the 2012 ACM SIGMOD International Conference on Management of Data (SIGMOD '12). ACM, New York, NY, USA, 1-12. DOI=10.1145/2213836.2213838 <a href="http://doi.acm.org/10.1145/2213836.2213838" class="bare">http://doi.acm.org/10.1145/2213836.2213838</a></p>
+</li>
+<li>
+<p><a id="4"></a>[4] Diego Ongaro and John Ousterhout. 2014. In search of an understandable consensus algorithm. In Proceedings of the 2014 USENIX conference on USENIX Annual Technical Conference (USENIX ATC'14), Garth Gibson and Nickolai Zeldovich (Eds.). USENIX Association, Berkeley, CA, USA, 305-320.</p>
+</li>
+<li>
+<p><a id="5"></a>[5] Kwei-Jay Lin, "Consistency issues in real-time database systems," in System Sciences, 1989. Vol.II: Software Track, Proceedings of the Twenty-Second Annual Hawaii International Conference on , vol.2, no., pp.654-661 vol.2, 3-6 Jan 1989 doi: 10.1109/HICSS.1989.48069</p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+    </div>
+    <div class="col-md-3">
+
+  <div id="toc" data-spy="affix" data-offset-top="70">
+  <ul>
+
+      <li>
+
+          <a href="index.html">Introducing Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="release_notes.html">Kudu Release Notes</a> 
+      </li> 
+      <li>
+
+          <a href="quickstart.html">Getting Started with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="installation.html">Installation Guide</a> 
+      </li> 
+      <li>
+
+          <a href="configuration.html">Configuring Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="kudu_impala_integration.html">Using Impala with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="administration.html">Administering Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="troubleshooting.html">Troubleshooting Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="developing.html">Developing Applications with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="schema_design.html">Kudu Schema Design</a> 
+      </li> 
+      <li>
+
+          <a href="security.html">Kudu Security</a> 
+      </li> 
+      <li>
+<span class="active-toc">Kudu Transaction Semantics</span>
+            <ul class="sectlevel1">
+<li><a href="#_single_tablet_write_operations">Single tablet write operations</a></li>
+<li><a href="#_writing_to_multiple_tablets">Writing to multiple tablets</a></li>
+<li><a href="#_read_operations_scans">Read Operations (Scans)</a></li>
+<li><a href="#known_issues">Known Issues and Limitations</a>
+<ul class="sectlevel2">
+<li><a href="#known_issues_scans">Reads (Scans)</a></li>
+<li><a href="#_writes">Writes</a></li>
+<li><a href="#recommendations">Recommendations</a></li>
+</ul>
+</li>
+<li><a href="#_references">References</a></li>
+</ul> 
+      </li> 
+      <li>
+
+          <a href="background_tasks.html">Background Maintenance Tasks</a> 
+      </li> 
+      <li>
+
+          <a href="configuration_reference.html">Kudu Configuration Reference</a> 
+      </li> 
+      <li>
+
+          <a href="command_line_tools_reference.html">Kudu Command Line Tools Reference</a> 
+      </li> 
+      <li>
+
+          <a href="known_issues.html">Known Issues and Limitations</a> 
+      </li> 
+      <li>
+
+          <a href="contributing.html">Contributing to Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="export_control.html">Export Control Notice</a> 
+      </li> 
+  </ul>
+  </div>
+    </div>
+  </div>
+</div>
+      <footer class="footer">
+        <p class="small">
+        Copyright &copy; 2016 The Apache Software Foundation.  Last updated 2017-02-03 10:13:21 PST 
+        </p>
+      </footer>
+    </div>
+    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
+    <script>
+      // Try to detect touch-screen devices. Note: Many laptops have touch screens.
+      $(document).ready(function() {
+        if ("ontouchstart" in document.documentElement) {
+          $(document.documentElement).addClass("touch");
+        } else {
+          $(document.documentElement).addClass("no-touch");
+        }
+      });
+    </script>
+    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"
+            integrity="sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS"
+            crossorigin="anonymous"></script>
+    <script>
+      (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+      (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+      m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+      })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+
+      ga('create', 'UA-68448017-1', 'auto');
+      ga('send', 'pageview');
+    </script>
+    <script src="https://cdnjs.cloudflare.com/ajax/libs/anchor-js/3.1.0/anchor.js"></script>
+    <script>
+      anchors.options = {
+        placement: 'right',
+        visible: 'touch',
+      };
+      anchors.add();
+    </script>
+  </body>
+</html>
+
diff --git a/releases/1.4.0/docs/troubleshooting.html b/releases/1.4.0/docs/troubleshooting.html
new file mode 100644
index 0000000..61b2653
--- /dev/null
+++ b/releases/1.4.0/docs/troubleshooting.html
@@ -0,0 +1,686 @@
+<!DOCTYPE html>
+<html lang="en">
+  <head>
+    <meta charset="utf-8" />
+    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
+    <meta name="viewport" content="width=device-width, initial-scale=1" />
+    <!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
+    <meta name="description" content="A new open source Apache Hadoop ecosystem project, Apache Kudu completes Hadoop's storage layer to enable fast analytics on fast data" />
+    <meta name="author" content="Cloudera" />
+    <title>Apache Kudu - Apache Kudu Troubleshooting</title>
+    <!-- Bootstrap core CSS -->
+    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css"
+          integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7"
+          crossorigin="anonymous">
+
+    <!-- Custom styles for this template -->
+    <link href="/css/kudu.css" rel="stylesheet"/>
+    <link href="/css/asciidoc.css" rel="stylesheet"/>
+    <link rel="shortcut icon" href="/img/logo-favicon.ico" />
+    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.6.1/css/font-awesome.min.css" />
+
+    
+
+    <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+        <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+        <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+        <![endif]-->
+  </head>
+  <body>
+    <div class="kudu-site container-fluid">
+      <!-- Static navbar -->
+        <nav class="navbar navbar-default">
+          <div class="container-fluid">
+            <div class="navbar-header">
+              <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
+                <span class="sr-only">Toggle navigation</span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+              </button>
+              
+              <a class="logo" href="/"><img
+                src="//d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_80px.png"
+                srcset="//d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_80px.png 1x, //d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_160px.png 2x"
+                alt="Apache Kudu"/></a>
+              
+            </div>
+            <div id="navbar" class="collapse navbar-collapse">
+              <ul class="nav navbar-nav navbar-right">
+                <li >
+                  <a href="/">Home</a>
+                </li>
+                <li >
+                  <a href="/overview.html">Overview</a>
+                </li>
+                <li class="active">
+                  <a href="/docs/">Documentation</a>
+                </li>
+                <li >
+                  <a href="/releases/">Download</a>
+                </li>
+                <li >
+                  <a href="/blog/">Blog</a>
+                </li>
+                <!-- NOTE: this dropdown menu does not appear on Mobile, so don't add anything here
+                     that doesn't also appear elsewhere on the site. -->
+                <li class="dropdown">
+                  <a href="/community.html" role="button" aria-haspopup="true" aria-expanded="false">Community <span class="caret"></span></a>
+                  <ul class="dropdown-menu">
+                    <li class="dropdown-header">GET IN TOUCH</li>
+                    <li><a class="icon email" href="/community.html">Mailing Lists</a></li>
+                    <li><a class="icon slack" href="https://getkudu-slack.herokuapp.com/">Slack Channel</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li><a href="/community.html#meetups-user-groups-and-conference-presentations">Events and Meetups</a></li>
+                    <li><a href="/committers.html">Project Committers</a></li>
+                    <!--<li><a href="/roadmap.html">Roadmap</a></li>-->
+                    <li><a href="/community.html#contributions">How to Contribute</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li class="dropdown-header">DEVELOPER RESOURCES</li>
+                    <li><a class="icon github" href="https://github.com/apache/incubator-kudu">GitHub</a></li>
+                    <li><a class="icon gerrit" href="http://gerrit.cloudera.org:8080/#/q/status:open+project:kudu">Gerrit Code Review</a></li>
+                    <li><a class="icon jira" href="https://issues.apache.org/jira/browse/KUDU">JIRA Issue Tracker</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li class="dropdown-header">SOCIAL MEDIA</li>
+                    <li><a class="icon twitter" href="https://twitter.com/ApacheKudu">Twitter</a></li>
+                  </ul>
+                </li>
+                <li >
+                  <a href="/faq.html">FAQ</a>
+                </li>
+              </ul><!-- /.nav -->
+            </div><!-- /#navbar -->
+          </div><!-- /.container-fluid -->
+        </nav>
+
+<!--
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
+
+
+<div class="container">
+  <div class="row">
+    <div class="col-md-9">
+
+<h1>Apache Kudu Troubleshooting</h1>
+      <div class="sect1">
+<h2 id="_startup_errors"><a class="link" href="#_startup_errors">Startup Errors</a></h2>
+<div class="sectionbody">
+<div class="sect2">
+<h3 id="req_hole_punching"><a class="link" href="#req_hole_punching">Errors During Hole Punching Test</a></h3>
+<div class="paragraph">
+<p>Kudu requires hole punching capabilities in order to be efficient. Hole punching support
+depends upon your operation system kernel version and local filesystem implementation.</p>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p>RHEL or CentOS 6.4 or later, patched to kernel version of 2.6.32-358 or later.
+Unpatched RHEL or CentOS 6.4 does not include a kernel with support for hole punching.</p>
+</li>
+<li>
+<p>Ubuntu 14.04 includes version 3.13 of the Linux kernel, which supports hole punching.</p>
+</li>
+<li>
+<p>Newer versions of the EXT4 or XFS file systems support hole punching, but EXT3 does
+not. Older versions of XFS that do not support hole punching return a <code>EOPNOTSUPP</code>
+(operation not supported) error. Older versions of either EXT4 or XFS that do
+not support hole punching cause Kudu to emit an error message such as the following
+and to fail to start:</p>
+<div class="listingblock">
+<div class="content">
+<pre>Error during hole punch test. The log block manager requires a
+filesystem with hole punching support such as ext4 or xfs. On el6,
+kernel version 2.6.32-358 or newer is required. To run without hole
+punching (at the cost of some efficiency and scalability), reconfigure
+Kudu with --block_manager=file. Refer to the Kudu documentation for more
+details. Raw error message follows.</pre>
+</div>
+</div>
+</li>
+</ul>
+</div>
+<div class="paragraph">
+<p>Without hole punching support, the log block manager is unsafe to use. It won&#8217;t
+ever delete blocks, and will consume ever more space on disk.</p>
+</div>
+<div class="paragraph">
+<p>If you can&#8217;t use hole punching in your environment, you can still
+try Kudu. Enable the file block manager instead of the log block manager by
+adding the <code>--block_manager=file</code> flag to the commands you use to start the master
+and tablet servers. The file block manager does not scale as well as the log block
+manager.</p>
+</div>
+<div class="admonitionblock warning">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-warning" title="Warning"></i>
+</td>
+<td class="content">
+The file block manager is known to scale and perform poorly, and should
+only be used for small-scale evaluation and development.
+</td>
+</tr>
+</table>
+</div>
+</div>
+<div class="sect2">
+<h3 id="ntp"><a class="link" href="#ntp">NTP Clock Synchronization</a></h3>
+<div class="paragraph">
+<p>For the master and tablet server daemons, the server&#8217;s clock must be synchronized using NTP.
+In addition, the <strong>maximum clock error</strong> (not to be mistaken with the estimated error)
+be below a configurable threshold. The default value is 10 seconds, but it can be set with the flag
+<code>--max_clock_sync_error_usec</code>.</p>
+</div>
+<div class="paragraph">
+<p>If NTP is not installed, or if the clock is reported as unsynchronized, Kudu will not
+start, and will emit a message such as:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre>F0924 20:24:36.336809 14550 hybrid_clock.cc:191 Couldn't get the current time: Clock unsynchronized. Status: Service unavailable: Error reading clock. Clock considered unsynchronized.</pre>
+</div>
+</div>
+<div class="paragraph">
+<p>If NTP is installed and synchronized, but the maximum clock error is too high,
+the user will see a message such as:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre>Sep 17, 8:13:09.873 PM FATAL hybrid_clock.cc:196 Couldn't get the current time: Clock synchronized, but error: 11130000, is past the maximum allowable error: 10000000</pre>
+</div>
+</div>
+<div class="paragraph">
+<p>or</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre>Sep 17, 8:32:31.135 PM FATAL tablet_server_main.cc:38 Check failed: _s.ok() Bad status: Service unavailable: Cannot initialize clock: Cannot initialize HybridClock. Clock synchronized but error was too high (11711000 us).</pre>
+</div>
+</div>
+<div class="admonitionblock tip">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-tip" title="Tip"></i>
+</td>
+<td class="content">
+If NTP is installed the user can monitor the synchronization status by running
+<code>ntptime</code>. The relevant value is what is reported for <code>maximum error</code>.
+</td>
+</tr>
+</table>
+</div>
+<div class="paragraph">
+<p>To install NTP, use the appropriate command for your operating system:</p>
+</div>
+<table class="tableblock frame-all grid-all spread">
+<colgroup>
+<col style="width: 50%;">
+<col style="width: 50%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">OS</th>
+<th class="tableblock halign-left valign-top">Command</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Debian/Ubuntu</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>sudo apt-get install ntp</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">RHEL/CentOS</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>sudo yum install ntp</code></p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>If NTP is installed but not running, start it using one of these commands:</p>
+</div>
+<table class="tableblock frame-all grid-all spread">
+<colgroup>
+<col style="width: 50%;">
+<col style="width: 50%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">OS</th>
+<th class="tableblock halign-left valign-top">Command</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Debian/Ubuntu</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>sudo service ntp restart</code></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">RHEL/CentOS</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>sudo /etc/init.d/ntpd restart</code></p></td>
+</tr>
+</tbody>
+</table>
+<div class="admonitionblock tip">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-tip" title="Tip"></i>
+</td>
+<td class="content">
+NTP requires a network connection and may take a few minutes to synchronize the clock.
+In some cases a spotty network connection may make NTP report the clock as unsynchronized.
+A common, though temporary, workaround for this is to restart NTP with one of the commands above.
+</td>
+</tr>
+</table>
+</div>
+<div class="paragraph">
+<p>If the clock is being reported as synchronized by NTP, but the maximum error is too high,
+the user can increase the threshold to a higher value by setting the above
+mentioned flag. For example to increase the possible maximum error to
+20 seconds the flag should be set like: <code>--max_clock_sync_error_usec=20000000</code></p>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="crash_reporting"><a class="link" href="#crash_reporting">Reporting Kudu Crashes</a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Kudu uses the
+<a href="https://chromium.googlesource.com/breakpad/breakpad/">Google Breakpad</a>
+library to generate a minidump whenever Kudu experiences a crash. These
+minidumps are typically only a few MB in size and are generated even if core
+dump generation is disabled. At this time, generating minidumps is only
+possible in Kudu on Linux builds.</p>
+</div>
+<div class="paragraph">
+<p>A minidump file contains important debugging information about the process that
+crashed, including shared libraries loaded and their versions, a list of
+threads running at the time of the crash, the state of the processor registers
+and a copy of the stack memory for each thread, and CPU and operating system
+version information.</p>
+</div>
+<div class="paragraph">
+<p>It is also possible to force Kudu to create a minidump without killing the
+process by sending a <code>USR1</code> signal to the <code>kudu-tserver</code> or <code>kudu-master</code>
+process. For example:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlight"><code class="language-bash" data-lang="bash">sudo pkill -USR1 kudu-tserver</code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>By default, Kudu stores its minidumps in a subdirectory of its configured glog
+directory called <code>minidumps</code>. This location can be customized by setting the
+<code>--minidump_path</code> flag. Kudu will retain only a certain number of minidumps
+before deleting the oldest ones, in an effort to avoid filling up the disk with
+minidump files. The maximum number of minidumps that will be retained can be
+controlled by setting the <code>--max_minidumps</code> gflag.</p>
+</div>
+<div class="paragraph">
+<p>Minidumps contain information specific to the binary that created them and so
+are not usable without access to the exact binary that crashed, or a very
+similar binary.</p>
+</div>
+<div class="admonitionblock note">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-note" title="Note"></i>
+</td>
+<td class="content">
+A minidump can be emailed to a Kudu developer or attached to a JIRA in
+order to help a Kudu developer debug a crash. In order for it to be useful, the
+developer will need to know the exact version of Kudu and the operating system
+where the crash was observed. Note that while a minidump does not contain a
+heap memory dump, it does contain stack memory and therefore it is possible for
+application data to appear in a minidump. If confidential or personal
+information is stored on the cluster, do not share minidump files.
+</td>
+</tr>
+</table>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_performance_troubleshooting"><a class="link" href="#_performance_troubleshooting">Performance Troubleshooting</a></h2>
+<div class="sectionbody">
+<div class="sect2">
+<h3 id="kudu_tracing"><a class="link" href="#kudu_tracing">Kudu Tracing</a></h3>
+<div class="paragraph">
+<p>The <code>kudu-master</code> and <code>kudu-tserver</code> daemons include built-in tracing support
+based on the open source
+<a href="https://www.chromium.org/developers/how-tos/trace-event-profiling-tool">Chromium Tracing</a>
+framework. You can use tracing to help diagnose latency issues or other problems
+on Kudu servers.</p>
+</div>
+<div class="sect3">
+<h4 id="_accessing_the_tracing_interface"><a class="link" href="#_accessing_the_tracing_interface">Accessing the tracing interface</a></h4>
+<div class="paragraph">
+<p>The tracing interface is accessed via a web browser as part of the
+embedded web server in each of the Kudu daemons.</p>
+</div>
+<table class="tableblock frame-all grid-all spread">
+<caption class="title">Table 1. Tracing Interface URLs</caption>
+<colgroup>
+<col style="width: 50%;">
+<col style="width: 50%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Daemon</th>
+<th class="tableblock halign-left valign-top">URL</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Tablet Server</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="http://tablet-server-1.example.com:8050/tracing.html" class="bare">http://tablet-server-1.example.com:8050/tracing.html</a></p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Master</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="http://master-1.example.com:8051/tracing.html" class="bare">http://master-1.example.com:8051/tracing.html</a></p></td>
+</tr>
+</tbody>
+</table>
+<div class="admonitionblock warning">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-warning" title="Warning"></i>
+</td>
+<td class="content">
+The tracing interface is known to work in recent versions of Google Chrome.
+Other browsers may not work as expected.
+</td>
+</tr>
+</table>
+</div>
+</div>
+<div class="sect3">
+<h4 id="_collecting_a_trace"><a class="link" href="#_collecting_a_trace">Collecting a trace</a></h4>
+<div class="paragraph">
+<p>After navigating to the tracing interface, click the <strong>Record</strong> button on the top left corner
+of the screen. When beginning to diagnose a problem, start by selecting all categories.
+Click <strong>Record</strong> to begin recording a trace.</p>
+</div>
+<div class="paragraph">
+<p>During the trace collection, events are collected into an in-memory ring buffer.
+This ring buffer is fixed in size, so it will eventually fill up to 100%. However, new events
+are still being collected while older events are being removed. While recording the trace,
+trigger the behavior or workload you are interested in exploring.</p>
+</div>
+<div class="paragraph">
+<p>After collecting for several seconds, click <strong>Stop</strong>. The collected trace will be
+downloaded and displayed. Use the <strong>?</strong> key to display help text about using the tracing
+interface to explore the trace.</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="_saving_a_trace"><a class="link" href="#_saving_a_trace">Saving a trace</a></h4>
+<div class="paragraph">
+<p>You can save collected traces as JSON files for later analysis by clicking <strong>Save</strong>
+after collecting the trace. To load and analyze a saved JSON file, click <strong>Load</strong>
+and choose the file.</p>
+</div>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_rpc_timeout_traces"><a class="link" href="#_rpc_timeout_traces">RPC Timeout Traces</a></h3>
+<div class="paragraph">
+<p>If client applications are experiencing RPC timeouts, the Kudu tablet server
+<code>WARNING</code> level logs should contain a log entry which includes an RPC-level trace. For example:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre>W0922 00:56:52.313848 10858 inbound_call.cc:193] Call kudu.consensus.ConsensusService.UpdateConsensus
+from 192.168.1.102:43499 (request call id 3555909) took 1464ms (client timeout 1000).
+W0922 00:56:52.314888 10858 inbound_call.cc:197] Trace:
+0922 00:56:50.849505 (+     0us) service_pool.cc:97] Inserting onto call queue
+0922 00:56:50.849527 (+    22us) service_pool.cc:158] Handling call
+0922 00:56:50.849574 (+    47us) raft_consensus.cc:1008] Updating replica for 2 ops
+0922 00:56:50.849628 (+    54us) raft_consensus.cc:1050] Early marking committed up to term: 8 index: 880241
+0922 00:56:50.849968 (+   340us) raft_consensus.cc:1056] Triggering prepare for 2 ops
+0922 00:56:50.850119 (+   151us) log.cc:420] Serialized 1555 byte log entry
+0922 00:56:50.850213 (+    94us) raft_consensus.cc:1131] Marking committed up to term: 8 index: 880241
+0922 00:56:50.850218 (+     5us) raft_consensus.cc:1148] Updating last received op as term: 8 index: 880243
+0922 00:56:50.850219 (+     1us) raft_consensus.cc:1195] Filling consensus response to leader.
+0922 00:56:50.850221 (+     2us) raft_consensus.cc:1169] Waiting on the replicates to finish logging
+0922 00:56:52.313763 (+1463542us) raft_consensus.cc:1182] finished
+0922 00:56:52.313764 (+     1us) raft_consensus.cc:1190] UpdateReplicas() finished
+0922 00:56:52.313788 (+    24us) inbound_call.cc:114] Queueing success response</pre>
+</div>
+</div>
+<div class="paragraph">
+<p>These traces can give an indication of which part of the request was slow. Please
+include them in bug reports related to RPC latency outliers.</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_kernel_stack_watchdog_traces"><a class="link" href="#_kernel_stack_watchdog_traces">Kernel Stack Watchdog Traces</a></h3>
+<div class="paragraph">
+<p>Each Kudu server process has a background thread called the Stack Watchdog, which
+monitors the other threads in the server in case they have blocked for
+longer-than-expected periods of time. These traces can indicate operating system issues
+or bottlenecked storage.</p>
+</div>
+<div class="paragraph">
+<p>When the watchdog thread identifies a case of thread blockage, it logs an entry
+in the <code>WARNING</code> log like the following:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre>W0921 23:51:54.306350 10912 kernel_stack_watchdog.cc:111] Thread 10937 stuck at /data/kudu/consensus/log.cc:505 for 537ms:
+Kernel stack:
+[&lt;ffffffffa00b209d&gt;] do_get_write_access+0x29d/0x520 [jbd2]
+[&lt;ffffffffa00b2471&gt;] jbd2_journal_get_write_access+0x31/0x50 [jbd2]
+[&lt;ffffffffa00fe6d8&gt;] __ext4_journal_get_write_access+0x38/0x80 [ext4]
+[&lt;ffffffffa00d9b23&gt;] ext4_reserve_inode_write+0x73/0xa0 [ext4]
+[&lt;ffffffffa00d9b9c&gt;] ext4_mark_inode_dirty+0x4c/0x1d0 [ext4]
+[&lt;ffffffffa00d9e90&gt;] ext4_dirty_inode+0x40/0x60 [ext4]
+[&lt;ffffffff811ac48b&gt;] __mark_inode_dirty+0x3b/0x160
+[&lt;ffffffff8119c742&gt;] file_update_time+0xf2/0x170
+[&lt;ffffffff8111c1e0&gt;] __generic_file_aio_write+0x230/0x490
+[&lt;ffffffff8111c4c8&gt;] generic_file_aio_write+0x88/0x100
+[&lt;ffffffffa00d3fb1&gt;] ext4_file_write+0x61/0x1e0 [ext4]
+[&lt;ffffffff81180f5b&gt;] do_sync_readv_writev+0xfb/0x140
+[&lt;ffffffff81181ee6&gt;] do_readv_writev+0xd6/0x1f0
+[&lt;ffffffff81182046&gt;] vfs_writev+0x46/0x60
+[&lt;ffffffff81182102&gt;] sys_pwritev+0xa2/0xc0
+[&lt;ffffffff8100b072&gt;] system_call_fastpath+0x16/0x1b
+[&lt;ffffffffffffffff&gt;] 0xffffffffffffffff
+
+User stack:
+    @       0x3a1ace10c4  (unknown)
+    @          0x1262103  (unknown)
+    @          0x12622d4  (unknown)
+    @          0x12603df  (unknown)
+    @           0x8e7bfb  (unknown)
+    @           0x8f478b  (unknown)
+    @           0x8f55db  (unknown)
+    @          0x12a7b6f  (unknown)
+    @       0x3a1b007851  (unknown)
+    @       0x3a1ace894d  (unknown)
+    @              (nil)  (unknown)</pre>
+</div>
+</div>
+<div class="paragraph">
+<p>These traces can be useful for diagnosing root-cause latency issues when they are caused by systems
+below Kudu, such as disk controllers or file systems.</p>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_issues_using_kudu"><a class="link" href="#_issues_using_kudu">Issues using Kudu</a></h2>
+<div class="sectionbody">
+<div class="sect2">
+<h3 id="hive_handler"><a class="link" href="#hive_handler">ClassNotFoundException: com.cloudera.kudu.hive.KuduStorageHandler</a></h3>
+<div class="paragraph">
+<p>Users will encounter this exception when trying to use a Kudu table via Hive. This
+is not a case of a missing jar, but simply that Impala stores Kudu metadata in
+Hive in a format that&#8217;s unreadable to other tools, including Hive itself and Spark.
+There is no workaround for Hive users. Spark users need to create temporary tables.</p>
+</div>
+</div>
+</div>
+</div>
+    </div>
+    <div class="col-md-3">
+
+  <div id="toc" data-spy="affix" data-offset-top="70">
+  <ul>
+
+      <li>
+
+          <a href="index.html">Introducing Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="release_notes.html">Kudu Release Notes</a> 
+      </li> 
+      <li>
+
+          <a href="quickstart.html">Getting Started with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="installation.html">Installation Guide</a> 
+      </li> 
+      <li>
+
+          <a href="configuration.html">Configuring Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="kudu_impala_integration.html">Using Impala with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="administration.html">Administering Kudu</a> 
+      </li> 
+      <li>
+<span class="active-toc">Troubleshooting Kudu</span>
+            <ul class="sectlevel1">
+<li><a href="#_startup_errors">Startup Errors</a>
+<ul class="sectlevel2">
+<li><a href="#req_hole_punching">Errors During Hole Punching Test</a></li>
+<li><a href="#ntp">NTP Clock Synchronization</a></li>
+</ul>
+</li>
+<li><a href="#crash_reporting">Reporting Kudu Crashes</a></li>
+<li><a href="#_performance_troubleshooting">Performance Troubleshooting</a>
+<ul class="sectlevel2">
+<li><a href="#kudu_tracing">Kudu Tracing</a></li>
+<li><a href="#_rpc_timeout_traces">RPC Timeout Traces</a></li>
+<li><a href="#_kernel_stack_watchdog_traces">Kernel Stack Watchdog Traces</a></li>
+</ul>
+</li>
+<li><a href="#_issues_using_kudu">Issues using Kudu</a>
+<ul class="sectlevel2">
+<li><a href="#hive_handler">ClassNotFoundException: com.cloudera.kudu.hive.KuduStorageHandler</a></li>
+</ul>
+</li>
+</ul> 
+      </li> 
+      <li>
+
+          <a href="developing.html">Developing Applications with Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="schema_design.html">Kudu Schema Design</a> 
+      </li> 
+      <li>
+
+          <a href="security.html">Kudu Security</a> 
+      </li> 
+      <li>
+
+          <a href="transaction_semantics.html">Kudu Transaction Semantics</a> 
+      </li> 
+      <li>
+
+          <a href="background_tasks.html">Background Maintenance Tasks</a> 
+      </li> 
+      <li>
+
+          <a href="configuration_reference.html">Kudu Configuration Reference</a> 
+      </li> 
+      <li>
+
+          <a href="command_line_tools_reference.html">Kudu Command Line Tools Reference</a> 
+      </li> 
+      <li>
+
+          <a href="known_issues.html">Known Issues and Limitations</a> 
+      </li> 
+      <li>
+
+          <a href="contributing.html">Contributing to Kudu</a> 
+      </li> 
+      <li>
+
+          <a href="export_control.html">Export Control Notice</a> 
+      </li> 
+  </ul>
+  </div>
+    </div>
+  </div>
+</div>
+      <footer class="footer">
+        <p class="small">
+        Copyright &copy; 2016 The Apache Software Foundation.  Last updated 2017-05-18 13:38:03 PDT 
+        </p>
+      </footer>
+    </div>
+    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
+    <script>
+      // Try to detect touch-screen devices. Note: Many laptops have touch screens.
+      $(document).ready(function() {
+        if ("ontouchstart" in document.documentElement) {
+          $(document.documentElement).addClass("touch");
+        } else {
+          $(document.documentElement).addClass("no-touch");
+        }
+      });
+    </script>
+    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"
+            integrity="sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS"
+            crossorigin="anonymous"></script>
+    <script>
+      (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+      (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+      m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+      })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+
+      ga('create', 'UA-68448017-1', 'auto');
+      ga('send', 'pageview');
+    </script>
+    <script src="https://cdnjs.cloudflare.com/ajax/libs/anchor-js/3.1.0/anchor.js"></script>
+    <script>
+      anchors.options = {
+        placement: 'right',
+        visible: 'touch',
+      };
+      anchors.add();
+    </script>
+  </body>
+</html>
+
diff --git a/releases/1.4.0/index.html b/releases/1.4.0/index.html
new file mode 100644
index 0000000..c8e77db
--- /dev/null
+++ b/releases/1.4.0/index.html
@@ -0,0 +1,188 @@
+<!DOCTYPE html>
+<html lang="en">
+  <head>
+    <meta charset="utf-8" />
+    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
+    <meta name="viewport" content="width=device-width, initial-scale=1" />
+    <!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
+    <meta name="description" content="A new open source Apache Hadoop ecosystem project, Apache Kudu completes Hadoop's storage layer to enable fast analytics on fast data" />
+    <meta name="author" content="Cloudera" />
+    <title>Apache Kudu - Apache Kudu release 1.4.0</title>
+    <!-- Bootstrap core CSS -->
+    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css"
+          integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7"
+          crossorigin="anonymous">
+
+    <!-- Custom styles for this template -->
+    <link href="/css/kudu.css" rel="stylesheet"/>
+    <link href="/css/asciidoc.css" rel="stylesheet"/>
+    <link rel="shortcut icon" href="/img/logo-favicon.ico" />
+    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.6.1/css/font-awesome.min.css" />
+
+    
+
+    <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+        <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+        <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+        <![endif]-->
+  </head>
+  <body>
+    <div class="kudu-site container-fluid">
+      <!-- Static navbar -->
+        <nav class="navbar navbar-default">
+          <div class="container-fluid">
+            <div class="navbar-header">
+              <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
+                <span class="sr-only">Toggle navigation</span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+              </button>
+              
+              <a class="logo" href="/"><img
+                src="//d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_80px.png"
+                srcset="//d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_80px.png 1x, //d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_160px.png 2x"
+                alt="Apache Kudu"/></a>
+              
+            </div>
+            <div id="navbar" class="collapse navbar-collapse">
+              <ul class="nav navbar-nav navbar-right">
+                <li >
+                  <a href="/">Home</a>
+                </li>
+                <li >
+                  <a href="/overview.html">Overview</a>
+                </li>
+                <li >
+                  <a href="/docs/">Documentation</a>
+                </li>
+                <li class="active">
+                  <a href="/releases/">Download</a>
+                </li>
+                <li >
+                  <a href="/blog/">Blog</a>
+                </li>
+                <!-- NOTE: this dropdown menu does not appear on Mobile, so don't add anything here
+                     that doesn't also appear elsewhere on the site. -->
+                <li class="dropdown">
+                  <a href="/community.html" role="button" aria-haspopup="true" aria-expanded="false">Community <span class="caret"></span></a>
+                  <ul class="dropdown-menu">
+                    <li class="dropdown-header">GET IN TOUCH</li>
+                    <li><a class="icon email" href="/community.html">Mailing Lists</a></li>
+                    <li><a class="icon slack" href="https://getkudu-slack.herokuapp.com/">Slack Channel</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li><a href="/community.html#meetups-user-groups-and-conference-presentations">Events and Meetups</a></li>
+                    <li><a href="/committers.html">Project Committers</a></li>
+                    <!--<li><a href="/roadmap.html">Roadmap</a></li>-->
+                    <li><a href="/community.html#contributions">How to Contribute</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li class="dropdown-header">DEVELOPER RESOURCES</li>
+                    <li><a class="icon github" href="https://github.com/apache/incubator-kudu">GitHub</a></li>
+                    <li><a class="icon gerrit" href="http://gerrit.cloudera.org:8080/#/q/status:open+project:kudu">Gerrit Code Review</a></li>
+                    <li><a class="icon jira" href="https://issues.apache.org/jira/browse/KUDU">JIRA Issue Tracker</a></li>
+                    <li role="separator" class="divider"></li>
+                    <li class="dropdown-header">SOCIAL MEDIA</li>
+                    <li><a class="icon twitter" href="https://twitter.com/ApacheKudu">Twitter</a></li>
+                  </ul>
+                </li>
+                <li >
+                  <a href="/faq.html">FAQ</a>
+                </li>
+              </ul><!-- /.nav -->
+            </div><!-- /#navbar -->
+          </div><!-- /.container-fluid -->
+        </nav>
+
+
+<div class="row-fluid">
+  <div class="col-lg-12 releases">
+
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements.  See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership.  The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License.  You may obtain a copy of the License at
+
+  http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied.  See the License for the
+specific language governing permissions and limitations
+under the License.
+
+-->
+
+<h2 id="apache-kudu-release-140">Apache Kudu release 1.4.0</h2>
+
+<p>See the <a href="docs/release_notes.html">Kudu 1.4.0 Release Notes</a>.</p>
+
+<p>Downloads of Kudu 1.4.0 are available in the following formats:</p>
+
+<ul>
+  <li><a href="http://www.apache.org/closer.cgi?filename=kudu/1.4.0/apache-kudu-1.4.0.tar.gz&amp;action=download">Kudu 1.4.0 source tarball</a>
+(<a href="https://www.apache.org/dist/kudu/1.4.0/apache-kudu-1.4.0.tar.gz.sha">SHA1</a>,
+<a href="https://www.apache.org/dist/kudu/1.4.0/apache-kudu-1.4.0.tar.gz.md5">MD5</a>,
+<a href="https://www.apache.org/dist/kudu/1.4.0/apache-kudu-1.4.0.tar.gz.asc">Signature</a>)</li>
+</ul>
+
+<p>You can use the <a href="https://www.apache.org/dist/kudu/KEYS">KEYS file</a> to verify the included GPG signature.</p>
+
+<p>Additional links:</p>
+
+<ul>
+  <li><a href="docs/">Kudu 1.4.0 Documentation</a></li>
+  <li><a href="apidocs/">Kudu 1.4.0 Java API docs</a></li>
+  <li><a href="cpp-client-api/">Kudu 1.4.0 C++ API docs</a></li>
+</ul>
+
+
+  </div>
+</div>
+
+      <footer class="footer">
+        <p class="small">
+        Copyright &copy; 2016 The Apache Software Foundation. 
+        </p>
+      </footer>
+    </div>
+    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
+    <script>
+      // Try to detect touch-screen devices. Note: Many laptops have touch screens.
+      $(document).ready(function() {
+        if ("ontouchstart" in document.documentElement) {
+          $(document.documentElement).addClass("touch");
+        } else {
+          $(document.documentElement).addClass("no-touch");
+        }
+      });
+    </script>
+    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"
+            integrity="sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS"
+            crossorigin="anonymous"></script>
+    <script>
+      (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+      (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+      m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+      })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+
+      ga('create', 'UA-68448017-1', 'auto');
+      ga('send', 'pageview');
+    </script>
+    <script src="https://cdnjs.cloudflare.com/ajax/libs/anchor-js/3.1.0/anchor.js"></script>
+    <script>
+      anchors.options = {
+        placement: 'right',
+        visible: 'touch',
+      };
+      anchors.add();
+    </script>
+  </body>
+</html>
+
diff --git a/releases/index.html b/releases/index.html
index aa02311..98d75da 100644
--- a/releases/index.html
+++ b/releases/index.html
@@ -103,27 +103,28 @@
 <h3 id="latest-release">Latest release</h3>
 
 <ul>
-  <li><strong><a href="1.3.1/">Kudu 1.3.1</a></strong> was released on April 19, 2017.</li>
+  <li><strong><a href="1.4.0/">Kudu 1.4.0</a></strong> was released on June 13, 2017.</li>
 </ul>
 
 <h3 id="previous-releases">Previous releases</h3>
 
 <ul>
+  <li><a href="1.3.1/">Kudu 1.3.1</a> was released on April 19, 2017. It was a bug fix release.</li>
   <li><a href="1.3.0/">Kudu 1.3.0</a> was released on March 20, 2017.</li>
   <li><a href="1.2.0/">Kudu 1.2.0</a> was released on January 18, 2017.</li>
   <li><a href="1.1.0/">Kudu 1.1.0</a> was released on November 21, 2016.</li>
   <li><a href="1.0.1/">Kudu 1.0.1</a> was released on October 11, 2016.</li>
   <li><a href="1.0.0/">Kudu 1.0.0</a> was released on September 19, 2016.
-  It is the first release not considered “beta”.</li>
+  It was the first release not considered “beta”.</li>
   <li><a href="0.10.0/">Kudu 0.10.0 (beta)</a> was released on August 23, 2016.
   It was the first version to be released after Kudu’s graduation from the
   Apache Incubator.</li>
   <li><a href="0.9.1/">Kudu 0.9.1-incubating (beta)</a> was released on June 30, 2016.</li>
   <li><a href="0.9.0/">Kudu 0.9.0-incubating (beta)</a> was released on June 9, 2016.</li>
   <li><a href="0.8.0/">Kudu 0.8.0-incubating (beta)</a> was released on April 10, 2016.</li>
-  <li><a href="0.7.1/">Kudu 0.7.1-incubating (beta)</a> was released on March 9, 2016. It is a bug fix release.</li>
+  <li><a href="0.7.1/">Kudu 0.7.1-incubating (beta)</a> was released on March 9, 2016. It was a bug fix release.</li>
   <li><a href="0.7.0/">Kudu 0.7.0-incubating (beta)</a> was released on Feb 26, 2016.
-It is also the first version to be released as part of incubation in the Apache Software Foundation.</li>
+It was also the first version to be released as part of incubation in the Apache Software Foundation.</li>
   <li><a href="0.6.0/">Kudu 0.6.0 (beta)</a> was released on Nov 24, 2015.</li>
   <li><a href="0.5.0/">Kudu 0.5.0 (beta)</a> was released on Sep 28, 2015. It was the first public version of Kudu.</li>
 </ul>